evennia.contrib.evscaperoom.commands

Commands for the Evscaperoom. This contains all in-room commands as well as admin debug-commands to help development.

Gameplay commands

  • look - custom look

  • focus - focus on object (to perform actions on it)

  • <action> <obj> - arbitrary interaction with focused object

  • stand - stand on the floor, resetting any position

  • emote - free-form emote

  • say/whisper/shout - simple communication

Other commands

  • evscaperoom - starts the evscaperoom top-level menu

  • help - custom in-room help command

  • options - set game/accessibility options

  • who - show who’s in the room with you

  • quit - leave a room, return to menu

Admin/development commands

  • jumpstate - jump to specific room state

  • flag - assign a flag to an object

  • createobj - create a room-object set up for Evscaperoom

class evennia.contrib.evscaperoom.commands.CmdEvscapeRoom(**kwargs)[source]

Bases: evennia.commands.command.Command

Base command parent for all Evscaperoom commands.

This operates on the premise of ‘focus’ - the ‘focus’ is set on the caller, then subsequent commands will operate on that focus. If no focus is set, the operation will be general or on the room.

Syntax:

command [<obj1>|<arg1>] [<prep> <obj2>|<arg2>]

arg_regex = re.compile('(/\\w+?(\\s|$))|\\s|$', re.IGNORECASE)
help_category = 'evscaperoom'
parse()[source]

Parse incoming arguments for use in all child classes.

property focus
aliases = []
key = 'command'
lock_storage = 'cmd:all();'
search_index_entry = {'aliases': '', 'category': 'evscaperoom', 'key': 'command', 'tags': '', 'text': "\n Base command parent for all Evscaperoom commands.\n\n This operates on the premise of 'focus' - the 'focus'\n is set on the caller, then subsequent commands will\n operate on that focus. If no focus is set,\n the operation will be general or on the room.\n\n Syntax:\n\n command [<obj1>|<arg1>] [<prep> <obj2>|<arg2>]\n\n "}
class evennia.contrib.evscaperoom.commands.CmdGiveUp(**kwargs)[source]

Bases: evennia.contrib.evscaperoom.commands.CmdEvscapeRoom

Give up

Usage:

give up

Abandons your attempts at escaping and of ever winning the pie-eating contest.

key = 'give up'
aliases = ['abort', 'q', 'chicken out', 'quit']
func()[source]

This is the actual executing part of the command. It is called directly after self.parse(). See the docstring of this module for which object properties are available (beyond those set in self.parse())

help_category = 'evscaperoom'
lock_storage = 'cmd:all();'
search_index_entry = {'aliases': 'abort q chicken out quit', 'category': 'evscaperoom', 'key': 'give up', 'tags': '', 'text': '\n Give up\n\n Usage:\n give up\n\n Abandons your attempts at escaping and of ever winning the pie-eating contest.\n\n '}
class evennia.contrib.evscaperoom.commands.CmdLook(**kwargs)[source]

Bases: evennia.contrib.evscaperoom.commands.CmdEvscapeRoom

Look at the room, an object or the currently focused object

Usage:

look [obj]

key = 'look'
aliases = ['l', 'ls']
func()[source]

This is the actual executing part of the command. It is called directly after self.parse(). See the docstring of this module for which object properties are available (beyond those set in self.parse())

help_category = 'evscaperoom'
lock_storage = 'cmd:all();'
search_index_entry = {'aliases': 'l ls', 'category': 'evscaperoom', 'key': 'look', 'tags': '', 'text': '\n Look at the room, an object or the currently focused object\n\n Usage:\n look [obj]\n\n '}
class evennia.contrib.evscaperoom.commands.CmdWho(**kwargs)[source]

Bases: evennia.contrib.evscaperoom.commands.CmdEvscapeRoom, evennia.commands.default.account.CmdWho

List other players in the game.

Usage:

who who all

Show who is in the room with you, or (with who all), who is online on the server as a whole.

key = 'who'
func()[source]

