Jump to Main Content

Technical Things

There is a command that will give you nearly all information on monsters; crossfire -m2.  An example of the result is: zombie  |    60|  35|  9|(very slow movement)(infravision)(undead)(Attacks: physical) (Immune: fear) (Protected: cold)|zombie|generate_zombie

To make the text screen (right hand side) of the crossfire display scrollable.. add -scrollines <number> to the options you use when you run cfclient.  You can use 'savedefaults after running the client and it will save that setting to a file so you won't need to supply it to future runs.

When using crossedit, any changes that require typing and it doesn´t appear to work.  Try downloading the latest CVS release (Makefile/configure.in problem.)  Another workaround is to see if your window manager has a focus lenience type setting and enable that - that should also allow input to work and may be easier to set than downloading the latest cvs release.

When creating a character (or allowing a character) to have DM access, put a line
into lib/dm_file
Then you can use " `dm Password " to become dm, and " `nodm " to turn it off again. IIRC the password _must_not_ be longer than 8 characters.

Upgrading the server: You can just install the new version over the old one; this should leave the player and apartment files intact. This also works for the maps, since they don't contain any information about the "current state". Things are a little more difficult if one of the apartment maps changes, but this probably isn't the case.

 What the files are for:

You can put sites into that file that you don't want to connect to your server (if the server is public).

  For your dm password.

  Should be obvious :-)

  A player sees this text when he logs in.

  A listing of the "temporary maps" It maps the "used" maps from lib/maps to some cft* file in your tmp-Directory. The idea is simple: when somebody enters a map is is read from lib/maps. When everybody has left the map the current state is saved in a "temporary map", so when somebody enters that map again the temporary map is read instead of the original one.
 The temporary map times out after a while (the map "resets").

If you want to reset a map you can just remove the corresponding temporary map --- crossfire will load the original map if there is no temporary map.

  Shoud be obvious: it has the help texts :-)

  That one has the maps. Nothing is ever changed here while the server is running.


  That one contains the contents of your private apartment (btw, I added these private apartments some time ago :-)).

  That one is your character.


These are the contents of the "oldstyle" apartments that everybody can enter. The main difference between the two types of apartments is that each player gets his very own private apartment (so you never run out of private apartments), whereas there is only a fixed number of oldstyle apartments (so I had to add new ones every now and then to accomodate new players...).

  Apartments have special floors that never "reset" --- the stuff that's located on such floors is stored in the apartment file. This means that some locations in an apartment map actually do reset, whereas others don't. The private apartment should be completely non-reset --- at least that's how I designed the map. They might have changed this, but I hope they didn't.

Basically lib/players and lib/unique-items contains the important stuff (these are the directories I backup each night). Hasn't changed much in 0.95.0.

 The files in lib/ are mostly descriptions of items, bitmaps etc.

 So, when you update the server, just make sure that the lib/players and lib/unique-items directories don't get removed.

You probably want to preserve the highscore and dm_file files as well (unless the highscore format has changed).