This may be a wishlist, but I feel that I have to at least mention the idea. I'm sure some implementation of this must be possible, but I believe direct access to internal variables to allow both reading and writing of engine variables would be greatly beneficial to the development of very diverse games. This is including but certainly not limited to:
- Player position and angle (for direct control of world values)
- Player physics values (for physical control of player, makes for better dynamic movement through script)
- Player weapon inventory array, as well as ammo reserve and ammo currently loaded into weapon (include engine check for spontaneous arrival of new weapons or the disappearance of current weapons, including the currently held weapon. Include handling for unequip of current weapon and/or equipping of new arrival on empty inventory)
- Global/Local Gravity. Global effects all objects that do not use local gravity (specified through script). Allow decimal value for this, with 1.0 being "normal" gravity.
I put a lot of thought into this request, and I think these small additions would open numerous doors for the potential of FPSC:R.
Example lines:
g_Player.velocityX += impulseStrength; // Propel player along +x axis
g_Player.gravityY = 0.25; // Set player gravity to 1/4 of normal
if g_Player.gravityY < 0.25 then g_Player.gravityY += 0.01; // Slowly increase player gravity until gravity reaches 1/4 of normal
g_Player.gravityX = 0.01; // Set horizontal acceleration to player, perhaps for water current within zone?
for i = 0, 8, 1 do // Remove all weapons from player
g_Player.weap[i]['weap'] = nil;
end
g_Player.weap[id]['weap'] = e; // Add weapon entity into inventory slot 'id' (begins at 0). Similar to AddPlayerWeapon(e), but this allows for removal without additional functions.
g_Player.weap[id]['ammo'] = 7; // Ammo in weapon
g_Player.weap[id]['ammoR'] = 250; // Ammo in reserve for weapon
Obviously the above is very simple, just to get the syntax down. But if we had access to these internal variables, we could use LUA pretty much to our full disposal, and it wouldn't be things as simple as I demonstrated above. We can easily use LUA to create a perfectly angled water current, or air gusts that may even lift the player off the ground! There's just so much potential with such direct access (especially if the engine can take a bit of error checking burden off the scripters, obviously ifying a weapon inventory slot out of the blue like that would be bad with direct access lol)
I haven't seen any mention of HUDs or images rendered to screen of any kind, besides Prompt. I don't know if these are already planned, but they seem almost too crucial to overlook, which is why I haven't mentioned them above since I'm sure the team has some stance on the matter. Though I do consider HUD images to be one of the topics of easy access that this thread is about. I would like to hear thoughts regarding some kind of HUD system. Perhaps we're moving ahead from simple sprites and trying for a new system like the other engines? I'm sure there's already a thread about it somewhere, if a link could be provided, I will post there.
~Plystire