view README.txt @ 552:b2e0f1267282

Add test mode to README. Tweak help text
author Neil Muller <drnlmuller@gmail.com>
date Wed, 21 Sep 2011 14:19:45 +0200
parents e12a4ebeccfc
children 30a5ded79313
line wrap: on
line source

Mutable Mamba
=============

Entry in PyWeek #13  <http://www.pyweek.org/13/>
URL: http://pyweek.org/e/mamba
Team: mamba
Members:
  Adrianna Pinska
  Desilu Crossman
  Gideon Visser
  Jeremy Thurgood
  Neil Muller
  Simon Cross
  Stefano Rivera
License: see LICENSE.txt

For licensing info about the various resources used in the game, see:
 * data/sounds/sources.txt
 * data/tiles/sources.txt
 * data/music/sources.txt


Running the Game
----------------

On Windows or Mac OS X, locate the "run_game.pyw" file and double-click it.

Othewise open a terminal / console and "cd" to the game directory and run:

  python run_game.py


How to Play the Game
--------------------

Move the snake around the screen with the arrow keys. Get to the exit without
crashing into anything. Collect interesting and exciting mutations along the
way. Make your own levels and share them with the world.


Level Editor
------------

The level editor is available from the main menu. Levels are saved as user
levels, and stored in $XDG_DATA_HOME/.mamba/user_levels (i.e.
~/.local/share/.mamba/user_levels) or $APPDATA/.mamba/user_levels on Windows.

A new level can be created from one of the existing templates using "New".
Level properties, such as the name, filename and background music track can be
changed using the "Edit Level Metadata" button.

The level editor has 4 modes: placing tiles, placing things, editing sprites
and testing the level.

Tiles are level geography, such as floors, walls and so forth.  Things are
items that the snake can eat, such as rats.  Sprites are special elements with
more complex items which require extra configuration information, such as
tunnels.

To place tiles and things, select the desired element and click on the map to
place the tile or thing.  Deleting anything replaces the space with a floor
tile (Right click also deletes). The selection of tiles can be scrolled using
the arrow buttons.

Sprites can be placed as well. Sprites require parameters. Each sprite needs a
unique id tag, which can be any string without spaces, and then additional
parameters that depend on the type of sprite, usually the id of another sprite.
Sprites can be added, edited and deleted.  Look at existing maps to see how the
parameters can be used.

Test mode allows you to test the level without any clock running. The snake is
moved using the cursor keys or by pressing space, but interacts with the level
as in the actual game. Space will advance the snake one step, useful for
testing arrows.

Levels can be saved, and uploaded to be shared with other people. Shared levels
only become available after the levels have been curated by the Mamba team.

Development notes
-----------------

Creating a source distribution with::

   ./scripts/build_unix.sh

You may also generate Windows executables and OS X applications::

   Windows:
      ./scripts/wine-py2exe
      ./scripts/makensis

   OS X:
      ./scripts/darwin-py2app.sh