Default Command Help

This wiki page is auto-generated. Do not modify, your changes will be lost.

The full set of default Evennia commands currently contains 89 commands in 9 source files.
Our policy for adding default commands is outlined here. More information about how
commands work can be found in the documentation for Commands.

A-Z

  • @about - show Evennia info
  • @alias - adding permanent aliases for object
  • @ban - ban a player from the server
  • @batchcode - build from batch-code file
  • @batchcommands - build from batch-command file
  • @boot - kick a player from the server.
  • @cboot - kick a player from a channel you control
  • @ccreate - create a new channel
  • @cdesc - describe a channel you control
  • @cdestroy - destroy a channel you created
  • @cemit - send an admin message to a channel you control
  • @channels - list all channels available to you
  • @charcreate - create a new character
  • @clock - change channel locks of a channel you control
  • @cmdsets - list command sets defined on an object
  • @color - testing which colors your client support
  • @copy - copy an object and its properties
  • @cpattr - copy attributes between objects
  • @create - create new objects
  • @cwho - show who is listening to a channel
  • @delplayer - delete a player from the server
  • @desc - describe an object
  • @destroy - permanently delete objects
  • @dig - build new rooms and connect them to the current location
  • @emit - admin command for emitting message to multiple objects
  • @examine - get detailed information about an object
  • @find - search the database for objects
  • @help - Edit the help database.
  • @home - set an object’s home location
  • @ic - control an object you have permission to puppet
  • @irc2chan - link an evennia channel to an external IRC channel
  • @link - link existing rooms together with exits
  • @lock - assign a lock definition to an object
  • @mvattr - move attributes between objects
  • @name - change the name and/or aliases of an object
  • @objects - statistics on objects in the database
  • @ooc - stop puppeting and go ooc
  • @open - open a new exit from the current room
  • @option - Set an account option
  • @password - change your password
  • @perm - set the permissions of a player/object
  • @py - execute a snippet of python code
  • @quell - use character’s permissions instead of player’s
  • @quit - quit the game
  • @reload - reload the server
  • @reset - reset and reboot the server
  • @rss2chan - link an evennia channel to an external RSS feed
  • @script - attach a script to an object
  • @scripts - list and manage all running scripts
  • @server - show server load and memory statistics
  • @service - manage system services
  • @sessions - check your connected session(s)
  • @set - set attribute on an object or player
  • @shutdown - stop the server completely
  • @spawn - spawn objects from prototype
  • @tag - handles the tags of an object
  • @tel - teleport object to another location
  • @time - show server time statistics
  • @tunnel - create new rooms in cardinal directions only
  • @typeclass - set or change an object’s typeclass
  • @unban - remove a ban from a player
  • @unlink - remove exit-connections between rooms
  • @userpassword - change the password of a player
  • @wall - make an announcement to all
  • @wipe - clear all attributes from an object
  • __unloggedin_look_command - look when in unlogged-in state
  • access - show your current game access
  • addcom - add a channel alias and/or subscribe to a channel
  • allcom - perform admin operations on all channels
  • command - This is a parent class for some of the defining objmanip commands
  • connect - connect to the game
  • create - create a new player account
  • delcom - remove a channel alias and/or unsubscribe from channel
  • drop - drop something
  • get - pick up something
  • give - give away something to someone
  • help - get help when in unconnected-in state
  • help - View help or a list of topics
  • home - move to your character’s home location
  • inventory - view inventory
  • look - look at location or object
  • look - look while out-of-character
  • nick - define a personal alias/nick
  • page - send a private message to another player
  • pose - strike a pose
  • quit - quit when in unlogged-in state
  • say - speak as your character
  • whisper - Speak privately as your character to another
  • who - list who is currently online

Command details

These are generated from the auto-documentation and are ordered by their source file location in
evennia/commands/default/.

admin.py

View Source

@ban (CmdBan)

Belongs to the cmdset DefaultCharacter (CharacterCmdSet).

ban a player from the server

Usage:
  @ban [<name or ip> [: reason]]

Without any arguments, shows numbered list of active bans.

This command bans a user from accessing the game. Supply an optional
reason to be able to later remember why the ban was put in place.

It is often preferable to ban a player from the server than to
delete a player with @delplayer. If banned by name, that player
account can no longer be logged into.

IP (Internet Protocol) address banning allows blocking all access
from a specific address or subnet. Use an asterisk (*) as a
wildcard.

Examples:
  @ban thomas             - ban account 'thomas'
  @ban/ip 134.233.2.111   - ban specific ip address
  @ban/ip 134.233.2.*     - ban all in a subnet
  @ban/ip 134.233.*.*     - even wider ban

A single IP filter can be easy to circumvent by changing computers
or requesting a new IP address. Setting a wide IP block filter with
wildcards might be tempting, but remember that it may also
accidentally block innocent users connecting from the same country
or region.

open source (admin.py)

@boot (CmdBoot)

Belongs to the cmdset DefaultCharacter (CharacterCmdSet).

kick a player from the server.

Usage
  @boot[/switches] <player obj> [: reason]

Switches:
  quiet - Silently boot without informing player
  sid - boot by session id instead of name or dbref

Boot a player object from the server. If a reason is
supplied it will be echoed to the user unless /quiet is set.

open source (admin.py)

@delplayer (CmdDelPlayer)

Belongs to the cmdset DefaultPlayer (PlayerCmdSet).

delete a player from the server

Usage:
  @delplayer[/switch] <name> [: reason]

Switch:
  delobj - also delete the player's currently
           assigned in-game object.

Completely deletes a user from the server database,
making their nick and e-mail again available.

open source (admin.py)

@emit (CmdEmit)

Belongs to the cmdset DefaultCharacter (CharacterCmdSet).

admin command for emitting message to multiple objects

Usage:
  @emit[/switches] [<obj>, <obj>, ... =] <message>
  @remit           [<obj>, <obj>, ... =] <message>
  @pemit           [<obj>, <obj>, ... =] <message>

