1SPRING-HEADLESS(6)                   Games                  SPRING-HEADLESS(6)
2
3
4

NAME

6       spring-headless - An open source RTS game engine - Headless Engine
7

SYNOPSIS

9       spring-headless [--safemode] [-s|--server IP_OR_HOSTNAME]
10       [-p|--projectiledump] [--benchmark TIME [--benchmarkstart TIME]]
11       [-i|--isolation] [--isolation-dir PATH] [-n|--name STRING] [-C|--config
12       FILE] SCRIPT
13
14       spring-headless --list-ai-interfaces
15
16       spring-headless --list-skirmish-ais
17
18       spring-headless --list-def-tags
19
20       spring-headless --list-config-vars
21
22       spring-headless [-h|--help]
23
24       spring-headless --sync-version
25
26       spring-headless [-V|--version]
27

DESCRIPTION

29       Spring is a versatile 3D RTS game engine. Using extensively Lua for
30       scripting game-specific code to make nearly every aspect of the engine
31       customizable, from GUI, to unit AI, to pathfinding.
32
33       It is mainly designed around online multiplayer games but can also be
34       played in single-player mode against AIs.
35
36       This is the engine version without graphics or sound output. It still
37       runs the full simulation, while spring-dedicated basically only
38       redirects network traffic. It is useful for testing and simulating AI
39       only games at high speeds on systems without graphics and sound output
40       support.
41

OPTIONS

43       -h, --help
44           Print the options help message and exit
45
46       -V, --version
47           Display program version and exit
48
49       --sync-version
50           Display program sync version (for online gaming) and exit
51
52       --nocolor
53           Disables colorized stdout
54
55       --quiet
56           Ignore unreccognized arguments
57
58       --safemode
59           Turns off many things that are known to cause problems (i.e. on
60           PC/Mac’s with lower-end graphic cards)
61
62       -s, --server::'IP_OR_HOSTNAME'
63           Run as a server on the given address
64
65       -i, --isolation
66           Limit the data-dir (games & maps) scanner to one directory (see
67           --isolation-dir and the SPRING_ISOLATED env var)
68
69       --isolation-dir::'PATH'
70           Specify the isolation-mode data-dir (see --isolation and the
71           SPRING_ISOLATED env var)
72
73       --write-dir::'PATH'
74           Specify the directory used for all saving.
75
76       -n, --name::'NAME'
77           Set your player name
78
79       -C, --config::'FILE'
80           Exclusive configuration file
81
82       --list-ai-interfaces
83           Dump a list of available AI Interfaces to STDOUT
84
85       --list-skirmish-ais
86           Dump a list of available Skirmish AIs to STDOUT
87
88       --list-def-tags
89           Dump a list of available Definition Tags in JSON-format to STDOUT
90
91       --list-ceg-classes
92           Dump a list of available Projectile classes in JSON-format to
93           STDOUT
94
95       --list-config-vars
96           Dump all default config vars in JSON-format to STDOUT
97
98       -g, --game::'GAME'
99           instantly start the GAME with a minimal setup. Requires --map to be
100           present, too. Sets the modoption minimalsetup = 1
101
102       -m, --map::'MAP'
103           Requires --game to be set, too. see --game
104

FILES

106           ~/.config/spring/
107
108       The default data-directory (see section DATA DIR).
109
110           ~/.config/spring/springsettings.cfg
111
112       Contains the users settings for the engine, for things like graphic and
113       sound.
114
115           /etc/spring/datadir
116
117       Contains the : separated paths to additional data-dirs (see section
118       DATA DIR).
119

ENVIROMENT VARIABLES

121       SPRING_LOG_SECTIONS Selective functionality to change the verbosity
122       (separated by ,).
123
124       SPRING_WRITEDIR Define custom primary write DATA DIR. Place where
125       spring saves logs, settings, ...
126
127       SPRING_DATADIR Adds additional DATA DIRs Spring will search for files
128       (separated by :).
129
130       SPRING_ISOLATED If defined, Spring will stop searching files outside of
131       the binaries directory. If it is set to a valid directory path, it will
132       be used as the isolation directory. See the --isolation and the
133       --isolation-dir options.
134
135       SPRING_NOCOLOR Same as spring --nocolor.
136

SCRIPT