This is the actual executing part of the command. It is called directly after self.parse(). See the docstring of this module for which object properties are available (beyond those set in self.parse())

aliases = []
help_category = 'evscaperoom'
lock_storage = 'cmd:all()'
search_index_entry = {'aliases': '', 'category': 'evscaperoom', 'key': 'who', 'tags': '', 'text': '\n List other players in the game.\n\n Usage:\n who\n who all\n\n Show who is in the room with you, or (with who all), who is online on the\n server as a whole.\n\n '}
class evennia.contrib.evscaperoom.commands.CmdSpeak(**kwargs)[source]

Bases: evennia.commands.command.Command

Perform an communication action.

Usage:

say <text> whisper shout

key = 'say'
aliases = ['shout', ';', 'whisper']
arg_regex = re.compile('\\w|\\s|$', re.IGNORECASE)
func()[source]

This is the actual executing part of the command. It is called directly after self.parse(). See the docstring of this module for which object properties are available (beyond those set in self.parse())

help_category = 'general'
lock_storage = 'cmd:all();'
search_index_entry = {'aliases': 'shout ; whisper', 'category': 'general', 'key': 'say', 'tags': '', 'text': '\n Perform an communication action.\n\n Usage:\n say <text>\n whisper\n shout\n\n '}
class evennia.contrib.evscaperoom.commands.CmdEmote(**kwargs)[source]

Bases: evennia.commands.command.Command

Perform a free-form emote. Use /me to include yourself in the emote and /name to include other objects or characters. Use “…” to enact speech.

Usage:

emote <emote> :<emote

Example

emote /me smiles at /peter emote /me points to /box and /lever.

key = 'emote'
aliases = ['pose', ':']
arg_regex = re.compile('\\w|\\s|$', re.IGNORECASE)
you_replace()[source]
room_replace()[source]
func()[source]

This is the actual executing part of the command. It is called directly after self.parse(). See the docstring of this module for which object properties are available (beyond those set in self.parse())

help_category = 'general'
lock_storage = 'cmd:all();'
search_index_entry = {'aliases': 'pose :', 'category': 'general', 'key': 'emote', 'tags': '', 'text': '\n Perform a free-form emote. Use /me to\n include yourself in the emote and /name\n to include other objects or characters.\n Use "..." to enact speech.\n\n Usage:\n emote <emote>\n :<emote\n\n Example:\n emote /me smiles at /peter\n emote /me points to /box and /lever.\n\n '}
class evennia.contrib.evscaperoom.commands.CmdFocus(**kwargs)[source]

Bases: evennia.contrib.evscaperoom.commands.CmdEvscapeRoom

Focus your attention on a target.

Usage:

focus <obj>

Once focusing on an object, use look to get more information about how it looks and what actions is available.

key = 'focus'
aliases = ['examine', 'e', 'unfocus', 'ex']
func()[source]

This is the actual executing part of the command. It is called directly after self.parse(). See the docstring of this module for which object properties are available (beyond those set in self.parse())

help_category = 'evscaperoom'
lock_storage = 'cmd:all();'
search_index_entry = {'aliases': 'examine e unfocus ex', 'category': 'evscaperoom', 'key': 'focus', 'tags': '', 'text': '\n Focus your attention on a target.\n\n Usage:\n focus <obj>\n\n Once focusing on an object, use look to get more information about how it\n looks and what actions is available.\n\n '}
class evennia.contrib.evscaperoom.commands.CmdOptions(**kwargs)[source]

Bases: evennia.contrib.evscaperoom.commands.CmdEvscapeRoom

Start option menu

Usage:

options

key = 'options'
aliases = ['option']
func()[source]

This is the actual executing part of the command. It is called directly after self.parse(). See the docstring of this module for which object properties are available (beyond those set in self.parse())

