This is a learning experience.
I'm currently experimenting on a small first-person-shooter before I move onto those elements in my main title, DarkStar.
Let's cut through the crap. Here's the features I intend to include:
Key
: Planned feature
: Completed feature
: In progress
: Probable feature
Map Loading from Custom Scripting Language
Entities
Physics (to an extent)
Immersive gameplay and interesting backstory
Large range of authentic, unique weapons.
Humorous voice-overs (think Grunts from Halo.
)
Vehicles
Level editor
Explosions!
Long campaign
Multiplayer
As for vehicles, they'll just be a class that inherits from my PhysicsObject class. Don't worry, I'll find a way. xD I'm planning on doing raycast vehicles for the ones with wheels, with full, realistic suspension. I might even add cloth, if I can do it good enough.
For the custom scripting language, it's pretty simple. The structure and syntax is very simple. It's not really a scripting language, more of a data format system.
It has "blocks", groups of values enclosed by
{BLOCK_NAME}
values
{/}
The values are simple, too.
value1=42;
Here's an example I might have.
{WORLD}
player_spawn_x=0;
player_spawn_y=0;
player_spawn_z=0;
level_name=Another Stupid Example Name;
{/}
{PHYSICSOBJECT}
name=A Piece of Beef;
interactive=1; ~a comment! :D Bool values are 0 or 1.
pos_x=0;
pos_y=10; ~lol lets drop it on their head.
pos_z=0;
rot_x=0;
rot_y=0;
rot_z=0;
{/}
Kaos-Script status can be found
here.