NOTICE: Most of this information is almost three years old
at the moment (2004). I updated some things in this file
but left most of it as it was.


ENIGMA version 1.51
Copyright (c) 2001, 2004 Mika Halttunen
www.enigmagame.cjb.net

README.TXT (10.02.2004)

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

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

LICENSE:
---------------------------------------------------------
 Enigma is 100% FREEWARE so you can copy it as much as you
want, but without any profit. The game is meant to be free
to you, so it must be free to everyone else. You are also
allowed to distribute the game by other ways too (web site,
collection CDs, BBS's etc.), being non-profitable however,
except the collection CDs. The price of the collection
CD must be at most the costs of making the CD.

 You can also distribute the selfmade levels/episodes
as long as you mention that they're not made by me.

 And remember, you use this game at your own risk. I'm
not responsible for any kind of damage this product may
cause, though the game caused no harm during the test
session.


VERSION HISTORY:
---------------------------------------------------------
 * Version 1.51
  - Rebuilt the whole game using MinGW with newer library versions.
    This means the game should work properly on WinXP/2000 now.
  - Added some smoothing to the backround skyboxes
    (edit glscape.ini to turn it off)
  - Fixed the camera in the level editor. Now when you use the editor
    menus, the camera won't be screwed after you exit the menus
  - Made a few smaller changes and optimizations

 * Update to version 1.5
  - Made some HUGE optimizations, the game is now
    really much faster! I've got speed increase of 50%
    on some levels!

 * Update to version 1.4
  - Added an one new enemy type (jumping enemy)
  - Added a Hourglass which freezes the enemies for 10 seconds
  - Added a "Episode Finished" screen.
  - Also added two new damn good episodes,
    "Episode666" and "Lost World".
    (made by "AUTHOR", not me! ;)
  - Fixed various little bugs

 * Update to version 1.3
  - Added 5 preset camera views (keys 1-5)
  - Now the camera stays in the position from level to level
  - Added a Skip Level - feature:
     You finish a level, and the next time you can skip
     the same level. So you don't have to play unlocked
     levels through every time!
  - Added a confirmation when the player presses ESC.
    (there you can also skip the levels)

 * Version 1.2
  - Added a new Free Play - mode where you have infinite
    amount of lifes.
  - Added a Please Wait - message to the beginning

 * Update to version 1.1
  - Now the enemies are reseted to their initial position after the
    player has died
  - The maximum number of enemies is changed from 9 to 15

 * Version 1.0
  - The first release version


INTRODUCTION:
---------------------------------------------------------
 And what is Enigma? The Enigma is an 3d arcade game.
It's also my first 3d game.

 Your mission is to collect all fruits (and other goodies)
from the scene and to avoid enemies at the same time.
The "scene" is an 10x10x10 area constructed from different
cubes. The cubes are floating in air, surrounded by strange
atmospheres. You jump from a cube to cube and try to stay
healthy during this...er.."jumping session"..

 All this is presented by nice 3d accelerated graphics with
some neat effects.

 There are two different episodes, both with 10 levels.
And there's two enemy fellows out there, go and find out!

SYSTEM REQUIREMENTS:
---------------------------------------------------------
 I'm not sure the exact system requirements, but it runs well
enough on my system:

  AMD K6-2 3dNow! 400MHz
  96mb memory
  RIVA TNT 16mb AGP
  Sound Blaster 64 PCI
  DirectX 8
  Windows 98

 Your 3d card MUST support OpenGL!
 It should work with older DirectX's too, atleast in DX > 5.
 The musics sound best with SB Live!.

 The Enigma starts default in 640x480 resolution with 16bit colors.
If you want to change this, edit the GLSCAPE.INI file.
 
VOODOO I / II users notice:
 I've got a report that it does work with Voodoo cards too.
Here's a trick you Voodoo guys might want to try. First copy
and install the latest Quake3 compatible drivers. (www.3dfx.com)
The drivers should have a file called 3DFXOGL.DLL or something
similiar.
Copy the file to the same folder which contains ENIGMA.EXE.
Then rename the DLL to OPENGL32.DLL. Then start the game.

 And if the game doesn't work, see the following chapter.


TROUBLESHOOTING:
---------------------------------------------------------
 The game doesn't work?
I suggest you to run the DEBUG.BAT and send the generated
GLS_CONSOLE.LOG to me. I can't help you if I don't know
anything of your PC.

Read also the following examples.

* I can't find any GLS_CONSOLE.LOG!
 Are you sure you've run the DEBUG.BAT? If you have, the game
 probably crashes at the initializing. If there's no message
 and it just crashes, it's hard to say what's wrong. You could
 edit the GLSCAPE.INI and change the resolution and/or color depth
 and try again. In this case, PLEASE send information about
 the PC you're using to me.

* The game is _r e a l l y_ slow?
 It is probably in software mode (not hardware accelerated) then.
 Run the DEBUG.BAT and send the log to me. Are you sure that
 you have a 3d accelerator card which supports OpenGL completely?
 If you have a VoodooI / II, see the previous chapter.
 Also you could check that the "gls_rendermethod" in
 GLSCAPE.INI is 1, not 0.

* It says that "Unable to find a suitable graphics driver!"
 Edit the GLSCAPE.INI and try different resolutions and color depths.
 You could also try the windowed mode.


HOW TO ..... ?:
---------------------------------------------------------
* How to play?
 - Playing is quite simple, after you've practised for a while.
   I suggest you to take through the "tutorial" episode for
   several times. It's not a real tutorial, it's just a
   episode with really easy levels.
   (Start game -> External episodes -> Simple tutorial)

   Here's the controls:
   UP............................ Accelerate
   DOWN.......................... Reverse? (accelerate backwards)
   LEFT.......................... Turn to left
   RIGHT......................... Turn to right
   SPACE......................... Jump
   P............................. Pause
   F12........................... Take a screenshot
   F1............................ Play a random music

   TILDE (below the ESC)......... Toggle console
   There's no real use for you in the console, it's used mainly
   for logging debug info. Btw, if you want to know your FPS-rate,
   type "show_fps 1" to the console and press ENTER.

   Ps. See the "How to control the camera?" question too.
---------
* How to control the camera?
 - The version 1.3 added five preset camera views, so you
   don't have to learn using the camera anymore.
   You can switch the presets views with keys 1 - 5.
   If you still want to learn the camera, read forward.

   Controlling the camera is little bit hard, I have to admit that.
   The camera system could be coded better, but it's very hard to
   change it anymore. We just have to live with this one...
   But I promise you, there will be better camera system in my next game ;)

   Anyway, there are two different camera modes, Normal and Free.
   (defaulting the Normal) Press C to switch the active mode.

   When in Normal-mode, WSAD- and QZ- keys allow you to look around.
   And when in Free-mode, WSADQZ- keys move the camera position and
   mouse rotates it. And when you want to lock the camera, press
   L and then move/rotate the view to position you desire.

   Tip:
    Some levels shouldn't be played in Normal camera. When the
    "Get ready" sign appears, you can switch to Free-mode and
    inspect the level. You can lock the cam and leave it to
    Free-mode or you can restore the Normal-mode by pressing C again.
