As I mentioned before when talking about low polygon artwork, making a your own game takes a lot of time and effort. The actual worst enemy of a indie game developer is allowing feature creep to kill your project. When I started “Project Omega” it had a very limited scope. During my time working on the game engine programming, I kept adding new features and ideas that I may want to use at some point. This of course caused the entire project to balloon out of control. On the other hand, who doesn’t want to add cool new ideas to their product? It’s hard to fight that temptation to make the best possible product or just deliver something with a workable scope.
The above screen shot shows an additional planet with different terrain, physics, temperature, obstacles and more details. Actually, at this point I had made a framework and five planets. Each one with a unique and different and atmosphere. While this did add a lot to the game, it took a lot of time that kept me from working on my other areas.
Some of the features I have working:
- Game Engine
- Ogre3D C++
- Bullet Physics
- Open AL 3D Sound
- Multi-state system with loading progress job manager
- Real physics simulation on tank
- Multi-factor weapon system with heat/energy/recoil for each type
- Defense Towers with basic AI to track/lock on player
- Multi-track music system
- Menu navigation with world selector
- Randomized worlds via coherent periling noise
- HUD with zoom-scope view
- Zoom-able minimap with radar
- Particle systems with explosions
- Entire system is mod-able via text .INI files
- Text chat/system console with real-time engine controls
- Multi camera style controller
I’m just a hobby indie game developer, but learning to integrate and develop this has been a fun learning experience.