warzone2100/doc
Per Inge Mathisen 41338ab0d6 Test commit 2010-10-04 21:15:46 +02:00
..
code Use <a href... for links in mainpage.dox (Doxygen recognizes that tag and uses it to generate documentation, even for, e.g. LaTeX) 2008-04-22 22:29:51 +00:00
styles * Cleaned ScriptingManual.xhtml by hand and with HTMLTidy which reduced the file-size by more than 50% 2008-07-30 15:59:08 +00:00
Makefile.am * Wrap all file lists in the automake and win32 makefiles across lines such that there's only one file on each line 2008-10-13 13:04:37 +00:00
Readme.de Update changelog / docs 2009-06-01 21:19:54 +02:00
Readme.de.xhtml Update changelog / docs 2009-06-01 21:19:54 +02:00
Readme.en Test commit 2010-10-04 21:15:46 +02:00
Readme.en.xhtml Update readme 2010-01-30 20:26:42 +01:00
SQLite-stats-status.tex Add a document describing design decisions and the current status of the SQLization of the stats 2009-03-30 16:10:56 +02:00
ScriptingManual.htm Add correctly broken (Word 2000, hope that is correct) ScriptingManual.htm 2008-08-01 19:25:57 +00:00

Readme.en.xhtml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
    "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
 <head>
  <meta http-equiv="content-language" content="en"/>
  <meta http-equiv="content-type" content="application/xhtml+xml; charset=UTF-8"/>
  <meta http-equiv="content-style-type" content="text/css; charset=UTF-8"/>
  <meta name="author" content="Steven Koenig aka Kreuvf"/>
  <link rel="stylesheet" type="text/css" media="screen" href="styles/readme.screen.css"/>
  <link rel="stylesheet" type="text/css" media="print" href="styles/readme.print.css"/>
  <title>Warzone 2100 - Readme</title>
 </head>
 <body>
  <div id="content">
   <div id="navigation">

    <h1 id="top">Content</h1>
    <ul>
     <li><a href="#readme" class="locallink">Warzone 2100 - Readme</a>
      <ul>
       <li><a href="#contents" class="locallink">Contents of Warzone 2100</a></li>
       <li><a href="#gamestate" class="locallink">State of the game</a>
        <ul>
         <li><a href="#bugreporting" class="locallink">Reporting bugs</a></li>
        </ul>
       </li>
       <li><a href="#configuration" class="locallink">Configuration</a>
        <ul>
         <li><a href="#wzdir" class="locallink">Warzone directory</a></li>
         <li><a href="#configfile" class="locallink">Configuration file</a></li>
         <li><a href="#cmdline" class="locallink">Command-line options</a></li>
         <li><a href="#music" class="locallink">Music</a></li>
         <li><a href="#multiplay" class="locallink">Multiplaying via internet</a></li>
        </ul>
       </li>
       <li><a href="#cheats" class="locallink">Cheats</a>
        <ul>
         <li><a href="#cheatmode" class="locallink">Cheat-mode</a></li>
         <li><a href="#cheatslists" class="locallink">Cheats lists</a></li>
        </ul>  
       </li>
       <li><a href="#debugkeys" class="locallink">Debug-keys</a></li>
       <li><a href="#hotkeys" class="locallink">Important hotkeys</a></li>
       <li><a href="#furtherinfo" class="locallink">Additional resources</a></li>
      </ul>
     </li>
    </ul>
   </div>
   <hr/>

   <h1 id="readme">Warzone 2100 - Readme</h1>
   <p>This file may be out of date. For current information visit the <a href="http://wz2100.net/" title="Warzone 2100 Resurrection Project" hreflang="en">homepage of the Warzone 2100 Project</a>.</p>

   <h2 id="contents">Contents of Warzone 2100</h2>
   <p>Warzone 2100, released in 1999 and developed by Pumpkin Studios, was a groundbreaking and innovative 3D real-time strategy game.</p>
   <p>In 2004 Eidos, in collaboration with Pumpkin Studios, decided to release the source for the game under the terms of the GNU GPL, including everything but the music and in-game video sequences, which were released later.</p>
   <p>Additionally all multiplayer-maps that were available in Warzone 2100 1.10, the last official version by Pumpkin Studios, are available in Warzone 2100 as well.</p>
   <div class="rt">
    <p><a href="#top">back to top</a></p>
   </div>
   <hr/>


   <h2 id="gamestate">State of the game</h2>
   <p>After the liberation of the Warzone 2100 source-code on December 6th, 2004, all proprietary technologies had been replaced with open-source-counterparts.</p>
   <p>Right now supported platforms are GNU/Linux, Mac OS X 10.4-10.6 and Windows (98 - 7). There are reports that Warzone 2100 is working on BSD, too.</p>

   <h3 id="bugreporting">Reporting Bugs</h3>
   <p>This game still has bugs and if you run into one, please use the <a href="http://developer.wz2100.net/" title="Bugtracker for Warzone 2100" hreflang="en">bugtracker</a> to report it. In order to fix those bugs faster, we require that you follow these rules:</p>
   <ol>
    <li>If the game crashes you may save a memory dump. Please do so and upload it when reporting the bug. (Linux locates that file at /tmp/warzone2100.gdmp, Windows at /Program Files/Warzone 2100/warzone2100.RPT, Mac OS X by clicking "Details" in the crash error message) A self created backtrace is just as useful.</li>
    <li>Give as much information about what you were doing before the crash/bug occured.</li>
    <li>Try to reproduce the bug and add a description of the process to your bug-report.</li>
    <li>You may even upload save-games. These consist of one or two file(s) and one folder. All two/three are named after your save-game (e.g. MySaveGame.es, MySaveGame.gam and the folder MySaveGame).</li>
    <li>Bug-reports are no submit-&amp;-forget-reports. It may be that you forgot some information or forgot to upload a file. So it is in your interest as well to watch the bug-report after it has been submitted. Additionally you receive e-mails of comments or suggestions to your bug-report.</li>
   </ol>
   <div class="rt">
    <p><a href="#top">back to top</a></p>
   </div>
   <hr/>


   <h2 id="configuration">Configuration</h2>

   <h3 id="wzdir">Warzone directory</h3>
   <p>Warzone 2100 uses an own sub-directory in a user's home directory to save configuration data, save-games and certain other things. Additionally you can use this directory to place custom maps and mods so the game can find them. The location of this directory depends on the operating system.</p>
   <h4>Warzone directory under GNU/Linux</h4>
   <p>It can be found in your home-directory and is called ".warzone2100-<em>&lt;version&gt;</em>". The leading dot indicates that it is a hidden folder so depending on your configuration you may not be able to see it. However, you can still access it by typing the path into your address-bar.</p>
   <h4>Warzone directory under Windows</h4>
   <p>The directory is called "Warzone 2100 <em>&lt;version&gt;</em>" and is located in "My Documents".</p>
   <h4>Warzone directory under Mac OS X</h4>
   <p>The directory "Warzone 2100 <em>&lt;version&gt;</em>" can be found in your home-directory at: ~/Library/Application Support/</p>

   <h3 id="configfile">Configuration file</h3>
   <p>The configuration file is just called 'config' and contains several configuration options, some of them can be changed by using <a href="#cmdline" class="locallink" title="Command-line options">command-line options</a> or using the in-game menus, others can only be changed by editing the file by hand.</p>
   <p>If at any point you did something wrong, you may delete the old configuration file and just restart Warzone 2100. Then the game will regenerate a new configuration file with default values. It may be wise to not delete and instead backup your old configuration file in case you want to keep other options.</p>
   <table>
    <tr>
     <th>Option (<em>with default value</em>)</th>
     <th>Effect</th>
    </tr>
    <tr>
     <td>alliance=<em>0</em></td>
     <td>Toggles permission to play with allies in Skirmish and multi player mode on (1) and off (0).</td>
    </tr>
    <tr>
     <td>allowSubtitles=<em>0</em></td>
     <td>Toggles subtitles during video sequences on (1) and off (0).</td>
    </tr>
    <tr>
     <td>base=<em>1</em></td>
     <td>Sets the level of start bases: No bases (0), bases (1) and advanced bases (2).</td>
    </tr>
    <tr>
     <td>bpp=<em>32</em><!-- not in 2.0.x--></td>
     <td>Sets the colour depth in bpp = bits per pixel.</td>
    </tr>
    <tr>
     <td>cdvol=<em>50</em></td>
     <td>Sets the volume for music ranging from 0 (no sound) to 100 (loudest).</td>
    </tr>
    <tr>
     <td>colour=<em>0</em></td>
     <td>Sets your colour in the single player mode: Green (0), red (4), blue (5), pink (6) and cyan (7).</td>
    </tr>
    <tr>
     <td>ColouredCursor=<em>0</em> (Win/Lin), <em>1</em> (Mac)</td>
     <td>Toggles whether to use hardware-accelerated black/white cursors (0) or slower coloured cursors (1).</td>
    </tr>
    <tr>
     <td>debugmode=<em>0</em></td>
     <td>Toggles debug mode on (1) and off (0). --cheat sets this to 1. In order to unset to 0 the file has be to edited by hand.</td>
    </tr>
    <tr>
     <td>difficulty=<em>1</em></td>
     <td>Sets the difficulty for campaign game: Easy (0), medium (1) or hard (2). This value is not changed by difficulty-cheats.</td>
    </tr>
    <tr>
     <td>FMVmode=<em>0</em></td>
     <td>Sets whether to play FMVs fullscreen (0), 1x (1), 2x (2), or fullscreen preserving aspect ratio (3).</td>
    </tr>
    <tr>
     <td>fog=<em>1</em></td>
     <td>Sets fog to fog of war (1) or distance fog (0).</td>
    </tr>
    <!--only till 2.1b2<tr>
     <td>forceName=<em>Default</em></td>
     <td>Sets the name of the force to use (not longer supported since 2.1.x)</td>
    </tr>-->
    <tr>
     <td>framerate=<em>60</em></td>
     <td>Sets the frame rate limit.</td>
    </tr>
    <tr>
     <td>fullscreen=<em>1</em></td>
     <td>Specifies whether to start in fullscreen mode (1) or not (0).</td>
    </tr>
    <tr>
     <td>fxvol=<em>100</em></td>
     <td>Sets the volume for sound effects (user interface sounds and advisor) ranging from 0 (no sound) to 100 (loudest).</td>
    </tr>
    <tr>
     <td>gameName=<em>My Game</em></td>
     <td>Sets the game name for skirmish and multi player games; limited to 79 bytes, so beware when using multi-byte characters such as German umlaute or Japanese kanji.</td>
    </tr>
    <tr>
     <td>gameserver_port=<em>9999</em></td>
     <td>Sets the port Warzone 2100 will listen to when hosting games, so make sure that you can communicate on that port.</td>
    </tr>
    <tr>
     <td>gamma=<em>20</em></td>
     <td>Sets the gamma value Warzone 2100 will use. This will have an effect on the whole screen, so do not be surprised to see your whole screen getting brighter/darker when playing in windowed mode. Minimum value is 10 and stands for 0.5 times the normal screen intensity, maximum value is 200 and stands for 10 times the normal screen intensity.</td>
    </tr>
    <tr>
     <td>height=<em>480</em></td>
     <td>Sets the height of the resolution Warzone 2100 will use; equivalent to the height value of --resolution.</td>
    </tr>
    <!--rechecking 2.1b2-config this was not found<tr>
     <td>language=</td>
     <td>Sets the language Warzone 2100 will use and should be determined correctly on the first start of the game. You may change this using language codes (two-letter codes).</td>
    </tr>-->
    <tr>
     <td>mapName=<em>Rush</em></td>
     <td>Sets the default map name of the map Warzone 2100 will use when starting skirmish or multi player games.</td>
    </tr>
    <tr>
     <td>masterserver_name=<em>lobby.wz2100.net</em></td>
     <td>Sets the lobby server Warzone 2100 will use when entering the lobby and for showing your open multi player games.</td>
    </tr>
    <tr>
     <td>masterserver_port=<em>9997</em></td>
     <td>Sets the port used to communicate with the lobby server specified in 'masterserver_name'.</td>
    </tr>
    <tr>
     <td>mouseflip=<em>1</em></td>
     <td>Toggles behaviour of camera movement when holding down the right mouse button and moving the mouse up and down. Tilt to the opposite direction of mouse movement (0) or tilt in the same direction of the mouse movement (1).</td>
    </tr>
    <tr>
     <td>phrase0= to phrase4=</td>
     <td>Sets five messages used for multi player mode to throw at your opponent. Enter chat mode and then press F1 (phrase0) to F5 (phrase4) to send the corresponding phrase. It is not recommended to use these as it may not always work as expected. These are limited to 79 bytes, so beware if you are using multi-byte characters such as German umlaute or Japanese kanji.</td>
    </tr>
    <tr>
     <td>playaudiocds=<em>1</em></td>
     <td>Toggles playing of audio CDs on (1) and off (0).</td>
    </tr>
    <tr>
     <td>playername=</td>
     <td>Sets your name used in skirmish and multi player games. There is a profile for every playername you ever played with in your warzone directory.</td>
    </tr>
    <tr>
     <td>power=<em>400</em></td>
     <td>Sets the default power level to use. You may choose any value between -2147483648 and 2147483647 (both times inclusively) but Warzone 2100 will recognise exactly three values only and fallback to medium power levels (400), if you specify an unknown value. You can choose from low power levels (100), medium power levels (400) and high power levels (700).</td>
    </tr>
    <tr>
     <td>radarObjectMode=<em>0</em></td>
     <td>Toggles friend-foe-colours on (1) and off (0). The value is not affected by using Ctrl+Tab.</td>
    </tr>
    <tr>
     <td>radarTerrainMode=<em>0</em></td>
     <td>Sets the radar mode Warzone 2100 will use: Terrain only (0 or 1), heightmap only (2), terrain and heightmap combined (3) or no terrain and no heightmap (4). Any value greater than or equal to 5 will make the game use terrain only mode.</td>
    </tr>
    <tr>
     <td>reopenBuild=<em>1</em></td>
     <td>Toggles the reopening of the build menu on (1) and off (0).<!--broken in 2.0.10 (?)--></td>
    </tr>
    <tr>
     <td>RightClickOrders=<em>0</em></td>
     <td>Whether to use left-click (0) or right-click (1) for ordering units to move, attack, etc. Right-click ordering (1) makes the mouse buttons resemble how they're used in most modern RTSes, such as the StarCraft and WarCraft series.</td>
    </tr>
    <tr>
     <td>scroll=<em>1000</em></td>
     <td>Specifies the maximum scroll speed and scroll speed acceleration. Sane values range from 200 (slow) to 4000 (fast). A value of 0 would stop scrolling at all, which is why a hardcoded default value of 100 is used then. The built-in range of values in the options menu ranges from 100 to 1600.</td>
    </tr>
    <tr>
     <td>sequences=<em>0</em></td>
     <td>Toggles the replay of video sequences on (1) and off (0). The default value is likely to be changed in future releases as the videos have been liberated.</td>
    </tr>
    <tr>
     <td>shadows=<em>1</em></td>
     <td>Toggles the rendering of shadows on (1) and off (0). Older graphics cards may be unable to render the game at an acceptable speed while using shadows. This value can be changed by --shadows (1) and --noshadows (0).</td>
    </tr>
    <tr>
     <td>shake=<em>0</em></td>
     <td>Toggles shaking of the camera when buildings are destroyed on (1) and off (0). This option is not affected by the shakey-cheat.</td>
    </tr>
    <tr>
     <td>showFPS=<em>0</em></td>
     <td>Toggles the display of the frames per seconds on (1) and off (0).</td>
    </tr>
    <tr>
     <td>sound=<em>1</em></td>
     <td>Toggles sound on (1) and off (0).</td>
    </tr>
    <tr>
     <td>subtitles=<em>1</em></td>
     <td>Toggles the display of subtitles during videos on (1) and off (0). Note that subtitles are shown even if the video does not exist.</td>
    </tr>
    <tr>
     <td>textureSize=<em>128</em></td>
     <td>Sets the texture size of terrain tiles in pixels. Valid values are 16, 32, 64 and 128. Using lower values can increase the game's performance.</td>
    </tr>
    <tr>
     <td>trapCursor=<em>0</em></td>
     <td>Toggles the trapping of the cursor in the game window on (1) and off (0). Only useful when playing in windowed mode. It prevents getting off the window and clicking something behind it like another application or the desktop, so the game itself loses the focus or becomes hidden behind another window.</td>
    </tr>
    <tr>
     <td>type=<em>12</em></td>
     <td>Used for selecting a game-type, do not edit this.</td>
    </tr>
    <tr>
     <td>UPnP=<em>1</em></td>
     <td>Whether to enable (1) or disable (0) UPnP. When enabled, Warzone will try to automatically configure port forwarding in your router, if your router supports UPnP.</td>
    </tr>
    <tr>
     <td>visfog=<em>1</em></td>
     <td>Toggles the effect used for unexplored terrain: Black tiles (1) or dimmed tiles (0).<!--in 2.0.10 fog and visfog seem to be linked: fog-value is used to fill in visfog-value; so visfog is the same as fog oO --></td>
    </tr>
    <tr>
     <td>voicevol=<em>100</em></td>
     <td>Sets the volume for voices (weapon sounds etc.) ranging from 0 (no sound) to 100 (loudest).</td>
    </tr>
    <tr>
     <td>width=<em>640</em></td>
     <td>Sets the width of the resolution Warzone 2100 will use; equivalent to the WIDTH value of --resolution.</td>
    </tr>
   </table>
   <h3 id="cmdline">Command-line options</h3>
   <p>Additionally to the configuration-file Warzone 2100 can be started with different options and arguments.</p>
   <p>Notes: These options all have two dashes (--), not one dash only (-). Trying to use the options with one dash only will not work. The game will display a notice when trying to use invalid command-line options. Arguments that need paths need them in the form they are used on the operating system.</p>
   <table>
    <tr>
     <th>Option (<em>with arguments</em>)</th>
     <th>Effect</th>
    </tr>
    <tr>
     <td>--fullscreen</td>
     <td>Starts the game in fullscreen-mode.</td>
    </tr>
    <tr>
     <td>--window</td>
     <td>Starts the game in windowed mode.</td>
    </tr>
    <tr>
     <td>--resolution <em>WIDTHxHEIGHT</em></td>
     <td>Sets the resolution Warzone 2100 will use; usable for fullscreen mode and windowed mode.</td>
    </tr>
    <tr>
     <td>--shadows</td>
     <td>Enables shadows.</td>
    </tr>
    <tr>
     <td>--noshadows</td>
     <td>Disables shadows.</td>
    </tr>
    <tr>
     <td>--sound</td>
     <td>Enables sound.</td>
    </tr>
    <tr>
     <td>--nosound</td>
     <td>Disables sound.</td>
    </tr>
    <tr>
     <td>--datadir <em>path</em></td>
     <td>Sets the data-directory to the path specified.</td>
    </tr>
    <tr>
     <td>--configdir <em>path</em></td>
     <td>Sets the configuration-directory to the path specified.</td>
    </tr>
    <tr>
     <td>--savegame <em>name</em></td>
     <td>Loads a saved game.</td>
    </tr>
    <tr>
     <td>--cheat</td>
     <td>Enables the usage of cheats and debug-keys, see <a href="#cheats" title="Cheats" class="locallink">cheats</a> and <a href="#debugkeys" title="Debug-keys" class="locallink">debug-keys</a>.</td>
    </tr>
    <tr>
     <td>--help</td>
     <td>Outputs a help message and exits; only useful when run from command-line.</td>
    </tr>
    <tr>
     <td>--debug <em>option</em></td>
     <td>Shows debug information; <em>option</em> can be any of the following: all, main, sound, video, wz, 3d, texture, net, memory, error, script. If you want more than one option, you will have to use another --debug. The option "all" contains every other option.</td>
    </tr>
    <tr>
     <td>--debugfile <em>file</em></td>
     <td>Directs debug output to the specified file.</td>
    </tr>
    <tr>
     <td>--version</td>
     <td>Outputs the Warzone 2100 version and exits.</td>
    </tr>
    <tr>
     <td>--mod_ca <em>mod-file</em></td>
     <td>Enables the specified campaign mod. You have to specify the full name of the mod-file.</td>
    </tr>
    <tr>
     <td>--mod_mp <em>mod-file</em></td>
     <td>Enables the specified multiplayer mod. You have to specify the full name of the mod-file.</td>
    </tr>
    <tr>
     <td>--mod <em>mod-file</em></td>
     <td>Enables the specified mod globally - for campaign and multiplayer. You have to specify the full name of the mod-file. Global mods are only useful when things are changed that affect both, campaign and multiplayer.</td>
    </tr>
   </table>
   <p>Note: Some options have corresponding entries in the configuration-file and will persist from one start of Warzone 2100 to the next. For example starting the game with --nosound only once will silence it as long as you do not start it with --sound or change the corresponding value in the configuration file. <a href="http://developer.wz2100.net/CommandLineOptions" title="Command Line Options for Warzone 2100" hreflang="en">Further information on command-line options</a> can be found at the <a href="http://developer.wz2100.net/" title="Wiki for Warzone 2100" hreflang="en">Wiki of the Warzone 2100 Project</a>.</p>

   <h3 id="music">Music</h3>
   <p>A playlist-system is used that can point to any *.ogg in your warzone music path. However, if you just wish to play Warzone with your own music, it is far easier to turn off Warzone music and use an external music player such as iTunes.</p>
   <p>Warzone 2100 reads the playlist from the first location it is found, searching in this order:</p>
   <ul>
    <li>Warzone-directory in your personal directory:
     <ul>
      <li>GNU/Linux: ~/.warzone2100/music/music.wpl</li>
      <li>Windows: ~/My Documents/Warzone 2100/music/music.wpl</li>
      <li>Mac OS X: ~/Library/Application Support/Warzone 2100/music/music.wpl</li>
     </ul>
    </li>
    <li>Warzone-install-path:
     <ul>
      <li>&lt;whereverwarzoneisinstalled&gt;/music/music.wpl</li>
     </ul>
    </li>
   </ul>
   <p>The playlist is just a list of songs you want to be played in-game, one song per line. The only supported file format is Ogg Vorbis.</p>
   <p>Note: Since we are using PhysFS we recommend you to use only Latin letters in directory and file-names (more exactly this means: A to Z, a to z, 0 to 9, _-+ and space). You will receive the following error (running with --debug sound) if "bad" characters are used: Failed opening [[PATH TO FILE]]: Insecure filename.</p>
   <h3 id="multiplay">Multiplaying via internet</h3>
   <p>There are two methods to start a multiplayer-game via internet: using the host's IP or using the lobby-server. For both you should sure to be able to communicate on TCP-ports 2100 and 9999. Note that for port forwarding, you only need to configure your router to forward port 2100.</p>
   <p>You can choose whether to connect via Lobby or IP:</p>
   <ul>
    <li>If you choose IP, Warzone 2100 asks you for the IP-address of the host and will try to connect to that IP.</li>
    <li>If you choose Lobby, Warzone 2100 will connect to the lobby server, as long as the lobby-server-address in your configuration file has not been changed.</li>
   </ul>
   <p>You will see a list of games from which you can select one.</p>
   <p>You can kick unwanted players out of not-yet-started games by clicking left on them while holding the right mouse button.</p>
   <p>When you are hosting a game it will automatically be listed on the lobby server. If you do not want your games to be listed on the lobby-server, you have to change the entry "masterserver_name=lobby.wz2100.net" in your configuration file to something invalid as "nomasterserverplease".</p>
   <p>If you then want to see the games that are listed on the lobby server you may enter "lobby.wz2100.net" when prompted to enter the host's IP or change the entry in the configuration file back. You will have to restart Warzone 2100 in order for configuration changes to take effect.</p>
   <div class="rt">
    <p><a href="#top">back to top</a></p>
   </div>
   <hr/>


   <h2 id="cheats">Cheats</h2>
   <p>Like many other games Warzone 2100 features a certain set of cheats that can be used to have an advantage in the singleplayer-campaign and skirmish-games or to just help mod- and map-makers with testing. Cheats do not work in multiplayer-mode (except skirmish).</p>
   <h3 id="cheatmode">Cheat-mode</h3>
   <p>To be able to use cheats in the first place, you will have to start Warzone 2100 with the option --cheat. While playing, press shift and backspace simultaneously. An on-screen message should appear telling you that cheat-mode has been enabled. You can disable it using the same key combination again. Enabling/disabling cheat-mode is only possible while playing, not while in the menus.</p>
   <h3 id="cheatslists">Cheats lists</h3>
   <p>After activating cheat-mode cheats can be entered using the normal chat-function. Cheats are ordered by their use and where they can be used.</p>
   <h4 id="cheatsgp">General purpose cheats</h4>
   <p>General purpose cheats work in both, campaign-mode and skirmish/tutorial/fastplay.</p>
   <table>
    <tr>
     <th>Cheat</th>
     <th>Effect</th>
    </tr>
    <tr>
     <td>biffer baker</td>
     <td>Your units do more damage and are stronger</td>
    </tr>
    <tr>
     <td>double up</td>
     <td>Your units are twice as strong</td>
    </tr>
    <tr>
     <td>give all</td>
     <td>Allows you to build and research everything</td>
    </tr>
    <tr>
     <td>work harder</td>
     <td>All currently active research topics are instantly researched</td>
    </tr>
    <tr>
     <td>research all<!--not tested for campaign as 2.1-only--></td>
     <td>Everything is researched instantly</td>
    </tr>
   </table>
   <p>Note: Using 'give all' will make research topics available which have an artifact as 3D-model. Do not click those as this will cause the game to instantly crash.</p>
   <h4 id="cheatscampaign">Campaign-only cheats</h4>
   <table>
    <tr>
     <th>Cheat</th>
     <th>Effect</th>
    </tr>
    <tr>
     <td>easy</td>
     <td>Sets difficulty to easy</td>
    </tr>
    <tr>
     <td>normal</td>
     <td>Sets difficulty to normal</td>
    </tr>
    <tr>
     <td>hard</td>
     <td>Sets difficulty to hard</td>
    </tr>
    <tr>
     <td>get off my land</td>
     <td>Removes all enemy units</td>
    </tr>
    <tr>
     <td>kill</td>
     <td>Kills the selected units or building</td>
    </tr>
    <tr>
     <td>let me win</td>
     <td>You win the current mission</td>
    </tr>
    <tr>
     <td>time toggle</td>
     <td>Starts/stops the mission timer</td>
    </tr>
    <tr>
     <td>whale fin</td>
     <td>Toggles infinite power on and off; everything is for free</td>
    </tr>
    <tr>
     <td>superpower</td>
     <td>Gives you maximum power</td>
    </tr>
    <tr>
     <td>more power</td>
     <td>Adds 1000 power to your pool</td>
    </tr>
   </table>
   <p>Note: The difficulty cheats do not stack. This means that you cannot make the game easier by entering the easy-cheat multiple times.</p>
   <h4 id="cheatsmisc">Miscellaneous cheats</h4>
   <p>Cheats listed here do not have to be advantageous when used. Some are helpful for getting specific data or to help with debugging and thus aid people in working with the game.</p>
   <table>
    <tr>
     <th>Cheat</th>
     <th>Effect</th>
    </tr>
    <tr>
     <td>build info</td>
     <td>Outputs the build-date of the game</td>
    </tr>
    <tr>
     <td>count me</td>
     <td>Outputs the number of objects in the game</td>
    </tr>
    <tr>
     <td>deity</td>
     <td>Toggles the fog of war on and off</td>
    </tr>
    <tr>
     <td>demo</td>
     <td>Starts/stops the demonstration mode</td>
    </tr>
    <tr>
     <td>droidinfo</td>
     <td>Outputs unit information and statistics</td>
    </tr>
    <tr>
     <td>john kettley</td>
     <td>Cycles through different weathers: rain, snow and clear</td>
    </tr>
    <!--<tr>
     <td>mouseflip</td>
     <td>Inverts the left and right mouse buttons</td>
    </tr>-->
    <tr>
     <td>no faults</td>
     <td>Plays audio clip: "There are no faults in the renderer at the moment"</td>
    </tr>
    <tr>
     <td>sensors</td>
     <td>Toggles display of the sensor ranges of units and buildings on and off</td>
    </tr>
    <!--<tr>
     <td>shakey</td>
     <td>Toggles shaking of the screen on explosions</td>
    </tr>-->
    <tr>
     <td>timedemo</td>
     <td>Outputs network and renderer information</td>
    </tr>
   </table>
   <div class="rt">
    <p><a href="#top">back to top</a></p>
   </div>
   <hr/>


   <h2 id="debugkeys">Debug-keys</h2>
   <div class="rt">
    <p><a href="#top">back to top</a></p>
   </div>
   <hr/>


   <h2 id="hotkeys">Important hotkeys</h2>
   <table>
    <tr>
     <th>Hotkey</th>
     <th>Effect</th>
    </tr>
    <tr>
     <td>Ctrl + Tab</td>
     <td>toggle display of terrain in map</td>
    </tr>
    <tr>
     <td>Shift + Tab</td>
     <td>toggle friend/foe-colours in map
      <ul>
       <li>you: white</li>
       <li>ally: yellow</li>
       <li>foe: red</li>
      </ul>
     </td>
    </tr>
    <tr>
     <td>Alt + Enter (Linux + X11 only)</td>
     <td>toggle between fullscreen and windowed mode</td>
    </tr>
    <tr>
     <td>Alt + S</td>
     <td>toggle shadows</td>
    </tr>
    <tr>
     <td>Shift + Backspace</td>
     <td>allow/disallow usage of cheats</td>
    </tr>
    <tr>
     <td>Ctrl + O</td>
     <td>display debug-menu</td>
    </tr>
   </table>
   <div class="rt">
    <p><a href="#top">back to top</a></p>
   </div>
   <hr/>


   <h2 id="furtherinfo">Additional resources</h2>
   <ul>
    <li><a href="http://wz2100.net/" title="Home of the Warzone 2100 Project" hreflang="en">Homepage of the Warzone 2100 Project</a> (English)</li>
    <li><a href="https://sourceforge.net/projects/warzone2100/" title="Sourceforge project site for Warzone 2100" hreflang="en">Sourceforge project site of Warzone</a> (English)</li>
    <li><a href="http://developer.wz2100.net/" title="Wiki for Warzone 2100" hreflang="en">Warzone 2100-Wiki</a> (English)</li>
   </ul>
   <div class="rt">
    <p><a href="#top">back to top</a></p>
   </div>
   <hr/>
   <div id="fileinfo">
    <ul>
     <li>AUTHOR: <a href="mailto:kreuvf@warzone2100.de">Kreuvf</a>, <a href="mailto:zarel@wz2100.net">Zarel</a></li>
     <li>LAST UPDATE: 2009-12-14</li>
    </ul>
   </div>
  </div>
 </body>
</html>