help_category = 'evscaperoom'
lock_storage = 'cmd:all();'
search_index_entry = {'aliases': 'option', 'category': 'evscaperoom', 'key': 'options', 'tags': '', 'text': '\n Start option menu\n\n Usage:\n options\n\n '}
class evennia.contrib.evscaperoom.commands.CmdGet(**kwargs)[source]

Bases: evennia.contrib.evscaperoom.commands.CmdEvscapeRoom

Use focus / examine instead.

key = 'get'
aliases = ['inventory', 'inv', 'give', 'i']
func()[source]

This is the actual executing part of the command. It is called directly after self.parse(). See the docstring of this module for which object properties are available (beyond those set in self.parse())

help_category = 'evscaperoom'
lock_storage = 'cmd:all();'
search_index_entry = {'aliases': 'inventory inv give i', 'category': 'evscaperoom', 'key': 'get', 'tags': '', 'text': '\n Use focus / examine instead.\n\n '}
class evennia.contrib.evscaperoom.commands.CmdRerouter(**kwargs)[source]

Bases: evennia.commands.default.muxcommand.MuxCommand

Interact with an object in focus.

Usage:

<action> [arg]

key = 'open'
aliases = ['@open', '@dig']
func()[source]

This is the hook function that actually does all the work. It is called by the cmdhandler right after self.parser() finishes, and so has access to all the variables defined therein.

help_category = 'general'
lock_storage = 'cmd:all();'
search_index_entry = {'aliases': '@open @dig', 'category': 'general', 'key': 'open', 'tags': '', 'text': '\n Interact with an object in focus.\n\n Usage:\n <action> [arg]\n\n '}
class evennia.contrib.evscaperoom.commands.CmdFocusInteraction(**kwargs)[source]

Bases: evennia.contrib.evscaperoom.commands.CmdEvscapeRoom

Interact with an object in focus.

Usage:

<action> [arg]

This is a special catch-all command which will operate on the current focus. It will look for a method

focused_object.at_focus_<action>(caller, **kwargs) and call

it. This allows objects to just add a new hook to make that action apply to it. The obj1, prep, obj2, arg1, arg2 are passed as keys into the method.

key = '__nomatch_command'
parse()[source]

We assume this type of command is always on the form command [arg]

func()[source]

This is the actual executing part of the command. It is called directly after self.parse(). See the docstring of this module for which object properties are available (beyond those set in self.parse())

aliases = []
help_category = 'evscaperoom'
lock_storage = 'cmd:all();'
search_index_entry = {'aliases': '', 'category': 'evscaperoom', 'key': '__nomatch_command', 'tags': '', 'text': '\n Interact with an object in focus.\n\n Usage:\n <action> [arg]\n\n This is a special catch-all command which will operate on\n the current focus. It will look for a method\n `focused_object.at_focus_<action>(caller, **kwargs)` and call\n it. This allows objects to just add a new hook to make that\n action apply to it. The obj1, prep, obj2, arg1, arg2 are passed\n as keys into the method.\n\n '}
class evennia.contrib.evscaperoom.commands.CmdStand(**kwargs)[source]

Bases: evennia.contrib.evscaperoom.commands.CmdEvscapeRoom

Stand up from whatever position you had.

key = 'stand'
func()[source]

This is the actual executing part of the command. It is called directly after self.parse(). See the docstring of this module for which object properties are available (beyond those set in self.parse())

aliases = []
help_category = 'evscaperoom'
lock_storage = 'cmd:all();'
search_index_entry = {'aliases': '', 'category': 'evscaperoom', 'key': 'stand', 'tags': '', 'text': '\n Stand up from whatever position you had.\n\n '}
class evennia.contrib.evscaperoom.commands.CmdHelp(**kwargs)[source]

Bases: evennia.contrib.evscaperoom.commands.CmdEvscapeRoom, evennia.commands.default.help.CmdHelp

Get help.

Usage:

help <topic> or <command>

key = 'help'
aliases = ['?']
func()[source]

This is the actual executing part of the command. It is called directly after self.parse(). See the docstring of this module for which object properties are available (beyond those set in self.parse())