Switches:
  room : limit emits to rooms only (default)
  players : limit emits to players only
  contents : send to the contents of matched objects too

Emits a message to the selected objects or to
your immediate surroundings. If the object is a room,
send to its contents. @remit and @pemit are just
limited forms of @emit, for sending to rooms and
to players respectively.

open source (admin.py)

@perm (CmdPerm)

Belongs to the cmdset DefaultCharacter (CharacterCmdSet).

set the permissions of a player/object

Usage:
  @perm[/switch] <object> [= <permission>[,<permission>,...]]
  @perm[/switch] *<player> [= <permission>[,<permission>,...]]

Switches:
  del : delete the given permission from <object> or <player>.
  player : set permission on a player (same as adding * to name)

This command sets/clears individual permission strings on an object
or player. If no permission is given, list all permissions on <object>.

open source (admin.py)

@unban (CmdUnban)

Belongs to the cmdset DefaultCharacter (CharacterCmdSet).

remove a ban from a player

Usage:
  @unban <banid>

This will clear a player name/ip ban previously set with the @ban
command.  Use this command without an argument to view a numbered
list of bans. Use the numbers in this list to select which one to
unban.

open source (admin.py)

@userpassword (CmdNewPassword)

Belongs to the cmdset DefaultPlayer (PlayerCmdSet).

change the password of a player

Usage:
  @userpassword <user obj> = <new password>

Set a player's password.

open source (admin.py)

@wall (CmdWall)

Belongs to the cmdset DefaultCharacter (CharacterCmdSet).

make an announcement to all

Usage:
  @wall <message>

Announces a message to all connected players.

open source (admin.py)

batchprocess.py

View Source

@batchcode (CmdBatchCode)

Belongs to the cmdset DefaultCharacter (CharacterCmdSet).

build from batch-code file

Usage:
 @batchcode[/interactive] <python path to file>

Switch:
   interactive - this mode will offer more control when
                 executing the batch file, like stepping,
                 skipping, reloading etc.
   debug - auto-delete all objects that has been marked as
           deletable in the script file (see example files for
           syntax). This is useful so as to to not leave multiple
           object copies behind when testing out the script.

Runs batches of commands from a batch-code text file (*.py).

open source (batchprocess.py)

@batchcommands (CmdBatchCommands)

Belongs to the cmdset DefaultCharacter (CharacterCmdSet).

build from batch-command file

Usage:
 @batchcommands[/interactive] <python.path.to.file>

Switch:
   interactive - this mode will offer more control when
                 executing the batch file, like stepping,
                 skipping, reloading etc.

Runs batches of commands from a batch-cmd text file (*.ev).

open source (batchprocess.py)

building.py

View Source

@alias (CmdSetObjAlias)

Belongs to the cmdset DefaultCharacter (CharacterCmdSet).

adding permanent aliases for object

Usage:
  @alias <obj> [= [alias[,alias,alias,...]]]
  @alias <obj> =

Assigns aliases to an object so it can be referenced by more
than one name. Assign empty to remove all aliases from object.

Observe that this is not the same thing as personal aliases
created with the 'nick' command! Aliases set with @alias are
changing the object in question, making those aliases usable
by everyone.

open source (building.py)

@cmdsets (CmdListCmdSets)

Belongs to the cmdset DefaultCharacter (CharacterCmdSet).

list command sets defined on an object

Usage:
  @cmdsets [obj]

This displays all cmdsets assigned
to a user. Defaults to yourself.

open source (building.py)

@copy (CmdCopy)

Belongs to the cmdset DefaultCharacter (CharacterCmdSet).

copy an object and its properties

Usage:
  @copy[/reset] <original obj> [= new_name][;alias;alias..][:new_location] [,new_name2 ...]

switch:
  reset - make a 'clean' copy off the object, thus
          removing any changes that might have been made to the original
          since it was first created.

Create one or more copies of an object. If you don't supply any targets,
one exact copy of the original object will be created with the name *_copy.

open source (building.py)

@cpattr (CmdCpAttr)

Belongs to the cmdset DefaultCharacter (CharacterCmdSet).

copy attributes between objects

Usage:
  @cpattr[/switch] <obj>/<attr> = <obj1>/<attr1> [,<obj2>/<attr2>,<obj3>/<attr3>,...]
  @cpattr[/switch] <obj>/<attr> = <obj1> [,<obj2>,<obj3>,...]
  @cpattr[/switch] <attr> = <obj1>/<attr1> [,<obj2>/<attr2>,<obj3>/<attr3>,...]
  @cpattr[/switch] <attr> = <obj1>[,<obj2>,<obj3>,...]

Switches:
  move - delete the attribute from the source object after copying.

Example:
  @cpattr coolness = Anna/chillout, Anna/nicety, Tom/nicety
  ->
  copies the coolness attribute (defined on yourself), to attributes
  on Anna and Tom.

Copy the attribute one object to one or more attributes on another object.
If you don't supply a source object, yourself is used.

open source (building.py)

@create (CmdCreate)

Belongs to the cmdset DefaultCharacter (CharacterCmdSet).

create new objects

Usage:
  @create[/drop] objname[;alias;alias...][:typeclass], objname...

switch:
   drop - automatically drop the new object into your current
          location (this is not echoed). This also sets the new
          object's home to the current location rather than to you.

Creates one or more new objects. If typeclass is given, the object
is created as a child of this typeclass. The typeclass script is
assumed to be located under types/ and any further
directory structure is given in Python notation. So if you have a
correct typeclass 'RedButton' defined in
types/examples/red_button.py, you could create a new
object of this type like this:

   @create/drop button;red : examples.red_button.RedButton

open source (building.py)

@desc (CmdDesc)

Belongs to the cmdset DefaultCharacter (CharacterCmdSet).

describe an object

Usage:
  @desc [<obj> =] <description>

Switches:
  edit - Open up a line editor for more advanced editing.

Sets the "desc" attribute on an object. If an object is not given,
describe the current room.

open source (building.py)

@destroy (CmdDestroy)

Belongs to the cmdset DefaultCharacter (CharacterCmdSet).

