Installation

1. Unzip the ZIP-file

After downloading the ZIP-file, create a new directory (=folder), e.g. "stonoid", and unzip the file there (e.g. with WinZip).

Directory Description
/ The toplevel-directory contains the source code and possibly the executable and the DLLs.
/documentation This directory contains this documentation. For the English version, open index.html, for the German one index-de.html.
/gfx This folder contains the fonts and graphics in BMP-, JPEG- and PNG-format.
/levels Here is the level data in text files.
/sound In this directory there is the music (props to Erich!).


2. Compilation of the source code

This step is not necessary for the Windows version as it is already compiled, except if you want to change something in the game. Of course you must have downloaded the libraries that are mentioned on the download page and properly installed them.

Preprocessor symbols

Name Description
NO_LOGMSG Log messages aren't printed (doesn't affect warnings and error messages)
NO_WARNMSG Warnings aren't printed (is this reasonable?)
NO_ERRORMSG Error messages aren't printed (even less reasonable!)
NO_FMOD FMOD isn't used for sound output. (This means silence during the game }-: ) Must be used on systems that aren't supported by FMOD.

Borland C++ for Windows

Open a command box and change to the directory that contains the source. Then, call make and everything should be compiled.

Other compilers or OSes

You must create your makefiles on your own to compile the game.


3. Configuration

This step is not necessary in every case, but if the game runs too slow or if you want to change e.g. the color depth (default: 32 bpp), you should read this section.

In the directory where the executable is, there is also stonoid_config.txt. In this file, all the settings of the game are saved.
There are two kinds of lines: Comment lines and setting lines. Comment lines start with a # and aren't read by the game. Setting lines do not start with a #, but there is always an equality sign (=) in them and left of it the name of a setting, right of it the value of the setting.
Example: sound.volume.music = 255
This line sets the music volume to the maximum.

These are the settings:

Name of the setting Description and possible values
graphics.bpp Sets the color depth of the graphics display. Possible values are 8 (looks terrible!!!), 16, 24 and 32. The screen resolution or the size of the window is always 1024x768.
Default: 32
graphics.autodetect Determines if the next three settings are set by the game. Enabled: value 1, disabled: value 0.
Default: 1
graphics.hw Determines if bitmaps are saved in the RAM of the graphics card. This raises the framerate. Enabled: value 1, disabled: value 0.
Default: 1
graphics.doublebuffer If this is enabled, doublebuffering is used. This is a method to reduce flickering on the screen. Enabled: value 1, disabled: value 0.
Default: 1
graphics.fullscreen Switches the screen to fullscreen-mode. This is better because the game runs faster. Enabled: value 1, disabled: value 0
Default: 1
graphics.anyformat This isn't very important and difficult to explain. If you are familiar to SDL, you know it.
graphics.usegamma When this setting is activated, gamma values are set to display an effect. Enabled: value 1, disabled: value 0
Default: 1
graphics.semitransparent-shadows When enabled, semitransparent shadows are drawn. This reduces the framerate and I'm not sure whether it looks better. Enabled: value 1, disabled: value 0
Default: 0
graphics.jpeg.dct This isn't important. If you are familiar to libjpeg, you know what this is for.
mouse.sensitivity.x and mouse.sensitivity.y Sets the mouse speed on x- and y-axis. All floating point numbers except 0 are allowed. Negative values result in a reverse paddle move.
Default: 1.0
sound.volume.music Sets the music volume. Values from 0 to 255, 0 means silent, 255 means full volume.
Default: 255


4. Start

To start the game, run the executable (under Windows: stonoid.exe). Under Windows, a log file (stderr.txt) is created that contains error- and other messages.