What means GameDSL ?

Game DSL means Game Domain Specific Langage. The aim is to provide a "platform-agnostic" langage in order to design games.

This project uses the power of Model Driven Engineering and then provides a Meta-model for games and tools to generate code from this meta-model.

It means that basically, you will define your game using the concepts of the meta-model, then you'll be able to generate the code for all your game logic. Then you'll be able to customize this code for more specific needs (change graphics call....).

But why the need of such a thing !?

games are not "object oriented". In fact the concepts defining a gameplay are more event and state based. That's why using UML just sucks in describing games or interaction-based systems.

Using a specific meta-model means one can concentrate on the real concepts of a game, player, game rules or collisions. Then these concepts are then translated in source code.

How is done the code generation ?

code generation is done thanks to Acceleo, an open-source code generator and home made generation module.

Each module is aiming a platform, for instance C++ with Boost and Ogre, or Python with Soya.