Skip to content

How to contribute

eilievska edited this page Mar 28, 2016 · 8 revisions

The easiest way to contribute to the game, without changing the source code, is to create new game themes. Some examples of game themes would be:

  • A rabbit reaching a carrot.
  • A fish swimming to a coral, etc.

As long as it follows the game’s mechanics, you can easily add new themes by suppling the required graphical and audio resources.

Theme constraints

The game is developed as an engine that runs a certain type of game themes. In regards to this, there are some constraints that all new themes should follow:

Level 1 - Eraser game

For this level, there are three required resources:

  • A mask image (mask.png) that is being “erased” by the player.
  • A background image (dark-background.png) that appears on the erased areas of the mask.
  • Audio guidance file (audio-guidance-eraser-game.mp3) that is played on level start.

Level 2 - One click cause & effect

On this level, there is a theme object that will move linearly after a player’s click on it. The theme object is the car in the car theme, or the monkey in the monkey theme. Below are the required resources:

  • A background image (light-background.png) on which the object moves.
  • An animation file (animation-idle-object.atlas) of the object while it’s idle (before a player clicks on it). More about creating animations read here.
  • An animation file (animation-moving-object.atlas) of the object while it is moving.
  • Audio guidance file (audio-guidance-cause-and-effect.mp3) that is played on level start.
  • Sound effect for the moving object (moving-object-sound.mp3). For example, this is a car engine sound in the car theme.

Level 3 - Multiple click cause & effect

The resources for this level are the same as Level 2. The only difference with level 2 is that the object will move in a linear manner on multiple points, and will require multiple player clicks before reaching the destination.

Level 4 - Drag and drop

The resources for this level are same as for Level 2, except for the audio guidance file which directs the player to drag and drop the object on the destination point. Below are the required resources:

  • A background image (light-background.png) on which the object moves.
  • An animation file (animation-idle-object.atlas) of the object while it’s idle (before a player clicks on it). More about creating animations read here.
  • An animation file (animation-moving-object.atlas) of the object while it is moving.
  • Audio guidance file (audio-guidance-drag-and-drop.mp3) that is played on level start.
  • Sound effect for the moving object (moving-object-sound.mp3). For example, this is a car engine sound in the car theme.

Successful Result Screen

For this screen, the below resources are needed:

  • A happy animation (happy-animation.atlas) of the theme object. For example, in the monkey theme, the monkey is eating a banana.
  • Audio guidance file (audio-guidance-happy-animation.mp3) giving the player a positive feedback on a job well done.

Unsuccessful Result Screen

For this screen, the below resources are needed:

  • An unhappy animation (unhappy-animation.atlas) of the theme object. For example, in the monkey theme, the monkey is being sad.
  • Audio guidance file (audio-guidance-sad-animation.mp3) giving the player a negative feedback and encouraging him to try again.

Creating a new theme

There are three general steps for creating a new game theme:

  1. Create a new folder with the theme name and place it in the open\core\resources\theme\ directory.
  2. Add all the mentioned resources inside the folder. A summary of all theme resources can be found here.
  3. Update the open/core/resources/cause_and_effect.json JSON file with the new theme data. More on this here.

Updating the cause and effect JSON file

Clone this wiki locally