User Tools

Site Tools


server:compiling_the_server:config_h

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
server/compiling_the_server/config_h.txt · Last modified: 2018/04/20 11:22 by karl