
 MahJongg Solitaire 3D V0.96 by Reto Schoelly
==========================================================

Homepage: http://www.reto-schoelly.de/mahjongg3d
Contact: reto@reto-schoelly.de


CUSTOM LAYOUT, BACKGROUND AND TILESET CREATION
AND INSTALLATION: INSTRUCTIONS FOR LINUX
====================================================

If you have difficulties in creating or installing tilesets, you can always
ask me via e-mail, I will be glad to help you :-)



Game data:
----------------

* To find out where the game data is stored, simply type:

	mahjongg3d --data-prefix
  
* You can copy backgrounds into the game data folder, into the subdirectory
	
	backgrounds/

* You can copy layouts into the game data folder, into
	
	layouts/

* You can copy tileset list files into the game data folder, into
	
	tilesets/
	
  They will be found by the game automatically.


Tilesets:
----------------

* There are many different types of tilesets in Mah Jongg versions, one of the
  most commonly used version has 36x4 = 144 tiles each game. A tile image is always
  found on four tiles, except the "season" and "flower" tiles -- they have different
  images, but they are interpreted as matching. That means, a "winter" and a
  "summer" tile or a "plum" and an "orchid" tile will match.

* The name of the tileset gives the directories and list files their names, see below.

* You need 36-42 bitmaps of type .bmp, size 128x128 pixels, 24bit colors.
  If the name of the tileset is TILESET_NAME, you need to store them in
  a directory named tilesets/TILESET_NAME relative to the game data path.
  
  Additionally, you can create a "default.bmp" in this folder with the same
  specifications. It will be used as preview file for the New Game dialog.

* A tileset list is needed. It must have 42 entries and its name must be:

	TILESET_NAME.tileset
	
  You need to copy it to tilesets/.

* The tileset list lists all images for the tiles. The rules:
  
	- One tile image must be specified each line. The path to the tile image is
	  relative to the folder "tilesets/", where the tileset list file resides.
	  This means, one line in the tileset list has an entry that looks like
	  "TILESET_NAME/image1.bmp".
	  
	- The first 34 tiles should be different, always four tiles will be created
	  out of one tile image.
	  
	- The 35th-38th tile is interpreted as "flower" tile no matter how it looks
	  like. These tiles should be identical, or it should be clear that they
	  belong to each other. This is because different flower tiles that are
	  selected will be interpreted as matching.
	  
	- The same applies to the 39th-42th tile and is interpreted as "winter" tile.
	
	
* EXAMPLE:
	- Let the game data path from "mahjongg3d --data-prefix" be:
		
		/usr/games/mahjongg3d
	
	- Let the tileset to be installed have the name "new_tileset", so:
	
	- You need to copy the tileset list file named "new_tileset.tileset"
	  into "/usr/games/mahjongg3d/tilesets"
	  
	- and the corresponding bitmaps to "/usr/games/mahjongg3d/tilesets/new_tileset/"
	
	- And the entries in "new_tileset.tileset" should look like
	  "new_tileset/image.bmp".


Backgrounds:
----------------

* Backgrounds are images of the type .bmp, size 128x128 pixels and 24bit colors.
  Simply copy them into the subfolder "backgrounds/" relative to your game data path.
  

Layouts:
----------------

* Layout files are stored in the subfolder "layouts/" relative to the game data path.

* The first three lines specify the width, length and depth of the board in tile numbers.
  That means, the first line is the number of how many tiles can lie horizontally on the
  field. The secondary line says how many tiles can lie vertically and the third one says
  how many tiles can be ontop of the lower tiles.
  
  The maximum number of tiles that can be placed is 144 tiles. A larger number could
  result in undefined behavior. Also, only an even number of tiles should be set up,
  since when playing, pairs have to be selected and removed.
  
* The next lines represent the layers of the board. Each layer is separated by a newline
  to the next layer.

* Each layer has <height> rows and each row has <width> tiles represented as "0" or "1".

* An empty space is represented as "0", if a tile should be at that place, enter a "1".
  This method will be improved...


HAVE A LOT OF FUN!

Reto Schoelly

