Original game and concept by Anna Anthropy.
Code by Leon Arnott.
Sounds by Liz Ryerson.
World files "Demo World" (
defaultworld.js) and "Babycastles World" (
defaultworld_bc.js) by Anna Anthropy.
The emoji image assets used are copyright Apple, Inc.
- Exoskeleton to provide the editor's MVC.
- jQuery for DOM manipulation.
- es6-shim for browser compatibility.
- FileSaver.js for blob saving.
- Babel for ES6 backwards-compatibility compilation.
- Browserify for CJS module compilation.
- node-sass to compile SCSS to CSS.
A cell is a single graphical slot that can hold an emoji. These are used to implement the game field, the drag-and-drop editor palettes, and the drop slots within the editor.
Cells can be configured by the player to have a certain behaviour. There are three hard-coded behaviours: Player, Item (called "terrain" in the codebase), and Solid.
Cells can have up to three brains, which are sets of actions to perform when a player cell touches the cell.
A shout is a short flashing string that appears when a player cell interacts with another cell. The "Say these words" brains options control these.
The game field is known as the grid. It consists of a square of cells, plus a background colour. It is also responsible for receiving player input, by calling events on all the cells with "player" behaviour.
The interface elements below the grid are the tray, which holds frequently used emoji, and the graveyard, which is automatically populated with emoji that are deleted.
Also, the interface element where a cell's behaviour and brains are configured is called the bench.
How to build
sudo npm install at the command line to install the libraries, then
grunt to hopefully create the files
acitome.js. Distribute these in the same folder as
bg.png and the
BSD 2-clause. Included sound effects (the contents of the
sounds directory) are copyright Liz Ryerson, CC-BY 3.0.