---------
* How the Skip Level feature works?
 - Every time you finish a level, the game saves the information
   about it and when you possibly play the same level again,
   you can press ESC and skip to the next level. The levels
   are locked until you unlock them by finishing them.
---------
* How to navigate in the menu system?
 - You must use mouse in the menus.
   
   Here's menu item descriptions:
   (MAIN MENU)
   Start game.................... Go to the "Start game" - menu
   Single level.................. Play a single level
   Create levels................. Throws you to the level editor
   Exit game..................... Throws you to the Windows

   (START GAME)
   Episode #1.................... Plays episode #1
   Episode #2.................... Plays episode #2 (a bit harder)
   External episodes............. Play other episodes (or the tutorial)
   Cancel........................ Back to the "Main menu"
---------
* How to create my own levels/episodes?
 - Good. You want to create something your own? That's the spirit!
   See the EDITOR.TXT for information.
---------
* How to play my own MIDIs in the game?
 - Put your own MIDI files to the MUSIC - directory. (max. 30files)
---------
* How to finish the episodes?
 - They're not meant to be finished during the first two tries.
   You must play them a lot and practise.
---------
* How to cheat?
 - No way, lad ;)


UNNECESSARY INFORMATION:
---------------------------------------------------------
 Enigma is programmed with MSVC++ 6 using C++ language
and Allegro/AllegroGL.

 The textures are ripped all over the internet, some of them
are made/edited by me, others from the net. The models are
modelled with 3ds max and textured with MilkShape3d.
I used Jasc Paint Shop Pro 7 for texture creating/editing.
I've made the landscapes in the background with a free
program called TerraGen.

 And what next? Who knows... I will do some additional episodes/levels
for this game and release them on the Enigma's web site.
Then what?..... Maybe I have time to make a one little game
in the summer. At the autumn, I have to go the the high school
so there will not be too much free time to code :(

 Btw, in case you didn't know, my previous game was an asteroids clone,
Steroids. You can get it from the Enigma web site.
It's still playable and quite nice!


THE ENGINE:
---------------------------------------------------------
 Believe or not, there actually is an "engine" behind the Enigma.
GLScape is the name of my new engine.
Because of OpenGL acceleration, it's really fast (assuming
you have a high-end PC) and easy to use.
GLScape uses OpenGL and AllegroGL/Allegro. Written in
plain C++, using simple public classes. 

 Ok, I have to admit, it is not the fastest engine
available (far from it :), but this is my first attempt to
3d programming so it's quite nice. 

 And at the moment, I'm not going to release the engine
sources but I'm always willing to help you with your
programming problems. (Atleast I can try to help :)

 The original GLScape was a OpenGL accelerated tile engine
with some 3d effects. The Enigma uses GLScape version 2.0
which is "true" 3d engine with model loading support,
backface culling and so on. 

In the future, I'm planning to add skeletal animation support
and maybe lightmaps. But I'm still staying on these
"little game"-series ;)


CREDITS:
---------------------------------------------------------
All the code, graphics, models, design and stuff by
- Mika Halttunen (lsoft@mbnet.fi)

Musics by
- Mike Spang (www.mspang.de)

I'd like to thank following persons:
- Jeff Molofee aka NeHe for excellent OpenGL tutorials (http://nehe.gamedev.net)
- Brett Porter for the model loading tutorial/code
- Shawn Hargreaves + other Allegro developers
- George Foot, Robert J Ohannessian + other AllegroGL developers
- All you guys at the AGL mailing list!
- All who have sent their log-files to me

And GREETZ to:
- Friends
- All you OpenGL programmers out there
- Mikrobitti - magazine (the best finnish computer magazine!)
- Pelit - magazine (the best finnish PC-game magazine!)
- All you who made levels/episodes for this game


HOW TO CONTACT THE AUTHOR?:
---------------------------------------------------------
 You can reach me by email. Drop feedback, levels, episodes,
bug reports, debug info, etc. to:

   lsoft@mbnet.fi

 And please visit the home site of Enigma,

   www.enigmagame.cjb.net


