<pclass="last">You are reading an old version of the Evennia documentation. <ahref="https://www.evennia.com/docs/latest/index.html">The latest version is here</a></p>.
<spanid="evennia-contrib-tutorials-tutorial-world-mob"></span><h1>evennia.contrib.tutorials.tutorial_world.mob<aclass="headerlink"href="#module-evennia.contrib.tutorials.tutorial_world.mob"title="Permalink to this headline">¶</a></h1>
<p>This module implements a simple mobile object with
a very rudimentary AI as well as an aggressive enemy
<emclass="property">class </em><codeclass="sig-prename descclassname">evennia.contrib.tutorials.tutorial_world.mob.</code><codeclass="sig-name descname">CmdMobOnOff</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="o">**</span><spanclass="n">kwargs</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorials/tutorial_world/mob.html#CmdMobOnOff"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorials.tutorial_world.mob.CmdMobOnOff"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">key</code><emclass="property"> = 'mobon'</em><aclass="headerlink"href="#evennia.contrib.tutorials.tutorial_world.mob.CmdMobOnOff.key"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">aliases</code><emclass="property"> = ['moboff']</em><aclass="headerlink"href="#evennia.contrib.tutorials.tutorial_world.mob.CmdMobOnOff.aliases"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">locks</code><emclass="property"> = 'cmd:superuser()'</em><aclass="headerlink"href="#evennia.contrib.tutorials.tutorial_world.mob.CmdMobOnOff.locks"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">func</code><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorials/tutorial_world/mob.html#CmdMobOnOff.func"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorials.tutorial_world.mob.CmdMobOnOff.func"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">help_category</code><emclass="property"> = 'general'</em><aclass="headerlink"href="#evennia.contrib.tutorials.tutorial_world.mob.CmdMobOnOff.help_category"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">lock_storage</code><emclass="property"> = 'cmd:superuser()'</em><aclass="headerlink"href="#evennia.contrib.tutorials.tutorial_world.mob.CmdMobOnOff.lock_storage"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">search_index_entry</code><emclass="property"> = {'aliases': 'moboff', 'category': 'general', 'key': 'mobon', 'no_prefix': ' moboff', 'tags': '', 'text': "\n Activates/deactivates Mob\n\n Usage:\n mobon <mob>\n moboff <mob>\n\n This turns the mob from active (alive) mode\n to inactive (dead) mode. It is used during\n building to activate the mob once it's\n prepared.\n "}</em><aclass="headerlink"href="#evennia.contrib.tutorials.tutorial_world.mob.CmdMobOnOff.search_index_entry"title="Permalink to this definition">¶</a></dt>
<emclass="property">class </em><codeclass="sig-prename descclassname">evennia.contrib.tutorials.tutorial_world.mob.</code><codeclass="sig-name descname">MobCmdSet</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n">cmdsetobj</span><spanclass="o">=</span><spanclass="default_value">None</span></em>, <emclass="sig-param"><spanclass="n">key</span><spanclass="o">=</span><spanclass="default_value">None</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorials/tutorial_world/mob.html#MobCmdSet"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorials.tutorial_world.mob.MobCmdSet"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">at_cmdset_creation</code><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorials/tutorial_world/mob.html#MobCmdSet.at_cmdset_creation"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorials.tutorial_world.mob.MobCmdSet.at_cmdset_creation"title="Permalink to this definition">¶</a></dt>
<dd><p>Hook method - this should be overloaded in the inheriting
class, and should take care of populating the cmdset by use of
<codeclass="sig-name descname">path</code><emclass="property"> = 'evennia.contrib.tutorials.tutorial_world.mob.MobCmdSet'</em><aclass="headerlink"href="#evennia.contrib.tutorials.tutorial_world.mob.MobCmdSet.path"title="Permalink to this definition">¶</a></dt>
<emclass="property">class </em><codeclass="sig-prename descclassname">evennia.contrib.tutorials.tutorial_world.mob.</code><codeclass="sig-name descname">Mob</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="o">*</span><spanclass="n">args</span></em>, <emclass="sig-param"><spanclass="o">**</span><spanclass="n">kwargs</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorials/tutorial_world/mob.html#Mob"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorials.tutorial_world.mob.Mob"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">at_init</code><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorials/tutorial_world/mob.html#Mob.at_init"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorials.tutorial_world.mob.Mob.at_init"title="Permalink to this definition">¶</a></dt>
<dd><p>When initialized from cache (after a server reboot), set up
<codeclass="sig-name descname">at_object_creation</code><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorials/tutorial_world/mob.html#Mob.at_object_creation"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorials.tutorial_world.mob.Mob.at_object_creation"title="Permalink to this definition">¶</a></dt>
<dd><p>Called the first time the object is created.
<codeclass="sig-name descname">set_alive</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="o">*</span><spanclass="n">args</span></em>, <emclass="sig-param"><spanclass="o">**</span><spanclass="n">kwargs</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorials/tutorial_world/mob.html#Mob.set_alive"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorials.tutorial_world.mob.Mob.set_alive"title="Permalink to this definition">¶</a></dt>
<dd><p>Set the mob to “alive” mode. This effectively
<codeclass="sig-name descname">set_dead</code><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorials/tutorial_world/mob.html#Mob.set_dead"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorials.tutorial_world.mob.Mob.set_dead"title="Permalink to this definition">¶</a></dt>
<dd><p>Set the mob to “dead” mode. This turns it off
and makes sure it can take no more damage.
It also starts a ticker for when it will return.</p>
<codeclass="sig-name descname">start_idle</code><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorials/tutorial_world/mob.html#Mob.start_idle"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorials.tutorial_world.mob.Mob.start_idle"title="Permalink to this definition">¶</a></dt>
<dd><p>Starts just standing around. This will kill
<codeclass="sig-name descname">start_patrolling</code><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorials/tutorial_world/mob.html#Mob.start_patrolling"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorials.tutorial_world.mob.Mob.start_patrolling"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">start_hunting</code><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorials/tutorial_world/mob.html#Mob.start_hunting"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorials.tutorial_world.mob.Mob.start_hunting"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">start_attacking</code><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorials/tutorial_world/mob.html#Mob.start_attacking"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorials.tutorial_world.mob.Mob.start_attacking"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">do_patrol</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="o">*</span><spanclass="n">args</span></em>, <emclass="sig-param"><spanclass="o">**</span><spanclass="n">kwargs</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorials/tutorial_world/mob.html#Mob.do_patrol"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorials.tutorial_world.mob.Mob.do_patrol"title="Permalink to this definition">¶</a></dt>
<dd><p>Called repeatedly during patrolling mode. In this mode, the
mob scans its surroundings and randomly chooses a viable exit.
One should lock exits with the traverse:has_account() lock in
order to block the mob from moving outside its area while
allowing account-controlled characters to move normally.</p>
<codeclass="sig-name descname">do_hunting</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="o">*</span><spanclass="n">args</span></em>, <emclass="sig-param"><spanclass="o">**</span><spanclass="n">kwargs</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorials/tutorial_world/mob.html#Mob.do_hunting"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorials.tutorial_world.mob.Mob.do_hunting"title="Permalink to this definition">¶</a></dt>
<dd><p>Called regularly when in hunting mode. In hunting mode the mob
scans adjacent rooms for enemies and moves towards them to
<codeclass="sig-name descname">do_attack</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="o">*</span><spanclass="n">args</span></em>, <emclass="sig-param"><spanclass="o">**</span><spanclass="n">kwargs</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorials/tutorial_world/mob.html#Mob.do_attack"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorials.tutorial_world.mob.Mob.do_attack"title="Permalink to this definition">¶</a></dt>
<dd><p>Called regularly when in attacking mode. In attacking mode
the mob will bring its weapons to bear on any targets
<codeclass="sig-name descname">at_hit</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n">weapon</span></em>, <emclass="sig-param"><spanclass="n">attacker</span></em>, <emclass="sig-param"><spanclass="n">damage</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorials/tutorial_world/mob.html#Mob.at_hit"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorials.tutorial_world.mob.Mob.at_hit"title="Permalink to this definition">¶</a></dt>
<dd><p>Someone landed a hit on us. Check our status
<codeclass="sig-name descname">at_new_arrival</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n">new_character</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/contrib/tutorials/tutorial_world/mob.html#Mob.at_new_arrival"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.contrib.tutorials.tutorial_world.mob.Mob.at_new_arrival"title="Permalink to this definition">¶</a></dt>
<dd><p>This is triggered whenever a new character enters the room.
This is called by the TutorialRoom the mob stands in and
allows it to be aware of changes immediately without needing
to poll for them all the time. For example, the mob can react
right away, also when patrolling on a very slow ticker.</p>
<emclass="property">exception </em><codeclass="sig-name descname">DoesNotExist</code><aclass="headerlink"href="#evennia.contrib.tutorials.tutorial_world.mob.Mob.DoesNotExist"title="Permalink to this definition">¶</a></dt>
<emclass="property">exception </em><codeclass="sig-name descname">MultipleObjectsReturned</code><aclass="headerlink"href="#evennia.contrib.tutorials.tutorial_world.mob.Mob.MultipleObjectsReturned"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">path</code><emclass="property"> = 'evennia.contrib.tutorials.tutorial_world.mob.Mob'</em><aclass="headerlink"href="#evennia.contrib.tutorials.tutorial_world.mob.Mob.path"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">typename</code><emclass="property"> = 'Mob'</em><aclass="headerlink"href="#evennia.contrib.tutorials.tutorial_world.mob.Mob.typename"title="Permalink to this definition">¶</a></dt>
<pclass="last">You are reading an old version of the Evennia documentation. <ahref="https://www.evennia.com/docs/latest/index.html">The latest version is here</a></p>.
</div>
<divclass="footer"role="contentinfo">
© Copyright 2023, The Evennia developer community.
Created using <ahref="https://www.sphinx-doc.org/">Sphinx</a> 3.2.1.