User Tools

Site Tools


Player Commands

Much of this information is copied from the server files (server/lib/help). All commands can be issued by using the meta-command “'” from a client.



Toggles the Away From Keyboard (AFK) status of the player.

When the command is typed, the final status is shown:

You are now AFK
You are no longer AFK

The AFK status affects the output of the 'who command. For example:

Total Players in The World. (2) -- WIZ(0) AFK(1) BOT(0)

FIXME - clarify documentation here and in the server help.


Apply applies an object.

If no options are given, it applies the first object you are standing on or in the open container (if any).

Consumable items will be used up (food, potions, balms, etc.) Wearables (armor, weapons, wands, etc.) will toggle between applied/unapplied state.

If an object name is given, it will apply that object. If more than one item matches the given name it will apply the first one it encounters. You may want to rename your items conveniently.

Extra options to apply:

  • -a: Always applies the object (disabling toggle feature).
  • -u: Always unapplies the object (disabling toggle feature). Containers are opened if they were applied and closed if they were open.
  • -o: Always open a container regardless of previous state.
  • -b: Only apply an item on the ground or in the open container. Containers on the ground switch between open and closed.


Applymode controls what happens when you are equipping something that would require something else to be unequipped.

The options are:

  • nochoice: In this case, if there is no choice for the item(s) being removed in order to equip your new item. An example of this is a wand - there can only be one other item needed to be unequipped for the new item to be equipped. Note that in the case of two handed objects, like bows, it can result in two (or more) items being unequipped to equip your new item.
  • never: In this case, it will never unequip something for you. It will instead tell you want you need to unequip - this can be a list of many objects.
  • always: This will unequip whatever is needed to equip your new item.

An example of how the above works:

If your character currently has two rings, and tries to equip a third, the nochoice mode will print the two rings you currently have equipped. The always mode will unequip one of the rings in your inventory. The ring unequipped is fairly indeterminate - it depends on how the server has ordered your inventory (which is not the same as the order your window displays).

If your character is currently wearing a suit of armor, and you try to equip another suit, both nochoice and always will cause the new suit to get equipped.

See Also: apply



bind [-nfregc] <command>

Flags (default -nrf):

  • n - used in normal-mode
  • f - used in fire-mode
  • r - used in run-mode
  • e - leave command in line edit
  • g - global key (not recommended)
  • c - Java client only: bind for this character only, this can be convenient if you play multiple characters

Multiple commands can be bound to the same key be separating them with semicolons.

Special bind's:
  • bind commandkey - sets commandkey
  • bind firekey1 - sets first firekey
  • bind firekey2 - sets second firekey
  • bind runkey1 - sets first runkey
  • bind runkey2 - sets second runkey
  • bind prevkey - shows last cmdline command from history
  • bind nextkey - when have used prevkey, goes forth in cmdline history
bind -f cast paralyze (F3)

will typically mean that Shift-F3 is used to select that spell (Shift being the fire key)

bind use_skill sense curse; use_skill sense magic (S)

will bind those two commands to the S key.

The keybindings are stored in the keys file inside the hidden .crossfire directory of your HOME folder.
Sometimes it makes sense to edit that file in a simple text-editor,
especially when many keybindings are to be added,
instead of using the bind command in the commandline all the time.

See Also : unbind


Displays three columns of information about the character's body - notably slots where equipment may be applied. The first column is the name of the body location. The second column is how many of those locations your body has. The third column is how many slots in that location are available in your range slot.

For example:

on your arm                        2     0
on your body                       1     0
on your head                       1     0
around your neck                   1     0
in your skill slot                 1     0
on your finger                     2     0
around your shoulders              1     0
on your feet                       2     2
on your hands                      2     0
around your wrists                 2     0
around your waist                  1     0
around your legs                   2     2

FIXME - clarify documentation here and in the server help. Server help does not exist, but the command outputs help when it is run.


Bowmode controls how you will fire arrows and bolts.

The options are:
  • Normal: As you would expect.
  • Threewide: Fires three arrows in parallel.
  • Spreadshot: Fires three arrows which spread out over distance.
  • Fire<direction>: Locks in the direction the missiles will fire, specify by compas position: firenorth, firene, fireeast, firese, firesouth, firesw, firewest, firenw
  • Bestarrow: Selects and fires the probable best arrow for from your inventory.


