ENIGMA version 1.2
Copyright (c) Mika Halttunen 2001
www.enigmagame.cjb.net

EDITOR.TXT (16.04.2001)
Level editor guide

HUOM! Suomenkielinen versio tästä tekstistä on tiedostossa
EDITOR_FIN.TXT!
---------------------------------------------------------

First, sorry for lame english, hope you understand all
necessary...


THE FIRST FEW WORDS:
---------------------------------------------------------
 The built in level editor shipped with Enigma is used
to build all the levels which are with the game. Before
you can use the editor optimally, you should read through
this guide and play a lot the game itself.
 
 This file contains all necessary information for building
your own episodes too.

 Remember, the best way to learn is to try everything ;)


DISTRIBUTING THE LEVELS/EPISODES:
---------------------------------------------------------
 You can distribute your selfmade levels/episodes as much
as you want, but without any profit. The levels/episodes
are add-ons to a free game, so they must be free too.
 
 And you MUST mention that I'm not the author of your
selfmade levels!

 If you think that you've made a good episode, you can
send it to me. If it's good enough, I put it to the
Enigma web site so the users can download it!
Remember to attach both the .INI file and the levels!
 

LET'S BEGIN!:
---------------------------------------------------------
 First, you start the editor by selecting "Create levels" from
the main menu. A empty level with a green crosshair cursor appears.
This is a good place to tell you the controls. Note, that
you can press F1 at the editor any time, the keyboard bindings
are listed there too.

 Action                                        Key

 BASIC COMMANDS:
 Change the current tile.......................1, 2
 Delete a tile/goody/enemy.....................DELETE (+SHIFT) (*)
 Place a tile..................................SPACE
 Place a goody.................................G (+SHIFT)
 Place an enemy................................E (+SHIFT)
 Place a player................................P (+SHIFT)
 Change the enemy/goody type...................T (+SHIFT)
 Rotate a player/enemy.........................R (+SHIFT)

 CURSOR/CAMERA MOVEMENT:
 Cursor XY - movement..........................ARROW KEYS
 Cursor  Z - movement..........................PGUP, PGDN
 
 Camera rotation...............................MOUSE
 Camera XY - movement..........................W, S, A, D
 Camera  Z - movement..........................Q, Z

 ADDITIONAL COMMANDS:
 Change the current background.................3, 4
 Light Settings - panel........................L
 
 Menu/Save/Load................................ESC

(*) The +SHIFT means that if you press SHIFT when performing action,
the action affects only the object/tile which is one unit HIGHER than
the cursor. This is necessary because you may want to place
stuff higher as the cursor can go.


THE CROSSHAIR CURSOR:
---------------------------------------------------------
 You see a red, green and blue lines intersecting at the cursor.
These crosshairs are here for helping you to shape the level.


HINTS AND TIPS:
---------------------------------------------------------
* The level must have a one tile for the player standing point
  and a one fruit!

* Please do not put (unless you really have to) enemies that
  rush over the player instantly the level begins.
  (okay, I used that in several levels but don't you do the same!)

* Remember to check that your levels can actually be finished.
  This is very easy because the editor is built in so you can
  switch to game/editor very quickly when needed.

* Try to use complex (not too complex) architechture. It makes
  the level more interesting in play time.

* Name you level with some personal/unique filename,
  like your_initials_levelname.LVL. For example, MH_MAZE.LVL.
  This is because the timing system uses level's name for storing
  the record file to RECS folder. If there are many levels with
  same name, the records goes wrong at some point! This is really
  necessary for episodes, their levels MUST have unique filenames.
  I used "df1_#.lvl" for the default episode #1.


USING EDITOR MENUS:
---------------------------------------------------------
 They're pretty simple to use. But here's the descriptions:
 
  New level...........................Clear the current level
  Save level..........................Save the current level to LEVELS folder
  Load level..........................Load a level from the LEVELS folder
  Back to editor......................Goes back to the editor
  Exit editor.........................Back to the main menu


BUILDING AN EPISODE:
---------------------------------------------------------
 The first thing when building a episode is create all the
levels of course. When you've got them ready, follow these
instructions to finish the episode.

 Every episode must have it's own config file (*.INI).
The config file must be placed to the EPISODES folder.

 The following example creates a config file for episode
called "Circus".

 Step #1. Create a sub directory in EPISODES and name it to "Circus".

 Step #2. Copy all levels (CIRCUS_#.LVL) from the LEVELS folder to
          EPISODES\CIRCUS.

 Step #3. Make a new text file, name it to "Circus.ini".

 Step #4. Type following information to the "Circus.ini":

# game:          ENIGMA
# file:          EPISODES\CIRCUS.INI
# description:   Example episode for Level editor guide with 6 levels
# author:	 Mika Halttunen
#-----------------------------------------------------

[global]
lifes = 3

[levels]
level_1 = episodes\\circus\\circus_1.lvl
level_2 = episodes\\circus\\circus_2.lvl
level_3 = episodes\\circus\\circus_3.lvl
level_4 = episodes\\circus\\circus_4.lvl
level_5 = episodes\\circus\\circus_5.lvl
level_6 = episodes\\circus\\circus_6.lvl

-------------
 The first five lines with # are not required, but there you can
write information about the episode and your own name of course.

 Below the [global] section, you must type lifes = num
where the num is amount of lifes the player has at the start (0-5)

 Then comes [levels] section.
There you must type level_# = episodes\\your_levels\\level_#.lvl

 For example, if your episode has 10 levels, you type ten lines
with
level_1 = episodes\\your_levels\\level_1.lvl
...
...
level_10 = episodes\\your_levels\\level_10.lvl

 Note! You MUST use double backslashes (\\), the episode doesn't work
if you use only one backslash (\)!!!

 And finally,
 Step #5. Play through your episode to make sure that it can actually
          be finished. Make the necessary adjustments to the levels
          and possibly adjust the life-amount.



 If you didn't understand everything, look at the default episodes, or
the tutorial or ask me for help.