138       Can either be a:
139
140       ·   Spring URL (spring://[username[:password]@]host[:port])
141
142       ·   start script (often named script.txt)
143
144       ·   replay file (*.sdf)
145
146       ·   save game (*.ssf)
147

PORTABLE MODE

149       An all-in-one-folder setup, which allows to run Spring without
150       installation. To do so all relevant files (binaries & basecontent) must
151       be in a single folder, esp. spring(.exe), libunitsync.so/unitsync.dll
152       and springsettings.cfg. Spring will then use the all-in-one-folder for
153       writing and won’t do so anywhere else on the system, but it may open
154       other files & directories for reading.
155

ISOLATION MODE

157       Not to confuse with Portable Mode, this mode disables all automatic
158       Data Dir scanning and limit reading & writing to a single folder. This
159       is very useful when games want to run separate from other Spring games.
160       Isolation mode can be enabled by placing an empty isolated.txt next to
161       the spring executable or by setting SPRING_ISOLATED env var.
162

DATA DIRS

164       Data directories are searched for content, and among other things, may
165       contain:
166
167       ·   config files
168
169       ·   logs
170
171       ·   games
172
173       ·   maps
174
175       ·   AIs
176
177       ·   cache
178
179       Sorted by priority the engine may use multiple data directories, but it
180       will use only the one with the highest priority as writable, to write
181       cache & log files to. The hierarchy the engine loads DATA DIRs in can
182       be grouped in 3 sections:
183
184       ┌─────────┬─────────────┬─────────────────┬─────────────────┬─────────────────┐
185priority section   normal      portable     isolation    
186       ├─────────┼─────────────┼─────────────────┼─────────────────┼─────────────────┤
187       │         │             │                 │                 │                 │
188       │    high │ custom user │ directory       │ directory       │ directory       │
189       │         │ write       │ defined via     │ defined via     │ defined via     │
190       │         │             │ --write-dir     │ --write-dir     │ --write-dir     │
191       │         │             │                 │                 │                 │
192       │         │             │ SPRING_WRITEDIR │ SPRING_WRITEDIR │ SPRING_WRITEDIR │
193       │         │             │ envvar          │ envvar          │ envvar          │
194       ├─────────┼─────────────┼─────────────────┼─────────────────┼─────────────────┤
195       │         │             │                 │                 │                 │
196       │         │ automatic   │ CONFIG_HOME     │ INSTALL_DIR     │ ISOLATION_DIR   │
197       │         │ scanned     │                 │                 │                 │
198       │         │             │ ETC_DIRS        │ CONFIG_HOME     │                 │
199       │         │             │                 │                 │                 │
200       │         │             │ USR_SHARE       │ ETC_DIRS        │                 │
201       │         │             │                 │                 │                 │
202       │         │             │                 │ USR_SHARE       │                 │
203       ├─────────┼─────────────┼─────────────────┼─────────────────┼─────────────────┤
204       │         │             │                 │                 │                 │
205       │     low │ custom user │ SPRING_DATADIR  │ SPRING_DATADIR  │ SPRING_DATADIR  │
206       │         │ read        │ envvar          │ envvar          │ envvar          │
207       │         │             │                 │                 │                 │
208       │         │             │ SpringData      │ SpringData      │ SpringData      │
209       │         │             │ configtag       │ configtag       │ configtag       │
210       └─────────┴─────────────┴─────────────────┴─────────────────┴─────────────────┘
211
212       CONFIG_HOME
213           Config directories in user’s home.
214
215           *nix/MacOSX:
216               ${XDG_CONFIG_HOME-"~/.config"}/spring
217
218               ~/.spring
219
220           Windows:
221               C:/.../My Documents/My Games/Spring/
222
223               C:/.../My Documents/Spring/
224
225               C:/.../All Users/Applications/Spring/
226
227       INSTALL_DIR Location of spring-headless binary.
228
229       ETC_DIRS Additional : separated DATA DIRs defined in
230       /etc/spring/datadir.
231
232       USR_SHARE
233           *nix/MacOSX: /usr/.../share/spring & binary dir if is Data Dir
234
235           MacOSX: .../Spring.app/Contents/Resources/share/games/spring/base/
236
237           Windows: Install directory
238
239       ISOLATION_DIR
240           Mode A (--isolation): INSTALL_DIR
241
242           Mode B (--isolation-dir): supplied dir
243

CONFIG FILES

245       Spring can load configurations from multiple files and merge them. So
246       similar to DATA DIRs there is one file where the engine writes to and
247       multiple read-only files.
248
249       It scans following directories for config files :
250
251       ┌──────────┬────────────────────────────────────────────────┐
252priority  scanned directories                            
253       ├──────────┼────────────────────────────────────────────────┤
254       │          │                                                │
255       │exclusive │ file defined via --config                      
256       │          │ (when defined only this is                     │
257       │          │ loaded)                                        │
258       ├──────────┼────────────────────────────────────────────────┤
259       │          │                                                │
260       │     high │ write DATA DIR                                 │
261       ├──────────┼────────────────────────────────────────────────┤
262       │          │                                                │
263       │          │ (skipped in Isolated mode)                     │
264       │          │                                                │
265       │          │ *nix/MacOSX: ~/.springrc                       │
266       │          │                                                │
267       │          │ Windows:                                       │
268       │          │ C:\Users\USER\AppData\Local\springsettings.cfg │
269       ├──────────┼────────────────────────────────────────────────┤
270       │          │                                                │
271       │      low │ all read DATA DIRs                             │
272       └──────────┴────────────────────────────────────────────────┘
273
274       (The one with highest priority will be used for writing.)
275
276       The filename of such config files can be as following:
277
278       ┌─────────┬─────────────────────────────────────┐
279priority filenames                           
280       ├─────────┼─────────────────────────────────────┤
281       │         │                                     │
282       │    high │ springsettings-%Engine_Version%.cfg │
283       ├─────────┼─────────────────────────────────────┤
284       │         │                                     │
285       │         │ springsettings.cfg                  │
286       ├─────────┼─────────────────────────────────────┤
287       │         │                                     │
288       │         │ springrc-%Engine_Version%           │
289       │         │ (*nix/MacOSX only)                  │
290       ├─────────┼─────────────────────────────────────┤
291       │         │                                     │
292       │     low │ springrc (*nix/MacOSX only)         │
293       └─────────┴─────────────────────────────────────┘
294
295       (An example for a versioned config file is "springsettings-94.1.cfg".)
296

SEE ALSO

298       spring(6) spring-legacy(6) spring-dedicated(6)
299

HOMEPAGE

301       More information about Spring can be found at link:
302       http://springrts.com
303

AUTHOR

305       Spring was written by the Spring developers.
306
307       This manual page was written by Marco Amadori
308       <marco.amadori@gmail.com[1]>, for the Debian project (and may be used
309       by others).
310

NOTES

312        1. marco.amadori@gmail.com
313           mailto:marco.amadori@gmail.com
314
315
316
317Spring package                    01/18/2018                SPRING-HEADLESS(6)
Impressum