permanently delete objects

Usage:
   @destroy[/switches] [obj, obj2, obj3, [dbref-dbref], ...]

switches:
   override - The @destroy command will usually avoid accidentally
              destroying player objects. This switch overrides this safety.
examples:
   @destroy house, roof, door, 44-78
   @destroy 5-10, flower, 45

Destroys one or many objects. If dbrefs are used, a range to delete can be
given, e.g. 4-10. Also the end points will be deleted.

open source (building.py)

@dig (CmdDig)

Belongs to the cmdset DefaultCharacter (CharacterCmdSet).

build new rooms and connect them to the current location

Usage:
  @dig[/switches] roomname[;alias;alias...][:typeclass]
        [= exit_to_there[;alias][:typeclass]]
           [, exit_to_here[;alias][:typeclass]]

Switches:
   tel or teleport - move yourself to the new room

Examples:
   @dig kitchen = north;n, south;s
   @dig house:myrooms.MyHouseTypeclass
   @dig sheer cliff;cliff;sheer = climb up, climb down

This command is a convenient way to build rooms quickly; it creates the
new room and you can optionally set up exits back and forth between your
current room and the new one. You can add as many aliases as you
like to the name of the room and the exits in question; an example
would be 'north;no;n'.

open source (building.py)

@examine (CmdExamine)

Belongs to the cmdset DefaultPlayer (PlayerCmdSet).

get detailed information about an object

Usage:
  examine [<object>[/attrname]]
  examine [*<player>[/attrname]]

Switch:
  player - examine a Player (same as adding *)
  object - examine an Object (useful when OOC)

The examine command shows detailed game info about an
object and optionally a specific attribute on it.
If object is not specified, the current location is examined.

Append a * before the search string to examine a player.

open source (building.py)

@find (CmdFind)

Belongs to the cmdset DefaultCharacter (CharacterCmdSet).

search the database for objects

Usage:
  @find[/switches] <name or dbref or *player> [= dbrefmin[-dbrefmax]]

Switches:
  room - only look for rooms (location=None)
  exit - only look for exits (destination!=None)
  char - only look for characters (BASE_CHARACTER_TYPECLASS)
  exact- only exact matches are returned.

Searches the database for an object of a particular name or exact #dbref.
Use *playername to search for a player. The switches allows for
limiting object matches to certain game entities. Dbrefmin and dbrefmax
limits matches to within the given dbrefs range, or above/below if only
one is given.

open source (building.py)

@home (CmdSetHome)

Belongs to the cmdset DefaultCharacter (CharacterCmdSet).

set an object's home location

Usage:
  @home <obj> [= home_location]

The "home" location is a "safety" location for objects; they
will be moved there if their current location ceases to exist. All
objects should always have a home location for this reason.
It is also a convenient target of the "home" command.

If no location is given, just view the object's home location.

open source (building.py)

@lock (CmdLock)

Belongs to the cmdset DefaultCharacter (CharacterCmdSet).

assign a lock definition to an object

Usage:
  @lock <object>[ = <lockstring>]
  or
  @lock[/switch] object/<access_type>

Switch:
  del - delete given access type
  view - view lock associated with given access type (default)

If no lockstring is given, shows all locks on
object.

Lockstring is on the form
   access_type:[NOT] func1(args)[ AND|OR][ NOT] func2(args) ...]
Where func1, func2 ... valid lockfuncs with or without arguments.
Separator expressions need not be capitalized.

For example:
   'get: id(25) or perm(Wizards)'
The 'get' access_type is checked by the get command and will
an object locked with this string will only be possible to
pick up by Wizards or by object with id 25.

You can add several access_types after oneanother by separating
them by ';', i.e:
   'get:id(25);delete:perm(Builders)'

open source (building.py)

@mvattr (CmdMvAttr)

Belongs to the cmdset DefaultCharacter (CharacterCmdSet).

move attributes between objects

Usage:
  @mvattr[/switch] <obj>/<attr> = <obj1>/<attr1> [,<obj2>/<attr2>,<obj3>/<attr3>,...]
  @mvattr[/switch] <obj>/<attr> = <obj1> [,<obj2>,<obj3>,...]
  @mvattr[/switch] <attr> = <obj1>/<attr1> [,<obj2>/<attr2>,<obj3>/<attr3>,...]
  @mvattr[/switch] <attr> = <obj1>[,<obj2>,<obj3>,...]

Switches:
  copy - Don't delete the original after moving.

Move an attribute from one object to one or more attributes on another
object. If you don't supply a source object, yourself is used.

open source (building.py)

@name (CmdName)

Belongs to the cmdset DefaultCharacter (CharacterCmdSet).

change the name and/or aliases of an object

Usage:
  @name obj = name;alias1;alias2

Rename an object to something new. Use *obj to
rename a player.

open source (building.py)

@open (CmdOpen)

Belongs to the cmdset DefaultCharacter (CharacterCmdSet).

open a new exit from the current room

Usage:
  @open <new exit>[;alias;alias..][:typeclass] [,<return exit>[;alias;..][:typeclass]]] = <destination>

Handles the creation of exits. If a destination is given, the exit
will point there. The <return exit> argument sets up an exit at the
destination leading back to the current room. Destination name
can be given both as a #dbref and a name, if that name is globally
unique.

open source (building.py)

@script (CmdScript)

Belongs to the cmdset DefaultCharacter (CharacterCmdSet).

attach a script to an object

Usage:
  @script[/switch] <obj> [= <script.path or scriptkey>]

Switches:
  start - start all non-running scripts on object, or a given script only
  stop - stop all scripts on objects, or a given script only

If no script path/key is given, lists all scripts active on the given
object.
Script path can be given from the base location for scripts as given in
settings. If adding a new script, it will be started automatically
(no /start switch is needed). Using the /start or /stop switches on an
object without specifying a script key/path will start/stop ALL scripts on
the object.

open source (building.py)

@set (CmdSetAttribute)

Belongs to the cmdset DefaultCharacter (CharacterCmdSet).