When you enter the 'brace' command to brace your character, your character will no longer move.
It can still attack adjoining spaces.
Bracing can be useful to hold a location.

When you are braced, you lose your dex bonus and incur a 2 point ac penalty beyond that (if you have a negative dex bonus, you may in fact come out ahead.
You also only get 20% of the normal experience for killing creatures, and incure a 4 point wc (to hit) penalty.

See also braced .


You use the cast command to set your range-weapon to the spell you want.

'cast burning hands

sets your RANGE weapon to 'spell: burning hands'

If you don't know the spell, shows which spells you do know.

It is helpful to bind strings like 'cast burning hands' to keys. see 'help bind'

'help range for more information on range weapons.


Cause all text (chat, shouts, attack and action information, et al.) displayed in the client to be removed or purged.

Client-specific command: gtk-v2, gtk, x11

FIXME - clarify documentation here and in the server help.


Mark an item (such as an empty potion bottle) and then use the apply command while standing over a fountain for a chance to fill the bottle (or other objects) with water for drinking.


Travelers refilling their empty bottles at fountains around the world often claim that water from their home town tastes the best. This apparent conundrum was settled by leading alchemists from Nurnberg, who found no material differences between bottles of water collected from various fountains around the world.

Still, this was not enough reason to sway the fanciful; some claim that fantastic things happen when they 'dip' their empty bottles or other belongings into fountains.


An alternative form of use_skill disarm traps.

server/trunk/server/c_object.c code comments suggest: These functions (command_search, command_disarm) are really just wrappers for things like 'use_skill …'. In fact, they should really be obsoleted and replaced with those.



'dm password

Become a dungeon master. The server must be configured to allow the player to become a dungeon master or else the message Sorry Pal, I don't think so. is displayed.

Upon success, the server responds:

The Dungeon Master has arrived!
Ok, you are the Dungeon Master!

All players see a The Dungeon Master has arrived! message.



'dmhide password

An alternative to the dm command. The server must be configured to allow the player to become a dungeon master or else the message Sorry Pal, I don't think so. is displayed.

Upon success, the system responds:

Ok, you are the Dungeon Master!
Other players will no longer see you.
//Player// leaves the game.
//Player// left the game.

It appears to other players that a player logged off rather than indicating that he is now a dungeon master.


Drop usage:

'drop [number] name

name is the name of the item(s) to drop. It may match multiple items. The name is matched against the start of the objects in your inventory. The name matching is case insensitive.

There are a few special name values:
  • all - matches any item.
  • unpaid - matches unpaid items
  • cursed - drops items known to be cursed or damned.
  • unlocked - drops items not locked in your inventory

number is optional. This acts as the number of the object to drop. The objects number must be at least the number for it to be dropped. For example, if you do 'drop 10 scroll', only groupings of 10 or more scrolsl will be dropped. A collection of 5 scrolls will not be dropped.

See also 'dropall' and mouse button control within client for dropping objects.



dropall [type]

dropall drops all items in your inventory to the ground, excepting locked items. The type parameter will also control what is dropped:

  • 'empty' (eg, nothing speciified) - drops all objects except food, money, keys, and containers.
  • weapons - drops weapons, bows, and arrows.
  • armor (armour) - drops armor, shield, and helmets.
  • misc - drops horns, books, girdles, amulets, rings, cloaks, boots, gloves, bracers, scrolls, wands, rods, and potions.

See also 'drop' and mouse button control for dropping objects.



empty item

item should be a container.

If “all” is specified, all containers are emptied.



examine item

Show detailed information about an item. If the item is not specified, the information will be about an item the character is standing on. If item is specified, information about one thing is shown. item may be a partial match. Ie. examine scrol shows information about a scroll.




This command must be enabled by a crossfire server administrator. The default settings leave this command disabled such that the server responds Explore mode is disabled on this server, sorry..

FIXME - Add documentation here and in the server help.



face <direction>

face <direction> changes the direction you are facing without taking any other action.


Turns on fire mode. Normally this is done automatically when using the fire key + direction combination. However, it is possible to invoke it manually, in which case the character will commence firing as quickly as possible in whatever direction is specified after the command is issued, either by the arrow keys, or by typing it out.

To cease fire, use the command fire_stop.

To make a script or keybinding fire a single time in a particular direction, prefix the direction to the fire command. Exemplia gratia, “east fire”


Cancels fire mode. Normally this is done automatically when using the fire key+direction combination. However, if one's character becomes stuck in fire mode, issuing this command should return it to normal.

Especially when using the fire command in scripts, to fire a skill like punching onto a spot, then the fire command should be terminated by fire_stop immediately. When a script exits then the player is still firing and he is in a distressed situation, it is very uncomfortable to type in fire_stop in the command line.


Calls the object_sum_weight() and fix_object() server functions on the player's character.

FIXME - Add documentation here and in the server help.


A variant of the take command that allows an item count to be specified. For example:

get 10 platinum

Another useful count is `all' to act like pickup 4 and pickup 5:

get all

FIXME - Add documentation in the server help


FIXME - Add documentation here and in the server help. The give command is not listed by help commands.


The invoke command is used to cast a spell immediately, or when it is necessary to give a parameter to the spell. Invoke will not set the range weapon.

  • 'invoke restoration
  • 'invoke magic rune of large fireball
  • 'invoke reincarnation of Iamdead
  • 'invoke create food of waybread

It is very helpful to bind healing spells to keys like this:

'bind invoke medium healing

the c key now casts medium healing instantly


The killpets command is a quick and convenient way to get rid of all your pets when they are no longer useful or are getting in the way. Any equipment they had will be left behind, but you will get no experience for their death. However, it kills them instantaneously.

If a name is specified then only pets with that name will be killed, eg killpets bat will kill bats but not bees. If a number is specified, the pet corresponding to that number is killed.


Lists the player's current language settings and the server supported settings.

  Your current language is set to: English
  Available languages:
  en: English
  fr: Français
  nl: Nederlands
  it: Italiano
  de: Deutsch

To set the player's language, specify the language command with a two-letter language identifier after it.

language en
  Your language setting has been changed to: English

If translations for particular language are missing or incomplete, english messages are output by default.


Listen, sets the level of messages you will hear.

If no parameters are set, the current listen level is shown:

  Set listen to what (presently 10)?

If a numeric listen level is specified, the follow message is output:

listen 10
  Your verbose level is now 10.

FIXME: Document the meaningful listen levels and what they do.


Toggle the lock status of an item inventory. Locked items cannot be accidentally dropped.

Specify the name of the item to lock or unlock as a parameter.

  Lock what item?
lock rucksack
  Locked rucksack
lock rucksack
  Unlocked rucksack


mark is used to mark items for items that apply other items. Examples of these are flint & steel marked for apply torches, a weapon marked for improve weapon scrolls.

mark without options shows your currently marked item.

usage is as follows:

  • mark sword +3
  • mark three torches
  • mark sword

mark will look for best match first, and then look for matches based on shortened name, object name, archetype name. It prints the match it finds.


The output count and sync commands are obsoleted as of server commit to SVN on 2009-08-14. The output count and sync feature is now client-side. The gtk-v2 implementation went stable 2009-09-03. jxclient has a client-side implementation as well. The gtk-v2 uses a fully graphical configuration dialog - not a command-based interface.

As of version 0.91.7, new output handling was added. The behaviour is controlled with the output-sync and output-count commands.

  • output-sync controls how often information is sent to the screen. Each buffer has its own time value, and will be flushed independantly. The default value is 16 ticks (about 2 seconds).
  • output-count sets after how many messages of the same type, they are then printed out. If the value was 10, then after killing ten orcs, the message '10 times you kill orc' would be printed out. The default value is 1 - this means that all messages get printed out as they are requested - buffering is disabled in this regard.


see output


see output


  • party join partyname

Puts you in a party, prompts you for a passwd if there is one

  • party form partyname

Forms a party and puts you as leader, 32 character max. At the moment, being party leader does nothing. May be used in the future.

  • party list

Lists currently formed parties and their 'leader'

  • party passwd <password>

Changes the passwd for the party you are in, 8 character max.

  • party who

lists the members of the party you are in

  • party say <msg>

sends messsage to party members. One may also use gsay instead.

  • party leave

takes you out of current party


Controls whether to rejoin or not party at login.

Valid modes are:

  • no: don't rejoin party
  • if_exists: if the party exists when you login, and has the same password as when you logged off, you'll join it
  • always: if the party doesn't exist, create it with last password; else behaves like if_exists.

With no argument, displays the mode.


Change the character's password.

Command to request a password change. Either enter a new password at the resulting prompt, or simply press <Enter> to cancel.

Password change.
Please enter your current password, or empty string to cancel.

Password changed canceled.

FIXME - Add documentation here and in the server help.


The 'peaceful' command will switch you between peaceful and hostile attack modes.

When peaceful is on you will not automatically attack other player when bumping into them and will do reduced damage against other players if you do attack them (friendly fire). Having peaceful mode on only lowers damage against other players, it has no effect on damage done to monsters or other NPCs, so it is generally advisable to remain in peaceful mode unless you are looking for trouble. It is still entirely possible to kill other players when in peaceful mode so you should still be careful when interacting with other players. Hostile mode (peaceful off) will enable melee combat when bumping into other players and does normal damage for other attacks as well.

Damage done by area effect attacks like cone spells, explosive detonations, fireballs, poisons, cloud or swarm attacks, runes or disease are not modified by peaceful/hostile mode.

WARNING: Running around with hostile on means other players AUTOMATICALLY hit back when you bump them. If your low level character bumps into a high enough level melee character your character will die. Using hostile on servers that frown on player killing (PK) is just not smart and will likely result in your being banned from that server.


Petmode controls how your pets (charmed monsters) will behave.

The options are:
  • Normal: As you would expect.
  • SAD (Search and Destroy): Pets will roam and seek out things to attack.
  • Defend: Pets will try to stay close and defend you.
  • Arena: As normal, except that pets will attack other players in the arena.


To pickup items manually, use the ',' key, or see the player commands get and take.

The pickup command configures if a character automatically picks items up when stepping on them, and configures what kinds of items are automatically picked up.

  • Mode 0: Don't pick up items.
  • Mode 1: Pick up one item
  • Mode 2: Pick up one item and stop
  • Mode 3: Stop before picking up items
  • Mode 4: Pick up all items
  • Mode 5: Pick up all items and stop
  • Mode 6: Pick up all magical items
  • Mode 7: Pick up all coins and gems
  • Modes above 7: Pick up items with a value density greater than the pickup mode.

Value density is value in gold/weight in kilograms.

The value in gold is what the item is worth if you sold it in the shop. Goldcoins have a value density of 66, Density 10 will pickup silver, gold, rings, wands, books, and scrolls. Artifacts are also picked up.


The prepare command is identical to the cast command.


Provides the last command input made. This is just like the up arrow under most command line interfaces (CLI).

FIXME That command was introduced / scrapped in which version of the client ?


Output a table that indicates Line-Of-Sight around the character. Show a grid of map squares the character can see through (0) and cannot see through (1).

    0 1 2 3 4 5 6 7 8 91011121314151617
 0: 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
 1: 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
 2: 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
 3: 1 1 1 1 1 1 1 1 0 0 0 1 1 0 0 0 0 0
 4: 1 1 1 1 1 1 1 1 0 0 0 1 0 0 0 0 0 0
 5: 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0
 6: 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0
 7: 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0
 8: 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0
 9: 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0
10: 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0
11: 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
12: 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
13: 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
14: 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
15: 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
16: 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
17: 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

The character is standing at row 10, column 8.

FIXME - Add documentation here and in the server help.


WARNING: The 'quit command will delete your character!

If you want to quit without deleting your character, you must use a 'Bed to Reality'. Find a bed (probably in a building close to where you entered the game), get on top of it, and Apply it using shift-A (capital A).


ready_skill <skill name>

Skill name may be the minimum unique identifier for the desired skill. Eg, 'ready_skill alch' for alchemy.

This command places the named skill into the ready skill slot, and makes the skill slot active. The skill may then be used via the fire key + direction combination.

FIXME - Add documentation here and in the server help.


Changes the custom name of an item.


rename <item name> to <new name>

(Note: <> are mandatory)

If '<item name>' is omitted, defaults to marked item.

If 'to <new name>' is omitted, clears the custom name.

Note: maximum allowed name length is 127 characters.


Cycle through all ranged attacks that are readied. For example, if a spell has been prepared (cast), a bow equipped, a rod readied, etc., then rotateshoottype cycles through them to select which one will will be used when the player fires an attack.

An optional parameter may be specified. For example, rotateshoottype - swaps the direction of the rotation. rotateshoottype with no parameters is similar to rotateshoottype +.

apply bow
  Readied skill: missile weapons.
  You ready bow (readied).
  You feel one with the powers of magic!
  You will now fire arrows with bow (readied).
apply rod
  You can no longer use the skill: missile weapons.
  Readied skill: use magic item.
  You ready rod of sunspear (lvl 57) * (readied).
cast magic missile
  You can no longer use the skill: use magic item.
  You ready talisman of sorcery *.
  You can now use the skill: sorcery.
  You ready the spell magic missile
  Switched to rod of sunspear (lvl 57).
  Switched to skill: talisman
  No ranged attack chosen.
  Switched to bow +1 (readied) and arrows.
rotateshoottype -
  No ranged attack chosen.

FIXME - Add documentation here and in the server help.


“Run” functions in two ways

1) When the “run” command without any parameters is entered, the play enters run mode. The player will continually run in any direction pressed. Hitting a wall will not end run mode. To stop this behavior use run_stop.

2) When the “run” command is entered with a parameter of 1 though 8 (e.g. “run 1”) the player will begin running in the corresponding direction. See below.

8 1 2
7- -3
6 5 4

“run 1” for example will begin running north.

When you hit a wall you will stop running.

Additionally, depending on client implementation, you may stop running if you release the runkey (default “control” key). See bind. At time of writing the Java client seems to stop running when the runkey is released but the GTK client does not.

FIXME - Add documentation to the server help.


Stop running. See run.

FIXME - Add documentation in the server help.


No parameters. Updates players status to disk. This can be useful for making backup copies if you fear the server is about to crash.

WARNING–if you want to leave the game without destroying your player, you must find a 'Bed to Reality' and hit A on the bed to apply it. Doing 'save and then quitting will still delete your character.

Searches for traps, runes, and other hidden object in the tiles immediately surrounding the character. Odds of finding hidden objects are dependant upon the player's search skill.


Issuing 'search-items <list-of-item-names> causes the character to examine the contents of every tile he enters and pick up any objects which match. Using this is a fast way to grab specific wanted items from large piles of junk, but it reduces movement speed significantly when active.

Search-items with no arguments clears the search.


Without parameter, toggles through the various inventory windows.
By default bound to the x key.


 show <Notebook_Info>

Available parameters:

  • all - “All Items”
  • applied - “Applied Items”
  • unapplied - “Unapplied Items”
  • unpaid - “Unpaid items”
  • cursed - “Cursed items”
  • magical - “Magical items”
  • nonmagical - “Nonmagical items”
  • locked - “Inventory locked items”
  • unlocked - “Inventory unlocked items”
  • unidentified - “Inventory unidentified items” ( since version 1.60.0 )
  • icons - “Quick icon view”



showpets <number>

Shows a numbered list of the pets owned by the player. If a number is specified, instead shows a detailed printout about that pet


If sort_inventory is set, items will be inserted into your inventory in order by type than alphabetical. This, all scrolls will be grouped together, but in alphabetical order. Same for all weapons. This only applies to new items you pick up - items that you are already holding will not be sorted.

If sort_inventory is not set (default), items will be inserted via type, subtype and magic. This, all axes will be grouped together in magic order, all daggers by magic order, etc. Unforunately, for scrolls and rings, new ones just get inserted last.

If you have a lot of stuff that is not in alphabetical order but you would like it to be, the best method is to drop all of it and then pick it up.


Toggles sound support on and off.


The take commands take object(s) on the space the player is standing on, and inserts them into the players inventory.

If no parameter is given, take will get the top object that can be taken and put it in the players inventory. If no object can be taken, that will be stated.

A parameter can be given to take. In this case, all object that have names that match the parameter will be picked up. Thus, if there is a 'sword of WOE', and 'sword +1' and a 'sword -3' on the ground, 'take sword' will pick all of them up.

By default, take is bound to the comma key, with no parameters. To change this, look at the bind command.


Throw a marked, or random item in the direction the character is facing.

FIXME: Add help in server.


Add/change a title appended to the character name. The title is displayed alongside the character name in some clients and on the hiscore list.

When you start a new character, the character's title is “the <race>”.

  Your title is 'the gnome'.
title the fierce
  Your title is 'the fierce'.

FIXME: Add help in server.


The unarmed_skill command determines what skill you will use in unarmed combat.

If unarmed_skill is not set, a default skill will be used. That default will be karate, clawing, flame touch, punching, and wraith feed. For dragons, clawing will be tried first, then the rest in that same order.

The unarmed skill can always be overridden by explicitly using ready_skill for the desired skill.

For example, you have set the unarmed_skill to flame touch. However, you are fighting a flame resistant creature, you can use karate by doing a 'ready_skill karate'. You will continue to use karate until you change it again or use some other skill (equip a weapon, cast a spell, etc)

This value is saved and is persistent across logins. It is a property of the character, so different characters can be set with different unarmed_skill values.



unbind [-g] [#] unbind reset

Without -g command uses user's binding, with -g global binding. Without number it displays current bindings, with # it unbinds it. 'reset' resets default bindings.



use <item1> with <item2>

Will try to use both items together.

Result depends on the items themselves.

The order is important.

FIXME: Add more detail here and in server help.


'use_skill skillname

Performs the default action for the specified skill.

Skillname may be the minimum unique identifier for the skill in question.

Example: 'use_skill alchemy will attempt to identify nearby items that can be identified with the alchemy skill, or attempt to process the recipe in a cauldron.

FIXME - Add documentation here and in the server help.


The usekeys option determines the behaviour of using keys.

Values are:
  • inventory: Only keys in the top level inventory are used (default)
  • keyrings: Only keys in active keyrings are used.
  • containers: Only keys in active containers are used.

Note that keyrings are just a specialized container, so the containers will also find keys in keyrings.

Only active containers are used - keys will not jump out of closed containers, but hints will be given if you have keys in such containers.


wimpy is a (?percentage/number?) of hitpoints left. When hitpoits drop below this level the character will blindly run away automatically.

wimpy without an argument shows the current setting.

Your current wimpy level is 0.

If a numeric argument is specified, the wimpy level is set and shown:

Your new wimpy level is 10.

FIXME - Clarify documentation here and in the server help. Server help says it is a percentage, but numbers greater than 100 are accepted.



This command is only available if the server was compiled with DEBUG_MALLOC_LEVEL defined.

FIXME - Clarify documentation here and in the server help.










Move the character in the indicated direction.


A direction command that indicates the space that the character is standing on. For example, to fire a rod of heal on the character:

apply -a rod of heal
  Readied skill: use magic item.
  You ready rod of heal (lvl 60) * (readied).
stay fire
  You are already fully healed.

FIXME - Add documentation in the server help.



'help commands for help to list available commands.

help keys

help move

These are the basic movement keys:

  h l

Running is done by holding control and move. Running is recommended.

Firing the range weapon (help range) is done by holding shift and move.

  • 'help mouse for help on what the mouse buttons do.
  • 'help melee for advice on how to fight
  • 'help traps for help with finding and disarming traps

help mouse

The mouse isn't a great way to move your character. It'll work, but you'll be handicapped unless you use the keyboard for this. However, the mouse has the following inventory uses:

  • Middle button on item: apply or equip an inventory item, or use an item on the ground.
  • Right button: drop or pickup item on ground or an inventory item.
  • Left button: display information about an item on the map or an inventory item.
  • Shift key + left button: lock an inventory item.
  • Shift key + middle button: mark an inventory item.FIXME - Add documentation here.


Shows the top fifty scores on the server in the following format.

Nr    Score    Who <max hp><max sp><max grace>
<rank> <xp> <who> was killed by <calamity> on map <name of map> <max hp><max sp><max grace>


Prints the player's item list as it is displayed in the inventory window in the message window.

's inventory (1469268):        473.0 kg
- 1 guide to Faith * (1469309)   4.0 kg
- 1 bag (1469369)                0.0 kg
- 1 a dwarvish key ring (1469378)   0.1 kg


List the inventory carried by the character and report its total weight.

A parameter may be specified that requests the inventory of a specific object. The object is identified by a number, but players do not normally know object numbers, so this form is only useful to a dm.

FIXME: Is there a way for a player to use the inventory command to show the contents of a container?


Displays information about the map the character is currently on. Data is shown as follows:

<name of map> (</path/to/map/on/server) in <name of the map region>
Created:  <date> <author>
Modified: <date> <last editor>


List the maps that are currently loaded in server memory and show data about them. For example:

Current time is: 16:46:56.
Path               Pl PlM IM   TO Dif Reset
/HallOfSelection    0  0   2    0  1  17:37:54

Path = the map file path on the server. Pl = players. PlM = players on map. IM = in memory. TO = timeout until the map is saved to disk. Dif = map difficulty. Reset = real time on server when the map will reset.

FIXME: Add more information about the data columns.

Function map_info in file server/server/c_misc.c :

Path The map file path1) on the server. ( 18 chars )
Pl Players2) . Teleporter usage adds +1 player …
PlM Attempt to count “Real Players3)” on map.
IM In memory value4) .
TO Timeout5) until the map is saved to disk.
Dif Map difficulty6) .
Reset Real time on server when the map will reset7).


motd displays the Message Of The Day file.


news displays the server news.


Quest displays quest-related information. 'quest alone gives the following information:

 Quest commands:
  - list: displays quests you are currently attempting add 'all' to show completed quests also
  - info: displays information about the specified (by number) quest

quest list

'quest list displays the name of the started quests and their numbers. (to be used in 'quest info)
It also displays how many quests are finished and how many of them may be made again.
Example output:

 You have completed 8 quests, of which 2 may be restarted
 You have started the following quests:
 (  9) Darcap's Elemental quest
 ( 10) The Scorn Nobility
 ( 11) Gramps Malone's Earhorn
 ( 12) Kill the Bandit Guuh at Terry's Farm

'quest list all also displays the name and number of the finished quests and adds a (can be replayed) behind the name if it can be done again. As an example:

 You have completed the following quests:
 ... some quests
 (  6) Gork's Treasure Hoard (can be replayed)
 ....more quests
 You have started the following quests:
 ... some more quests (see previous example)

quest info <number>

gives detailed information about the quest specified by <number>
Here is an example for an unfinished quest:

 Description: Using either the keys, your weapon or your lockpicking skills,
 open all three doors and claim the treasure in the chest at the end.
 Current Status: I must open the first door, which uses a standard key, I can either use one of the keys 
 beside the door, or I can attempt to break it down or I can use my lockpicking skill do open it. The sign beside
 the door will tell me how to do this.

and an example after the (same) quest was finished:

 Quest: Getting Past Locked Doors
 Description: Using either the keys, your weapon or your lockpicking skills, open all three doors
 and claim the treasure in the chest at the end.
 This quest has been completed.
 Outcome: I have opened the final door, I should open the chest and claim my reward.


FIXME - Add documentation here and in the server help.


rules displays the rules in effect on this server.


Use the skills command to learn your experience and level of your skills.

The values shown are:

  • The name of the skill. You use this name for commands like use_skill or ready_skill.
  • The skill level.
  • The current experience.
  • The experience needed to level up.
  • The permanent experience ratio relative to current experience. You'll never fall below permanent experience even if you die over and over.

You can optionally add a parameter of '-l' for a longer display with more details on permanent experience.

You can optionally add a search string to only show skills that include the match text.


skills -l traps


statistics shows various useful information about your character. None of the information it shows is stuff that is not contained in the documentation.

As of now, it shows how much experience you need for your next level. It also shows natural, real, and maximum statistic values.

  • Your natural stat is the stat without any items/spells applied.
  • Real is what the current value is (same as in the stat window.)
  • Maximum is the maximum value for your natural stat.


Displays in-game time. Some game-play might be affected by game time-of-day.

  It is 21 minutes past 3 o'clock am, on the Day of the Moon
  The 15th Day of the Month of the Frost Giant, Year 17
  Time of Year: The Season of New Year

Another way to find out game time is by applying clocks found throughout the world.


Displays the version of the server.

This is Crossfire v1.trunk-r12190M
The authors can be reached at


:!: The weather command is supported by servers until version 1.11.0 . See weather .

Displays the weather conditions the player is facing when on a world map.

It's currently -7 degrees Centigrade out.
It is muggy.
There is a strong wind coming from the west.
Snow is falling very heavily.


The whereabouts command gives a summary about the region in which players are currently standing.

  In the world currently there are:
  2 players in The Kingdom of Scorn


Gives some lore about the region the player is standing in. For example:

  You are in The Kingdom of Scorn. 
   Nestled snugly in a sheltered bay at the west of the Imperial Highway, Scorn
  is a safe and welcoming place for those who pass by. Its position on the
  Imperial highway allows it to maintain its importance as a stopping off
  point between the other major cities along the route and an attractive
  location for trade and commerce. This combined with the sheltered harbour and
  extensive shipping lines, ensures that Scorn remains a key crossroads
  bustling with activity, long after its former military dominance has


Display a list of currently logged in players. The map the player's character is on is shown. For example:

Total Players in The World. (2) -- WIZ(0) AFK(1) BOT(0)
meflin-f the fireborn
Rayvin Scripter

DM's can use the hide command to hide themselves from this command.

NOTE: Players may be connected to the server and may be able to see chats and shouts, etc. even though they are not logged in.

FIXME - Add documentation here and in the server help.



Chat sends a message to the chat channel on the current server. Anyone with 'listen 10 enabled will see your message. On some servers 'chat is preferable over 'shout as a way to communicate with all players.

Chat usage:

'chat [insert a message that you want everyone to see]


Simulates a coin toss so players may make heads or tails decisions. For example, Jeff types:

  You flip a coin... Heads!

Other players see:

Jeff flips a coin... Heads!


gsay sends a message to all members of your current party.

gsay usage:

  • 'gsay [Message that you want all party members to see]

FIXME - In the “help commands” output, the command is listed as a regular command and not a communication command. The chat command appears in the communication command section. Should only the emotes should be in the communication section? If not at least the commands should be shown consistently in the help.


Listen, sets the level of messages you will hear.

Listen usage:

  • 'listen 0 - turns off listen and shows no messages.
  • 'listen 10 - default listen level on modern Crossfire servers. This enables seeing messages on the chat channel.


The me command acts like /me in IRC. Players on the same map see the character's name followed by some descriptive phrase:

me cries
  Joe cries


Parameters are ignored when using this command. To use this command successfully, a character must have enough dice in his inventory, or else the command returns:

  You need at least 4 dice to play orcknuckle!

See also: The Guide to Orc Knuckle.

FIXME - Add documentation in the server help.


Send a private reply to the last player that most recently used the tell command to tell the player something private.

WARNING: reply can send a private reply to an unexpected person if a tell from another player comes in while typing in the reply command. The tell command is safest because it always goes to the specified character.

FIXME - Clarify documentation here and in the server help.


Players on the same map see the message the character said.


say <message>

If player Joe types:

say hi!

Everyone in the same map sees:

Joe says: hi!

FIXME - Clarify documentation in the server help.



shout <something>

Sends a message to all players on the server.


Sends a private message to a particular person.


tell <person> <message>

<person> is case sensitive

If Joe types:

tell Jack Hi!

Player Jack sees:

Joe tells you: Hi!

see also reply

FIXME - Clarify documentation in the server help.


Emotives without a parameter say a canned message related to the command. For example, Jeff types:

  You bleed all over your nice new armour.

Other players in the vicinity see a slightly different message:

Jeff is bleeding all over the carpet - got a spare tourniquet?

Emotives may also be entered with a character name as a parameter. For example, Jeff enters:

smile Joe
  You smile at Joe.

Joe sees:

  Jeff smiles at you.

Other players see:

  Jeff smiles at Joe.























































1) map.h: struct mapdef { char path[HUGE_BUF]; /* Filename of the map */ }mapstruct;
2) map.h: struct mapdef { sint16 players; /* How many players are on this level right now. Automatically updated by the object handling functions. */
3) swap.c: players_on_map()
5) map.h: struct mapdef { sint32 timeout; /* swapout is set to this */
6) map.h: struct mapdef { uint16 difficulty; /* What level the player should be to play here */
7) map.h: #define MAP_WHEN_RESET(m) ((m)→reset_time); struct mapdef { uint32 reset_time; /* when this map should reset */
player_commands.txt · Last modified: 2020/09/20 00:50 by leaf