help_category = 'evscaperoom'
lock_storage = 'cmd:all()'
search_index_entry = {'aliases': '?', 'category': 'evscaperoom', 'key': 'help', 'tags': '', 'text': '\n Get help.\n\n Usage:\n help <topic> or <command>\n\n '}
class evennia.contrib.evscaperoom.commands.CmdCreateObj(**kwargs)[source]

Bases: evennia.contrib.evscaperoom.commands.CmdEvscapeRoom

Create command, only for Admins during debugging.

Usage:

createobj name[:typeclass]

Here, :typeclass is a class in evscaperoom.commands

key = 'createobj'
aliases = ['cobj']
locks = 'cmd:perm(Admin)'
func()[source]

This is the actual executing part of the command. It is called directly after self.parse(). See the docstring of this module for which object properties are available (beyond those set in self.parse())

help_category = 'evscaperoom'
lock_storage = 'cmd:perm(Admin)'
search_index_entry = {'aliases': 'cobj', 'category': 'evscaperoom', 'key': 'createobj', 'tags': '', 'text': '\n Create command, only for Admins during debugging.\n\n Usage:\n createobj name[:typeclass]\n\n Here, :typeclass is a class in evscaperoom.commands\n\n '}
class evennia.contrib.evscaperoom.commands.CmdSetFlag(**kwargs)[source]

Bases: evennia.contrib.evscaperoom.commands.CmdEvscapeRoom

Assign a flag to an object. Admin use only

Usage:

flag <obj> with <flagname>

key = 'flag'
aliases = ['setflag']
locks = 'cmd:perm(Admin)'
func()[source]

This is the actual executing part of the command. It is called directly after self.parse(). See the docstring of this module for which object properties are available (beyond those set in self.parse())

help_category = 'evscaperoom'
lock_storage = 'cmd:perm(Admin)'
search_index_entry = {'aliases': 'setflag', 'category': 'evscaperoom', 'key': 'flag', 'tags': '', 'text': '\n Assign a flag to an object. Admin use only\n\n Usage:\n flag <obj> with <flagname>\n\n '}
class evennia.contrib.evscaperoom.commands.CmdJumpState(**kwargs)[source]

Bases: evennia.contrib.evscaperoom.commands.CmdEvscapeRoom

Jump to a given state.

Parameters

<statename> (jumpstate) –

key = 'jumpstate'
locks = 'cmd:perm(Admin)'
func()[source]

This is the actual executing part of the command. It is called directly after self.parse(). See the docstring of this module for which object properties are available (beyond those set in self.parse())

aliases = []
help_category = 'evscaperoom'
lock_storage = 'cmd:perm(Admin)'
search_index_entry = {'aliases': '', 'category': 'evscaperoom', 'key': 'jumpstate', 'tags': '', 'text': '\n Jump to a given state.\n\n Args:\n jumpstate <statename>\n\n '}
class evennia.contrib.evscaperoom.commands.CmdEvscapeRoomStart(**kwargs)[source]

Bases: evennia.commands.command.Command

Go to the Evscaperoom start menu

key = 'evscaperoom'
help_category = 'evscaperoom'
func()[source]

This is the actual executing part of the command. It is called directly after self.parse(). See the docstring of this module for which object properties are available (beyond those set in self.parse())

aliases = []
lock_storage = 'cmd:all();'
search_index_entry = {'aliases': '', 'category': 'evscaperoom', 'key': 'evscaperoom', 'tags': '', 'text': '\n Go to the Evscaperoom start menu\n\n '}
class evennia.contrib.evscaperoom.commands.CmdSetEvScapeRoom(cmdsetobj=None, key=None)[source]

Bases: evennia.commands.cmdset.CmdSet

path = 'evennia.contrib.evscaperoom.commands.CmdSetEvScapeRoom'
priority = 1
at_cmdset_creation()[source]

Hook method - this should be overloaded in the inheriting class, and should take care of populating the cmdset by use of self.add().