When the server is started, it recognizes the following parameters;
most of them have corresponding environment variables .
_say_server_help(){ cat >&1 <<EoI The server does not recognize --long options. $CMDNAME -help Flags: -csport <port> Specifies the port to use for the new client/server code. -d Turns on some debugging. +d Turns off debugging (useful if server compiled with debugging as default). -detach The server will go in the background, closing all connections to the tty. -h Display this information. -log <file> Specifies which file to send output to. Only has meaning if -detach is specified. -mon Turns on monster debugging. -o Prints out info on what was defined at compile time. -s Display the high-score list. -score <name or class> Displays all high scores with matching name/class. -v Print version and contributors. -conf Sets the configuration dir (settings, motd, etc.) -data Sets the lib dir (archetypes, treasures, etc.) -local Read/write local data (hiscore, unique items, etc.) -maps Sets the directory for maps. -arch Sets the archetype file to use. -regions Sets the regions file to use. -playerdir Sets the directory for the player files. -templatedir Sets the directory for template generate maps. -treasures Sets the treasures file to use. -uniquedir Sets the unique items/maps directory. -tmpdir Sets the directory for temporary files (mostly maps.) -m Lists out suggested experience for all monsters. -m2 Dumps out abilities. -m3 Dumps out artifact information. -m4 Dumps out spell information. -m5 Dumps out skill information. -m6 Dumps out race information. -m7 Dumps out alchemy information. -m8 Dumps out gods information. -m9 Dumps out more alchemy information (formula checking). -mt <name> Dumps out list of treasures for a monster. EoI exit }
Syntax : -csport <portnumber>
The default port-number for the crossfire server is 13327 .
If you want to run it for another port, or even want to host multiple instances of the server, then it needs to assign a different port number for each instance that runs.
Should print out the version of the server binary.
That worked until at least v1.12.0 somewhat, but later servers would not print anything into the terminal, since some code changes in regards to the message stream between the server and the client had been changed, that made the usage of older clients on newer v1.50 servers and beyond partly unusable and the other way too.
The problem is the void version(object *op) in server/server/server.c , that is called by static void call_version(void) in server/server/init.c with the NULL parameter.
The function version is also used by the player command version and since v1.50 uses a draw_ext_info_format that apparently fails to check for the direction of the output. The older servers used the new_draw_info_format function. These *_draw_*_info_* functions are to be found in server/socket/info.c .
Example output :
This is Crossfire v1.11.0
This is Crossfire v1.12-beta
[NULL]