<spanid="evennia-objects-objects"></span><h1>evennia.objects.objects<aclass="headerlink"href="#module-evennia.objects.objects"title="Link to this heading">¶</a></h1>
<p>This module defines the basic <strong>DefaultObject</strong> and its children
<strong>DefaultCharacter</strong>, <strong>DefaultAccount</strong>, <strong>DefaultRoom</strong> and <strong>DefaultExit</strong>.
These are the (default) starting points for all in-game visible
<emclass="property"><spanclass="k"><spanclass="pre">class</span></span><spanclass="w"></span></em><spanclass="sig-prename descclassname"><spanclass="pre">evennia.objects.objects.</span></span><spanclass="sig-name descname"><spanclass="pre">ObjectSessionHandler</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">obj</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#ObjectSessionHandler"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.ObjectSessionHandler"title="Link to this definition">¶</a></dt>
<spanclass="sig-name descname"><spanclass="pre">__init__</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">obj</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#ObjectSessionHandler.__init__"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.ObjectSessionHandler.__init__"title="Link to this definition">¶</a></dt>
<ddclass="field-odd"><p><strong>obj</strong> (<aclass="reference internal"href="#evennia.objects.objects.DefaultObject"title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The object on which the handler is defined.</p>
<spanclass="sig-name descname"><spanclass="pre">get</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">sessid</span></span><spanclass="o"><spanclass="pre">=</span></span><spanclass="default_value"><spanclass="pre">None</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#ObjectSessionHandler.get"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.ObjectSessionHandler.get"title="Link to this definition">¶</a></dt>
<dd><p>Get the sessions linked to this Object.</p>
<spanclass="sig-name descname"><spanclass="pre">all</span></span><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#ObjectSessionHandler.all"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.ObjectSessionHandler.all"title="Link to this definition">¶</a></dt>
<dd><p>Alias to get(), returning all sessions.</p>
<spanclass="sig-name descname"><spanclass="pre">add</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">session</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#ObjectSessionHandler.add"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.ObjectSessionHandler.add"title="Link to this definition">¶</a></dt>
<ddclass="field-odd"><p><strong>session</strong> (<aclass="reference internal"href="evennia.server.session.html#evennia.server.session.Session"title="evennia.server.session.Session"><em>Session</em></a><em> or </em><em>int</em>) – Session or session id to add.</p>
</dd>
</dl>
<pclass="rubric">Notes</p>
<p>We will only add a session/sessid if this actually also exists
<spanclass="sig-name descname"><spanclass="pre">remove</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">session</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#ObjectSessionHandler.remove"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.ObjectSessionHandler.remove"title="Link to this definition">¶</a></dt>
<spanclass="sig-name descname"><spanclass="pre">clear</span></span><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#ObjectSessionHandler.clear"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.ObjectSessionHandler.clear"title="Link to this definition">¶</a></dt>
<spanclass="sig-name descname"><spanclass="pre">count</span></span><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#ObjectSessionHandler.count"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.ObjectSessionHandler.count"title="Link to this definition">¶</a></dt>
<emclass="property"><spanclass="k"><spanclass="pre">class</span></span><spanclass="w"></span></em><spanclass="sig-prename descclassname"><spanclass="pre">evennia.objects.objects.</span></span><spanclass="sig-name descname"><spanclass="pre">DefaultObject</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="o"><spanclass="pre">*</span></span><spanclass="n"><spanclass="pre">args</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject"title="Link to this definition">¶</a></dt>
<li><p>Hooks (these are class methods, so args should start with self):</p></li>
</ul>
<blockquote>
<div><dlclass="simple">
<dt>basetype_setup() - only called once, used for behind-the-scenes</dt><dd><p>setup. Normally not modified.</p>
</dd>
<dt>basetype_posthook_setup() - customization in basetype, after the object</dt><dd><p>has been created; Normally not modified.</p>
</dd>
<dt>at_object_creation() - only called once, when object is first created.</dt><dd><p>Object customizations go here.</p>
</dd>
<dt>at_object_post_creation() - only called once, when object is first created.</dt><dd><p>Additional setup involving e.g. prototype-set attributes can go here.</p>
</dd>
<dt>at_object_delete() - called just before deleting an object. If returning</dt><dd><p>False, deletion is aborted. Note that all objects
inside a deleted object are automatically moved
to their <home>, they don’t need to be removed here.</p>
</dd>
<dt>at_object_post_spawn() - called when object is spawned from a prototype or updated</dt><dd><p>by the spawner to apply prototype changes.</p>
</dd>
<dt>at_init() - called whenever typeclass is cached from memory,</dt><dd><p>at least once every server restart/reload</p>
</dd>
</dl>
<p>at_first_save()
at_cmdset_get(<ahref="#id53"><spanclass="problematic"id="id54">**</span></a>kwargs) - this is called just before the command handler</p>
<blockquote>
<div><p>requests a cmdset from this object. The kwargs are
not normally used unless the cmdset is created
dynamically (see e.g. Exits).</p>
</div></blockquote>
<dlclass="simple">
<dt>at_pre_puppet(account)- (account-controlled objects only) called just</dt><dd><p>before puppeting</p>
</dd>
<dt>at_post_puppet() - (account-controlled objects only) called just</dt><dd><p>after completing connection account<->object</p>
</dd>
<dt>at_pre_unpuppet() - (account-controlled objects only) called just</dt><dd><p>before un-puppeting</p>
</dd>
<dt>at_post_unpuppet(account) - (account-controlled objects only) called just</dt><dd><p>after disconnecting account<->object link</p>
</dd>
</dl>
<p>at_server_reload() - called before server is reloaded
at_server_shutdown() - called just before server is fully shut down</p>
<dlclass="simple">
<dt>at_access(result, accessing_obj, access_type) - called with the result</dt><dd><p>of a lock access check on this object. Return value
does not affect check result.</p>
</dd>
<dt>at_pre_move(destination) - called just before moving object</dt><dd><p>to the destination. If returns False, move is cancelled.</p>
</dd>
<dt>announce_move_from(destination) - called in old location, just</dt><dd><p>before move, if obj.move_to() has quiet=False</p>
</dd>
<dt>announce_move_to(source_location) - called in new location, just</dt><dd><p>after move, if obj.move_to() has quiet=False</p>
</dd>
<dt>at_post_move(source_location) - always called after a move has</dt><dd><p>been successfully performed.</p>
at_object_leave(obj, target_location) - called when an object leaves</p>
<blockquote>
<div><p>this object in any fashion</p>
</div></blockquote>
<p>at_pre_object_receive(obj, source_location)
at_object_receive(obj, source_location, move_type=”move”, <ahref="#id59"><spanclass="problematic"id="id60">**</span></a>kwargs) - called when this object</p>
<dt>at_traverse(traversing_object, target_location, <ahref="#id63"><spanclass="problematic"id="id64">**</span></a>kwargs) - (exit-objects only)</dt><dd><p>handles all moving across the exit, including
calling the other exit hooks. Use super() to retain
the default functionality.</p>
</dd>
<dt>at_post_traverse(traversing_object, source_location) - (exit-objects only)</dt><dd><p>called just after a traversal has happened.</p>
</dd>
<dt>at_failed_traverse(traversing_object) - (exit-objects only) called if</dt><dd><p>traversal fails and property err_traverse is not defined.</p>
</dd>
<dt>at_msg_receive(self, msg, from_obj=None, <ahref="#id65"><spanclass="problematic"id="id66">**</span></a>kwargs) - called when a message</dt><dd><p>(via self.msg()) is sent to this obj.
If returns false, aborts send.</p>
</dd>
<dt>at_msg_send(self, msg, to_obj=None, <ahref="#id67"><spanclass="problematic"id="id68">**</span></a>kwargs) - called when this objects</dt><dd><p>sends a message to someone via self.msg().</p>
</dd>
<dt>return_appearance(looker) - describes this object. Used by “look”</dt><dd><p>command by default</p>
</dd>
<dt>at_desc(looker=None) - called by ‘look’ whenever the</dt><dd><p>appearance is requested.</p>
<spanclass="sig-name descname"><spanclass="pre">cmdset_provider_order</span></span><emclass="property"><spanclass="w"></span><spanclass="p"><spanclass="pre">=</span></span><spanclass="w"></span><spanclass="pre">100</span></em><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.cmdset_provider_order"title="Link to this definition">¶</a></dt>
<spanclass="sig-name descname"><spanclass="pre">cmdset_provider_error_order</span></span><emclass="property"><spanclass="w"></span><spanclass="p"><spanclass="pre">=</span></span><spanclass="w"></span><spanclass="pre">100</span></em><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.cmdset_provider_error_order"title="Link to this definition">¶</a></dt>
<spanclass="sig-name descname"><spanclass="pre">cmdset_provider_type</span></span><emclass="property"><spanclass="w"></span><spanclass="p"><spanclass="pre">=</span></span><spanclass="w"></span><spanclass="pre">'object'</span></em><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.cmdset_provider_type"title="Link to this definition">¶</a></dt>
<spanclass="sig-name descname"><spanclass="pre">objects</span></span><emclass="property"><spanclass="w"></span><spanclass="p"><spanclass="pre">=</span></span><spanclass="w"></span><spanclass="pre"><evennia.objects.manager.ObjectManager</span><spanclass="pre">object></span></em><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.objects"title="Link to this definition">¶</a></dt>
<spanclass="sig-name descname"><spanclass="pre">default_description</span></span><emclass="property"><spanclass="w"></span><spanclass="p"><spanclass="pre">=</span></span><spanclass="w"></span><spanclass="pre">'You</span><spanclass="pre">see</span><spanclass="pre">nothing</span><spanclass="pre">special.'</span></em><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.default_description"title="Link to this definition">¶</a></dt>
<spanclass="sig-name descname"><spanclass="pre">appearance_template</span></span><emclass="property"><spanclass="w"></span><spanclass="p"><spanclass="pre">=</span></span><spanclass="w"></span><spanclass="pre">'\n{header}\n|c{name}{extra_name_info}|n\n{desc}\n{exits}\n{characters}\n{things}\n{footer}\n</span>   <spanclass="pre">'</span></em><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.appearance_template"title="Link to this definition">¶</a></dt>
<spanclass="sig-name descname"><spanclass="pre">plural_category</span></span><emclass="property"><spanclass="w"></span><spanclass="p"><spanclass="pre">=</span></span><spanclass="w"></span><spanclass="pre">'plural_key'</span></em><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.plural_category"title="Link to this definition">¶</a></dt>
<spanclass="sig-name descname"><spanclass="pre">cmdset</span></span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.cmdset"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.cmdset"title="Link to this definition">¶</a></dt>
<spanclass="sig-name descname"><spanclass="pre">scripts</span></span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.scripts"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.scripts"title="Link to this definition">¶</a></dt>
<spanclass="sig-name descname"><spanclass="pre">nicks</span></span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.nicks"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.nicks"title="Link to this definition">¶</a></dt>
<spanclass="sig-name descname"><spanclass="pre">sessions</span></span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.sessions"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.sessions"title="Link to this definition">¶</a></dt>
<emclass="property"><spanclass="k"><spanclass="pre">property</span></span><spanclass="w"></span></em><spanclass="sig-name descname"><spanclass="pre">is_connected</span></span><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.is_connected"title="Link to this definition">¶</a></dt>
<dd><p>True if this object is associated with an Account with any connected sessions.</p>
<emclass="property"><spanclass="k"><spanclass="pre">property</span></span><spanclass="w"></span></em><spanclass="sig-name descname"><spanclass="pre">has_account</span></span><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.has_account"title="Link to this definition">¶</a></dt>
<dd><p>True is this object has an associated account.</p>
<spanclass="sig-name descname"><spanclass="pre">get_cmdset_providers</span></span><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><spanclass="sig-return"><spanclass="sig-return-icon">→</span><spanclass="sig-return-typehint"><spanclass="pre">dict</span><spanclass="p"><spanclass="pre">[</span></span><spanclass="pre">str</span><spanclass="p"><spanclass="pre">,</span></span><spanclass="w"></span><spanclass="pre">CmdSetProvider</span><spanclass="p"><spanclass="pre">]</span></span></span></span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.get_cmdset_providers"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.get_cmdset_providers"title="Link to this definition">¶</a></dt>
<dd><p>Overrideable method which returns a dictionary of every kind of object which
has a cmdsethandler linked to this Object, and should participate in cmdset
merging.</p>
<p>Objects might be aware of an Account. Otherwise, just themselves, by default.</p>
<emclass="property"><spanclass="k"><spanclass="pre">property</span></span><spanclass="w"></span></em><spanclass="sig-name descname"><spanclass="pre">is_superuser</span></span><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.is_superuser"title="Link to this definition">¶</a></dt>
<dd><p>True if this object has an account and that account is a superuser.</p>
<spanclass="sig-name descname"><spanclass="pre">contents_get</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">exclude</span></span><spanclass="o"><spanclass="pre">=</span></span><spanclass="default_value"><spanclass="pre">None</span></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">content_type</span></span><spanclass="o"><spanclass="pre">=</span></span><spanclass="default_value"><spanclass="pre">None</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.contents_get"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.contents_get"title="Link to this definition">¶</a></dt>
<dd><p>Returns the contents of this object, i.e. all
<li><p><strong>exclude</strong> (<aclass="reference internal"href="#evennia.objects.objects.DefaultObject"title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – Object to exclude from returned
contents list</p></li>
<li><p><strong>content_type</strong> (<em>str</em>) – A content_type to filter by. None for no
<spanclass="sig-name descname"><spanclass="pre">contents_set</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="o"><spanclass="pre">*</span></span><spanclass="n"><spanclass="pre">args</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.contents_set"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.contents_set"title="Link to this definition">¶</a></dt>
<dd><p>Makes sure <strong>.contents</strong> is read-only. Raises <strong>AttributeError</strong> if trying to set it.</p>
<emclass="property"><spanclass="k"><spanclass="pre">property</span></span><spanclass="w"></span></em><spanclass="sig-name descname"><spanclass="pre">contents</span></span><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.contents"title="Link to this definition">¶</a></dt>
<dd><p>Returns the contents of this object, i.e. all
<li><p><strong>exclude</strong> (<aclass="reference internal"href="#evennia.objects.objects.DefaultObject"title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – Object to exclude from returned
contents list</p></li>
<li><p><strong>content_type</strong> (<em>str</em>) – A content_type to filter by. None for no
<emclass="property"><spanclass="k"><spanclass="pre">property</span></span><spanclass="w"></span></em><spanclass="sig-name descname"><spanclass="pre">exits</span></span><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.exits"title="Link to this definition">¶</a></dt>
<dd><p>Returns all exits from this object, i.e. all objects at this
location having the property .destination != <strong>None</strong>.</p>
<spanclass="sig-name descname"><spanclass="pre">get_search_query_replacement</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">searchdata</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.get_search_query_replacement"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.get_search_query_replacement"title="Link to this definition">¶</a></dt>
<dd><p>This method is called by the search method to allow for direct
replacements of the search string before it is used in the search.</p>
<spanclass="sig-name descname"><spanclass="pre">get_search_direct_match</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">searchdata</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.get_search_direct_match"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.get_search_direct_match"title="Link to this definition">¶</a></dt>
<dd><p>This method is called by the search method to allow for direct
replacements, such as ‘me’ always being an alias for this object.</p>
<spanclass="sig-name descname"><spanclass="pre">get_search_candidates</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">searchdata</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.get_search_candidates"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.get_search_candidates"title="Link to this definition">¶</a></dt>
<dd><p>Helper for the <strong>.search</strong> method. Get the candidates for a search. Also the <strong>candidates</strong>
provided to the search function is included, and could be modified in-place here.</p>
<li><p><strong>searchdata</strong> (<em>str</em>) – The search criterion.</p></li>
<li><p><strong>attribute_name</strong> (<em>str</em>) – The attribute to search on (default is <ahref="#id85"><spanclass="problematic"id="id86">**</span></a>.</p></li>
<li><p><strong>typeclass</strong> (<em>Typeclass</em><em> or </em><em>list</em>) – The typeclass to search for.</p></li>
<li><p><strong>candidates</strong> (<em>list</em>) – A list of objects to search between.</p></li>
<spanclass="sig-name descname"><spanclass="pre">get_stacked_results</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">results</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.get_stacked_results"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.get_stacked_results"title="Link to this definition">¶</a></dt>
<dd><p>This method is called by the search method to allow for handling of multi-match
<spanclass="sig-name descname"><spanclass="pre">handle_search_results</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">searchdata</span></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">results</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.handle_search_results"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.handle_search_results"title="Link to this definition">¶</a></dt>
<dd><p>This method is called by the search method to allow for handling of the final search result.</p>
<li><p><strong>searchdata</strong> (<em>str</em><em> or </em><em>obj</em>) –<p>Primary search criterion. Will be matched
against <strong>object.key</strong> (with <strong>object.aliases</strong> second) unless
the keyword attribute_name specifies otherwise.</p>
<p>Special keywords:</p>
<ul>
<li><p><strong>#<num></strong>: search by unique dbref. This is always a global search.</p></li>
<li><p><strong>me,self</strong>: self-reference to this object</p></li>
<li><dlclass="simple">
<dt><strong><num>-<string></strong> - can be used to differentiate</dt><dd><p>between multiple same-named matches. The exact form of this input
is given by <strong>settings.SEARCH_MULTIMATCH_REGEX</strong>.</p>
</dd>
</dl>
</li>
</ul>
</p></li>
<li><p><strong>global_search</strong> (<em>bool</em>) – Search all objects globally. This overrules ‘location’ data.</p></li>
<li><p><strong>use_nicks</strong> (<em>bool</em>) – Use nickname-replace (nicktype “object”) on <strong>searchdata</strong>.</p></li>
<li><p><strong>typeclass</strong> (<em>str</em><em> or </em><em>Typeclass</em><em>, or </em><em>list</em><em> of </em><em>either</em>) – Limit search only
to <strong>Objects</strong> with this typeclass. May be a list of typeclasses
for a broader search.</p></li>
<li><p><strong>location</strong> (<em>Object</em><em> or </em><em>list</em>) – Specify a location or multiple locations
to search. Note that this is used to query the <em>contents</em> of a
location and will not match for the location itself -
if you want that, don’t set this or use <strong>candidates</strong> to specify
exactly which objects should be searched. If this nor candidates are
given, candidates will include caller’s inventory, current location and
all objects in the current location.</p></li>
<li><p><strong>attribute_name</strong> (<em>str</em>) – Define which property to search. If set, no
key+alias search will be performed. This can be used
to search database fields (<ahref="#id1"><spanclass="problematic"id="id2">db_</span></a> will be automatically
prepended), and if that fails, it will try to return
objects having Attributes with this name and value
equal to searchdata. A special use is to search for
“key” here if you want to do a key-search without
including aliases.</p></li>
<li><p><strong>quiet</strong> (<em>bool</em>) – don’t display default error messages - this tells the
search method that the user wants to handle all errors
themselves. It also changes the return value type, see
below.</p></li>
<li><p><strong>exact</strong> (<em>bool</em>) – if unset (default) - prefers to match to beginning of
string rather than not matching at all. If set, requires
exact matching of entire string.</p></li>
<li><p><strong>candidates</strong> (<em>list</em><em> of </em><em>objects</em>) – this is an optional custom list of objects
to search (filter) between. It is ignored if <strong>global_search</strong>
is given. If not set, this list will automatically be defined
to include the location, the contents of location and the
caller’s contents (inventory).</p></li>
<li><p><strong>use_locks</strong> (<em>bool</em>) – If True (default) - removes search results which
fail the “search” lock.</p></li>
<li><p><strong>nofound_string</strong> (<em>str</em>) – optional custom string for not-found error message.</p></li>
<li><p><strong>multimatch_string</strong> (<em>str</em>) – optional custom string for multimatch error header.</p></li>
<li><p><strong>use_dbref</strong> (<em>bool</em><em> or </em><em>None</em><em>, </em><em>optional</em>) – If <strong>True</strong>, allow to enter e.g. a query “#123”
to find an object (globally) by its database-id 123. If <strong>False</strong>, the string “#123”
will be treated like a normal string. If <strong>None</strong> (default), the ability to query by
#dbref is turned on if <strong>self</strong> has the permission ‘Builder’ and is turned off
otherwise.</p></li>
<li><p><strong>tags</strong> (<em>list</em><em> or </em><em>tuple</em>) – Find objects matching one or more Tags. This should be one or
more tag definitions on the form <strong>tagname</strong> or <strong>(tagname, tagcategory)</strong>.</p></li>
<li><p><strong>stacked</strong> (<em>int</em><em>, </em><em>optional</em>) – If > 0, multimatches will be analyzed to determine if they
only contains identical objects; these are then assumed ‘stacked’ and no multi-match
error will be generated, instead <strong>stacked</strong> number of matches will be returned as a
list. If <strong>stacked</strong> is larger than number of matches, returns that number of matches.
If the found stack is a mix of objects, return None and handle the multi-match error
depending on the value of <strong>quiet</strong>.</p></li>
<ddclass="field-even"><p><em>Object, None or list</em>– Will return an <strong>Object</strong> or <strong>None</strong> if <strong>quiet=False</strong>. Will return
a <strong>list</strong> with 0, 1 or more matches if <strong>quiet=True</strong>. If <strong>stacked</strong> is a positive integer,
this list may contain all stacked identical matches.</p>
</dd>
</dl>
<pclass="rubric">Notes</p>
<p>To find Accounts, use eg. <strong>evennia.account_search</strong>. If
<strong>quiet=False</strong>, error messages will be handled by
<strong>settings.SEARCH_AT_RESULT</strong> and echoed automatically (on
error, return will be <strong>None</strong>). If <strong>quiet=True</strong>, the error
messaging is assumed to be handled by the caller.</p>
<spanclass="sig-name descname"><spanclass="pre">search_account</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">searchdata</span></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">quiet</span></span><spanclass="o"><spanclass="pre">=</span></span><spanclass="default_value"><spanclass="pre">False</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.search_account"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.search_account"title="Link to this definition">¶</a></dt>
<dd><p>Simple shortcut wrapper to search for accounts, not characters.</p>
<spanclass="sig-name descname"><spanclass="pre">execute_cmd</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">raw_string</span></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">session</span></span><spanclass="o"><spanclass="pre">=</span></span><spanclass="default_value"><spanclass="pre">None</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.execute_cmd"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.execute_cmd"title="Link to this definition">¶</a></dt>
<dd><p>Do something as this object. This is never called normally,
it’s only used when wanting specifically to let an object be
the caller of a command. It makes use of nicks of eventual
<spanclass="sig-name descname"><spanclass="pre">msg</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">text</span></span><spanclass="o"><spanclass="pre">=</span></span><spanclass="default_value"><spanclass="pre">None</span></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">from_obj</span></span><spanclass="o"><spanclass="pre">=</span></span><spanclass="default_value"><spanclass="pre">None</span></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">session</span></span><spanclass="o"><spanclass="pre">=</span></span><spanclass="default_value"><spanclass="pre">None</span></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">options</span></span><spanclass="o"><spanclass="pre">=</span></span><spanclass="default_value"><spanclass="pre">None</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.msg"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.msg"title="Link to this definition">¶</a></dt>
<dd><p>Emits something to a session attached to the object.</p>
<li><p><strong>text</strong> (<em>str</em><em> or </em><em>tuple</em>) – The message to send. This
is treated internally like any send-command, so its
value can be a tuple if sending multiple arguments to
the <strong>text</strong> oob command.</p></li>
<li><p><strong>from_obj</strong> (<aclass="reference internal"href="#evennia.objects.objects.DefaultObject"title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a><em>, </em><aclass="reference internal"href="evennia.accounts.accounts.html#evennia.accounts.accounts.DefaultAccount"title="evennia.accounts.accounts.DefaultAccount"><em>DefaultAccount</em></a><em>, </em><aclass="reference internal"href="evennia.server.session.html#evennia.server.session.Session"title="evennia.server.session.Session"><em>Session</em></a><em>, or </em><em>list</em>) – object that is sending. If
given, at_msg_send will be called. This value will be
passed on to the protocol. If iterable, will execute hook
on all entities in it.</p></li>
<li><p><strong>session</strong> (<aclass="reference internal"href="evennia.server.session.html#evennia.server.session.Session"title="evennia.server.session.Session"><em>Session</em></a><em> or </em><em>list</em>) – Session or list of
Sessions to relay data to, if any. If set, will force send
to these sessions. If unset, who receives the message
<spanclass="sig-name descname"><spanclass="pre">for_contents</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">func</span></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">exclude</span></span><spanclass="o"><spanclass="pre">=</span></span><spanclass="default_value"><spanclass="pre">None</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.for_contents"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.for_contents"title="Link to this definition">¶</a></dt>
<dd><p>Runs a function on every object contained within this one.</p>
<li><p><strong>destination</strong> (<aclass="reference internal"href="#evennia.objects.objects.DefaultObject"title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – Reference to the object to move to. This
can also be an exit object, in which case the
destination property is used as destination.</p></li>
<li><p><strong>quiet</strong> (<em>bool</em>) – If true, turn off the calling of the emit hooks
(announce_move_to/from etc)</p></li>
<li><p><strong>emit_to_obj</strong> (<aclass="reference internal"href="#evennia.objects.objects.DefaultObject"title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – object to receive error messages</p></li>
<li><p><strong>use_destination</strong> (<em>bool</em>) – Default is for objects to use the “destination”
property of destinations as the target to move to. Turning off this
keyword allows objects to move “inside” exit objects.</p></li>
<li><p><strong>to_none</strong> (<em>bool</em>) – Allow destination to be None. Note that no hooks are run when
moving to a None location. If you want to run hooks, run them manually
(and make sure they can manage None locations).</p></li>
<li><p><strong>move_hooks</strong> (<em>bool</em>) – If False, turn off the calling of move-related hooks
(at_pre/post_move etc) with quiet=True, this is as quiet a move
as can be done.</p></li>
<li><p><strong>move_type</strong> (<em>str</em>) – The “kind of move” being performed, such as “teleport”, “traverse”,
“get”, “give”, or “drop”. The value can be arbitrary. By default, it only affects
the text message generated by announce_move_to and announce_move_from by defining
their {“type”: move_type} for outgoing text. This can be used for altering
<spanclass="sig-name descname"><spanclass="pre">clear_exits</span></span><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.clear_exits"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.clear_exits"title="Link to this definition">¶</a></dt>
<dd><p>Destroys all of the exits and any exits pointing to this
<spanclass="sig-name descname"><spanclass="pre">clear_contents</span></span><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.clear_contents"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.clear_contents"title="Link to this definition">¶</a></dt>
<dd><p>Moves all objects (accounts/things) to their home location or
<emclass="property"><spanclass="k"><spanclass="pre">classmethod</span></span><spanclass="w"></span></em><spanclass="sig-name descname"><spanclass="pre">get_default_lockstring</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">account</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><aclass="reference internal"href="evennia.accounts.accounts.html#evennia.accounts.accounts.DefaultAccount"title="evennia.accounts.accounts.DefaultAccount"><spanclass="pre">DefaultAccount</span></a></span><spanclass="w"></span><spanclass="o"><spanclass="pre">=</span></span><spanclass="w"></span><spanclass="default_value"><spanclass="pre">None</span></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">caller</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><aclass="reference internal"href="#evennia.objects.objects.DefaultObject"title="evennia.objects.objects.DefaultObject"><spanclass="pre">DefaultObject</span></a></span><spanclass="w"></span><spanclass="o"><spanclass="pre">=</span></span><spanclass="w"></span><spanclass="default_value"><spanclass="pre">None</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.get_default_lockstring"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.get_default_lockstring"title="Link to this definition">¶</a></dt>
<dd><p>Classmethod called during .create() to determine default locks for the object.</p>
<li><p><strong>account</strong> (<aclass="reference internal"href="evennia.accounts.accounts.html#evennia.accounts.accounts.DefaultAccount"title="evennia.accounts.accounts.DefaultAccount"><em>DefaultAccount</em></a>) – Account to attribute this object to.</p></li>
<li><p><strong>caller</strong> (<aclass="reference internal"href="#evennia.objects.objects.DefaultObject"title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The object which is creating this one.</p></li>
<li><p><strong>account</strong> (<aclass="reference internal"href="evennia.accounts.accounts.html#evennia.accounts.accounts.DefaultAccount"title="evennia.accounts.accounts.DefaultAccount"><em>DefaultAccount</em></a>) – Account to attribute this object to.</p></li>
<li><p><strong>caller</strong> (<aclass="reference internal"href="#evennia.objects.objects.DefaultObject"title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The object which is creating this one.</p></li>
<li><p><strong>description</strong> (<em>str</em>) – Brief description for this object.</p></li>
<li><p><strong>ip</strong> (<em>str</em>) – IP address of creator (for object auditing).</p></li>
<li><p><strong>method</strong> (<em>str</em>) – The method of creation. Defaults to “create”.</p></li>
<spanclass="sig-name descname"><spanclass="pre">copy</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">new_key</span></span><spanclass="o"><spanclass="pre">=</span></span><spanclass="default_value"><spanclass="pre">None</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.copy"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.copy"title="Link to this definition">¶</a></dt>
<dd><p>Makes an identical copy of this object, identical except for a
new dbref in the database. If you want to customize the copy
by changing some settings, use ObjectDB.object.copy_object()
<spanclass="sig-name descname"><spanclass="pre">at_object_post_copy</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">new_obj</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.at_object_post_copy"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.at_object_post_copy"title="Link to this definition">¶</a></dt>
<dd><p>Called by DefaultObject.copy(). Meant to be overloaded. In case there’s extra data not
covered by .copy(), this can be used to deal with it.</p>
<ddclass="field-odd"><p><strong>new_obj</strong> (<aclass="reference internal"href="#evennia.objects.objects.DefaultObject"title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The new Copy of this object.</p>
<spanclass="sig-name descname"><spanclass="pre">delete</span></span><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.delete"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.delete"title="Link to this definition">¶</a></dt>
<dd><p>Deletes this object. Before deletion, this method makes sure
to move all contained objects to their respective home
locations, as well as clean up all exits to/from the object.</p>
<spanclass="sig-name descname"><spanclass="pre">access</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">accessing_obj</span></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">access_type</span></span><spanclass="o"><spanclass="pre">=</span></span><spanclass="default_value"><spanclass="pre">'read'</span></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">default</span></span><spanclass="o"><spanclass="pre">=</span></span><spanclass="default_value"><spanclass="pre">False</span></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">no_superuser_bypass</span></span><spanclass="o"><spanclass="pre">=</span></span><spanclass="default_value"><spanclass="pre">False</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.access"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.access"title="Link to this definition">¶</a></dt>
<dd><p>Determines if another object has permission to access this object
<li><p><strong>accessing_obj</strong> (<aclass="reference internal"href="#evennia.objects.objects.DefaultObject"title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – Object trying to access this one.</p></li>
<li><p><strong>access_type</strong> (<em>str</em><em>, </em><em>optional</em>) – Type of access sought.</p></li>
<li><p><strong>default</strong> (<em>bool</em><em>, </em><em>optional</em>) – What to return if no lock of access_type was found.</p></li>
<li><p><strong>no_superuser_bypass</strong> (<em>bool</em><em>, </em><em>optional</em>) – If <strong>True</strong>, don’t skip
lock check for superuser (be careful with this one).</p></li>
<li><p><strong>**kwargs</strong>– Passed on to the at_access hook along with the result of the access check.</p></li>
<spanclass="sig-name descname"><spanclass="pre">filter_visible</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">obj_list</span></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">looker</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.filter_visible"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.filter_visible"title="Link to this definition">¶</a></dt>
<dd><p>Filter a list of objects to only include those that are visible to the looker.</p>
<spanclass="sig-name descname"><spanclass="pre">get_display_name</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">looker</span></span><spanclass="o"><spanclass="pre">=</span></span><spanclass="default_value"><spanclass="pre">None</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.get_display_name"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.get_display_name"title="Link to this definition">¶</a></dt>
<dd><p>Displays the name of the object in a viewer-aware manner.</p>
<ddclass="field-odd"><p><strong>looker</strong> (<aclass="reference internal"href="#evennia.objects.objects.DefaultObject"title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The object or account that is looking at or getting information
<spanclass="sig-name descname"><spanclass="pre">get_extra_display_name_info</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">looker</span></span><spanclass="o"><spanclass="pre">=</span></span><spanclass="default_value"><spanclass="pre">None</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.get_extra_display_name_info"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.get_extra_display_name_info"title="Link to this definition">¶</a></dt>
<dd><p>Adds any extra display information to the object’s name. By default this is is the
object’s dbref in parentheses, if the looker has permission to see it.</p>
<ddclass="field-odd"><p><strong>looker</strong> (<aclass="reference internal"href="#evennia.objects.objects.DefaultObject"title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The object looking at this object.</p>
<spanclass="sig-name descname"><spanclass="pre">get_numbered_name</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">count</span></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">looker</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.get_numbered_name"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.get_numbered_name"title="Link to this definition">¶</a></dt>
<dd><p>Return the numbered (singular, plural) forms of this object’s key. This is by default called
by return_appearance and is used for grouping multiple same-named of this object. Note that
this will be called on <em>every</em> member of a group even though the plural name will be only
shown once. Also the singular display version, such as ‘an apple’, ‘a tree’ is determined
<li><p><strong>count</strong> (<em>int</em>) – Number of objects of this type</p></li>
<li><p><strong>looker</strong> (<aclass="reference internal"href="#evennia.objects.objects.DefaultObject"title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – Onlooker. Not used by default.</p></li>
<spanclass="sig-name descname"><spanclass="pre">get_display_header</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">looker</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.get_display_header"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.get_display_header"title="Link to this definition">¶</a></dt>
<dd><p>Get the ‘header’ component of the object description. Called by <strong>return_appearance</strong>.</p>
<spanclass="sig-name descname"><spanclass="pre">get_display_desc</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">looker</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.get_display_desc"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.get_display_desc"title="Link to this definition">¶</a></dt>
<dd><p>Get the ‘desc’ component of the object description. Called by <strong>return_appearance</strong>.</p>
<spanclass="sig-name descname"><spanclass="pre">get_display_exits</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">looker</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.get_display_exits"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.get_display_exits"title="Link to this definition">¶</a></dt>
<dd><p>Get the ‘exits’ component of the object description. Called by <strong>return_appearance</strong>.</p>
<spanclass="sig-name descname"><spanclass="pre">get_display_characters</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">looker</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.get_display_characters"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.get_display_characters"title="Link to this definition">¶</a></dt>
<dd><p>Get the ‘characters’ component of the object description. Called by <strong>return_appearance</strong>.</p>
<spanclass="sig-name descname"><spanclass="pre">get_display_things</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">looker</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.get_display_things"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.get_display_things"title="Link to this definition">¶</a></dt>
<dd><p>Get the ‘things’ component of the object description. Called by <strong>return_appearance</strong>.</p>
<spanclass="sig-name descname"><spanclass="pre">get_display_footer</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">looker</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.get_display_footer"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.get_display_footer"title="Link to this definition">¶</a></dt>
<dd><p>Get the ‘footer’ component of the object description. Called by <strong>return_appearance</strong>.</p>
<spanclass="sig-name descname"><spanclass="pre">format_appearance</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">appearance</span></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">looker</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.format_appearance"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.format_appearance"title="Link to this definition">¶</a></dt>
<dd><p>Final processing of the entire appearance string. Called by <strong>return_appearance</strong>.</p>
<spanclass="sig-name descname"><spanclass="pre">return_appearance</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">looker</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.return_appearance"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.return_appearance"title="Link to this definition">¶</a></dt>
<dd><p>Main callback used by ‘look’ for the object to describe itself.
This formats a description. By default, this looks for the <strong>appearance_template</strong>
string set on this class and populates it with formatting keys
‘name’, ‘desc’, ‘exits’, ‘characters’, ‘things’ as well as
(currently empty) ‘header’/’footer’. Each of these values are
retrieved by a matching method <strong>.get_display_*</strong>, such as <strong>get_display_name</strong>,
<li><p><strong>looker</strong> (<aclass="reference internal"href="#evennia.objects.objects.DefaultObject"title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – Object doing the looking. Passed into all helper methods.</p></li>
<li><p><strong>**kwargs</strong> (<em>dict</em>) – Arbitrary, optional arguments for users
overriding the call. This is passed into all helper methods.</p></li>
<spanclass="sig-name descname"><spanclass="pre">at_first_save</span></span><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.at_first_save"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.at_first_save"title="Link to this definition">¶</a></dt>
<dd><p>This is called by the typeclass system whenever an instance of
this class is saved for the first time. It is a generic hook
for calling the startup hooks for the various game entities.
When overloading you generally don’t overload this but
<spanclass="sig-name descname"><spanclass="pre">basetype_setup</span></span><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.basetype_setup"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.basetype_setup"title="Link to this definition">¶</a></dt>
<dd><p>This sets up the default properties of an Object, just before
the more general at_object_creation.</p>
<p>You normally don’t need to change this unless you change some
fundamental things like names of permission groups.</p>
<spanclass="sig-name descname"><spanclass="pre">basetype_posthook_setup</span></span><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.basetype_posthook_setup"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.basetype_posthook_setup"title="Link to this definition">¶</a></dt>
<dd><p>Called once, after basetype_setup and at_object_creation. This
should generally not be overloaded unless you are redefining
how a room/exit/object works. It allows for basetype-like
setup after the object is created. An example of this is
EXITs, who need to know keys, aliases, locks etc to set up
<spanclass="sig-name descname"><spanclass="pre">at_object_creation</span></span><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.at_object_creation"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.at_object_creation"title="Link to this definition">¶</a></dt>
<dd><p>Called once, when this object is first created. This is the
normal hook to overload for most object types.</p>
<spanclass="sig-name descname"><spanclass="pre">at_object_post_creation</span></span><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.at_object_post_creation"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.at_object_post_creation"title="Link to this definition">¶</a></dt>
<dd><p>Called once, when this object is first created and after any attributes, tags, etc.
that were passed to the <strong>create_object</strong> function or defined in a prototype have been
<spanclass="sig-name descname"><spanclass="pre">at_object_delete</span></span><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.at_object_delete"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.at_object_delete"title="Link to this definition">¶</a></dt>
<dd><p>Called just before the database object is persistently
delete()d from the database. If this method returns False,
<spanclass="sig-name descname"><spanclass="pre">at_object_post_spawn</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">prototype</span></span><spanclass="o"><spanclass="pre">=</span></span><spanclass="default_value"><spanclass="pre">None</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.at_object_post_spawn"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.at_object_post_spawn"title="Link to this definition">¶</a></dt>
<dd><p>Called when this object is spawned or updated from a prototype, after all other
<spanclass="sig-name descname"><spanclass="pre">at_init</span></span><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.at_init"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.at_init"title="Link to this definition">¶</a></dt>
<dd><p>This is always called whenever this object is initiated –
that is, whenever it its typeclass is cached from memory. This
happens on-demand first time the object is used or activated
in some way after being created but also after each server
<spanclass="sig-name descname"><spanclass="pre">at_cmdset_get</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.at_cmdset_get"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.at_cmdset_get"title="Link to this definition">¶</a></dt>
<dd><p>Called just before cmdsets on this object are requested by the
command handler. If changes need to be done on the fly to the
cmdset before passing them on to the cmdhandler, this is the
place to do it. This is called also if the object currently
<li><p><strong>caller</strong> (<aclass="reference internal"href="#evennia.objects.objects.DefaultObject"title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a><em>, </em><aclass="reference internal"href="evennia.accounts.accounts.html#evennia.accounts.accounts.DefaultAccount"title="evennia.accounts.accounts.DefaultAccount"><em>DefaultAccount</em></a><em> or </em><aclass="reference internal"href="evennia.server.session.html#evennia.server.session.Session"title="evennia.server.session.Session"><em>Session</em></a>) – The object requesting the cmdsets.</p></li>
<li><p><strong>current</strong> (<aclass="reference internal"href="evennia.commands.cmdhandler.html#evennia.commands.cmdhandler.CmdSet"title="evennia.commands.cmdhandler.CmdSet"><em>CmdSet</em></a>) – The current merged cmdset.</p></li>
<li><p><strong>force_init</strong> (<em>bool</em>) – If <strong>True</strong>, force a re-build of the cmdset. (seems unused)</p></li>
<li><p><strong>**kwargs</strong>– Arbitrary input for overloads.</p></li>
<spanclass="sig-name descname"><spanclass="pre">get_cmdsets</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">caller</span></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">current</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.get_cmdsets"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.get_cmdsets"title="Link to this definition">¶</a></dt>
<dd><p>Called by the CommandHandler to get a list of cmdsets to merge.</p>
<li><p><strong>caller</strong> (<aclass="reference internal"href="#evennia.objects.objects.DefaultObject"title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The object requesting the cmdsets.</p></li>
<li><p><strong>current</strong> (<em>cmdset</em>) – The current merged cmdset.</p></li>
<li><p><strong>**kwargs</strong>– Arbitrary input for overloads.</p></li>
<spanclass="sig-name descname"><spanclass="pre">at_pre_puppet</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">account</span></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">session</span></span><spanclass="o"><spanclass="pre">=</span></span><spanclass="default_value"><spanclass="pre">None</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.at_pre_puppet"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.at_pre_puppet"title="Link to this definition">¶</a></dt>
<dd><p>Called just before an Account connects to this object to puppet
<li><p><strong>account</strong> (<aclass="reference internal"href="evennia.accounts.accounts.html#evennia.accounts.accounts.DefaultAccount"title="evennia.accounts.accounts.DefaultAccount"><em>DefaultAccount</em></a>) – This is the connecting account.</p></li>
<li><p><strong>session</strong> (<aclass="reference internal"href="evennia.server.session.html#evennia.server.session.Session"title="evennia.server.session.Session"><em>Session</em></a>) – Session controlling the connection.</p></li>
<li><p><strong>**kwargs</strong>– Arbitrary, optional arguments for users
<spanclass="sig-name descname"><spanclass="pre">at_post_puppet</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.at_post_puppet"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.at_post_puppet"title="Link to this definition">¶</a></dt>
<dd><p>Called just after puppeting has been completed and all
Account<->Object links have been established.</p>
<spanclass="sig-name descname"><spanclass="pre">at_pre_unpuppet</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.at_pre_unpuppet"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.at_pre_unpuppet"title="Link to this definition">¶</a></dt>
<dd><p>Called just before beginning to un-connect a puppeting from
<spanclass="sig-name descname"><spanclass="pre">at_post_unpuppet</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">account</span></span><spanclass="o"><spanclass="pre">=</span></span><spanclass="default_value"><spanclass="pre">None</span></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">session</span></span><spanclass="o"><spanclass="pre">=</span></span><spanclass="default_value"><spanclass="pre">None</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.at_post_unpuppet"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.at_post_unpuppet"title="Link to this definition">¶</a></dt>
<dd><p>Called just after the Account successfully disconnected from
<li><p><strong>account</strong> (<aclass="reference internal"href="evennia.accounts.accounts.html#evennia.accounts.accounts.DefaultAccount"title="evennia.accounts.accounts.DefaultAccount"><em>DefaultAccount</em></a>) – The account object that just disconnected
from this object. This can be <strong>None</strong> if this is called
automatically (such as after a cleanup operation).</p></li>
<li><p><strong>session</strong> (<aclass="reference internal"href="evennia.server.session.html#evennia.server.session.Session"title="evennia.server.session.Session"><em>Session</em></a>) – Session id controlling the connection that
just disconnected.</p></li>
<li><p><strong>**kwargs</strong>– Arbitrary, optional arguments for users
<spanclass="sig-name descname"><spanclass="pre">at_server_reload</span></span><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.at_server_reload"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.at_server_reload"title="Link to this definition">¶</a></dt>
<dd><p>This hook is called whenever the server is shutting down for
restart/reboot. If you want to, for example, save non-persistent
properties across a restart, this is the place to do it.</p>
<spanclass="sig-name descname"><spanclass="pre">at_server_shutdown</span></span><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.at_server_shutdown"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.at_server_shutdown"title="Link to this definition">¶</a></dt>
<dd><p>This hook is called whenever the server is shutting down fully
<spanclass="sig-name descname"><spanclass="pre">at_access</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">result</span></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">accessing_obj</span></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">access_type</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.at_access"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.at_access"title="Link to this definition">¶</a></dt>
<dd><p>This is called with the result of an access call, along with
any kwargs used for that call. The return of this method does
not affect the result of the lock check. It can be used e.g. to
customize error messages in a central location or other effects
<spanclass="sig-name descname"><spanclass="pre">at_pre_move</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">destination</span></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">move_type</span></span><spanclass="o"><spanclass="pre">=</span></span><spanclass="default_value"><spanclass="pre">'move'</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.at_pre_move"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.at_pre_move"title="Link to this definition">¶</a></dt>
<dd><p>Called just before starting to move this object to
<li><p><strong>destination</strong> (<aclass="reference internal"href="#evennia.objects.objects.DefaultObject"title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The object we are moving to</p></li>
<li><p><strong>move_type</strong> (<em>str</em>) – The type of move. “give”, “traverse”, etc.
This is an arbitrary string provided to obj.move_to().
Useful for altering messages or altering logic depending
on the kind of movement.</p></li>
<li><p><strong>**kwargs</strong>– Arbitrary, optional arguments for users
<spanclass="sig-name descname"><spanclass="pre">at_pre_object_leave</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">leaving_object</span></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">destination</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.at_pre_object_leave"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.at_pre_object_leave"title="Link to this definition">¶</a></dt>
<dd><p>Called just before this object is about lose an object that was
previously ‘inside’ it. Return False to abort move.</p>
<li><p><strong>leaving_object</strong> (<aclass="reference internal"href="#evennia.objects.objects.DefaultObject"title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The object that is about to leave.</p></li>
<li><p><strong>destination</strong> (<aclass="reference internal"href="#evennia.objects.objects.DefaultObject"title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – Where object is going to.</p></li>
<li><p><strong>**kwargs</strong>– Arbitrary, optional arguments for users
<spanclass="sig-name descname"><spanclass="pre">at_pre_object_receive</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">arriving_object</span></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">source_location</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.at_pre_object_receive"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.at_pre_object_receive"title="Link to this definition">¶</a></dt>
<dd><p>Called just before this object received another object. If this
method returns <strong>False</strong>, the move is aborted and the moved entity
<li><p><strong>arriving_object</strong> (<aclass="reference internal"href="#evennia.objects.objects.DefaultObject"title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The object moved into this one</p></li>
<li><p><strong>source_location</strong> (<aclass="reference internal"href="#evennia.objects.objects.DefaultObject"title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – Where <strong>moved_object</strong> came from.
Note that this could be <strong>None</strong>.</p></li>
<li><p><strong>**kwargs</strong>– Arbitrary, optional arguments for users
<spanclass="sig-name descname"><spanclass="pre">at_before_move</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">destination</span></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">move_type</span></span><spanclass="o"><spanclass="pre">=</span></span><spanclass="default_value"><spanclass="pre">'move'</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.at_before_move"title="Link to this definition">¶</a></dt>
<dd><p>Called just before starting to move this object to
<li><p><strong>destination</strong> (<aclass="reference internal"href="#evennia.objects.objects.DefaultObject"title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The object we are moving to</p></li>
<li><p><strong>move_type</strong> (<em>str</em>) – The type of move. “give”, “traverse”, etc.
This is an arbitrary string provided to obj.move_to().
Useful for altering messages or altering logic depending
on the kind of movement.</p></li>
<li><p><strong>**kwargs</strong>– Arbitrary, optional arguments for users
<spanclass="sig-name descname"><spanclass="pre">announce_move_from</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">destination</span></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">msg</span></span><spanclass="o"><spanclass="pre">=</span></span><spanclass="default_value"><spanclass="pre">None</span></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">mapping</span></span><spanclass="o"><spanclass="pre">=</span></span><spanclass="default_value"><spanclass="pre">None</span></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">move_type</span></span><spanclass="o"><spanclass="pre">=</span></span><spanclass="default_value"><spanclass="pre">'move'</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.announce_move_from"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.announce_move_from"title="Link to this definition">¶</a></dt>
<dd><p>Called if the move is to be announced. This is
<li><p><strong>destination</strong> (<aclass="reference internal"href="#evennia.objects.objects.DefaultObject"title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The place we are going to.</p></li>
<li><p><strong>msg</strong> (<em>str</em><em>, </em><em>optional</em>) – a replacement message.</p></li>
<spanclass="sig-name descname"><spanclass="pre">announce_move_to</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">source_location</span></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">msg</span></span><spanclass="o"><spanclass="pre">=</span></span><spanclass="default_value"><spanclass="pre">None</span></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">mapping</span></span><spanclass="o"><spanclass="pre">=</span></span><spanclass="default_value"><spanclass="pre">None</span></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">move_type</span></span><spanclass="o"><spanclass="pre">=</span></span><spanclass="default_value"><spanclass="pre">'move'</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.announce_move_to"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.announce_move_to"title="Link to this definition">¶</a></dt>
<dd><p>Called after the move if the move was not quiet. At this point
<li><p><strong>source_location</strong> (<aclass="reference internal"href="#evennia.objects.objects.DefaultObject"title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The place we came from</p></li>
<li><p><strong>msg</strong> (<em>str</em><em>, </em><em>optional</em>) – the replacement message if location.</p></li>
<spanclass="sig-name descname"><spanclass="pre">at_post_move</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">source_location</span></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">move_type</span></span><spanclass="o"><spanclass="pre">=</span></span><spanclass="default_value"><spanclass="pre">'move'</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.at_post_move"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.at_post_move"title="Link to this definition">¶</a></dt>
<dd><p>Called after move has completed, regardless of quiet mode or
not. Allows changes to the object due to the location it is
<li><p><strong>source_location</strong> (<aclass="reference internal"href="#evennia.objects.objects.DefaultObject"title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – Where we came from. This may be <strong>None</strong>.</p></li>
<li><p><strong>move_type</strong> (<em>str</em>) – The type of move. “give”, “traverse”, etc.
This is an arbitrary string provided to obj.move_to().
Useful for altering messages or altering logic depending
on the kind of movement.</p></li>
<li><p><strong>**kwargs</strong>– Arbitrary, optional arguments for users
<spanclass="sig-name descname"><spanclass="pre">at_after_move</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">source_location</span></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">move_type</span></span><spanclass="o"><spanclass="pre">=</span></span><spanclass="default_value"><spanclass="pre">'move'</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.at_after_move"title="Link to this definition">¶</a></dt>
<dd><p>Called after move has completed, regardless of quiet mode or
not. Allows changes to the object due to the location it is
<li><p><strong>source_location</strong> (<aclass="reference internal"href="#evennia.objects.objects.DefaultObject"title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – Where we came from. This may be <strong>None</strong>.</p></li>
<li><p><strong>move_type</strong> (<em>str</em>) – The type of move. “give”, “traverse”, etc.
This is an arbitrary string provided to obj.move_to().
Useful for altering messages or altering logic depending
on the kind of movement.</p></li>
<li><p><strong>**kwargs</strong>– Arbitrary, optional arguments for users
<spanclass="sig-name descname"><spanclass="pre">at_object_leave</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">moved_obj</span></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">target_location</span></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">move_type</span></span><spanclass="o"><spanclass="pre">=</span></span><spanclass="default_value"><spanclass="pre">'move'</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.at_object_leave"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.at_object_leave"title="Link to this definition">¶</a></dt>
<dd><p>Called just before an object leaves from inside this object</p>
<li><p><strong>moved_obj</strong> (<aclass="reference internal"href="#evennia.objects.objects.DefaultObject"title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The object leaving</p></li>
<li><p><strong>target_location</strong> (<aclass="reference internal"href="#evennia.objects.objects.DefaultObject"title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – Where <strong>moved_obj</strong> is going.</p></li>
<li><p><strong>move_type</strong> (<em>str</em>) – The type of move. “give”, “traverse”, etc.
This is an arbitrary string provided to obj.move_to().
Useful for altering messages or altering logic depending
on the kind of movement.</p></li>
<li><p><strong>**kwargs</strong>– Arbitrary, optional arguments for users
<spanclass="sig-name descname"><spanclass="pre">at_object_receive</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">moved_obj</span></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">source_location</span></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">move_type</span></span><spanclass="o"><spanclass="pre">=</span></span><spanclass="default_value"><spanclass="pre">'move'</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.at_object_receive"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.at_object_receive"title="Link to this definition">¶</a></dt>
<dd><p>Called after an object has been moved into this object.</p>
<li><p><strong>moved_obj</strong> (<aclass="reference internal"href="#evennia.objects.objects.DefaultObject"title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The object moved into this one</p></li>
<li><p><strong>source_location</strong> (<aclass="reference internal"href="#evennia.objects.objects.DefaultObject"title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – Where <strong>moved_object</strong> came from.
Note that this could be <strong>None</strong>.</p></li>
<li><p><strong>move_type</strong> (<em>str</em>) – The type of move. “give”, “traverse”, etc.
This is an arbitrary string provided to obj.move_to().
Useful for altering messages or altering logic depending
on the kind of movement.</p></li>
<li><p><strong>**kwargs</strong>– Arbitrary, optional arguments for users
<spanclass="sig-name descname"><spanclass="pre">at_traverse</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">traversing_object</span></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">target_location</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.at_traverse"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.at_traverse"title="Link to this definition">¶</a></dt>
<dd><p>This hook is responsible for handling the actual traversal,
normally by calling
<strong>traversing_object.move_to(target_location)</strong>. It is normally
only implemented by Exit objects. If it returns False (usually
because <strong>move_to</strong> returned False), <strong>at_post_traverse</strong> below
should not be called and instead <strong>at_failed_traverse</strong> should be
<li><p><strong>target_location</strong> (<aclass="reference internal"href="#evennia.objects.objects.DefaultObject"title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – Where target is going.</p></li>
<li><p><strong>**kwargs</strong>– Arbitrary, optional arguments for users
<spanclass="sig-name descname"><spanclass="pre">at_post_traverse</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">traversing_object</span></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">source_location</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.at_post_traverse"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.at_post_traverse"title="Link to this definition">¶</a></dt>
<dd><p>Called just after an object successfully used this object to
traverse to another object (i.e. this object is a type of
<li><p><strong>traversing_object</strong> (<aclass="reference internal"href="#evennia.objects.objects.DefaultObject"title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The object traversing us.</p></li>
<li><p><strong>source_location</strong> (<aclass="reference internal"href="#evennia.objects.objects.DefaultObject"title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – Where <strong>traversing_object</strong> came from.</p></li>
<li><p><strong>**kwargs</strong> (<em>dict</em>) – Arbitrary, optional arguments for users
overriding the call (unused by default).</p></li>
</ul>
</dd>
</dl>
<pclass="rubric">Notes</p>
<p>The target location should normally be available as <strong>self.destination</strong>.</p>
<spanclass="sig-name descname"><spanclass="pre">at_after_traverse</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">traversing_object</span></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">source_location</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.at_after_traverse"title="Link to this definition">¶</a></dt>
<dd><p>Called just after an object successfully used this object to
traverse to another object (i.e. this object is a type of
<li><p><strong>traversing_object</strong> (<aclass="reference internal"href="#evennia.objects.objects.DefaultObject"title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The object traversing us.</p></li>
<li><p><strong>source_location</strong> (<aclass="reference internal"href="#evennia.objects.objects.DefaultObject"title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – Where <strong>traversing_object</strong> came from.</p></li>
<li><p><strong>**kwargs</strong> (<em>dict</em>) – Arbitrary, optional arguments for users
overriding the call (unused by default).</p></li>
</ul>
</dd>
</dl>
<pclass="rubric">Notes</p>
<p>The target location should normally be available as <strong>self.destination</strong>.</p>
<spanclass="sig-name descname"><spanclass="pre">at_failed_traverse</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">traversing_object</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.at_failed_traverse"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.at_failed_traverse"title="Link to this definition">¶</a></dt>
<dd><p>This is called if an object fails to traverse this object for
<li><p><strong>traversing_object</strong> (<aclass="reference internal"href="#evennia.objects.objects.DefaultObject"title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The object that failed traversing us.</p></li>
<li><p><strong>**kwargs</strong>– Arbitrary, optional arguments for users
overriding the call (unused by default).</p></li>
</ul>
</dd>
</dl>
<pclass="rubric">Notes</p>
<p>Using the default exits, this hook will not be called if an
Attribute <strong>err_traverse</strong> is defined - this will in that case be
<spanclass="sig-name descname"><spanclass="pre">at_msg_receive</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">text</span></span><spanclass="o"><spanclass="pre">=</span></span><spanclass="default_value"><spanclass="pre">None</span></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">from_obj</span></span><spanclass="o"><spanclass="pre">=</span></span><spanclass="default_value"><spanclass="pre">None</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.at_msg_receive"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.at_msg_receive"title="Link to this definition">¶</a></dt>
<dd><p>This hook is called whenever someone sends a message to this
object using the <strong>msg</strong> method.</p>
<p>Note that from_obj may be None if the sender did not include
itself as an argument to the obj.msg() call - so you have to
check for this. .</p>
<p>Consider this a pre-processing method before msg is passed on
to the user session. If this method returns False, the msg
<spanclass="sig-name descname"><spanclass="pre">at_msg_send</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">text</span></span><spanclass="o"><spanclass="pre">=</span></span><spanclass="default_value"><spanclass="pre">None</span></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">to_obj</span></span><spanclass="o"><spanclass="pre">=</span></span><spanclass="default_value"><spanclass="pre">None</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.at_msg_send"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.at_msg_send"title="Link to this definition">¶</a></dt>
<dd><p>This is a hook that is called when <em>this</em> object sends a
message to another object with <strong>obj.msg(text, to_obj=obj)</strong>.</p>
<spanclass="sig-name descname"><spanclass="pre">get_visible_contents</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">looker</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.get_visible_contents"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.get_visible_contents"title="Link to this definition">¶</a></dt>
<dd><p>DEPRECATED
Get all contents of this object that a looker can see (whatever that means, by default it
checks the ‘view’ and ‘search’ locks and excludes the looker themselves), grouped by type.
<spanclass="sig-name descname"><spanclass="pre">get_content_names</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">looker</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.get_content_names"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.get_content_names"title="Link to this definition">¶</a></dt>
<dd><p>DEPRECATED
Get the proper names for all contents of this object. Helper method
<spanclass="sig-name descname"><spanclass="pre">at_look</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">target</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.at_look"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.at_look"title="Link to this definition">¶</a></dt>
<dd><p>Called when this object performs a look. It allows to
customize just what this means. It will not itself
<li><p><strong>target</strong> (<aclass="reference internal"href="#evennia.objects.objects.DefaultObject"title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The target being looked at. This is
commonly an object or the current location. It will
be checked for the “view” type access.</p></li>
<li><p><strong>**kwargs</strong>– Arbitrary, optional arguments for users
overriding the call. This will be passed into
return_appearance, get_display_name and at_desc but is not used
<spanclass="sig-name descname"><spanclass="pre">at_desc</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">looker</span></span><spanclass="o"><spanclass="pre">=</span></span><spanclass="default_value"><spanclass="pre">None</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.at_desc"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.at_desc"title="Link to this definition">¶</a></dt>
<dd><p>This is called whenever someone looks at this object.</p>
<spanclass="sig-name descname"><spanclass="pre">at_pre_get</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">getter</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.at_pre_get"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.at_pre_get"title="Link to this definition">¶</a></dt>
<dd><p>Called by the default <strong>get</strong> command before this object has been
<li><p><strong>getter</strong> (<aclass="reference internal"href="#evennia.objects.objects.DefaultObject"title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The object about to get this object.</p></li>
<li><p><strong>**kwargs</strong>– Arbitrary, optional arguments for users
<spanclass="sig-name descname"><spanclass="pre">at_before_get</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">getter</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.at_before_get"title="Link to this definition">¶</a></dt>
<dd><p>Called by the default <strong>get</strong> command before this object has been
<li><p><strong>getter</strong> (<aclass="reference internal"href="#evennia.objects.objects.DefaultObject"title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The object about to get this object.</p></li>
<li><p><strong>**kwargs</strong>– Arbitrary, optional arguments for users
<spanclass="sig-name descname"><spanclass="pre">at_get</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">getter</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.at_get"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.at_get"title="Link to this definition">¶</a></dt>
<dd><p>Called by the default <strong>get</strong> command when this object has been
<li><p><strong>getter</strong> (<aclass="reference internal"href="#evennia.objects.objects.DefaultObject"title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The object getting this object.</p></li>
<li><p><strong>**kwargs</strong>– Arbitrary, optional arguments for users
overriding the call (unused by default).</p></li>
</ul>
</dd>
</dl>
<pclass="rubric">Notes</p>
<p>This hook cannot stop the pickup from happening. Use
permissions or the at_pre_get() hook for that.</p>
<spanclass="sig-name descname"><spanclass="pre">at_pre_give</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">giver</span></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">getter</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.at_pre_give"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.at_pre_give"title="Link to this definition">¶</a></dt>
<dd><p>Called by the default <strong>give</strong> command before this object has been
<li><p><strong>giver</strong> (<aclass="reference internal"href="#evennia.objects.objects.DefaultObject"title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The object about to give this object.</p></li>
<li><p><strong>getter</strong> (<aclass="reference internal"href="#evennia.objects.objects.DefaultObject"title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The object about to get this object.</p></li>
<li><p><strong>**kwargs</strong>– Arbitrary, optional arguments for users
<spanclass="sig-name descname"><spanclass="pre">at_before_give</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">giver</span></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">getter</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.at_before_give"title="Link to this definition">¶</a></dt>
<dd><p>Called by the default <strong>give</strong> command before this object has been
<li><p><strong>giver</strong> (<aclass="reference internal"href="#evennia.objects.objects.DefaultObject"title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The object about to give this object.</p></li>
<li><p><strong>getter</strong> (<aclass="reference internal"href="#evennia.objects.objects.DefaultObject"title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The object about to get this object.</p></li>
<li><p><strong>**kwargs</strong>– Arbitrary, optional arguments for users
<spanclass="sig-name descname"><spanclass="pre">at_give</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">giver</span></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">getter</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.at_give"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.at_give"title="Link to this definition">¶</a></dt>
<dd><p>Called by the default <strong>give</strong> command when this object has been
<li><p><strong>giver</strong> (<aclass="reference internal"href="#evennia.objects.objects.DefaultObject"title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The object giving this object.</p></li>
<li><p><strong>getter</strong> (<aclass="reference internal"href="#evennia.objects.objects.DefaultObject"title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The object getting this object.</p></li>
<li><p><strong>**kwargs</strong>– Arbitrary, optional arguments for users
overriding the call (unused by default).</p></li>
</ul>
</dd>
</dl>
<pclass="rubric">Notes</p>
<p>This hook cannot stop the give from happening. Use
permissions or the at_pre_give() hook for that.</p>
<spanclass="sig-name descname"><spanclass="pre">at_pre_drop</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">dropper</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.at_pre_drop"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.at_pre_drop"title="Link to this definition">¶</a></dt>
<dd><p>Called by the default <strong>drop</strong> command before this object has been
<li><p><strong>dropper</strong> (<aclass="reference internal"href="#evennia.objects.objects.DefaultObject"title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The object which will drop this object.</p></li>
<li><p><strong>**kwargs</strong>– Arbitrary, optional arguments for users
<spanclass="sig-name descname"><spanclass="pre">at_before_drop</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">dropper</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.at_before_drop"title="Link to this definition">¶</a></dt>
<dd><p>Called by the default <strong>drop</strong> command before this object has been
<li><p><strong>dropper</strong> (<aclass="reference internal"href="#evennia.objects.objects.DefaultObject"title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The object which will drop this object.</p></li>
<li><p><strong>**kwargs</strong>– Arbitrary, optional arguments for users
<spanclass="sig-name descname"><spanclass="pre">at_drop</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">dropper</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.at_drop"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.at_drop"title="Link to this definition">¶</a></dt>
<dd><p>Called by the default <strong>drop</strong> command when this object has been
<li><p><strong>dropper</strong> (<aclass="reference internal"href="#evennia.objects.objects.DefaultObject"title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The object which just dropped this object.</p></li>
<li><p><strong>**kwargs</strong>– Arbitrary, optional arguments for users
overriding the call (unused by default).</p></li>
</ul>
</dd>
</dl>
<pclass="rubric">Notes</p>
<p>This hook cannot stop the drop from happening. Use
permissions or the at_pre_drop() hook for that.</p>
<spanclass="sig-name descname"><spanclass="pre">at_pre_say</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">message</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.at_pre_say"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.at_pre_say"title="Link to this definition">¶</a></dt>
<dd><p>Before the object says something.</p>
<p>This hook is by default used by the ‘say’ and ‘whisper’
commands as used by this command it is called before the text
is said/whispered and can be used to customize the outgoing
text from the object. Returning <strong>None</strong> aborts the command.</p>
<li><p><strong>whisper</strong> (<em>bool</em>) – If True, this is a whisper rather than
a say. This is sent by the whisper command by default.
Other verbal commands could use this hook in similar
ways.</p></li>
<li><p><strong>receivers</strong> (<aclass="reference internal"href="#evennia.objects.objects.DefaultObject"title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a><em> or </em><em>iterable</em>) – If set, this is the target or targets for the
<spanclass="sig-name descname"><spanclass="pre">at_before_say</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">message</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.at_before_say"title="Link to this definition">¶</a></dt>
<dd><p>Before the object says something.</p>
<p>This hook is by default used by the ‘say’ and ‘whisper’
commands as used by this command it is called before the text
is said/whispered and can be used to customize the outgoing
text from the object. Returning <strong>None</strong> aborts the command.</p>
<li><p><strong>whisper</strong> (<em>bool</em>) – If True, this is a whisper rather than
a say. This is sent by the whisper command by default.
Other verbal commands could use this hook in similar
ways.</p></li>
<li><p><strong>receivers</strong> (<aclass="reference internal"href="#evennia.objects.objects.DefaultObject"title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a><em> or </em><em>iterable</em>) – If set, this is the target or targets for the
<li><p><strong>message</strong> (<em>str</em>) – The message to convey.</p></li>
<li><p><strong>msg_self</strong> (<em>bool</em><em> or </em><em>str</em><em>, </em><em>optional</em>) – If boolean True, echo <strong>message</strong> to self. If a string,
return that message. If False or unset, don’t echo to self.</p></li>
<li><p><strong>msg_location</strong> (<em>str</em><em>, </em><em>optional</em>) – The message to echo to self’s location.</p></li>
<li><p><strong>receivers</strong> (<aclass="reference internal"href="#evennia.objects.objects.DefaultObject"title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a><em> or </em><em>iterable</em><em>, </em><em>optional</em>) – An eventual receiver or receivers of the
message (by default only used by whispers).</p></li>
<li><p><strong>msg_receivers</strong> (<em>str</em>) – Specific message to pass to the receiver(s). This will parsed
with the {receiver} placeholder replaced with the given receiver.</p></li>
<spanclass="sig-name descname"><spanclass="pre">at_rename</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">oldname</span></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">newname</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultObject.at_rename"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.at_rename"title="Link to this definition">¶</a></dt>
<dd><p>This Hook is called by @name on a successful rename.</p>
<emclass="property"><spanclass="k"><spanclass="pre">exception</span></span><spanclass="w"></span></em><spanclass="sig-name descname"><spanclass="pre">DoesNotExist</span></span><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.DoesNotExist"title="Link to this definition">¶</a></dt>
<emclass="property"><spanclass="k"><spanclass="pre">exception</span></span><spanclass="w"></span></em><spanclass="sig-name descname"><spanclass="pre">MultipleObjectsReturned</span></span><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.MultipleObjectsReturned"title="Link to this definition">¶</a></dt>
<emclass="property"><spanclass="k"><spanclass="pre">exception</span></span><spanclass="w"></span></em><spanclass="sig-name descname"><spanclass="pre">NotUpdated</span></span><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.NotUpdated"title="Link to this definition">¶</a></dt>
<spanclass="sig-name descname"><spanclass="pre">path</span></span><emclass="property"><spanclass="w"></span><spanclass="p"><spanclass="pre">=</span></span><spanclass="w"></span><spanclass="pre">'evennia.objects.objects.DefaultObject'</span></em><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.path"title="Link to this definition">¶</a></dt>
<spanclass="sig-name descname"><spanclass="pre">typename</span></span><emclass="property"><spanclass="w"></span><spanclass="p"><spanclass="pre">=</span></span><spanclass="w"></span><spanclass="pre">'DefaultObject'</span></em><aclass="headerlink"href="#evennia.objects.objects.DefaultObject.typename"title="Link to this definition">¶</a></dt>
<emclass="property"><spanclass="k"><spanclass="pre">class</span></span><spanclass="w"></span></em><spanclass="sig-prename descclassname"><spanclass="pre">evennia.objects.objects.</span></span><spanclass="sig-name descname"><spanclass="pre">DefaultCharacter</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="o"><spanclass="pre">*</span></span><spanclass="n"><spanclass="pre">args</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultCharacter"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultCharacter"title="Link to this definition">¶</a></dt>
<spanclass="sig-name descname"><spanclass="pre">lockstring</span></span><emclass="property"><spanclass="w"></span><spanclass="p"><spanclass="pre">=</span></span><spanclass="w"></span><spanclass="pre">'puppet:id({character_id})</span><spanclass="pre">or</span><spanclass="pre">pid({account_id})</span><spanclass="pre">or</span><spanclass="pre">perm(Developer)</span><spanclass="pre">or</span><spanclass="pre">pperm(Developer);delete:id({account_id})</span><spanclass="pre">or</span><spanclass="pre">perm(Admin);edit:pid({account_id})</span><spanclass="pre">or</span><spanclass="pre">perm(Admin)'</span></em><aclass="headerlink"href="#evennia.objects.objects.DefaultCharacter.lockstring"title="Link to this definition">¶</a></dt>
<spanclass="sig-name descname"><spanclass="pre">default_description</span></span><emclass="property"><spanclass="w"></span><spanclass="p"><spanclass="pre">=</span></span><spanclass="w"></span><spanclass="pre">'This</span><spanclass="pre">is</span><spanclass="pre">a</span><spanclass="pre">character.'</span></em><aclass="headerlink"href="#evennia.objects.objects.DefaultCharacter.default_description"title="Link to this definition">¶</a></dt>
<emclass="property"><spanclass="k"><spanclass="pre">classmethod</span></span><spanclass="w"></span></em><spanclass="sig-name descname"><spanclass="pre">get_default_lockstring</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">account</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><aclass="reference internal"href="evennia.accounts.accounts.html#evennia.accounts.accounts.DefaultAccount"title="evennia.accounts.accounts.DefaultAccount"><spanclass="pre">DefaultAccount</span></a></span><spanclass="w"></span><spanclass="o"><spanclass="pre">=</span></span><spanclass="w"></span><spanclass="default_value"><spanclass="pre">None</span></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">caller</span></span><spanclass="p"><spanclass="pre">:</span></span><spanclass="w"></span><spanclass="n"><aclass="reference internal"href="#evennia.objects.objects.DefaultObject"title="evennia.objects.objects.DefaultObject"><spanclass="pre">DefaultObject</span></a></span><spanclass="w"></span><spanclass="o"><spanclass="pre">=</span></span><spanclass="w"></span><spanclass="default_value"><spanclass="pre">None</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultCharacter.get_default_lockstring"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultCharacter.get_default_lockstring"title="Link to this definition">¶</a></dt>
<dd><p>Classmethod called during .create() to determine default locks for the object.</p>
<li><p><strong>account</strong> (<aclass="reference internal"href="evennia.accounts.accounts.html#evennia.accounts.accounts.DefaultAccount"title="evennia.accounts.accounts.DefaultAccount"><em>DefaultAccount</em></a>) – Account to attribute this object to.</p></li>
<li><p><strong>caller</strong> (<aclass="reference internal"href="#evennia.objects.objects.DefaultObject"title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The object which is creating this one.</p></li>
<ddclass="field-odd"><p><em>tuple</em>–<strong>(new_character, errors)</strong>. On error, the <strong>new_character</strong> is <strong>None</strong> and
<strong>errors</strong> is a <strong>list</strong> of error strings (an empty list otherwise).</p>
<emclass="property"><spanclass="k"><spanclass="pre">classmethod</span></span><spanclass="w"></span></em><spanclass="sig-name descname"><spanclass="pre">normalize_name</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">name</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultCharacter.normalize_name"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultCharacter.normalize_name"title="Link to this definition">¶</a></dt>
<dd><p>Normalize the character name prior to creating.</p>
<emclass="property"><spanclass="k"><spanclass="pre">classmethod</span></span><spanclass="w"></span></em><spanclass="sig-name descname"><spanclass="pre">validate_name</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">name</span></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">account</span></span><spanclass="o"><spanclass="pre">=</span></span><spanclass="default_value"><spanclass="pre">None</span></span></em><spanclass="sig-paren">)</span><spanclass="sig-return"><spanclass="sig-return-icon">→</span><spanclass="sig-return-typehint"><spanclass="pre">str</span><spanclass="w"></span><spanclass="p"><spanclass="pre">|</span></span><spanclass="w"></span><spanclass="pre">None</span></span></span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultCharacter.validate_name"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultCharacter.validate_name"title="Link to this definition">¶</a></dt>
<dd><p>Validate the character name prior to creating. Overload this function to add custom validators</p>
<ddclass="field-even"><p><strong>account</strong> (<aclass="reference internal"href="evennia.accounts.accounts.html#evennia.accounts.accounts.DefaultAccount"title="evennia.accounts.accounts.DefaultAccount"><em>DefaultAccount</em></a><em>, </em><em>optional</em>) – The account creating the character.</p>
<spanclass="sig-name descname"><spanclass="pre">basetype_setup</span></span><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultCharacter.basetype_setup"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultCharacter.basetype_setup"title="Link to this definition">¶</a></dt>
<dd><p>Setup character-specific security.</p>
<p>You should normally not need to overload this, but if you do,
make sure to reproduce at least the two last commands in this
method (unless you want to fundamentally change how a
<spanclass="sig-name descname"><spanclass="pre">at_post_move</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">source_location</span></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">move_type</span></span><spanclass="o"><spanclass="pre">=</span></span><spanclass="default_value"><spanclass="pre">'move'</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultCharacter.at_post_move"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultCharacter.at_post_move"title="Link to this definition">¶</a></dt>
<dd><p>We make sure to look around after a move.</p>
<spanclass="sig-name descname"><spanclass="pre">at_after_move</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">source_location</span></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">move_type</span></span><spanclass="o"><spanclass="pre">=</span></span><spanclass="default_value"><spanclass="pre">'move'</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="headerlink"href="#evennia.objects.objects.DefaultCharacter.at_after_move"title="Link to this definition">¶</a></dt>
<dd><p>We make sure to look around after a move.</p>
<spanclass="sig-name descname"><spanclass="pre">at_pre_puppet</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">account</span></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">session</span></span><spanclass="o"><spanclass="pre">=</span></span><spanclass="default_value"><spanclass="pre">None</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultCharacter.at_pre_puppet"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultCharacter.at_pre_puppet"title="Link to this definition">¶</a></dt>
<dd><p>Return the character from storage in None location in <strong>at_post_unpuppet</strong>.
:param account: This is the connecting account.
:type account: DefaultAccount
:param session: Session controlling the connection.
<spanclass="sig-name descname"><spanclass="pre">at_post_puppet</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultCharacter.at_post_puppet"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultCharacter.at_post_puppet"title="Link to this definition">¶</a></dt>
<dd><p>Called just after puppeting has been completed and all
Account<->Object links have been established.</p>
<spanclass="sig-name descname"><spanclass="pre">at_post_unpuppet</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">account</span></span><spanclass="o"><spanclass="pre">=</span></span><spanclass="default_value"><spanclass="pre">None</span></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">session</span></span><spanclass="o"><spanclass="pre">=</span></span><spanclass="default_value"><spanclass="pre">None</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultCharacter.at_post_unpuppet"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultCharacter.at_post_unpuppet"title="Link to this definition">¶</a></dt>
<dd><p>We stove away the character when the account goes ooc/logs off,
otherwise the character object will remain in the room also
after the account logged off (“headless”, so to say).</p>
<li><p><strong>account</strong> (<aclass="reference internal"href="evennia.accounts.accounts.html#evennia.accounts.accounts.DefaultAccount"title="evennia.accounts.accounts.DefaultAccount"><em>DefaultAccount</em></a>) – The account object that just disconnected
from this object.</p></li>
<li><p><strong>session</strong> (<aclass="reference internal"href="evennia.server.session.html#evennia.server.session.Session"title="evennia.server.session.Session"><em>Session</em></a>) – Session controlling the connection that
<emclass="property"><spanclass="k"><spanclass="pre">property</span></span><spanclass="w"></span></em><spanclass="sig-name descname"><spanclass="pre">idle_time</span></span><aclass="headerlink"href="#evennia.objects.objects.DefaultCharacter.idle_time"title="Link to this definition">¶</a></dt>
<dd><p>Returns the idle time of the least idle session in seconds. If
<emclass="property"><spanclass="k"><spanclass="pre">property</span></span><spanclass="w"></span></em><spanclass="sig-name descname"><spanclass="pre">connection_time</span></span><aclass="headerlink"href="#evennia.objects.objects.DefaultCharacter.connection_time"title="Link to this definition">¶</a></dt>
<dd><p>Returns the maximum connection time of all connected sessions
in seconds. Returns nothing if there are no sessions.</p>
<emclass="property"><spanclass="k"><spanclass="pre">exception</span></span><spanclass="w"></span></em><spanclass="sig-name descname"><spanclass="pre">DoesNotExist</span></span><aclass="headerlink"href="#evennia.objects.objects.DefaultCharacter.DoesNotExist"title="Link to this definition">¶</a></dt>
<emclass="property"><spanclass="k"><spanclass="pre">exception</span></span><spanclass="w"></span></em><spanclass="sig-name descname"><spanclass="pre">MultipleObjectsReturned</span></span><aclass="headerlink"href="#evennia.objects.objects.DefaultCharacter.MultipleObjectsReturned"title="Link to this definition">¶</a></dt>
<emclass="property"><spanclass="k"><spanclass="pre">exception</span></span><spanclass="w"></span></em><spanclass="sig-name descname"><spanclass="pre">NotUpdated</span></span><aclass="headerlink"href="#evennia.objects.objects.DefaultCharacter.NotUpdated"title="Link to this definition">¶</a></dt>
<spanclass="sig-name descname"><spanclass="pre">path</span></span><emclass="property"><spanclass="w"></span><spanclass="p"><spanclass="pre">=</span></span><spanclass="w"></span><spanclass="pre">'evennia.objects.objects.DefaultCharacter'</span></em><aclass="headerlink"href="#evennia.objects.objects.DefaultCharacter.path"title="Link to this definition">¶</a></dt>
<spanclass="sig-name descname"><spanclass="pre">typename</span></span><emclass="property"><spanclass="w"></span><spanclass="p"><spanclass="pre">=</span></span><spanclass="w"></span><spanclass="pre">'DefaultCharacter'</span></em><aclass="headerlink"href="#evennia.objects.objects.DefaultCharacter.typename"title="Link to this definition">¶</a></dt>
<emclass="property"><spanclass="k"><spanclass="pre">class</span></span><spanclass="w"></span></em><spanclass="sig-prename descclassname"><spanclass="pre">evennia.objects.objects.</span></span><spanclass="sig-name descname"><spanclass="pre">DefaultRoom</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="o"><spanclass="pre">*</span></span><spanclass="n"><spanclass="pre">args</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultRoom"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultRoom"title="Link to this definition">¶</a></dt>
<spanclass="sig-name descname"><spanclass="pre">default_description</span></span><emclass="property"><spanclass="w"></span><spanclass="p"><spanclass="pre">=</span></span><spanclass="w"></span><spanclass="pre">'This</span><spanclass="pre">is</span><spanclass="pre">a</span><spanclass="pre">room.'</span></em><aclass="headerlink"href="#evennia.objects.objects.DefaultRoom.default_description"title="Link to this definition">¶</a></dt>
<li><p><strong>account</strong> (<aclass="reference internal"href="evennia.accounts.accounts.html#evennia.accounts.accounts.DefaultAccount"title="evennia.accounts.accounts.DefaultAccount"><em>DefaultAccount</em></a><em>, </em><em>optional</em>) – Account to associate this Room with. If
given, it will be given specific control/edit permissions to this
object (along with normal Admin perms). If not given, default</p></li>
<li><p><strong>caller</strong> (<aclass="reference internal"href="#evennia.objects.objects.DefaultObject"title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The object which is creating this one.</p></li>
<li><p><strong>description</strong> (<em>str</em>) – Brief description for this object.</p></li>
<li><p><strong>ip</strong> (<em>str</em>) – IP address of creator (for object auditing).</p></li>
<li><p><strong>method</strong> (<em>str</em>) – The method used to create the room. Defaults to “create”.</p></li>
<spanclass="sig-name descname"><spanclass="pre">basetype_setup</span></span><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultRoom.basetype_setup"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultRoom.basetype_setup"title="Link to this definition">¶</a></dt>
<dd><p>Simple room setup setting locks to make sure the room cannot be picked up.</p>
<emclass="property"><spanclass="k"><spanclass="pre">exception</span></span><spanclass="w"></span></em><spanclass="sig-name descname"><spanclass="pre">DoesNotExist</span></span><aclass="headerlink"href="#evennia.objects.objects.DefaultRoom.DoesNotExist"title="Link to this definition">¶</a></dt>
<emclass="property"><spanclass="k"><spanclass="pre">exception</span></span><spanclass="w"></span></em><spanclass="sig-name descname"><spanclass="pre">MultipleObjectsReturned</span></span><aclass="headerlink"href="#evennia.objects.objects.DefaultRoom.MultipleObjectsReturned"title="Link to this definition">¶</a></dt>
<emclass="property"><spanclass="k"><spanclass="pre">exception</span></span><spanclass="w"></span></em><spanclass="sig-name descname"><spanclass="pre">NotUpdated</span></span><aclass="headerlink"href="#evennia.objects.objects.DefaultRoom.NotUpdated"title="Link to this definition">¶</a></dt>
<spanclass="sig-name descname"><spanclass="pre">path</span></span><emclass="property"><spanclass="w"></span><spanclass="p"><spanclass="pre">=</span></span><spanclass="w"></span><spanclass="pre">'evennia.objects.objects.DefaultRoom'</span></em><aclass="headerlink"href="#evennia.objects.objects.DefaultRoom.path"title="Link to this definition">¶</a></dt>
<spanclass="sig-name descname"><spanclass="pre">typename</span></span><emclass="property"><spanclass="w"></span><spanclass="p"><spanclass="pre">=</span></span><spanclass="w"></span><spanclass="pre">'DefaultRoom'</span></em><aclass="headerlink"href="#evennia.objects.objects.DefaultRoom.typename"title="Link to this definition">¶</a></dt>
<emclass="property"><spanclass="k"><spanclass="pre">class</span></span><spanclass="w"></span></em><spanclass="sig-prename descclassname"><spanclass="pre">evennia.objects.objects.</span></span><spanclass="sig-name descname"><spanclass="pre">ExitCommand</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#ExitCommand"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.ExitCommand"title="Link to this definition">¶</a></dt>
<spanclass="sig-name descname"><spanclass="pre">obj</span></span><emclass="property"><spanclass="w"></span><spanclass="p"><spanclass="pre">=</span></span><spanclass="w"></span><spanclass="pre">None</span></em><aclass="headerlink"href="#evennia.objects.objects.ExitCommand.obj"title="Link to this definition">¶</a></dt>
<spanclass="sig-name descname"><spanclass="pre">func</span></span><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#ExitCommand.func"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.ExitCommand.func"title="Link to this definition">¶</a></dt>
<dd><p>Default exit traverse if no syscommand is defined.</p>
<spanclass="sig-name descname"><spanclass="pre">get_extra_info</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">caller</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#ExitCommand.get_extra_info"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.ExitCommand.get_extra_info"title="Link to this definition">¶</a></dt>
<dd><p>Shows a bit of information on where the exit leads.</p>
<li><p><strong>caller</strong> (<aclass="reference internal"href="#evennia.objects.objects.DefaultObject"title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The object (usually a character) that entered an ambiguous command.</p></li>
<li><p><strong>**kwargs</strong> (<em>dict</em>) – Arbitrary, optional arguments for users
<spanclass="sig-name descname"><spanclass="pre">aliases</span></span><emclass="property"><spanclass="w"></span><spanclass="p"><spanclass="pre">=</span></span><spanclass="w"></span><spanclass="pre">[]</span></em><aclass="headerlink"href="#evennia.objects.objects.ExitCommand.aliases"title="Link to this definition">¶</a></dt>
<spanclass="sig-name descname"><spanclass="pre">help_category</span></span><emclass="property"><spanclass="w"></span><spanclass="p"><spanclass="pre">=</span></span><spanclass="w"></span><spanclass="pre">'general'</span></em><aclass="headerlink"href="#evennia.objects.objects.ExitCommand.help_category"title="Link to this definition">¶</a></dt>
<spanclass="sig-name descname"><spanclass="pre">key</span></span><emclass="property"><spanclass="w"></span><spanclass="p"><spanclass="pre">=</span></span><spanclass="w"></span><spanclass="pre">'command'</span></em><aclass="headerlink"href="#evennia.objects.objects.ExitCommand.key"title="Link to this definition">¶</a></dt>
<spanclass="sig-name descname"><spanclass="pre">lock_storage</span></span><emclass="property"><spanclass="w"></span><spanclass="p"><spanclass="pre">=</span></span><spanclass="w"></span><spanclass="pre">'cmd:all();'</span></em><aclass="headerlink"href="#evennia.objects.objects.ExitCommand.lock_storage"title="Link to this definition">¶</a></dt>
<spanclass="sig-name descname"><spanclass="pre">search_index_entry</span></span><emclass="property"><spanclass="w"></span><spanclass="p"><spanclass="pre">=</span></span><spanclass="w"></span><spanclass="pre">{'aliases':</span><spanclass="pre">'',</span><spanclass="pre">'category':</span><spanclass="pre">'general',</span><spanclass="pre">'key':</span><spanclass="pre">'command',</span><spanclass="pre">'no_prefix':</span><spanclass="pre">'</span><spanclass="pre">',</span><spanclass="pre">'tags':</span><spanclass="pre">'',</span><spanclass="pre">'text':</span><spanclass="pre">'\nThis</span><spanclass="pre">is</span><spanclass="pre">a</span><spanclass="pre">command</span><spanclass="pre">that</span><spanclass="pre">simply</span><spanclass="pre">cause</span><spanclass="pre">the</span><spanclass="pre">caller</span><spanclass="pre">to</span><spanclass="pre">traverse\nthe</span><spanclass="pre">object</span><spanclass="pre">it</span><spanclass="pre">is</span><spanclass="pre">attached</span><spanclass="pre">to.\n\n'}</span></em><aclass="headerlink"href="#evennia.objects.objects.ExitCommand.search_index_entry"title="Link to this definition">¶</a></dt>
<emclass="property"><spanclass="k"><spanclass="pre">class</span></span><spanclass="w"></span></em><spanclass="sig-prename descclassname"><spanclass="pre">evennia.objects.objects.</span></span><spanclass="sig-name descname"><spanclass="pre">DefaultExit</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="o"><spanclass="pre">*</span></span><spanclass="n"><spanclass="pre">args</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultExit"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultExit"title="Link to this definition">¶</a></dt>
<spanclass="sig-name descname"><spanclass="pre">exit_command</span></span><aclass="headerlink"href="#evennia.objects.objects.DefaultExit.exit_command"title="Link to this definition">¶</a></dt>
<dd><p>alias of <aclass="reference internal"href="#evennia.objects.objects.ExitCommand"title="evennia.objects.objects.ExitCommand"><codeclass="xref py py-class docutils literal notranslate"><spanclass="pre">ExitCommand</span></code></a></p>
<spanclass="sig-name descname"><spanclass="pre">priority</span></span><emclass="property"><spanclass="w"></span><spanclass="p"><spanclass="pre">=</span></span><spanclass="w"></span><spanclass="pre">101</span></em><aclass="headerlink"href="#evennia.objects.objects.DefaultExit.priority"title="Link to this definition">¶</a></dt>
<spanclass="sig-name descname"><spanclass="pre">default_description</span></span><emclass="property"><spanclass="w"></span><spanclass="p"><spanclass="pre">=</span></span><spanclass="w"></span><spanclass="pre">'This</span><spanclass="pre">is</span><spanclass="pre">an</span><spanclass="pre">exit.'</span></em><aclass="headerlink"href="#evennia.objects.objects.DefaultExit.default_description"title="Link to this definition">¶</a></dt>
<spanclass="sig-name descname"><spanclass="pre">create_exit_cmdset</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">exidbobj</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultExit.create_exit_cmdset"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultExit.create_exit_cmdset"title="Link to this definition">¶</a></dt>
<dd><p>Helper function for creating an exit command set + command.</p>
<p>The command of this cmdset has the same name as the Exit
object and allows the exit to react when the account enter the
exit’s name, triggering the movement between rooms.</p>
<ddclass="field-odd"><p><strong>exidbobj</strong> (<aclass="reference internal"href="#evennia.objects.objects.DefaultObject"title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The DefaultExit object to base the command on.</p>
<li><p><strong>account</strong> (<em>DefaultAccountDB</em>) – Account to associate this Exit with.</p></li>
<li><p><strong>caller</strong> (<aclass="reference internal"href="#evennia.objects.objects.DefaultObject"title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The Object creating this Object.</p></li>
<li><p><strong>description</strong> (<em>str</em>) – Brief description for this object.</p></li>
<li><p><strong>ip</strong> (<em>str</em>) – IP address of creator (for object auditing).</p></li>
<li><p><strong>destination</strong> (<em>Room</em>) – The room to which this exit should go.</p></li>
<spanclass="sig-name descname"><spanclass="pre">basetype_setup</span></span><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultExit.basetype_setup"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultExit.basetype_setup"title="Link to this definition">¶</a></dt>
<dd><p>Setup exit-security.</p>
<p>You should normally not need to overload this - if you do make
sure you include all the functionality in this method.</p>
<spanclass="sig-name descname"><spanclass="pre">at_cmdset_get</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultExit.at_cmdset_get"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultExit.at_cmdset_get"title="Link to this definition">¶</a></dt>
<dd><p>Called just before cmdsets on this object are requested by the
command handler. If changes need to be done on the fly to the
cmdset before passing them on to the cmdhandler, this is the
place to do it. This is called also if the object currently
<li><p><strong>caller</strong> (<aclass="reference internal"href="#evennia.objects.objects.DefaultObject"title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a><em>, </em><aclass="reference internal"href="evennia.accounts.accounts.html#evennia.accounts.accounts.DefaultAccount"title="evennia.accounts.accounts.DefaultAccount"><em>DefaultAccount</em></a><em> or </em><aclass="reference internal"href="evennia.server.session.html#evennia.server.session.Session"title="evennia.server.session.Session"><em>Session</em></a>) – The object requesting the cmdsets.</p></li>
<li><p><strong>current</strong> (<aclass="reference internal"href="evennia.commands.cmdhandler.html#evennia.commands.cmdhandler.CmdSet"title="evennia.commands.cmdhandler.CmdSet"><em>CmdSet</em></a>) – The current merged cmdset.</p></li>
<li><p><strong>force_init</strong> (<em>bool</em>) – If <strong>True</strong>, force a re-build of the cmdset
<spanclass="sig-name descname"><spanclass="pre">at_init</span></span><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultExit.at_init"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultExit.at_init"title="Link to this definition">¶</a></dt>
<dd><p>This is called when this objects is re-loaded from cache. When
that happens, we make sure to remove any old ExitCmdSet cmdset
(this most commonly occurs when renaming an existing exit)</p>
<spanclass="sig-name descname"><spanclass="pre">at_traverse</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">traversing_object</span></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">target_location</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultExit.at_traverse"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultExit.at_traverse"title="Link to this definition">¶</a></dt>
<dd><p>This implements the actual traversal. The traverse lock has
already been checked (in the Exit command) at this point.</p>
<li><p><strong>target_location</strong> (<aclass="reference internal"href="#evennia.objects.objects.DefaultObject"title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – Where target is going.</p></li>
<li><p><strong>**kwargs</strong> (<em>dict</em>) – Arbitrary, optional arguments for users
<spanclass="sig-name descname"><spanclass="pre">at_failed_traverse</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">traversing_object</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultExit.at_failed_traverse"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultExit.at_failed_traverse"title="Link to this definition">¶</a></dt>
<dd><p>Overloads the default hook to implement a simple default error message.</p>
<li><p><strong>traversing_object</strong> (<aclass="reference internal"href="#evennia.objects.objects.DefaultObject"title="evennia.objects.objects.DefaultObject"><em>DefaultObject</em></a>) – The object that failed traversing us.</p></li>
<li><p><strong>**kwargs</strong> (<em>dict</em>) – Arbitrary, optional arguments for users
overriding the call (unused by default).</p></li>
</ul>
</dd>
</dl>
<pclass="rubric">Notes</p>
<p>Using the default exits, this hook will not be called if an
Attribute <strong>err_traverse</strong> is defined - this will in that case be
<spanclass="sig-name descname"><spanclass="pre">get_return_exit</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">return_all</span></span><spanclass="o"><spanclass="pre">=</span></span><spanclass="default_value"><spanclass="pre">False</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/objects/objects.html#DefaultExit.get_return_exit"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.objects.objects.DefaultExit.get_return_exit"title="Link to this definition">¶</a></dt>
<dd><p>Get the exits that pair with this one in its destination room
<emclass="property"><spanclass="k"><spanclass="pre">exception</span></span><spanclass="w"></span></em><spanclass="sig-name descname"><spanclass="pre">DoesNotExist</span></span><aclass="headerlink"href="#evennia.objects.objects.DefaultExit.DoesNotExist"title="Link to this definition">¶</a></dt>
<emclass="property"><spanclass="k"><spanclass="pre">exception</span></span><spanclass="w"></span></em><spanclass="sig-name descname"><spanclass="pre">MultipleObjectsReturned</span></span><aclass="headerlink"href="#evennia.objects.objects.DefaultExit.MultipleObjectsReturned"title="Link to this definition">¶</a></dt>
<emclass="property"><spanclass="k"><spanclass="pre">exception</span></span><spanclass="w"></span></em><spanclass="sig-name descname"><spanclass="pre">NotUpdated</span></span><aclass="headerlink"href="#evennia.objects.objects.DefaultExit.NotUpdated"title="Link to this definition">¶</a></dt>
<spanclass="sig-name descname"><spanclass="pre">path</span></span><emclass="property"><spanclass="w"></span><spanclass="p"><spanclass="pre">=</span></span><spanclass="w"></span><spanclass="pre">'evennia.objects.objects.DefaultExit'</span></em><aclass="headerlink"href="#evennia.objects.objects.DefaultExit.path"title="Link to this definition">¶</a></dt>
<spanclass="sig-name descname"><spanclass="pre">typename</span></span><emclass="property"><spanclass="w"></span><spanclass="p"><spanclass="pre">=</span></span><spanclass="w"></span><spanclass="pre">'DefaultExit'</span></em><aclass="headerlink"href="#evennia.objects.objects.DefaultExit.typename"title="Link to this definition">¶</a></dt>