MazezaM - a puzzle game Copyright (C)2002-2004 Malcolm Tyrrell malcoh0l at yahoo dot ie Introduction: ============= MazezaM (pronounced "may-zam") is a simple puzzle game. You enter the mazezam on the left and you have to get to the exit on the right by pushing the rows of blocks left and right. If you get stuck you can retry the mazezam, but this will cost you a life. To the best of my knowledge MazezaM's specific game logic is original. Unfortunately, there are so many puzzles out there that it is impossible for me to be sure. If you are aware of a prior instance of the idea, please get in touch. If possible, include a link which I can add to my web page. The idea for MazezaM came to me while recalling an Oric-1 type-in game called "Fall Guy" (from the book "Sixty Programs for the Oric-1" by Robert Erskine, Humphrey Walwyn, Paul Stanley and Michael Bews). The gameplay is a reminiscent of the game Sokoban (Thinking Rabbit, Inc) and also bears a resemblance to "sliding piece puzzles" where wooden shapes are moved around in order to get a (usually larger) shape from one side of the puzzle to the other. The name "MazezaM" was suggested by Robert Byrne. Current Implementations: ======================== Several implementations exist as of 08/2004. * A ZX Spectrum version by Malcolm Tyrrell. * A Java applet/application, also by Malcolm Tyrrell. * An Amiga version, originally based on the spectrum code but now significantly expanded and improved, by Ventzislav Tzvetkov. * Several versions for 8-bit platforms, including the Oric, the Gameboy, the Apple II and the Commodore 64, all by Ventzislav Tzvetkov. * An implementation in The MazezaM Engine, a platform for developing puzzle games, by Malcolm Tyrrell. The MazezaM Engine is based on the code of his original Java implementation. Implementing MazezaM: ===================== If you implement MazezaM for other platforms, I would request that you accept the following conditions: 1. If you implement MazezaM as described here, then you should call the puzzle game itself "MazezaM". You should call the individual puzzles either "mazezams" or some standard name like "levels" --- please do not make up a new name for them. You may choose whatever name you want for the implementation, including the name "MazezaM". These conditions need not apply in languages where "MazezaM" is unwritable or unpronounceable. 2. If you implement an extension to MazezaM (i.e. you create a derivative puzzle game), then you should acknowledge the fact that it derives from MazezaM. 3. E-mail me at malcohol at eircom dot net so I can put a link on my web page. The MazezaM .mzm File Format (Version 1.0): =========================================== A .mzm file is a text file which can describe one or more mazezams. The format is based upon the format for .xsb files which describe Sokoban levels. Lines in a .mzm file should be one of: 1. a row making up a mazezam - contiguous rows are thought to belong to the same mazezam. 2. a blank line - which can be used to separate mazezams. 3. a comment - a line beginning with a ";". This will also separate mazezams if put between mazezam rows. Rows: ===== Rows are lines consisting of the following characters only: # - the outer wall (space) - a space $ - a block (i.e. part of a row which can be pushed left or right) + - the entrance to the mazezam * - the exit from the mazezam Comments: ========= Any line beginning with a ";" is a comment. Comments beginning ";;" are thought to contain metadata. Four types of metadata are specified by version 1 of the .mzm file format. ;;Version: ;;Title: ;;Author: <author of the following mazezam(s)> ;;Comment: <comment about the following mazezam(s)> Valid Mazezams: =============== A valid version 1 mazezam satisfies the following constraints: 1. It must have a rectangular outer wall. 2. Wall pieces must only occur in the outer wall. 3. There is only one entrance, which must be in the left-hand wall. 4. There must be a space directly on the right of the entrance. 5. There is only one exit, which must be in the right-hand wall. Example: ======== ;;Version: 1 ;;Title: Easy Does It ;;Author: Malcolm Tyrrell ;;Comment: Nice introductory mazezam ########## # $ $$$# # $ $ $ * + $ $ $ # ########## Mazezams Wanted: ================ If you create some mazezams, I'd appreciate it if you would send a .mzm file to me at malcohol at eircom dot net. Thanks! N.B. The creator of a mazezam holds copyright on their creation. If you distribute mazezams created by other people you must check that you have permission to do so. If you distribute them in .mzm format, you should leave the Author tags intact.