-
Notifications
You must be signed in to change notification settings - Fork 0
FrogattoDevelopmentOverview
- summary Overview of how to use the Frogatto engine to develop game content.
The Frogatto Engine is highly moddable and customizable, allowing one to heavily modify Frogatto or even to create a new game using the engine.
The FrogattoEditor is a GUI editor which allows you to modify Frogatto levels. The editor can be accessed from within the game by pressing ctrl+e.
The editor allows you to do most of the design of a level with components provided. It allows you to place tiles and objects, and to specify to a degree the behavior of the objects.
Any Frogatto level is made up of two things: _tiles_ and _objects_. Both tiles and objects can be placed in the editor, and the behavior of objects can be controlled to a degree within the editor.
However, if you want to add new types of tiles or objects or modify the behavior or appearance of existing ones, you need to learn the FrogattoMarkupLanguage (FML) that the tiles and objects are defined in.
Tiles are completely static. They are calculated at the start of the level and can never change for the duration of the level. Tiles make use of a sophisticated AutoTiling system: when you draw tiles in the editor, the FML tile definition of the type of tiles you're using is consulted to draw the tiles automatically in an attractive way. This makes tiles very suitable for ground/cliffs/grass/etc in a level.
Although tiles can appear very appealing, they are actually made up of a tiled 32x32 grid.
Most everything you see in a Frogatto besides tiles are objects. All of the dynamic components of a level are objects. For instance, Frogatto is an object. An ant enemy is an object. A fire is an object. Many static entities are also best represented as objects rather than being made of tiles -- for instance most trees, or exteriors of houses.
Some objects are invisible to the player but work behind the scenes to control game activity. These objects are called controller objects. For instance, to cause Frogatto to speak a line of dialog when he enters a certain area, we'd use a type of object called an event controller.
Most creation of content for Frogatto involves working with objects. See GameObjectProgrammingGuide for more details.