Sat, 15 Dec 2012 21:01:28 +0000
changeset 274 aae06d0bd175
parent 273 e165ada6aae2
child 275 910cde9995b8
permissions -rw-r--r--
Edited wiki page CommandLineOptions through web user interface.

#labels Documentation,Engine,Frontend
The basic parameters to pass to the Hedgewars frontend and engine control the location of the game data, configuration files and saves.

= Frontend =

There are two options that enable to load the data directory and the configuration directory in non standard locations.

  * {{{--data-dir=[path containing 'hedgewars/Data']}}}
  * {{{--config-dir=[path containing 'Demos' 'Saves' etc.]}}}

You can set up both on the command line. The program exits if either of the folders is not correct; quotes are optional, but needed if your path contains spaces

$ /usr/bin/hedgewars --data-dir="/opt/local/share/" --config-dir=".hedgewars/tesing config/"

= Engine =

It is possible to start a replay or save file directly from the terminal issuing the standalone {{{hwengine}}} utility with very simple syntax. 

== Standard Use ==
{{{$ hwengine [path to hedgewars folder] <path to data folder> <path to replay file>}}}

The hedgewars folder is optional, but may be useful if you have more than one installation.

The data folder is where you installed the game, or where you configured it at compile time.
By default it is contained in the following directory:

  * _Windows_: {{{%USERPROFILE%\Hedgewars}}}
  * _Linux_: {{{~/.hedgewars}}}
  * _Mac OS X_: {{{~/Library/Application Support/Hedgewars}}}

The replay file can be stored anywhere.

== Advanced Use ==
It is possible to specify settings by adding additional arguments:

  * {{{--locale [path to language file]}}} - Sets the game language
  * {{{--width [size]}}} - Starts the game with the given width (in pixels)
  * {{{--height [size]}}} - Starts the game with the given height (in pixels)
  * {{{--volume [level]}}} - Sets the volume level, possible values range from 0-100 (negative is muted)
  * {{{--frame-interval [interval]}}} - Sets minimum timer interval between each frame in milliseconds. Ex: 40 would make the game run at most 25 fps
  * {{{--raw-quality [flags]}}} - (For advanced users only). Manually specifies the reduced quality flags, see below. 
  * {{{--nomusic}}} - Disables music
  * {{{--nosound}}} - Disables sound
  * {{{--fullscreen}}} - Starts in fullscreen
  * {{{--showfps}}} - Shows a fps counter in the top right
  * {{{--altdmg}}} - Uses an alternative damage indicator
  * {{{--low-quality}}} - Lowers the game quality
  * {{{--stats-only}}} - Outputs the round information without launching the game
  * {{{--help}}} - Shows this list of command line options

Note: any modification to the command line arguments should be reflected in the autostart .desktop file.

== Deprecated Options ==

These options are outdated and may be removed in the future, please use the above options:

  * {{{--depth [color depth]}}}
  * {{{--set-video [screen width] [screen height] [color dept]}}}
  * {{{--set-audio [volume] [enable music] [enable sounds]}}}
  * {{{--set-other [language file] [full screen] [show FPS]}}}
  * {{{--set-multimedia [screen height] [screen width] [color dept] [volume] [enable music] [enable sounds] [language file] [full screen]}}}
  * {{{--set-everything [screen height] [screen width] [color dept] [volume] [enable music] [enable sounds] [language file] [full screen] [show FPS] [alternate damage] [timer value] [reduced quality]}}}

== Very Advanced Use (l33t only) ==
If you want to get your hands dirty and see how the engine interprets commands, you can check out the source code.

--raw-quality value is determined by combining the values of the flags you wish to enable.
Up to date variables (in hex) are online. [ uConsts.pas]

  * {{{qLowRes        = 1}}}
  * {{{rqBlurryLand   = 2}}}
  * {{{rqNoBackground = 4}}}
  * {{{rqSimpleRope   = 8}}}
  * {{{rq2DWater      = 16}}}
  * {{{rqAntiBoom     = 32}}}
  * {{{rqKillFlakes   = 64}}}
  * {{{rqSlowMenu     = 128}}}
  * {{{rqPlainSplash  = 256}}}
  * {{{rqClampLess    = 512}}}
  * {{{rqTooltipsOff  = 1024}}}
  * {{{rqDesyncVBlank = 2048}}}

Ex: to have blurry land and simple rope, you would use the number 10 (2+8)

== Some examples ==
let's see some *GOOD* examples

$ hwengine installpath/hedgewars/Data anywhere/replay.hwd
$ hwengine pathtohedgewars/ installpath/hedgewars/Data anywhere/replay.hwd --width 1024 --height 768
$ hwengine installpath/hedgewars/Data anywhere/replay.hwd --nosound

and some *BAD* examples

$ hwengine anywhere/replay.hwd
$ hwengine installpath/hedgewars/Data anywhere/replay.hwd --set-video 1024 768
$ hwengine installpath/hedgewars/Data anywhere/replay.hwd --nosound 1