set attribute on an object or player

Usage:
  @set <obj>/<attr> = <value>
  @set <obj>/<attr> =
  @set <obj>/<attr>
  @set *<player>/attr = <value>

Switch:
    edit: Open the line editor (string values only)

Sets attributes on objects. The second form clears
a previously set attribute while the last form
inspects the current value of the attribute
(if any).

The most common data to save with this command are strings and
numbers. You can however also set Python primities such as lists,
dictionaries and tuples on objects (this might be important for
the functionality of certain custom objects).  This is indicated
by you starting your value with one of |c'|n, |c"|n, |c(|n, |c[|n
or |c{ |n.
Note that you should leave a space after starting a dictionary ('{ ')
so as to not confuse the dictionary start with a colour code like \{g.
Remember that if you use Python primitives like this, you must
write proper Python syntax too - notably you must include quotes
around your strings or you will get an error.

open source (building.py)

@spawn (CmdSpawn)

Belongs to the cmdset DefaultCharacter (CharacterCmdSet).

spawn objects from prototype

Usage:
  @spawn
  @spawn[/switch] prototype_name
  @spawn[/switch] {prototype dictionary}

Switch:
  noloc - allow location to be None if not specified explicitly. Otherwise,
          location will default to caller's current location.

Example:
  @spawn GOBLIN
  @spawn {"key":"goblin", "typeclass":"monster.Monster", "location":"#2"}

Dictionary keys:
  |wprototype  |n - name of parent prototype to use. Can be a list for
                    multiple inheritance (inherits left to right)
  |wkey        |n - string, the main object identifier
  |wtypeclass  |n - string, if not set, will use settings.BASE_OBJECT_TYPECLASS
  |wlocation   |n - this should be a valid object or #dbref
  |whome       |n - valid object or #dbref
  |wdestination|n - only valid for exits (object or dbref)
  |wpermissions|n - string or list of permission strings
  |wlocks      |n - a lock-string
  |waliases    |n - string or list of strings
  |wndb_|n<name>  - value of a nattribute (ndb_ is stripped)
  any other keywords are interpreted as Attributes and their values.

The available prototypes are defined globally in modules set in
settings.PROTOTYPE_MODULES. If @spawn is used without arguments it
displays a list of available prototypes.

open source (building.py)

@tag (CmdTag)

Belongs to the cmdset DefaultCharacter (CharacterCmdSet).

handles the tags of an object

Usage:
  @tag[/del] <obj> [= <tag>[:<category>]]
  @tag/search <tag>[:<category]

Switches:
  search - return all objects with a given Tag
  del - remove the given tag. If no tag is specified,
        clear all tags on object.

Manipulates and lists tags on objects. Tags allow for quick
grouping of and searching for objects.  If only <obj> is given,
list all tags on the object.  If /search is used, list objects
with the given tag.
The category can be used for grouping tags themselves, but it
should be used with restrain - tags on their own are usually
enough to for most grouping schemes.

open source (building.py)

@tel (CmdTeleport)

Belongs to the cmdset DefaultCharacter (CharacterCmdSet).

teleport object to another location

Usage:
  @tel/switch [<object> =] <target location>

Examples:
  @tel Limbo
  @tel/quiet box Limbo
  @tel/tonone box

Switches:
  quiet  - don't echo leave/arrive messages to the source/target
           locations for the move.
  intoexit - if target is an exit, teleport INTO
             the exit object instead of to its destination
  tonone - if set, teleport the object to a None-location. If this
           switch is set, <target location> is ignored.
           Note that the only way to retrieve
           an object from a None location is by direct #dbref
           reference. A puppeted object cannot be moved to None.

Teleports an object somewhere. If no object is given, you yourself
is teleported to the target location.

open source (building.py)

@tunnel (CmdTunnel)

Belongs to the cmdset DefaultCharacter (CharacterCmdSet).

create new rooms in cardinal directions only

Usage:
  @tunnel[/switch] <direction> [= roomname[;alias;alias;...][:typeclass]]

Switches:
  oneway - do not create an exit back to the current location
  tel - teleport to the newly created room

Example:
  @tunnel n
  @tunnel n = house;mike's place;green building

This is a simple way to build using pre-defined directions:
 |wn,ne,e,se,s,sw,w,nw|n (north, northeast etc)
 |wu,d|n (up and down)
 |wi,o|n (in and out)
The full names (north, in, southwest, etc) will always be put as
main name for the exit, using the abbreviation as an alias (so an
exit will always be able to be used with both "north" as well as
"n" for example). Opposite directions will automatically be
created back from the new room unless the /oneway switch is given.
For more flexibility and power in creating rooms, use @dig.

open source (building.py)

@typeclass (CmdTypeclass)

Belongs to the cmdset DefaultCharacter (CharacterCmdSet).

set or change an object's typeclass

Usage:
  @typclass[/switch] <object> [= <typeclass.path>]
  @type                     ''
  @parent                   ''
  @swap - this is a shorthand for using /force/reset flags.
  @update - this is a shorthand for using the /force/reload flag.

Switch:
  show - display the current typeclass of object (default)
  update - *only* re-run at_object_creation on this object
          meaning locks or other properties set later may remain.
  reset - clean out *all* the attributes and properties on the
          object - basically making this a new clean object.
  force - change to the typeclass also if the object
          already has a typeclass of the same name.
Example:
  @type button = examples.red_button.RedButton

If the typeclass.path is not given, the current object's
typeclass is assumed.

View or set an object's typeclass. If setting, the creation hooks
of the new typeclass will be run on the object. If you have
clashing properties on the old class, use /reset. By default you
are protected from changing to a typeclass of the same name as the
one you already have - use /force to override this protection.

The given typeclass must be identified by its location using
python dot-notation pointing to the correct module and class. If
no typeclass is given (or a wrong typeclass is given). Errors in
the path or new typeclass will lead to the old typeclass being
kept. The location of the typeclass module is searched from the
default typeclass directory, as defined in the server settings.

open source (building.py)

@wipe (CmdWipe)

Belongs to the cmdset DefaultCharacter (CharacterCmdSet).

clear all attributes from an object

Usage:
  @wipe <object>[/attribute[/attribute...]]

Example:
  @wipe box
  @wipe box/colour

Wipes all of an object's attributes, or optionally only those
matching the given attribute-wildcard search string.

open source (building.py)

command (ObjManipCommand)

Belongs to the cmdset (``_).

This is a parent class for some of the defining objmanip commands
since they tend to have some more variables to define new objects.

Each object definition can have several components. First is
always a name, followed by an optional alias list and finally an
some optional data, such as a typeclass or a location. A comma ','
separates different objects. Like this:

    name1;alias;alias;alias:option, name2;alias;alias ...

Spaces between all components are stripped.

A second situation is attribute manipulation. Such commands
are simpler and offer combinations

    objname/attr/attr/attr, objname/attr, ...

open source (building.py)

comms.py

View Source

@cboot (CmdCBoot)

Belongs to the cmdset DefaultPlayer (PlayerCmdSet).

kick a player from a channel you control

Usage:
   @cboot[/quiet] <channel> = <player> [:reason]

Switches:
   quiet - don't notify the channel

Kicks a player or object from a channel you control.

open source (comms.py)

@ccreate (CmdChannelCreate)

Belongs to the cmdset DefaultPlayer (PlayerCmdSet).

create a new channel

Usage:
 @ccreate <new channel>[;alias;alias...] = description

Creates a new channel owned by you.

open source (comms.py)

@cdesc (CmdCdesc)

Belongs to the cmdset DefaultPlayer (PlayerCmdSet).

describe a channel you control

Usage:
  @cdesc <channel> = <description>

Changes the description of the channel as shown in
channel lists.

open source (comms.py)

@cdestroy (CmdCdestroy)

Belongs to the cmdset DefaultPlayer (PlayerCmdSet).

destroy a channel you created

Usage:
  @cdestroy <channel>

Destroys a channel that you control.

open source (comms.py)

@cemit (CmdCemit)

Belongs to the cmdset DefaultPlayer (PlayerCmdSet).

send an admin message to a channel you control

Usage:
  @cemit[/switches] <channel> = <message>

Switches:
  sendername - attach the sender's name before the message
  quiet - don't echo the message back to sender

Allows the user to broadcast a message over a channel as long as
they control it. It does not show the user's name unless they
provide the /sendername switch.

open source (comms.py)

@channels (CmdChannels)

Belongs to the cmdset DefaultPlayer (PlayerCmdSet).

  • key = %22@channels
  • aliases = [‘comlist’, ‘channellist’, ‘all channels’, ‘channels’, '@clist‘, ‘chanlist’]
  • locks = “cmd: not pperm(channel_banned)”
  • help_category = “Comms”
  • __doc__ string (auto-help):
list all channels available to you

Usage:
  @channels
  @clist
  comlist

Lists all channels available to you, whether you listen to them or not.
Use 'comlist' to only view your current channel subscriptions.
Use addcom/delcom to join and leave channels

open source (comms.py)

@clock (CmdClock)

Belongs to the cmdset DefaultPlayer (PlayerCmdSet).

change channel locks of a channel you control

Usage:
  @clock <channel> [= <lockstring>]

Changes the lock access restrictions of a channel. If no
lockstring was given, view the current lock definitions.

open source (comms.py)

@cwho (CmdCWho)

Belongs to the cmdset DefaultPlayer (PlayerCmdSet).

show who is listening to a channel

Usage:
  @cwho <channel>

List who is connected to a given channel you have access to.

open source (comms.py)

@irc2chan (CmdIRC2Chan)

Belongs to the cmdset DefaultPlayer (PlayerCmdSet).

link an evennia channel to an external IRC channel

Usage:
  @irc2chan[/switches] <evennia_channel> = <ircnetwork> <port> <#irchannel> <botname>[:typeclass]
  @irc2chan/delete botname|#dbid

Switches:
  /delete     - this will delete the bot and remove the irc connection
                to the channel. Requires the botname or #dbid as input.
  /remove     - alias to /delete
  /disconnect - alias to /delete
  /list       - show all irc<->evennia mappings
  /ssl        - use an SSL-encrypted connection

Example:
  @irc2chan myircchan = irc.dalnet.net 6667 #mychannel evennia-bot
  @irc2chan public = irc.freenode.net 6667 #evgaming #evbot:players.mybot.MyBot

This creates an IRC bot that connects to a given IRC network and
channel. If a custom typeclass path is given, this will be used
instead of the default bot class.
The bot will relay everything said in the evennia channel to the
IRC channel and vice versa. The bot will automatically connect at
server start, so this command need only be given once. The
/disconnect switch will permanently delete the bot. To only
temporarily deactivate it, use the  |w@services|n command instead.
Provide an optional bot class path to use a custom bot.

open source (comms.py)

@rss2chan (CmdRSS2Chan)

Belongs to the cmdset DefaultPlayer (PlayerCmdSet).

link an evennia channel to an external RSS feed

Usage:
  @rss2chan[/switches] <evennia_channel> = <rss_url>

Switches:
  /disconnect - this will stop the feed and remove the connection to the
                channel.
  /remove     -                                 "
  /list       - show all rss->evennia mappings

Example:
  @rss2chan rsschan = http://code.google.com/feeds/p/evennia/updates/basic

This creates an RSS reader  that connects to a given RSS feed url. Updates
will be echoed as a title and news link to the given channel. The rate of
updating is set with the RSS_UPDATE_INTERVAL variable in settings (default
is every 10 minutes).

When disconnecting you need to supply both the channel and url again so as
to identify the connection uniquely.

open source (comms.py)

addcom (CmdAddCom)

Belongs to the cmdset DefaultPlayer (PlayerCmdSet).

  • key = “addcom”
  • aliases = [‘aliaschan’, ‘chanalias’]
  • locks = “cmd:not pperm(channel_banned)”
  • help_category = “Comms”
  • __doc__ string (auto-help):
add a channel alias and/or subscribe to a channel

Usage:
   addcom [alias=] <channel>

Joins a given channel. If alias is given, this will allow you to
refer to the channel by this alias rather than the full channel
name. Subsequent calls of this command can be used to add multiple
aliases to an already joined channel.

open source (comms.py)

allcom (CmdAllCom)

Belongs to the cmdset DefaultPlayer (PlayerCmdSet).

perform admin operations on all channels

Usage:
  allcom [on | off | who | destroy]

Allows the user to universally turn off or on all channels they are on,
as well as perform a 'who' for all channels they are on. Destroy deletes
all channels that you control.

Without argument, works like comlist.

open source (comms.py)

delcom (CmdDelCom)

Belongs to the cmdset DefaultPlayer (PlayerCmdSet).

  • key = “delcom”
  • aliases = [‘delaliaschan’, ‘delchanalias’]
  • locks = “cmd:not perm(channel_banned)”
  • help_category = “Comms”
  • __doc__ string (auto-help):
remove a channel alias and/or unsubscribe from channel

Usage:
   delcom <alias or channel>
   delcom/all <channel>

If the full channel name is given, unsubscribe from the
channel. If an alias is given, remove the alias but don't
unsubscribe. If the 'all' switch is used, remove all aliases
for that channel.

open source (comms.py)

page (CmdPage)

Belongs to the cmdset DefaultPlayer (PlayerCmdSet).

  • key = “page”
  • aliases = [‘tell’]
  • locks = “cmd:not pperm(page_banned)”
  • help_category = “Comms”
  • __doc__ string (auto-help):
send a private message to another player

Usage:
  page[/switches] [<player>,<player>,... = <message>]
  tell        ''
  page <number>

Switch:
  last - shows who you last messaged
  list - show your last <number> of tells/pages (default)

Send a message to target user (if online). If no
argument is given, you will get a list of your latest messages.

open source (comms.py)

general.py

View Source

access (CmdAccess)

Belongs to the cmdset DefaultCharacter (CharacterCmdSet).

  • key = “access”
  • aliases = [‘hierarchy’, ‘groups’]
  • locks = “cmd:all()”
  • help_category = “General”
  • __doc__ string (auto-help):
show your current game access

Usage:
  access

This command shows you the permission hierarchy and
which permission groups you are a member of.

open source (general.py)

drop (CmdDrop)

Belongs to the cmdset DefaultCharacter (CharacterCmdSet).

drop something

Usage:
  drop <obj>

Lets you drop an object from your inventory into the
location you are currently in.

open source (general.py)

get (CmdGet)

Belongs to the cmdset DefaultCharacter (CharacterCmdSet).

pick up something

Usage:
  get <obj>

Picks up an object from your location and puts it in
your inventory.

open source (general.py)

give (CmdGive)

Belongs to the cmdset DefaultCharacter (CharacterCmdSet).

give away something to someone

Usage:
  give <inventory obj> = <target>

Gives an items from your inventory to another character,
placing it in their inventory.

open source (general.py)

home (CmdHome)

Belongs to the cmdset DefaultCharacter (CharacterCmdSet).

  • key = “home”
  • aliases = []
  • locks = “cmd:perm(home) or perm(Builders)”
  • help_category = “General”
  • __doc__ string (auto-help):
move to your character's home location

Usage:
  home

Teleports you to your home location.

open source (general.py)

inventory (CmdInventory)

Belongs to the cmdset DefaultCharacter (CharacterCmdSet).

  • key = “inventory”
  • aliases = [‘i’, ‘inv’]
  • locks = “cmd:all()”
  • help_category = “General”
  • __doc__ string (auto-help):
view inventory

Usage:
  inventory
  inv

Shows your inventory.

open source (general.py)

look (CmdLook)

Belongs to the cmdset DefaultCharacter (CharacterCmdSet).

look at location or object

Usage:
  look
  look <obj>
  look *<player>

Observes your location or objects in your vicinity.

open source (general.py)

nick (CmdNick)

Belongs to the cmdset DefaultCharacter (CharacterCmdSet).

define a personal alias/nick

Usage:
  nick[/switches] <string> [= [replacement_string]]
  nick[/switches] <template> = <replacement_template>
  nick/delete <string> or number
  nick/test <test string>

Switches:
  inputline - replace on the inputline (default)
  object    - replace on object-lookup
  player    - replace on player-lookup
  delete    - remove nick by name or by index given by /list
  clearall  - clear all nicks
  list      - show all defined aliases (also "nicks" works)
  test      - test input to see what it matches with

Examples:
  nick hi = say Hello, I'm Sarah!
  nick/object tom = the tall man
  nick build $1 $2 = @create/drop $1;$2     - (template)
  nick tell $1 $2=@page $1=$2               - (template)

A 'nick' is a personal string replacement. Use $1, $2, ... to catch arguments.
Put the last $-marker without an ending space to catch all remaining text. You
can also use unix-glob matching:

    * - matches everything
    ? - matches a single character
    [seq] - matches all chars in sequence
    [!seq] - matches everything not in sequence

Note that no objects are actually renamed or changed by this command - your nicks
are only available to you. If you want to permanently add keywords to an object
for everyone to use, you need build privileges and the @alias command.

open source (general.py)

pose (CmdPose)

Belongs to the cmdset DefaultCharacter (CharacterCmdSet).

strike a pose

Usage:
  pose <pose text>
  pose's <pose text>

Example:
  pose is standing by the wall, smiling.
   -> others will see:
  Tom is standing by the wall, smiling.

Describe an action being taken. The pose text will
automatically begin with your name.

open source (general.py)

say (CmdSay)

Belongs to the cmdset DefaultCharacter (CharacterCmdSet).

speak as your character

Usage:
  say <message>

Talk to those in your current location.

open source (general.py)

whisper (CmdWhisper)

Belongs to the cmdset DefaultCharacter (CharacterCmdSet).

Speak privately as your character to another

Usage:
  whisper <player> = <message>

Talk privately to those in your current location, without
others being informed.

open source (general.py)

help.py

View Source

@help (CmdSetHelp)

Belongs to the cmdset DefaultCharacter (CharacterCmdSet).

Edit the help database.

Usage:
  @help[/switches] <topic>[[;alias;alias][,category[,locks]] [= <text>]

Switches:
  edit - open a line editor to edit the topic's help text.
  replace - overwrite existing help topic.
  append - add text to the end of existing topic with a newline between.
  extend - as append, but don't add a newline.
  delete - remove help topic.

Examples:
  @sethelp throw = This throws something at ...
  @sethelp/append pickpocketing,Thievery = This steals ...
  @sethelp/replace pickpocketing, ,attr(is_thief) = This steals ...
  @sethelp/edit thievery

This command manipulates the help database. A help entry can be created,
appended/merged to and deleted. If you don't assign a category, the
"General" category will be used. If no lockstring is specified, default
is to let everyone read the help file.

open source (help.py)

help (CmdHelp)

Belongs to the cmdset DefaultPlayer (PlayerCmdSet).

View help or a list of topics

Usage:
  help <topic or command>
  help list
  help all

This will search for help on commands and other
topics related to the game.

open source (help.py)

player.py

View Source

@charcreate (CmdCharCreate)

Belongs to the cmdset DefaultPlayer (PlayerCmdSet).

create a new character

Usage:
  @charcreate <charname> [= desc]

Create a new character, optionally giving it a description. You
may use upper-case letters in the name - you will nevertheless
always be able to access your character using lower-case letters
if you want.

open source (player.py)

@color (CmdColorTest)

Belongs to the cmdset DefaultPlayer (PlayerCmdSet).

testing which colors your client support

Usage:
  @color ansi||xterm256

Prints a color map along with in-mud color codes to use to produce
them.  It also tests what is supported in your client. Choices are
16-color ansi (supported in most muds) or the 256-color xterm256
standard. No checking is done to determine your client supports
color - if not you will see rubbish appear.

open source (player.py)

@ic (CmdIC)

Belongs to the cmdset DefaultPlayer (PlayerCmdSet).

control an object you have permission to puppet

Usage:
  @ic <character>

Go in-character (IC) as a given Character.

This will attempt to "become" a different object assuming you have
the right to do so. Note that it's the PLAYER character that puppets
characters/objects and which needs to have the correct permission!

You cannot become an object that is already controlled by another
player. In principle <character> can be any in-game object as long
as you the player have access right to puppet it.

open source (player.py)

@ooc (CmdOOC)

Belongs to the cmdset DefaultPlayer (PlayerCmdSet).

stop puppeting and go ooc

Usage:
  @ooc

Go out-of-character (OOC).

This will leave your current character and put you in a incorporeal OOC state.

open source (player.py)

@option (CmdOption)

Belongs to the cmdset DefaultPlayer (PlayerCmdSet).

Set an account option

Usage:
  @option[/save] [name = value]

Switch:
  save - Save the current option settings for future logins.
  clear - Clear the saved options.

This command allows for viewing and setting client interface
settings. Note that saved options may not be able to be used if
later connecting with a client with different capabilities.

open source (player.py)

@password (CmdPassword)

Belongs to the cmdset DefaultPlayer (PlayerCmdSet).

change your password

Usage:
  @password <old password> = <new password>

Changes your password. Make sure to pick a safe one.

open source (player.py)

@quell (CmdQuell)

Belongs to the cmdset DefaultPlayer (PlayerCmdSet).

use character's permissions instead of player's

Usage:
  quell
  unquell

Normally the permission level of the Player is used when puppeting a
Character/Object to determine access. This command will switch the lock
system to make use of the puppeted Object's permissions instead. This is
useful mainly for testing.
Hierarchical permission quelling only work downwards, thus a Player cannot
use a higher-permission Character to escalate their permission level.
Use the unquell command to revert back to normal operation.

open source (player.py)

@quit (CmdQuit)

Belongs to the cmdset DefaultPlayer (PlayerCmdSet).

quit the game

Usage:
  @quit

Switch:
  all - disconnect all connected sessions

Gracefully disconnect your current session from the
game. Use the /all switch to disconnect from all sessions.

open source (player.py)

@sessions (CmdSessions)

Belongs to the cmdset DefaultSession (SessionCmdSet).

check your connected session(s)

Usage:
  @sessions

Lists the sessions currently connected to your account.

open source (player.py)

look (CmdOOCLook)

Belongs to the cmdset DefaultPlayer (PlayerCmdSet).

look while out-of-character

Usage:
  look

Look in the ooc state.

open source (player.py)

who (CmdWho)

Belongs to the cmdset DefaultPlayer (PlayerCmdSet).

list who is currently online

Usage:
  who
  doing

Shows who is currently online. Doing is an alias that limits info
also for those with all permissions.

open source (player.py)

system.py

View Source

@about (CmdAbout)

Belongs to the cmdset DefaultCharacter (CharacterCmdSet).

show Evennia info

Usage:
  @about

Display info about the game engine.

open source (system.py)

@objects (CmdObjects)

Belongs to the cmdset DefaultCharacter (CharacterCmdSet).

statistics on objects in the database

Usage:
  @objects [<nr>]

Gives statictics on objects in database as well as
a list of <nr> latest objects in database. If not
given, <nr> defaults to 10.

open source (system.py)

@py (CmdPy)

Belongs to the cmdset DefaultPlayer (PlayerCmdSet).

execute a snippet of python code

Usage:
  @py <cmd>
  @py/edit

Switches:
  time - output an approximate execution time for <cmd>
  edit - open a code editor for multi-line code experimentation

Separate multiple commands by ';' or open the editor using the
/edit switch.  A few variables are made available for convenience
in order to offer access to the system (you can import more at
execution time).

Available variables in @py environment:
  self, me                   : caller
  here                       : caller.location
  ev                         : the evennia API
  inherits_from(obj, parent) : check object inheritance

You can explore The evennia API from inside the game by calling
evennia.help(), evennia.managers.help() etc.

|rNote: In the wrong hands this command is a severe security risk.
It should only be accessible by trusted server admins/superusers.|n

open source (system.py)

@reload (CmdReload)

Belongs to the cmdset DefaultPlayer (PlayerCmdSet).

reload the server

Usage:
  @reload [reason]

This restarts the server. The Portal is not
affected. Non-persistent scripts will survive a @reload (use
@reset to purge) and at_reload() hooks will be called.

open source (system.py)

@reset (CmdReset)

Belongs to the cmdset DefaultPlayer (PlayerCmdSet).

reset and reboot the server

Usage:
  @reset

Notes:
  For normal updating you are recommended to use @reload rather
  than this command. Use @shutdown for a complete stop of
  everything.

This emulates a cold reboot of the Server component of Evennia.
The difference to @shutdown is that the Server will auto-reboot
and that it does not affect the Portal, so no users will be
disconnected. Contrary to @reload however, all shutdown hooks will
be called and any non-database saved scripts, ndb-attributes,
cmdsets etc will be wiped.

open source (system.py)

@scripts (CmdScripts)

Belongs to the cmdset DefaultCharacter (CharacterCmdSet).

list and manage all running scripts

Usage:
  @scripts[/switches] [#dbref, key, script.path or <obj>]

Switches:
  start - start a script (must supply a script path)
  stop - stops an existing script
  kill - kills a script - without running its cleanup hooks
  validate - run a validation on the script(s)

If no switches are given, this command just views all active
scripts. The argument can be either an object, at which point it
will be searched for all scripts defined on it, or a script name
or #dbref. For using the /stop switch, a unique script #dbref is
required since whole classes of scripts often have the same name.

Use @script for managing commands on objects.

open source (system.py)

@server (CmdServerLoad)

Belongs to the cmdset DefaultCharacter (CharacterCmdSet).

show server load and memory statistics

Usage:
   @server[/mem]

Switch:
    mem - return only a string of the current memory usage
    flushmem - flush the idmapper cache

This command shows server load statistics and dynamic memory
usage. It also allows to flush the cache of accessed database
objects.

Some Important statistics in the table:

|wServer load|n is an average of processor usage. It's usually
between 0 (no usage) and 1 (100% usage), but may also be
temporarily higher if your computer has multiple CPU cores.

The |wResident/Virtual memory|n displays the total memory used by
the server process.

Evennia |wcaches|n all retrieved database entities when they are
loaded by use of the idmapper functionality. This allows Evennia
to maintain the same instances of an entity and allowing
non-persistent storage schemes. The total amount of cached objects
are displayed plus a breakdown of database object types.

The |wflushmem|n switch allows to flush the object cache. Please
note that due to how Python's memory management works, releasing
caches may not show you a lower Residual/Virtual memory footprint,
the released memory will instead be re-used by the program.

open source (system.py)

@service (CmdService)

Belongs to the cmdset DefaultCharacter (CharacterCmdSet).

manage system services

Usage:
  @service[/switch] <service>

Switches:
  list   - shows all available services (default)
  start  - activates or reactivate a service
  stop   - stops/inactivate a service (can often be restarted)
  delete - tries to permanently remove a service

Service management system. Allows for the listing,
starting, and stopping of services. If no switches
are given, services will be listed. Note that to operate on the
service you have to supply the full (green or red) name as given
in the list.

open source (system.py)

@shutdown (CmdShutdown)

Belongs to the cmdset DefaultPlayer (PlayerCmdSet).

stop the server completely

Usage:
  @shutdown [announcement]

Gracefully shut down both Server and Portal.

open source (system.py)

@time (CmdTime)

Belongs to the cmdset DefaultCharacter (CharacterCmdSet).

show server time statistics

Usage:
  @time

List Server time statistics such as uptime
and the current time stamp.

open source (system.py)

unloggedin.py

View Source

__unloggedin_look_command (CmdUnconnectedLook)

Belongs to the cmdset DefaultUnloggedin (UnloggedinCmdSet).

OBS: This is a [[System Command|Commands]] name - it belongs to a number of command names the server calls in certain situations or as fallbacks.

  • key = “__unloggedin_look_command”
  • aliases = [‘look’, ‘l’]
  • locks = “cmd:all()”
  • help_category = “General”
  • __doc__ string (auto-help):
look when in unlogged-in state

Usage:
  look

This is an unconnected version of the look command for simplicity.

This is called by the server and kicks everything in gear.
All it does is display the connect screen.

open source (unloggedin.py)

connect (CmdUnconnectedConnect)

Belongs to the cmdset DefaultUnloggedin (UnloggedinCmdSet).

  • key = “connect”
  • aliases = [‘co’, ‘conn’, ‘con’]
  • locks = “cmd:all()”
  • help_category = “General”
  • __doc__ string (auto-help):
connect to the game

Usage (at login screen):
  connect playername password
  connect "player name" "pass word"

Use the create command to first create an account before logging in.

If you have spaces in your name, enclose it in double quotes.

open source (unloggedin.py)

create (CmdUnconnectedCreate)

Belongs to the cmdset DefaultUnloggedin (UnloggedinCmdSet).

create a new player account

Usage (at login screen):
  create <playername> <password>
  create "player name" "pass word"

This creates a new player account.

If you have spaces in your name, enclose it in double quotes.

open source (unloggedin.py)

help (CmdUnconnectedHelp)

Belongs to the cmdset DefaultUnloggedin (UnloggedinCmdSet).

get help when in unconnected-in state

Usage:
  help

This is an unconnected version of the help command,
for simplicity. It shows a pane of info.

open source (unloggedin.py)

quit (CmdUnconnectedQuit)

Belongs to the cmdset DefaultUnloggedin (UnloggedinCmdSet).

quit when in unlogged-in state

Usage:
  quit

We maintain a different version of the quit command
here for unconnected players for the sake of simplicity. The logged in
version is a bit more complicated.

open source (unloggedin.py)