I am glad you ask about it
… I was actually creating this for my IndoorBattles project but I divided to separate everything that I will be reusing.
GGF is a services and configuration framework, and also aims to impose some structure on how to design your game. I'd say it aims to:
1) Provide a common structure and simplify game development. This is the main purpose and in theory (and so far this is working pretty well), you only need to extend View States, Logic States and Loaders.
2) Serve as a very quick start for new developments and help to make garage games more complete. Also provide ready to use game development aids (debugger view, screenshot view, Nymon's scene monitor integration, system reporting tools…).
3) Main configuration is done in a configuration file. Here you can see your complete ViewStateand LogicState hierarchy, your loaders and loader chains, your settings and defaults… You can easily switch between components for a quick test, or add some introduction screens (or disable them during development
)…
4) Be non-intrusive. Allow the developers a complete control over the final look and feel. You still have to code your complete game (JME is not hidden by GGF), but you get extra features for free from the beginning.
The components that I am implementing are: settings, settings storage, console, debugging and dev. tools, entity management, configuration, packaging, introduction/graphic screens, menu system, entity and model pools, entity and mode modular loading, command line processing, headless mode console… All this is configurable and can be dropped, so putting everything together for a new project is a cut&paste matter
.
Development-wise, it is showings some really cool things
, and also has several flaws
, all of which I'm finding along the way. Anyway it is difficult to describe it completely here
. It is now 190 classes long.
By the way, I could use some help, but if one person is willing to learn and use this thing, I will be glad to answer questions here or by IM and help back us much as I can with your project, by providing fixes and explanations quickly.
And, yeah!, that tanks game is (very) based on Wii Tanks! game. It's a great game. This one is also meant to be cooperative like the original. But again, I'll be happy if it only works
.