====== Config.h ======
The file //config.h// is to be found in the //include// directory of the server source. \\
It contains many variables, that can be manually adjusted.
**Note:** The file //autoconf.h// contains all the variable defines, that were found or passed to the ./configure script.
===== TMPDIR ==
When configuring the server with a --prefix=/path variable, the TMPDIR still uses the definitions of the config.h file.
This is a bit unfortunate, because it prevents to run the server on multiple instances, \\
since the temporary map names would all be shared in the fixed location at **/tmp** for Linux.
If it is planned to add a --prefix to configure, then before running ''make'' it is probably useful \\
to adjust the TMPDIR variable to match --prefix .
Example: ./configure --prefix=/usr/games/crossfire-1.70.0 \\
should then make TMPDIR look as
''#define TMPDIR "/usr/games/crossfire-1.70.0/tmp"''
After ''make && make install'' then this TMPDIR needs to be manually created with the proper permissions.
mkdir /usr/games/crossfire-1.70.0/tmp
FIXME Proper permissions for TMPDIR
===== LOGFILE ==
As it is with the variable [[#TMPDIR]] , the LOGFILE variable is fixed set in config.h .
Despite the fact, that LOCALDIR would use the --prefix parameter in {prefix}/var , \\
the LOGFILE variable does not use {prefix} :-( .
On Linux the LOGFILE variable is by default set to ''#define LOGFILE "/var/log/crossfire/logfile"'' ; \\
Which then may need to create the // /var/log/crossfire// directory manually ( with proper permissions ) .
If it is planned to add a --prefix to configure, then before running ''make'' it is probably useful \\
to adjust the LOGFILE variable to match --prefix .
Example: ./configure --prefix=/usr/games/crossfire-1.70.0 \\
should then make LOGFILE look as
''#define LOGFILE "/usr/games/crossfire-1.70.0/var/log/crossfire-server-1.70.0.log"''
FIXME Proper permissions for LOGFILE
===== mapsize ==
The server has two pre-defined maximum mapsize values to send to the client : **MAP_CLIENT_X** and **MAP_CLIENT_Y** . \\
It is unfortunately not possible to set those in the //etc/crossfire/settings// file.
#define MAP_CLIENT_X 25
#define MAP_CLIENT_Y 25
Since the client supports a maximum of 31, it might be advised to set these two values to 31 also, \\
especially for local servers just consuming loop back (inerface lo) bandwidth.
===== NEW_MATERIAL_CODE ==
When this variable is enabled, the material of an item is displayed in the user's inventory and look window:
#define NEW_MATERIAL_CODE 1
Example :
>- 8 eight **bronze** throwing daggers (1213621) 13.2 kg
>- 1 **iron** long sword of Lythander (wielded) (1469332) 14.5 kg
>- 4 four **oak** clubs (1213628) 39.6 kg
>- 2 two **copper** axes (1213626) 13.2 kg
>- 1 **granite** stoneaxe (1213627) 8.5 kg
>- 1 **pine** bow * (1469324) 12.0 kg
>- 1 **iron** hauberk (worn) (1469337) 50.0 kg
>- 1 **cotton** robe * (1469308) 10.0 kg
>- 1 **leather** jack boots * (worn) (1469351) 6.5 kg
>- 1 **leather** pair of shoes * (1469367) 2.0 kg
>- 1 **iron** thief's gauntlets +2 (worn) (1469350) 1.8 kg
>- 2 two **organic** sharp bones +2 (1469296) 2.0 kg