Provided by: spring_105.0.1+dfsg-4_amd64 

NAME
spring - An open source RTS game engine - Default Engine
SYNOPSIS
spring [-f|--fullscreen] [-w|--window] [-m|--minimise] [--safemode] [-s|--server IP_OR_HOSTNAME]
[-p|--projectiledump] [-t|--textureatlas] [--benchmark TIME [--benchmarkstart TIME]] [-i|--isolation]
[--isolation-dir PATH] [-n|--name STRING] [-C|--config FILE] [SCRIPT]
spring --list-ai-interfaces
spring --list-skirmish-ais
spring --list-def-tags
spring --list-config-vars
spring [-h|--help]
spring --sync-version
spring [-V|--version]
DESCRIPTION
Spring is a versatile 3D RTS game engine. Using extensively Lua for scripting game-specific code to make
nearly every aspect of the engine customizable, from GUI, to unit AI, to pathfinding.
It is mainly designed around online multiplayer games but can also be played in single-player mode
against AIs.
The engine can run graphics and simulation in two separate threads, depending on the game and engine
settings. This will typically boost the performance on multi-core systems.
OPTIONS
-h, --help
Print the options help message and exit
-V, --version
Display program version and exit
--sync-version
Display program sync version (for online gaming) and exit
--nocolor
Disables colorized stdout
--quiet
Ignore unreccognized arguments
-f, --fullscreen
Run in fullscreen mode
-w, --window
Run in windowed mode
-b, --minimise
Start in background (minimised)
--safemode
Turns off many things that are known to cause problems (i.e. on PC/Mac’s with lower-end graphic
cards)
-s, --server::'IP_OR_HOSTNAME'
Run as a server on the given address
-t, --textureatlas
Dump each finalised textureatlas into textureatlasN.tga
--benchmark::'TIME'
Enable benchmark mode (writes a benchmark.data file). The given number specifies the timespan to
test.
--benchmarkstart::'TIME'
Benchmark start time in minutes.
-i, --isolation
Limit the data-dir (games & maps) scanner to one directory (see --isolation-dir and the
SPRING_ISOLATED env var)
--isolation-dir::'PATH'
Specify the isolation-mode data-dir (see --isolation and the SPRING_ISOLATED env var)
--write-dir::'PATH'
Specify the directory used for all saving.
-n, --name::'NAME'
Set your player name
-C, --config::'FILE'
Exclusive configuration file
--list-ai-interfaces
Dump a list of available AI Interfaces to STDOUT
--list-skirmish-ais
Dump a list of available Skirmish AIs to STDOUT
--list-def-tags
Dump a list of available Definition Tags in JSON-format to STDOUT
--list-ceg-classes
Dump a list of available Projectile classes in JSON-format to STDOUT
--list-config-vars
Dump all default config vars in JSON-format to STDOUT
-g, --game::'GAME'
instantly start the GAME with a minimal setup. Requires --map to be present, too. Sets the modoption
minimalsetup = 1
-m, --map::'MAP'
Requires --game to be set, too. see --game
FILES
~/.config/spring/
The default data-directory (see section DATA DIR).
~/.config/spring/springsettings.cfg
Contains the users settings for the engine, for things like graphic and sound.
/etc/spring/datadir
Contains the : separated paths to additional data-dirs (see section DATA DIR).
ENVIROMENT VARIABLES
SPRING_LOG_SECTIONS Selective functionality to change the verbosity (separated by ,).
SPRING_WRITEDIR Define custom primary write DATA DIR. Place where spring saves logs, settings, ...
SPRING_DATADIR Adds additional DATA DIRs Spring will search for files (separated by :).
SPRING_ISOLATED If defined, Spring will stop searching files outside of the binaries directory. If it is
set to a valid directory path, it will be used as the isolation directory. See the --isolation and the
--isolation-dir options.
SPRING_NOCOLOR Same as spring --nocolor.
SCRIPT
Can either be a:
• Spring URL (spring://[username[:password]@]host[:port])
• start script (often named script.txt)
• replay file (*.sdfz)
• save game (*.ssf)
PORTABLE MODE
An all-in-one-folder setup, which allows to run Spring without installation. To do so all relevant files
(binaries & basecontent) must be in a single folder, esp. spring(.exe), libunitsync.so/unitsync.dll and
springsettings.cfg. Spring will then use the all-in-one-folder for writing and won’t do so anywhere else
on the system, but it may open other files & directories for reading.
ISOLATION MODE
Not to confuse with Portable Mode, this mode disables all automatic Data Dir scanning and limit reading &
writing to a single folder. This is very useful when games want to run separate from other Spring games.
Isolation mode can be enabled by placing an empty isolated.txt next to the spring executable or by
setting SPRING_ISOLATED env var.
DATA DIRS
Data directories are searched for content, and among other things, may contain:
• config files
• logs
• games
• maps
• AIs
• cache
Sorted by priority the engine may use multiple data directories, but it will use only the one with the
highest priority as writable, to write cache & log files to. The hierarchy the engine loads DATA DIRs in
can be grouped in 3 sections:
┌──────────┬───────────────────┬───────────────────┬───────────────────┬───────────────────┐
│ priority │ section │ normal │ portable │ isolation │
├──────────┼───────────────────┼───────────────────┼───────────────────┼───────────────────┤
│ │ │ │ │ │
│ high │ custom user write │ -e directory │ -e directory │ -e directory │
│ │ │ defined via │ defined via │ defined via │
│ │ │ --write-dir │ --write-dir │ --write-dir │
│ │ │ │ │ │
│ │ │ SPRING_WRITEDIR │ SPRING_WRITEDIR │ SPRING_WRITEDIR │
│ │ │ envvar │ envvar │ envvar │
├──────────┼───────────────────┼───────────────────┼───────────────────┼───────────────────┤
│ │ │ │ │ │
│ │ automatic scanned │ -e CONFIG_HOME │ -e INSTALL_DIR │ ISOLATION_DIR │
│ │ │ │ │ │
│ │ │ ETC_DIRS │ CONFIG_HOME │ │
│ │ │ │ │ │
│ │ │ USR_SHARE │ ETC_DIRS │ │
│ │ │ │ │ │
│ │ │ │ USR_SHARE │ │
├──────────┼───────────────────┼───────────────────┼───────────────────┼───────────────────┤
│ │ │ │ │ │
│ low │ custom user read │ -e SPRING_DATADIR │ -e SPRING_DATADIR │ -e SPRING_DATADIR │
│ │ │ envvar │ envvar │ envvar │
│ │ │ │ │ │
│ │ │ SpringData │ SpringData │ SpringData │
│ │ │ configtag │ configtag │ configtag │
└──────────┴───────────────────┴───────────────────┴───────────────────┴───────────────────┘
CONFIG_HOME
Config directories in user’s home.
*nix/MacOSX:
${XDG_CONFIG_HOME-"~/.config"}/spring
~/.spring
Windows:
C:/.../My Documents/My Games/Spring/
C:/.../My Documents/Spring/
C:/.../All Users/Applications/Spring/
INSTALL_DIR Location of spring binary.
ETC_DIRS Additional : separated DATA DIRs defined in /etc/spring/datadir.
USR_SHARE
*nix/MacOSX: /usr/.../share/spring & binary dir if is Data Dir
MacOSX: .../Spring.app/Contents/Resources/share/games/spring/base/
Windows: Install directory
ISOLATION_DIR
Mode A (--isolation): INSTALL_DIR
Mode B (--isolation-dir): supplied dir
CONFIG FILES
Spring can load configurations from multiple files and merge them. So similar to DATA DIRs there is one
file where the engine writes to and multiple read-only files.
It scans following directories for config files :
┌───────────┬────────────────────────────────────────────────┐
│ priority │ scanned directories │
├───────────┼────────────────────────────────────────────────┤
│ │ │
│ exclusive │ file defined via --config (when │
│ │ defined only this is loaded) │
├───────────┼────────────────────────────────────────────────┤
│ │ │
│ high │ write DATA DIR │
├───────────┼────────────────────────────────────────────────┤
│ │ │
│ │ -e (skipped in Isolated mode) │
│ │ │
│ │ *nix/MacOSX: ~/.springrc │
│ │ │
│ │ Windows: │
│ │ C:\Users\USER\AppData\Local\springsettings.cfg │
├───────────┼────────────────────────────────────────────────┤
│ │ │
│ low │ all read DATA DIRs │
└───────────┴────────────────────────────────────────────────┘
(The one with highest priority will be used for writing.)
The filename of such config files can be as following:
┌──────────┬─────────────────────────────────────┐
│ priority │ filenames │
├──────────┼─────────────────────────────────────┤
│ │ │
│ high │ springsettings-%Engine_Version%.cfg │
├──────────┼─────────────────────────────────────┤
│ │ │
│ │ springsettings.cfg │
├──────────┼─────────────────────────────────────┤
│ │ │
│ │ springrc-%Engine_Version% │
│ │ (*nix/MacOSX only) │
├──────────┼─────────────────────────────────────┤
│ │ │
│ low │ springrc (*nix/MacOSX only) │
└──────────┴─────────────────────────────────────┘
(An example for a versioned config file is "springsettings-94.1.cfg".)
SEE ALSO
spring-legacy(6) spring-headless(6) spring-dedicated(6)
HOMEPAGE
More information about Spring can be found at link: https://springrts.com
AUTHOR
Spring was written by the Spring developers.
This manual page was written by Marco Amadori <marco.amadori@gmail.com[1]>, for the Debian project (and
may be used by others).
NOTES
1. marco.amadori@gmail.com
mailto:marco.amadori@gmail.com
Spring package 11/23/2021 SPRING(6)