mirror of
https://github.com/evennia/evennia.git
synced 2026-03-26 09:46:32 +01:00
Updated HTML docs.
This commit is contained in:
parent
d87c932d93
commit
97a5ee06cd
40 changed files with 1037 additions and 99 deletions
|
|
@ -1,4 +1,4 @@
|
|||
# Sphinx build info version 1
|
||||
# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done.
|
||||
config: 617bf2259298f5f78d8499002697b6b9
|
||||
config: 9d44e50ff1256af203acf2dbdc90c0cc
|
||||
tags: 645f666f9bcd5a90fca523b33c5a78b7
|
||||
|
|
|
|||
|
|
@ -67,6 +67,7 @@
|
|||
<ul>
|
||||
<li><a class="reference internal" href="#">Evennia Multidescer</a><ul>
|
||||
<li><a class="reference internal" href="#installation">Installation</a></li>
|
||||
<li><a class="reference internal" href="#usage">Usage</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
|
|
@ -116,13 +117,13 @@
|
|||
<h1>Evennia Multidescer<a class="headerlink" href="#evennia-multidescer" title="Permalink to this headline">¶</a></h1>
|
||||
<p>Contribution by Griatch 2016</p>
|
||||
<p>A “multidescer” is a concept from the MUSH world. It allows for
|
||||
creating, managing and switching between multiple character
|
||||
descriptions and is a way for quickly managing your look (such as when
|
||||
splitting your descriptions into arbitrary named ‘sections’ which you can
|
||||
then swap out at will. It is a way for quickly managing your look (such as when
|
||||
changing clothes) in more free-form roleplaying systems. This will also
|
||||
work well together with the <code class="docutils literal notranslate"><span class="pre">rpsystem</span></code> contrib.</p>
|
||||
<p>This multidescer will not
|
||||
require any changes to the Character class, rather it will use the <code class="docutils literal notranslate"><span class="pre">multidescs</span></code>
|
||||
Attribute (a list) and create it if it does not exist.</p>
|
||||
<p>This multidescer will not require any changes to the Character class, rather it
|
||||
will use the <code class="docutils literal notranslate"><span class="pre">multidescs</span></code> Attribute (a list) and create it if it does not exist.
|
||||
It adds a new <code class="docutils literal notranslate"><span class="pre">+desc</span></code> command (where the + is optional in Evennia).</p>
|
||||
<section id="installation">
|
||||
<h2>Installation<a class="headerlink" href="#installation" title="Permalink to this headline">¶</a></h2>
|
||||
<p>Edit <code class="docutils literal notranslate"><span class="pre">mygame/commands/default_cmdsets.py</span></code> and add
|
||||
|
|
@ -130,8 +131,58 @@ Attribute (a list) and create it if it does not exist.</p>
|
|||
<p>Next, look up the <code class="docutils literal notranslate"><span class="pre">at_cmdset_create</span></code> method of the <code class="docutils literal notranslate"><span class="pre">CharacterCmdSet</span></code>
|
||||
class and add a line <code class="docutils literal notranslate"><span class="pre">self.add(CmdMultiDesc())</span></code> to the end
|
||||
of it.</p>
|
||||
<p>Reload the server and you should have the +desc command available (it
|
||||
<p>Reload the server and you should have the <code class="docutils literal notranslate"><span class="pre">+desc</span></code> command available (it
|
||||
will replace the default <code class="docutils literal notranslate"><span class="pre">desc</span></code> command).</p>
|
||||
</section>
|
||||
<section id="usage">
|
||||
<h2>Usage<a class="headerlink" href="#usage" title="Permalink to this headline">¶</a></h2>
|
||||
<p>Use the <code class="docutils literal notranslate"><span class="pre">+desc</span></code> command in-game:</p>
|
||||
<div class="highlight-none notranslate"><div class="highlight"><pre><span></span>+desc [key] - show current desc desc with <key>
|
||||
+desc <key> = <text> - add/replace desc with <key>
|
||||
+desc/list - list descriptions (abbreviated)
|
||||
+desc/list/full - list descriptions (full texts)
|
||||
+desc/edit <key> - add/edit desc <key> in line editor
|
||||
+desc/del <key> - delete desc <key>
|
||||
+desc/swap <key1>-<key2> - swap positions of <key1> and <key2> in list
|
||||
+desc/set <key> [+key+...] - set desc as default or combine multiple descs
|
||||
</pre></div>
|
||||
</div>
|
||||
<p>As an example, you can set one description for clothing, another for your boots,
|
||||
hairstyle or whatever you like. Use <code class="docutils literal notranslate"><span class="pre">|/</span></code> to add line breaks for multi-line descriptions and
|
||||
paragraphs, as well as <code class="docutils literal notranslate"><span class="pre">|_</span></code> to enforce indentations and whitespace (we don’t
|
||||
include colors in the example since they don’t show in this documentation).</p>
|
||||
<div class="highlight-none notranslate"><div class="highlight"><pre><span></span>+desc base = A handsome man.|_
|
||||
+desc mood = He is cheerful, like all is going his way.|/|/
|
||||
+desc head = On his head he has a red hat with a feather in it.|_
|
||||
+desc shirt = His chest is wrapped in a white shirt. It has golden buttons.|_
|
||||
+desc pants = He wears blue pants with a dragorn pattern on them.|_
|
||||
+desc boots = His boots are dusty from the road.
|
||||
+desc/set base + mood + head + shirt + pants + boots
|
||||
</pre></div>
|
||||
</div>
|
||||
<p>When looking at this character, you will now see (assuming auto-linebreaks)</p>
|
||||
<div class="highlight-none notranslate"><div class="highlight"><pre><span></span>A hansome man. He is cheerful, like all is going his way.
|
||||
|
||||
On his head he has a red hat with a feather in it. His chest is wrapped in a
|
||||
white shirt. It has golden buttons. He wears blue pants with a dragon
|
||||
pattern on them. His boots are dusty from the road.
|
||||
</pre></div>
|
||||
</div>
|
||||
<p>If you now do</p>
|
||||
<div class="highlight-none notranslate"><div class="highlight"><pre><span></span>+desc mood = He looks sullen and forlorn.|/|/
|
||||
+desc shirt = His formerly white shirt is dirty and has a gash in it.|_
|
||||
</pre></div>
|
||||
</div>
|
||||
<p>Your description will now be</p>
|
||||
<div class="highlight-none notranslate"><div class="highlight"><pre><span></span>A handsome man. He looks sullen and forlorn.
|
||||
|
||||
On his head he as a red hat with a feathre in it. His formerly white shirt
|
||||
is dirty and has a gash in it. He wears blue pants with a pattern on them.
|
||||
His boots are dusty from the road.
|
||||
</pre></div>
|
||||
</div>
|
||||
<p>You can use any number of ‘pieces’ to build up your description, and can swap
|
||||
and replace them as you like and RP requires.</p>
|
||||
<hr class="docutils" />
|
||||
<p><small>This document page is generated from <code class="docutils literal notranslate"><span class="pre">evennia/contrib/game_systems/multidescer/README.md</span></code>. Changes to this
|
||||
file will be overwritten, so edit that file rather than this one.</small></p>
|
||||
|
|
|
|||
|
|
@ -536,8 +536,8 @@ on their own.</p>
|
|||
<h3><code class="docutils literal notranslate"><span class="pre">multidescer</span></code><a class="headerlink" href="#multidescer" title="Permalink to this headline">¶</a></h3>
|
||||
<p><em>Contribution by Griatch 2016</em></p>
|
||||
<p>A “multidescer” is a concept from the MUSH world. It allows for
|
||||
creating, managing and switching between multiple character
|
||||
descriptions and is a way for quickly managing your look (such as when
|
||||
splitting your descriptions into arbitrary named ‘sections’ which you can
|
||||
then swap out at will. It is a way for quickly managing your look (such as when
|
||||
changing clothes) in more free-form roleplaying systems. This will also
|
||||
work well together with the <code class="docutils literal notranslate"><span class="pre">rpsystem</span></code> contrib.</p>
|
||||
<p><a class="reference internal" href="Contrib-Multidescer.html"><span class="doc std std-doc">Read the documentation</span></a> - <a class="reference internal" href="../api/evennia.contrib.game_systems.multidescer.html#evennia-contrib-game-systems-multidescer"><span class="std std-ref">Browse the Code</span></a></p>
|
||||
|
|
|
|||
472
docs/2.x/_modules/evennia/contrib/tutorials/evadventure/ai.html
Normal file
472
docs/2.x/_modules/evennia/contrib/tutorials/evadventure/ai.html
Normal file
|
|
@ -0,0 +1,472 @@
|
|||
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<title>evennia.contrib.tutorials.evadventure.ai — Evennia 2.x documentation</title>
|
||||
<link rel="stylesheet" href="../../../../../_static/nature.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../../../../../_static/pygments.css" type="text/css" />
|
||||
<script id="documentation_options" data-url_root="../../../../../" src="../../../../../_static/documentation_options.js"></script>
|
||||
<script src="../../../../../_static/jquery.js"></script>
|
||||
<script src="../../../../../_static/underscore.js"></script>
|
||||
<script src="../../../../../_static/doctools.js"></script>
|
||||
<script src="../../../../../_static/language_data.js"></script>
|
||||
<link rel="shortcut icon" href="../../../../../_static/favicon.ico"/>
|
||||
<link rel="index" title="Index" href="../../../../../genindex.html" />
|
||||
<link rel="search" title="Search" href="../../../../../search.html" />
|
||||
</head><body>
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="related" role="navigation" aria-label="related navigation">
|
||||
<h3>Navigation</h3>
|
||||
<ul>
|
||||
<li class="right" style="margin-right: 10px">
|
||||
<a href="../../../../../genindex.html" title="General Index"
|
||||
accesskey="I">index</a></li>
|
||||
<li class="right" >
|
||||
<a href="../../../../../py-modindex.html" title="Python Module Index"
|
||||
>modules</a> |</li>
|
||||
<li class="nav-item nav-item-0"><a href="../../../../../index.html">Evennia 2.x</a> »</li>
|
||||
<li class="nav-item nav-item-1"><a href="../../../../index.html" >Module code</a> »</li>
|
||||
<li class="nav-item nav-item-2"><a href="../../../../evennia.html" accesskey="U">evennia</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">evennia.contrib.tutorials.evadventure.ai</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="document">
|
||||
|
||||
<div class="documentwrapper">
|
||||
<div class="sphinxsidebar" role="navigation" aria-label="main navigation">
|
||||
<div class="sphinxsidebarwrapper">
|
||||
<p class="logo"><a href="../../../../../index.html">
|
||||
<img class="logo" src="../../../../../_static/evennia_logo.png" alt="Logo"/>
|
||||
</a></p>
|
||||
<div id="searchbox" style="display: none" role="search">
|
||||
<h3 id="searchlabel">Quick search</h3>
|
||||
<div class="searchformwrapper">
|
||||
<form class="search" action="../../../../../search.html" method="get">
|
||||
<input type="text" name="q" aria-labelledby="searchlabel" />
|
||||
<input type="submit" value="Go" />
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
<script>$('#searchbox').show(0);</script><h3>Links</h3>
|
||||
<ul>
|
||||
<li><a href="https://www.evennia.com/docs/latest/index.html">Documentation Top</a> </li>
|
||||
<li><a href="https://www.evennia.com">Evennia Home</a> </li>
|
||||
<li><a href="https://github.com/evennia/evennia">Github</a> </li>
|
||||
<li><a href="http://games.evennia.com">Game Index</a> </li>
|
||||
<li>
|
||||
<a href="https://discord.gg/AJJpcRUhtF">Discord</a> -
|
||||
<a href="https://github.com/evennia/evennia/discussions">Discussions</a> -
|
||||
<a href="https://evennia.blogspot.com/">Blog</a>
|
||||
</li>
|
||||
</ul>
|
||||
<h3>Doc Versions</h3>
|
||||
<ul>
|
||||
|
||||
<li><a href="ai.html">2.x (main branch)</a></li>
|
||||
<ul>
|
||||
<li><a href="../1.3.0/index.html">1.3.0 (v1.3.0 branch)</a></li>
|
||||
|
||||
<li><a href="../0.9.5/index.html">0.9.5 (v0.9.5 branch)</a></li>
|
||||
|
||||
|
||||
</ul>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="bodywrapper">
|
||||
<div class="body" role="main">
|
||||
|
||||
<h1>Source code for evennia.contrib.tutorials.evadventure.ai</h1><div class="highlight"><pre>
|
||||
<span></span><span class="sd">"""</span>
|
||||
<span class="sd">NPC AI module for EvAdventure (WIP)</span>
|
||||
|
||||
<span class="sd">This implements a state machine for the NPCs, where it uses inputs from the game to determine what</span>
|
||||
<span class="sd">to do next. The AI works on the concept of being 'ticks', at which point, the AI will decide to move</span>
|
||||
<span class="sd">between different 'states', performing different 'actions' within each state until changing to</span>
|
||||
<span class="sd">another state. The odds of changing between states and performing actions are weighted, allowing for</span>
|
||||
<span class="sd">an AI agent to be more or less likely to perform certain actions.</span>
|
||||
|
||||
<span class="sd">The state machine is fed a dictionary of states and their transitions, and a dictionary of available</span>
|
||||
<span class="sd">actions to choose between.</span>
|
||||
<span class="sd">::</span>
|
||||
|
||||
<span class="sd"> {</span>
|
||||
<span class="sd"> "states": {</span>
|
||||
<span class="sd"> "state1": {"action1": odds, "action2": odds, ...},</span>
|
||||
<span class="sd"> "state2": {"action1": odds, "action2": odds, ...}, ...</span>
|
||||
<span class="sd"> }</span>
|
||||
<span class="sd"> "transition": {</span>
|
||||
<span class="sd"> "state1": {"state2": "odds, "state3": odds, ...},</span>
|
||||
<span class="sd"> "state2": {"state1": "odds, "state3": odds, ...}, ...</span>
|
||||
<span class="sd"> }</span>
|
||||
<span class="sd"> }</span>
|
||||
|
||||
<span class="sd">The NPC class needs to look like this:</span>
|
||||
<span class="sd">::</span>
|
||||
|
||||
<span class="sd"> class NPC(DefaultCharacter):</span>
|
||||
|
||||
<span class="sd"> # ...</span>
|
||||
|
||||
<span class="sd"> @lazy_property</span>
|
||||
<span class="sd"> def ai(self):</span>
|
||||
<span class="sd"> return AIHandler(self)</span>
|
||||
|
||||
<span class="sd"> def ai_roam(self, action):</span>
|
||||
<span class="sd"> # perform the action within the current state ai.state</span>
|
||||
|
||||
<span class="sd"> def ai_hunt(self, action):</span>
|
||||
<span class="sd"> # etc</span>
|
||||
|
||||
<span class="sd">"""</span>
|
||||
|
||||
<span class="kn">import</span> <span class="nn">random</span>
|
||||
|
||||
<span class="kn">from</span> <span class="nn">evennia.utils</span> <span class="kn">import</span> <span class="n">logger</span>
|
||||
<span class="kn">from</span> <span class="nn">evennia.utils.dbserialize</span> <span class="kn">import</span> <span class="n">deserialize</span>
|
||||
|
||||
<span class="c1"># Some example AI structures</span>
|
||||
|
||||
<span class="n">EMOTIONAL_AI</span> <span class="o">=</span> <span class="p">{</span>
|
||||
<span class="c1"># Non-combat AI that has different moods for conversations</span>
|
||||
<span class="s2">"states"</span><span class="p">:</span> <span class="p">{</span>
|
||||
<span class="s2">"neutral"</span><span class="p">:</span> <span class="p">{</span><span class="s2">"talk_neutral"</span><span class="p">:</span> <span class="mf">0.9</span><span class="p">,</span> <span class="s2">"change_state"</span><span class="p">:</span> <span class="mf">0.1</span><span class="p">},</span>
|
||||
<span class="s2">"happy"</span><span class="p">:</span> <span class="p">{</span><span class="s2">"talk_happy"</span><span class="p">:</span> <span class="mf">0.9</span><span class="p">,</span> <span class="s2">"change_state"</span><span class="p">:</span> <span class="mf">0.1</span><span class="p">},</span>
|
||||
<span class="s2">"sad"</span><span class="p">:</span> <span class="p">{</span><span class="s2">"talk_sad"</span><span class="p">:</span> <span class="mf">0.9</span><span class="p">,</span> <span class="s2">"change_state"</span><span class="p">:</span> <span class="mf">0.1</span><span class="p">},</span>
|
||||
<span class="s2">"angry"</span><span class="p">:</span> <span class="p">{</span><span class="s2">"talk_angry"</span><span class="p">:</span> <span class="mf">0.9</span><span class="p">,</span> <span class="s2">"change_state"</span><span class="p">:</span> <span class="mf">0.1</span><span class="p">},</span>
|
||||
<span class="p">}</span>
|
||||
<span class="p">}</span>
|
||||
|
||||
<span class="n">STATIC_AI</span> <span class="o">=</span> <span class="p">{</span>
|
||||
<span class="c1"># AI that just hangs around until attacked</span>
|
||||
<span class="s2">"states"</span><span class="p">:</span> <span class="p">{</span>
|
||||
<span class="s2">"idle"</span><span class="p">:</span> <span class="p">{</span><span class="s2">"do_nothing"</span><span class="p">:</span> <span class="mf">1.0</span><span class="p">},</span>
|
||||
<span class="s2">"combat"</span><span class="p">:</span> <span class="p">{</span><span class="s2">"attack"</span><span class="p">:</span> <span class="mf">0.9</span><span class="p">,</span> <span class="s2">"stunt"</span><span class="p">:</span> <span class="mf">0.1</span><span class="p">},</span>
|
||||
<span class="p">}</span>
|
||||
<span class="p">}</span>
|
||||
|
||||
<span class="n">ROAM_AI</span> <span class="o">=</span> <span class="p">{</span>
|
||||
<span class="c1"># AI that roams around randomly, now and then stopping.</span>
|
||||
<span class="s2">"states"</span><span class="p">:</span> <span class="p">{</span>
|
||||
<span class="s2">"idle"</span><span class="p">:</span> <span class="p">{</span><span class="s2">"do_nothing"</span><span class="p">:</span> <span class="mf">0.9</span><span class="p">,</span> <span class="s2">"change_state"</span><span class="p">:</span> <span class="mf">0.1</span><span class="p">},</span>
|
||||
<span class="s2">"roam"</span><span class="p">:</span> <span class="p">{</span>
|
||||
<span class="s2">"move_north"</span><span class="p">:</span> <span class="mf">0.1</span><span class="p">,</span>
|
||||
<span class="s2">"move_south"</span><span class="p">:</span> <span class="mf">0.1</span><span class="p">,</span>
|
||||
<span class="s2">"move_east"</span><span class="p">:</span> <span class="mf">0.1</span><span class="p">,</span>
|
||||
<span class="s2">"move_west"</span><span class="p">:</span> <span class="mf">0.1</span><span class="p">,</span>
|
||||
<span class="s2">"wait"</span><span class="p">:</span> <span class="mf">0.4</span><span class="p">,</span>
|
||||
<span class="s2">"change_state"</span><span class="p">:</span> <span class="mf">0.2</span><span class="p">,</span>
|
||||
<span class="p">},</span>
|
||||
<span class="s2">"combat"</span><span class="p">:</span> <span class="p">{</span><span class="s2">"attack"</span><span class="p">:</span> <span class="mf">0.9</span><span class="p">,</span> <span class="s2">"stunt"</span><span class="p">:</span> <span class="mf">0.05</span><span class="p">,</span> <span class="s2">"flee"</span><span class="p">:</span> <span class="mf">0.05</span><span class="p">},</span>
|
||||
<span class="p">},</span>
|
||||
<span class="s2">"transitions"</span><span class="p">:</span> <span class="p">{</span>
|
||||
<span class="s2">"idle"</span><span class="p">:</span> <span class="p">{</span><span class="s2">"roam"</span><span class="p">:</span> <span class="mf">0.5</span><span class="p">,</span> <span class="s2">"idle"</span><span class="p">:</span> <span class="mf">0.5</span><span class="p">},</span>
|
||||
<span class="s2">"roam"</span><span class="p">:</span> <span class="p">{</span><span class="s2">"idle"</span><span class="p">:</span> <span class="mf">0.1</span><span class="p">,</span> <span class="s2">"roam"</span><span class="p">:</span> <span class="mf">0.9</span><span class="p">},</span>
|
||||
<span class="p">},</span>
|
||||
<span class="p">}</span>
|
||||
|
||||
<span class="n">HUNTER_AI</span> <span class="o">=</span> <span class="p">{</span>
|
||||
<span class="s2">"states"</span><span class="p">:</span> <span class="p">{</span>
|
||||
<span class="s2">"hunt_roam"</span><span class="p">:</span> <span class="p">{</span>
|
||||
<span class="s2">"move_north"</span><span class="p">:</span> <span class="mf">0.2</span><span class="p">,</span>
|
||||
<span class="s2">"move_south"</span><span class="p">:</span> <span class="mf">0.2</span><span class="p">,</span>
|
||||
<span class="s2">"move_east"</span><span class="p">:</span> <span class="mf">0.2</span><span class="p">,</span>
|
||||
<span class="s2">"move_west"</span><span class="p">:</span> <span class="mf">0.2</span><span class="p">,</span>
|
||||
<span class="p">},</span>
|
||||
<span class="s2">"hunt_track"</span><span class="p">:</span> <span class="p">{</span>
|
||||
<span class="s2">"track_and_move"</span><span class="p">:</span> <span class="mf">0.9</span><span class="p">,</span>
|
||||
<span class="s2">"change_state"</span><span class="p">:</span> <span class="mf">0.1</span><span class="p">,</span>
|
||||
<span class="p">},</span>
|
||||
<span class="s2">"combat"</span><span class="p">:</span> <span class="p">{</span><span class="s2">"attack"</span><span class="p">:</span> <span class="mf">0.8</span><span class="p">,</span> <span class="s2">"stunt"</span><span class="p">:</span> <span class="mf">0.1</span><span class="p">,</span> <span class="s2">"other"</span><span class="p">:</span> <span class="mf">0.1</span><span class="p">},</span>
|
||||
<span class="p">},</span>
|
||||
<span class="s2">"transitions"</span><span class="p">:</span> <span class="p">{</span>
|
||||
<span class="c1"># add a chance of the hunter losing its trail</span>
|
||||
<span class="s2">"hunt_track"</span><span class="p">:</span> <span class="p">{</span><span class="s2">"hunt_roam"</span><span class="p">:</span> <span class="mf">1.0</span><span class="p">},</span>
|
||||
<span class="p">},</span>
|
||||
<span class="p">}</span>
|
||||
|
||||
|
||||
<div class="viewcode-block" id="AIHandler"><a class="viewcode-back" href="../../../../../api/evennia.contrib.tutorials.evadventure.ai.html#evennia.contrib.tutorials.evadventure.ai.AIHandler">[docs]</a><span class="k">class</span> <span class="nc">AIHandler</span><span class="p">:</span>
|
||||
<span class="w"> </span><span class="sd">"""</span>
|
||||
<span class="sd"> AIHandler class. This should be placed on the NPC object, and will handle the state machine,</span>
|
||||
<span class="sd"> including transitions and actions.</span>
|
||||
|
||||
<span class="sd"> Add to typeclass with @lazyproperty:</span>
|
||||
|
||||
<span class="sd"> class NPC(DefaultCharacter):</span>
|
||||
<span class="sd"> # ...</span>
|
||||
|
||||
<span class="sd"> @lazyproperty</span>
|
||||
<span class="sd"> def ai(self):</span>
|
||||
<span class="sd"> return AIHandler(self)</span>
|
||||
|
||||
<span class="sd"> """</span>
|
||||
|
||||
<div class="viewcode-block" id="AIHandler.__init__"><a class="viewcode-back" href="../../../../../api/evennia.contrib.tutorials.evadventure.ai.html#evennia.contrib.tutorials.evadventure.ai.AIHandler.__init__">[docs]</a> <span class="k">def</span> <span class="fm">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">obj</span><span class="p">):</span>
|
||||
<span class="bp">self</span><span class="o">.</span><span class="n">obj</span> <span class="o">=</span> <span class="n">obj</span></div>
|
||||
|
||||
<span class="k">def</span> <span class="fm">__str__</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
||||
<span class="k">return</span> <span class="sa">f</span><span class="s2">"AIHandler for </span><span class="si">{</span><span class="bp">self</span><span class="o">.</span><span class="n">obj</span><span class="si">}</span><span class="s2">. Current state: </span><span class="si">{</span><span class="bp">self</span><span class="o">.</span><span class="n">state</span><span class="si">}</span><span class="s2">"</span>
|
||||
|
||||
<span class="nd">@staticmethod</span>
|
||||
<span class="k">def</span> <span class="nf">_normalize_odds</span><span class="p">(</span><span class="n">odds</span><span class="p">):</span>
|
||||
<span class="w"> </span><span class="sd">"""</span>
|
||||
<span class="sd"> Normalize odds to 1.0.</span>
|
||||
|
||||
<span class="sd"> Args:</span>
|
||||
<span class="sd"> odds (list): List of odds to normalize.</span>
|
||||
<span class="sd"> Returns:</span>
|
||||
<span class="sd"> list: Normalized list of odds.</span>
|
||||
|
||||
<span class="sd"> """</span>
|
||||
<span class="k">return</span> <span class="p">[</span><span class="nb">float</span><span class="p">(</span><span class="n">i</span><span class="p">)</span> <span class="o">/</span> <span class="nb">sum</span><span class="p">(</span><span class="n">odds</span><span class="p">)</span> <span class="k">for</span> <span class="n">i</span> <span class="ow">in</span> <span class="n">odds</span><span class="p">]</span>
|
||||
|
||||
<span class="nd">@staticmethod</span>
|
||||
<span class="k">def</span> <span class="nf">_weighted_choice</span><span class="p">(</span><span class="n">choices</span><span class="p">,</span> <span class="n">odds</span><span class="p">):</span>
|
||||
<span class="w"> </span><span class="sd">"""</span>
|
||||
<span class="sd"> Choose a random element from a list of choices, with odds.</span>
|
||||
|
||||
<span class="sd"> Args:</span>
|
||||
<span class="sd"> choices (list): List of choices to choose from. Unordered.</span>
|
||||
<span class="sd"> odds (list): List of odds to choose from, matching the choices list. This</span>
|
||||
<span class="sd"> can be a list of integers or floats, indicating priority. Have odds sum</span>
|
||||
<span class="sd"> up to 100 or 1.0 to properly represent predictable odds.</span>
|
||||
<span class="sd"> Returns:</span>
|
||||
<span class="sd"> object: Randomly chosen element from choices.</span>
|
||||
|
||||
<span class="sd"> """</span>
|
||||
<span class="k">return</span> <span class="n">random</span><span class="o">.</span><span class="n">choices</span><span class="p">(</span><span class="n">choices</span><span class="p">,</span> <span class="n">odds</span><span class="p">)[</span><span class="mi">0</span><span class="p">]</span>
|
||||
|
||||
<span class="nd">@staticmethod</span>
|
||||
<span class="k">def</span> <span class="nf">_weighted_choice_dict</span><span class="p">(</span><span class="n">choices</span><span class="p">):</span>
|
||||
<span class="w"> </span><span class="sd">"""</span>
|
||||
<span class="sd"> Choose a random element from a dictionary of choices, with odds.</span>
|
||||
|
||||
<span class="sd"> Args:</span>
|
||||
<span class="sd"> choices (dict): Dictionary of choices to choose from, with odds as values.</span>
|
||||
<span class="sd"> Returns:</span>
|
||||
<span class="sd"> object: Randomly chosen element from choices.</span>
|
||||
|
||||
<span class="sd"> """</span>
|
||||
<span class="k">return</span> <span class="n">AIHandler</span><span class="o">.</span><span class="n">_weighted_choice</span><span class="p">(</span><span class="nb">list</span><span class="p">(</span><span class="n">choices</span><span class="o">.</span><span class="n">keys</span><span class="p">()),</span> <span class="nb">list</span><span class="p">(</span><span class="n">choices</span><span class="o">.</span><span class="n">values</span><span class="p">()))</span>
|
||||
|
||||
<span class="nd">@staticmethod</span>
|
||||
<span class="k">def</span> <span class="nf">_validate_ai_dict</span><span class="p">(</span><span class="n">aidict</span><span class="p">):</span>
|
||||
<span class="w"> </span><span class="sd">"""</span>
|
||||
<span class="sd"> Validate and normalize an AI dictionary.</span>
|
||||
|
||||
<span class="sd"> Args:</span>
|
||||
<span class="sd"> aidict (dict): AI dictionary to normalize.</span>
|
||||
<span class="sd"> Returns:</span>
|
||||
<span class="sd"> dict: Normalized AI dictionary.</span>
|
||||
|
||||
<span class="sd"> """</span>
|
||||
<span class="k">if</span> <span class="s2">"states"</span> <span class="ow">not</span> <span class="ow">in</span> <span class="n">aidict</span><span class="p">:</span>
|
||||
<span class="k">raise</span> <span class="ne">ValueError</span><span class="p">(</span><span class="s2">"AI dictionary must contain a 'states' key."</span><span class="p">)</span>
|
||||
|
||||
<span class="k">if</span> <span class="s2">"transitions"</span> <span class="ow">not</span> <span class="ow">in</span> <span class="n">aidict</span><span class="p">:</span>
|
||||
<span class="n">aidict</span><span class="p">[</span><span class="s2">"transitions"</span><span class="p">]</span> <span class="o">=</span> <span class="p">{}</span>
|
||||
|
||||
<span class="c1"># if we have no transitions, make sure we have a transition for each state set to 0</span>
|
||||
<span class="k">for</span> <span class="n">state</span> <span class="ow">in</span> <span class="n">aidict</span><span class="p">[</span><span class="s2">"states"</span><span class="p">]:</span>
|
||||
<span class="k">if</span> <span class="n">state</span> <span class="ow">not</span> <span class="ow">in</span> <span class="n">aidict</span><span class="p">[</span><span class="s2">"transitions"</span><span class="p">]:</span>
|
||||
<span class="n">aidict</span><span class="p">[</span><span class="s2">"transitions"</span><span class="p">][</span><span class="n">state</span><span class="p">]</span> <span class="o">=</span> <span class="p">{}</span>
|
||||
<span class="k">for</span> <span class="n">state2</span> <span class="ow">in</span> <span class="n">aidict</span><span class="p">[</span><span class="s2">"states"</span><span class="p">]:</span>
|
||||
<span class="k">if</span> <span class="n">state2</span> <span class="ow">not</span> <span class="ow">in</span> <span class="n">aidict</span><span class="p">[</span><span class="s2">"transitions"</span><span class="p">][</span><span class="n">state</span><span class="p">]:</span>
|
||||
<span class="n">aidict</span><span class="p">[</span><span class="s2">"transitions"</span><span class="p">][</span><span class="n">state</span><span class="p">][</span><span class="n">state2</span><span class="p">]</span> <span class="o">=</span> <span class="mf">0.0</span>
|
||||
|
||||
<span class="c1"># normalize odds</span>
|
||||
<span class="k">for</span> <span class="n">state</span><span class="p">,</span> <span class="n">actions</span> <span class="ow">in</span> <span class="n">aidict</span><span class="p">[</span><span class="s2">"states"</span><span class="p">]</span><span class="o">.</span><span class="n">items</span><span class="p">():</span>
|
||||
<span class="n">aidict</span><span class="p">[</span><span class="s2">"states"</span><span class="p">][</span><span class="n">state</span><span class="p">]</span> <span class="o">=</span> <span class="n">AIHandler</span><span class="o">.</span><span class="n">_normalize_odds</span><span class="p">(</span><span class="nb">list</span><span class="p">(</span><span class="n">actions</span><span class="o">.</span><span class="n">values</span><span class="p">()))</span>
|
||||
<span class="k">for</span> <span class="n">state</span><span class="p">,</span> <span class="n">transitions</span> <span class="ow">in</span> <span class="n">aidict</span><span class="p">[</span><span class="s2">"transitions"</span><span class="p">]</span><span class="o">.</span><span class="n">items</span><span class="p">():</span>
|
||||
<span class="n">aidict</span><span class="p">[</span><span class="s2">"transitions"</span><span class="p">][</span><span class="n">state</span><span class="p">]</span> <span class="o">=</span> <span class="n">AIHandler</span><span class="o">.</span><span class="n">_normalize_odds</span><span class="p">(</span><span class="nb">list</span><span class="p">(</span><span class="n">transitions</span><span class="o">.</span><span class="n">values</span><span class="p">()))</span>
|
||||
|
||||
<span class="k">return</span> <span class="n">aidict</span>
|
||||
|
||||
<span class="nd">@property</span>
|
||||
<span class="k">def</span> <span class="nf">state</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
||||
<span class="w"> </span><span class="sd">"""</span>
|
||||
<span class="sd"> Return the current state of the AI.</span>
|
||||
|
||||
<span class="sd"> Returns:</span>
|
||||
<span class="sd"> str: Current state of the AI.</span>
|
||||
|
||||
<span class="sd"> """</span>
|
||||
<span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">obj</span><span class="o">.</span><span class="n">attributes</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">"ai_state"</span><span class="p">,</span> <span class="n">category</span><span class="o">=</span><span class="s2">"ai"</span><span class="p">,</span> <span class="n">default</span><span class="o">=</span><span class="s2">"idle"</span><span class="p">)</span>
|
||||
|
||||
<span class="nd">@state</span><span class="o">.</span><span class="n">setter</span>
|
||||
<span class="k">def</span> <span class="nf">state</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">value</span><span class="p">):</span>
|
||||
<span class="w"> </span><span class="sd">"""</span>
|
||||
<span class="sd"> Set the current state of the AI. This allows to force a state change, e.g. when starting</span>
|
||||
<span class="sd"> combat.</span>
|
||||
|
||||
<span class="sd"> Args:</span>
|
||||
<span class="sd"> value (str): New state of the AI.</span>
|
||||
|
||||
<span class="sd"> """</span>
|
||||
<span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">obj</span><span class="o">.</span><span class="n">attributes</span><span class="o">.</span><span class="n">add</span><span class="p">(</span><span class="s2">"ai_state"</span><span class="p">,</span> <span class="n">category</span><span class="o">=</span><span class="s2">"ai"</span><span class="p">)</span>
|
||||
|
||||
<span class="nd">@property</span>
|
||||
<span class="k">def</span> <span class="nf">states</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
||||
<span class="w"> </span><span class="sd">"""</span>
|
||||
<span class="sd"> Return the states dictionary for the AI.</span>
|
||||
|
||||
<span class="sd"> Returns:</span>
|
||||
<span class="sd"> dict: States dictionary for the AI.</span>
|
||||
|
||||
<span class="sd"> """</span>
|
||||
<span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">obj</span><span class="o">.</span><span class="n">attributes</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">"ai_states"</span><span class="p">,</span> <span class="n">category</span><span class="o">=</span><span class="s2">"ai"</span><span class="p">,</span> <span class="n">default</span><span class="o">=</span><span class="p">{</span><span class="s2">"idle"</span><span class="p">:</span> <span class="p">{}})</span>
|
||||
|
||||
<span class="nd">@states</span><span class="o">.</span><span class="n">setter</span>
|
||||
<span class="k">def</span> <span class="nf">states</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">value</span><span class="p">):</span>
|
||||
<span class="w"> </span><span class="sd">"""</span>
|
||||
<span class="sd"> Set the states dictionary for the AI.</span>
|
||||
|
||||
<span class="sd"> Args:</span>
|
||||
<span class="sd"> value (dict): New states dictionary for the AI.</span>
|
||||
|
||||
<span class="sd"> """</span>
|
||||
<span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">obj</span><span class="o">.</span><span class="n">attributes</span><span class="o">.</span><span class="n">add</span><span class="p">(</span><span class="s2">"ai_states"</span><span class="p">,</span> <span class="n">value</span><span class="p">,</span> <span class="n">category</span><span class="o">=</span><span class="s2">"ai"</span><span class="p">)</span>
|
||||
|
||||
<span class="nd">@property</span>
|
||||
<span class="k">def</span> <span class="nf">transitions</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
||||
<span class="w"> </span><span class="sd">"""</span>
|
||||
<span class="sd"> Return the transitions dictionary for the AI.</span>
|
||||
|
||||
<span class="sd"> Returns:</span>
|
||||
<span class="sd"> dict: Transitions dictionary for the AI.</span>
|
||||
|
||||
<span class="sd"> """</span>
|
||||
<span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">obj</span><span class="o">.</span><span class="n">attributes</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">"ai_transitions"</span><span class="p">,</span> <span class="n">category</span><span class="o">=</span><span class="s2">"ai"</span><span class="p">,</span> <span class="n">default</span><span class="o">=</span><span class="p">{</span><span class="s2">"idle"</span><span class="p">:</span> <span class="p">[]})</span>
|
||||
|
||||
<span class="nd">@transitions</span><span class="o">.</span><span class="n">setter</span>
|
||||
<span class="k">def</span> <span class="nf">transitions</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">value</span><span class="p">):</span>
|
||||
<span class="w"> </span><span class="sd">"""</span>
|
||||
<span class="sd"> Set the transitions dictionary for the AI.</span>
|
||||
|
||||
<span class="sd"> Args:</span>
|
||||
<span class="sd"> value (dict): New transitions dictionary for the AI. This will be automatically</span>
|
||||
<span class="sd"> normalized.</span>
|
||||
|
||||
<span class="sd"> """</span>
|
||||
<span class="k">for</span> <span class="n">state</span> <span class="ow">in</span> <span class="n">value</span><span class="o">.</span><span class="n">keys</span><span class="p">():</span>
|
||||
<span class="n">value</span><span class="p">[</span><span class="n">state</span><span class="p">]</span> <span class="o">=</span> <span class="nb">dict</span><span class="p">(</span>
|
||||
<span class="nb">zip</span><span class="p">(</span><span class="n">value</span><span class="p">[</span><span class="n">state</span><span class="p">]</span><span class="o">.</span><span class="n">keys</span><span class="p">(),</span> <span class="bp">self</span><span class="o">.</span><span class="n">_normalize_odds</span><span class="p">(</span><span class="n">value</span><span class="p">[</span><span class="n">state</span><span class="p">]</span><span class="o">.</span><span class="n">values</span><span class="p">()))</span>
|
||||
<span class="p">)</span>
|
||||
<span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">obj</span><span class="o">.</span><span class="n">attributes</span><span class="o">.</span><span class="n">add</span><span class="p">(</span><span class="s2">"ai_transitions"</span><span class="p">,</span> <span class="n">value</span><span class="p">,</span> <span class="n">category</span><span class="o">=</span><span class="s2">"ai"</span><span class="p">)</span>
|
||||
|
||||
<div class="viewcode-block" id="AIHandler.add_aidict"><a class="viewcode-back" href="../../../../../api/evennia.contrib.tutorials.evadventure.ai.html#evennia.contrib.tutorials.evadventure.ai.AIHandler.add_aidict">[docs]</a> <span class="k">def</span> <span class="nf">add_aidict</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">aidict</span><span class="p">):</span>
|
||||
<span class="w"> </span><span class="sd">"""</span>
|
||||
<span class="sd"> Add an AI dictionary to the AI handler.</span>
|
||||
|
||||
<span class="sd"> Args:</span>
|
||||
<span class="sd"> aidict (dict): AI dictionary to add.</span>
|
||||
|
||||
<span class="sd"> """</span>
|
||||
<span class="n">aidict</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">_validate_ai_dict</span><span class="p">(</span><span class="n">aidict</span><span class="p">)</span>
|
||||
<span class="bp">self</span><span class="o">.</span><span class="n">states</span> <span class="o">=</span> <span class="n">aidict</span><span class="p">[</span><span class="s2">"states"</span><span class="p">]</span>
|
||||
<span class="bp">self</span><span class="o">.</span><span class="n">transitions</span> <span class="o">=</span> <span class="n">aidict</span><span class="p">[</span><span class="s2">"transitions"</span><span class="p">]</span></div>
|
||||
|
||||
<div class="viewcode-block" id="AIHandler.adjust_transition_probability"><a class="viewcode-back" href="../../../../../api/evennia.contrib.tutorials.evadventure.ai.html#evennia.contrib.tutorials.evadventure.ai.AIHandler.adjust_transition_probability">[docs]</a> <span class="k">def</span> <span class="nf">adjust_transition_probability</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">state_start</span><span class="p">,</span> <span class="n">state_end</span><span class="p">,</span> <span class="n">odds</span><span class="p">):</span>
|
||||
<span class="w"> </span><span class="sd">"""</span>
|
||||
<span class="sd"> Adjust the transition probability between two states.</span>
|
||||
|
||||
<span class="sd"> Args:</span>
|
||||
<span class="sd"> state_start (str): State to start from.</span>
|
||||
<span class="sd"> state_end (str): State to end at.</span>
|
||||
<span class="sd"> odds (int): New odds for the transition.</span>
|
||||
|
||||
<span class="sd"> Note:</span>
|
||||
<span class="sd"> This will normalize the odds across the other transitions from the starting state.</span>
|
||||
|
||||
<span class="sd"> """</span>
|
||||
<span class="n">transitions</span> <span class="o">=</span> <span class="n">deserialize</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">transitions</span><span class="p">)</span>
|
||||
<span class="n">transitions</span><span class="p">[</span><span class="n">state_start</span><span class="p">][</span><span class="n">state_end</span><span class="p">]</span> <span class="o">=</span> <span class="n">odds</span>
|
||||
<span class="n">transitions</span><span class="p">[</span><span class="n">state_start</span><span class="p">]</span> <span class="o">=</span> <span class="nb">dict</span><span class="p">(</span>
|
||||
<span class="nb">zip</span><span class="p">(</span>
|
||||
<span class="n">transitions</span><span class="p">[</span><span class="n">state_start</span><span class="p">]</span><span class="o">.</span><span class="n">keys</span><span class="p">(),</span>
|
||||
<span class="bp">self</span><span class="o">.</span><span class="n">_normalize_odds</span><span class="p">(</span><span class="n">transitions</span><span class="p">[</span><span class="n">state_start</span><span class="p">]</span><span class="o">.</span><span class="n">values</span><span class="p">()),</span>
|
||||
<span class="p">)</span>
|
||||
<span class="p">)</span>
|
||||
<span class="bp">self</span><span class="o">.</span><span class="n">transitions</span> <span class="o">=</span> <span class="n">transitions</span></div>
|
||||
|
||||
<div class="viewcode-block" id="AIHandler.get_next_state"><a class="viewcode-back" href="../../../../../api/evennia.contrib.tutorials.evadventure.ai.html#evennia.contrib.tutorials.evadventure.ai.AIHandler.get_next_state">[docs]</a> <span class="k">def</span> <span class="nf">get_next_state</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
||||
<span class="w"> </span><span class="sd">"""</span>
|
||||
<span class="sd"> Get the next state for the AI.</span>
|
||||
|
||||
<span class="sd"> Returns:</span>
|
||||
<span class="sd"> str: Next state for the AI.</span>
|
||||
|
||||
<span class="sd"> """</span>
|
||||
<span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">_weighted_choice_dict</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">transitions</span><span class="p">[</span><span class="bp">self</span><span class="o">.</span><span class="n">state</span><span class="p">])</span></div>
|
||||
|
||||
<div class="viewcode-block" id="AIHandler.get_next_action"><a class="viewcode-back" href="../../../../../api/evennia.contrib.tutorials.evadventure.ai.html#evennia.contrib.tutorials.evadventure.ai.AIHandler.get_next_action">[docs]</a> <span class="k">def</span> <span class="nf">get_next_action</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
||||
<span class="w"> </span><span class="sd">"""</span>
|
||||
<span class="sd"> Get the next action for the AI within the current state.</span>
|
||||
|
||||
<span class="sd"> Returns:</span>
|
||||
<span class="sd"> str: Next action for the AI.</span>
|
||||
|
||||
<span class="sd"> """</span>
|
||||
<span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">_weighted_choice_dict</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">states</span><span class="p">[</span><span class="bp">self</span><span class="o">.</span><span class="n">state</span><span class="p">])</span></div>
|
||||
|
||||
<div class="viewcode-block" id="AIHandler.execute_ai"><a class="viewcode-back" href="../../../../../api/evennia.contrib.tutorials.evadventure.ai.html#evennia.contrib.tutorials.evadventure.ai.AIHandler.execute_ai">[docs]</a> <span class="k">def</span> <span class="nf">execute_ai</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
||||
<span class="w"> </span><span class="sd">"""</span>
|
||||
<span class="sd"> Execute the next ai action in the current state.</span>
|
||||
|
||||
<span class="sd"> This assumes that each available state exists as a method on the object, named</span>
|
||||
<span class="sd"> ai_<state_name>, taking an optional argument of the next action to perform. The method</span>
|
||||
<span class="sd"> will itself update the state or transition weights through this handler.</span>
|
||||
|
||||
<span class="sd"> Some states have in-built state transitions, via the special "change_state" action.</span>
|
||||
|
||||
<span class="sd"> """</span>
|
||||
<span class="n">next_action</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">get_next_action</span><span class="p">()</span>
|
||||
<span class="n">statechange</span> <span class="o">=</span> <span class="mi">0</span>
|
||||
<span class="k">while</span> <span class="n">next_action</span> <span class="o">==</span> <span class="s2">"change_state"</span><span class="p">:</span>
|
||||
<span class="bp">self</span><span class="o">.</span><span class="n">state</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">get_next_state</span><span class="p">()</span>
|
||||
<span class="n">next_action</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">get_next_action</span><span class="p">()</span>
|
||||
<span class="k">if</span> <span class="n">statechange</span> <span class="o">></span> <span class="mi">5</span><span class="p">:</span>
|
||||
<span class="n">logger</span><span class="o">.</span><span class="n">log_err</span><span class="p">(</span><span class="sa">f</span><span class="s2">"AIHandler: </span><span class="si">{</span><span class="bp">self</span><span class="o">.</span><span class="n">obj</span><span class="si">}</span><span class="s2"> got stuck in a state-change loop."</span><span class="p">)</span>
|
||||
<span class="k">return</span>
|
||||
|
||||
<span class="c1"># perform the action</span>
|
||||
<span class="nb">getattr</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">obj</span><span class="p">,</span> <span class="sa">f</span><span class="s2">"ai_</span><span class="si">{</span><span class="bp">self</span><span class="o">.</span><span class="n">state</span><span class="si">}</span><span class="s2">"</span><span class="p">)(</span><span class="n">next_action</span><span class="p">)</span></div></div>
|
||||
</pre></div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<div class="related" role="navigation" aria-label="related navigation">
|
||||
<h3>Navigation</h3>
|
||||
<ul>
|
||||
<li class="right" style="margin-right: 10px">
|
||||
<a href="../../../../../genindex.html" title="General Index"
|
||||
>index</a></li>
|
||||
<li class="right" >
|
||||
<a href="../../../../../py-modindex.html" title="Python Module Index"
|
||||
>modules</a> |</li>
|
||||
<li class="nav-item nav-item-0"><a href="../../../../../index.html">Evennia 2.x</a> »</li>
|
||||
<li class="nav-item nav-item-1"><a href="../../../../index.html" >Module code</a> »</li>
|
||||
<li class="nav-item nav-item-2"><a href="../../../../evennia.html" >evennia</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">evennia.contrib.tutorials.evadventure.ai</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div class="footer" role="contentinfo">
|
||||
© Copyright 2023, The Evennia developer community.
|
||||
Created using <a href="https://www.sphinx-doc.org/">Sphinx</a> 3.2.1.
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -212,6 +212,7 @@
|
|||
<li><a href="evennia/contrib/rpg/traits/traits.html">evennia.contrib.rpg.traits.traits</a></li>
|
||||
<li><a href="evennia/contrib/tutorials/bodyfunctions/bodyfunctions.html">evennia.contrib.tutorials.bodyfunctions.bodyfunctions</a></li>
|
||||
<li><a href="evennia/contrib/tutorials/bodyfunctions/tests.html">evennia.contrib.tutorials.bodyfunctions.tests</a></li>
|
||||
<li><a href="evennia/contrib/tutorials/evadventure/ai.html">evennia.contrib.tutorials.evadventure.ai</a></li>
|
||||
<li><a href="evennia/contrib/tutorials/evadventure/characters.html">evennia.contrib.tutorials.evadventure.characters</a></li>
|
||||
<li><a href="evennia/contrib/tutorials/evadventure/chargen.html">evennia.contrib.tutorials.evadventure.chargen</a></li>
|
||||
<li><a href="evennia/contrib/tutorials/evadventure/combat_base.html">evennia.contrib.tutorials.evadventure.combat_base</a></li>
|
||||
|
|
|
|||
|
|
@ -3,14 +3,14 @@
|
|||
Contribution by Griatch 2016
|
||||
|
||||
A "multidescer" is a concept from the MUSH world. It allows for
|
||||
creating, managing and switching between multiple character
|
||||
descriptions and is a way for quickly managing your look (such as when
|
||||
changing clothes) in more free-form roleplaying systems. This will also
|
||||
splitting your descriptions into arbitrary named 'sections' which you can
|
||||
then swap out at will. It is a way for quickly managing your look (such as when
|
||||
changing clothes) in more free-form roleplaying systems. This will also
|
||||
work well together with the `rpsystem` contrib.
|
||||
|
||||
This multidescer will not
|
||||
require any changes to the Character class, rather it will use the `multidescs`
|
||||
Attribute (a list) and create it if it does not exist.
|
||||
This multidescer will not require any changes to the Character class, rather it
|
||||
will use the `multidescs` Attribute (a list) and create it if it does not exist.
|
||||
It adds a new `+desc` command (where the + is optional in Evennia).
|
||||
|
||||
## Installation
|
||||
|
||||
|
|
@ -21,9 +21,59 @@ Next, look up the `at_cmdset_create` method of the `CharacterCmdSet`
|
|||
class and add a line `self.add(CmdMultiDesc())` to the end
|
||||
of it.
|
||||
|
||||
Reload the server and you should have the +desc command available (it
|
||||
Reload the server and you should have the `+desc` command available (it
|
||||
will replace the default `desc` command).
|
||||
|
||||
## Usage
|
||||
|
||||
Use the `+desc` command in-game:
|
||||
|
||||
+desc [key] - show current desc desc with <key>
|
||||
+desc <key> = <text> - add/replace desc with <key>
|
||||
+desc/list - list descriptions (abbreviated)
|
||||
+desc/list/full - list descriptions (full texts)
|
||||
+desc/edit <key> - add/edit desc <key> in line editor
|
||||
+desc/del <key> - delete desc <key>
|
||||
+desc/swap <key1>-<key2> - swap positions of <key1> and <key2> in list
|
||||
+desc/set <key> [+key+...] - set desc as default or combine multiple descs
|
||||
|
||||
As an example, you can set one description for clothing, another for your boots,
|
||||
hairstyle or whatever you like. Use `|/` to add line breaks for multi-line descriptions and
|
||||
paragraphs, as well as `|_` to enforce indentations and whitespace (we don't
|
||||
include colors in the example since they don't show in this documentation).
|
||||
|
||||
+desc base = A handsome man.|_
|
||||
+desc mood = He is cheerful, like all is going his way.|/|/
|
||||
+desc head = On his head he has a red hat with a feather in it.|_
|
||||
+desc shirt = His chest is wrapped in a white shirt. It has golden buttons.|_
|
||||
+desc pants = He wears blue pants with a dragorn pattern on them.|_
|
||||
+desc boots = His boots are dusty from the road.
|
||||
+desc/set base + mood + head + shirt + pants + boots
|
||||
|
||||
When looking at this character, you will now see (assuming auto-linebreaks)
|
||||
|
||||
A hansome man. He is cheerful, like all is going his way.
|
||||
|
||||
On his head he has a red hat with a feather in it. His chest is wrapped in a
|
||||
white shirt. It has golden buttons. He wears blue pants with a dragon
|
||||
pattern on them. His boots are dusty from the road.
|
||||
|
||||
If you now do
|
||||
|
||||
+desc mood = He looks sullen and forlorn.|/|/
|
||||
+desc shirt = His formerly white shirt is dirty and has a gash in it.|_
|
||||
|
||||
Your description will now be
|
||||
|
||||
A handsome man. He looks sullen and forlorn.
|
||||
|
||||
On his head he as a red hat with a feathre in it. His formerly white shirt
|
||||
is dirty and has a gash in it. He wears blue pants with a pattern on them.
|
||||
His boots are dusty from the road.
|
||||
|
||||
You can use any number of 'pieces' to build up your description, and can swap
|
||||
and replace them as you like and RP requires.
|
||||
|
||||
|
||||
----
|
||||
|
||||
|
|
|
|||
|
|
@ -374,9 +374,9 @@ on their own.
|
|||
_Contribution by Griatch 2016_
|
||||
|
||||
A "multidescer" is a concept from the MUSH world. It allows for
|
||||
creating, managing and switching between multiple character
|
||||
descriptions and is a way for quickly managing your look (such as when
|
||||
changing clothes) in more free-form roleplaying systems. This will also
|
||||
splitting your descriptions into arbitrary named 'sections' which you can
|
||||
then swap out at will. It is a way for quickly managing your look (such as when
|
||||
changing clothes) in more free-form roleplaying systems. This will also
|
||||
work well together with the `rpsystem` contrib.
|
||||
|
||||
[Read the documentation](./Contrib-Multidescer.md) - [Browse the Code](evennia.contrib.game_systems.multidescer)
|
||||
|
|
|
|||
|
|
@ -0,0 +1,10 @@
|
|||
```{eval-rst}
|
||||
evennia.contrib.tutorials.evadventure.ai
|
||||
===============================================
|
||||
|
||||
.. automodule:: evennia.contrib.tutorials.evadventure.ai
|
||||
:members:
|
||||
:undoc-members:
|
||||
:show-inheritance:
|
||||
|
||||
```
|
||||
|
|
@ -12,6 +12,7 @@ evennia.contrib.tutorials.evadventure
|
|||
.. toctree::
|
||||
:maxdepth: 6
|
||||
|
||||
evennia.contrib.tutorials.evadventure.ai
|
||||
evennia.contrib.tutorials.evadventure.build_techdemo
|
||||
evennia.contrib.tutorials.evadventure.build_world
|
||||
evennia.contrib.tutorials.evadventure.characters
|
||||
|
|
|
|||
|
|
@ -446,6 +446,7 @@
|
|||
</ul>
|
||||
</li>
|
||||
<li class="toctree-l4"><a class="reference internal" href="evennia.contrib.tutorials.evadventure.html">evennia.contrib.tutorials.evadventure</a><ul>
|
||||
<li class="toctree-l5"><a class="reference internal" href="evennia.contrib.tutorials.evadventure.ai.html">evennia.contrib.tutorials.evadventure.ai</a></li>
|
||||
<li class="toctree-l5"><a class="reference internal" href="evennia.contrib.tutorials.evadventure.build_techdemo.html">evennia.contrib.tutorials.evadventure.build_techdemo</a></li>
|
||||
<li class="toctree-l5"><a class="reference internal" href="evennia.contrib.tutorials.evadventure.build_world.html">evennia.contrib.tutorials.evadventure.build_world</a></li>
|
||||
<li class="toctree-l5"><a class="reference internal" href="evennia.contrib.tutorials.evadventure.characters.html">evennia.contrib.tutorials.evadventure.characters</a></li>
|
||||
|
|
|
|||
|
|
@ -146,7 +146,7 @@ skipping, reloading etc.</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.commands.default.batchprocess.CmdBatchCommands.aliases">
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['batchcmd', 'batchcommand']</em><a class="headerlink" href="#evennia.commands.default.batchprocess.CmdBatchCommands.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['batchcommand', 'batchcmd']</em><a class="headerlink" href="#evennia.commands.default.batchprocess.CmdBatchCommands.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
@ -177,7 +177,7 @@ skipping, reloading etc.</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.commands.default.batchprocess.CmdBatchCommands.search_index_entry">
|
||||
<code class="sig-name descname">search_index_entry</code><em class="property"> = {'aliases': 'batchcmd batchcommand', 'category': 'building', 'key': 'batchcommands', 'no_prefix': ' batchcmd batchcommand', 'tags': '', 'text': '\n build from batch-command file\n\n Usage:\n batchcommands[/interactive] <python.path.to.file>\n\n Switch:\n interactive - this mode will offer more control when\n executing the batch file, like stepping,\n skipping, reloading etc.\n\n Runs batches of commands from a batch-cmd text file (*.ev).\n\n '}</em><a class="headerlink" href="#evennia.commands.default.batchprocess.CmdBatchCommands.search_index_entry" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">search_index_entry</code><em class="property"> = {'aliases': 'batchcommand batchcmd', 'category': 'building', 'key': 'batchcommands', 'no_prefix': ' batchcommand batchcmd', 'tags': '', 'text': '\n build from batch-command file\n\n Usage:\n batchcommands[/interactive] <python.path.to.file>\n\n Switch:\n interactive - this mode will offer more control when\n executing the batch file, like stepping,\n skipping, reloading etc.\n\n Runs batches of commands from a batch-cmd text file (*.ev).\n\n '}</em><a class="headerlink" href="#evennia.commands.default.batchprocess.CmdBatchCommands.search_index_entry" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
</dd></dl>
|
||||
|
|
|
|||
|
|
@ -600,7 +600,7 @@ You can specify the /force switch to bypass this confirmation.</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.commands.default.building.CmdDestroy.aliases">
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['@del', '@delete']</em><a class="headerlink" href="#evennia.commands.default.building.CmdDestroy.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['@delete', '@del']</em><a class="headerlink" href="#evennia.commands.default.building.CmdDestroy.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
@ -641,7 +641,7 @@ You can specify the /force switch to bypass this confirmation.</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.commands.default.building.CmdDestroy.search_index_entry">
|
||||
<code class="sig-name descname">search_index_entry</code><em class="property"> = {'aliases': '@del @delete', 'category': 'building', 'key': '@destroy', 'no_prefix': 'destroy del delete', 'tags': '', 'text': '\n permanently delete objects\n\n Usage:\n destroy[/switches] [obj, obj2, obj3, [dbref-dbref], ...]\n\n Switches:\n override - The destroy command will usually avoid accidentally\n destroying account objects. This switch overrides this safety.\n force - destroy without confirmation.\n Examples:\n destroy house, roof, door, 44-78\n destroy 5-10, flower, 45\n destroy/force north\n\n Destroys one or many objects. If dbrefs are used, a range to delete can be\n given, e.g. 4-10. Also the end points will be deleted. This command\n displays a confirmation before destroying, to make sure of your choice.\n You can specify the /force switch to bypass this confirmation.\n '}</em><a class="headerlink" href="#evennia.commands.default.building.CmdDestroy.search_index_entry" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">search_index_entry</code><em class="property"> = {'aliases': '@delete @del', 'category': 'building', 'key': '@destroy', 'no_prefix': 'destroy delete del', 'tags': '', 'text': '\n permanently delete objects\n\n Usage:\n destroy[/switches] [obj, obj2, obj3, [dbref-dbref], ...]\n\n Switches:\n override - The destroy command will usually avoid accidentally\n destroying account objects. This switch overrides this safety.\n force - destroy without confirmation.\n Examples:\n destroy house, roof, door, 44-78\n destroy 5-10, flower, 45\n destroy/force north\n\n Destroys one or many objects. If dbrefs are used, a range to delete can be\n given, e.g. 4-10. Also the end points will be deleted. This command\n displays a confirmation before destroying, to make sure of your choice.\n You can specify the /force switch to bypass this confirmation.\n '}</em><a class="headerlink" href="#evennia.commands.default.building.CmdDestroy.search_index_entry" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
</dd></dl>
|
||||
|
|
@ -1353,7 +1353,7 @@ server settings.</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.commands.default.building.CmdTypeclass.aliases">
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['@typeclasses', '@update', '@parent', '@swap', '@type']</em><a class="headerlink" href="#evennia.commands.default.building.CmdTypeclass.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['@update', '@type', '@parent', '@swap', '@typeclasses']</em><a class="headerlink" href="#evennia.commands.default.building.CmdTypeclass.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
@ -1384,7 +1384,7 @@ server settings.</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.commands.default.building.CmdTypeclass.search_index_entry">
|
||||
<code class="sig-name descname">search_index_entry</code><em class="property"> = {'aliases': '@typeclasses @update @parent @swap @type', 'category': 'building', 'key': '@typeclass', 'no_prefix': 'typeclass typeclasses update parent swap type', 'tags': '', 'text': "\n set or change an object's typeclass\n\n Usage:\n typeclass[/switch] <object> [= typeclass.path]\n typeclass/prototype <object> = prototype_key\n\n typeclasses or typeclass/list/show [typeclass.path]\n swap - this is a shorthand for using /force/reset flags.\n update - this is a shorthand for using the /force/reload flag.\n\n Switch:\n show, examine - display the current typeclass of object (default) or, if\n given a typeclass path, show the docstring of that typeclass.\n update - *only* re-run at_object_creation on this object\n meaning locks or other properties set later may remain.\n reset - clean out *all* the attributes and properties on the\n object - basically making this a new clean object. This will also\n reset cmdsets!\n force - change to the typeclass also if the object\n already has a typeclass of the same name.\n list - show available typeclasses. Only typeclasses in modules actually\n imported or used from somewhere in the code will show up here\n (those typeclasses are still available if you know the path)\n prototype - clean and overwrite the object with the specified\n prototype key - effectively making a whole new object.\n\n Example:\n type button = examples.red_button.RedButton\n type/prototype button=a red button\n\n If the typeclass_path is not given, the current object's typeclass is\n assumed.\n\n View or set an object's typeclass. If setting, the creation hooks of the\n new typeclass will be run on the object. If you have clashing properties on\n the old class, use /reset. By default you are protected from changing to a\n typeclass of the same name as the one you already have - use /force to\n override this protection.\n\n The given typeclass must be identified by its location using python\n dot-notation pointing to the correct module and class. If no typeclass is\n given (or a wrong typeclass is given). Errors in the path or new typeclass\n will lead to the old typeclass being kept. The location of the typeclass\n module is searched from the default typeclass directory, as defined in the\n server settings.\n\n "}</em><a class="headerlink" href="#evennia.commands.default.building.CmdTypeclass.search_index_entry" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">search_index_entry</code><em class="property"> = {'aliases': '@update @type @parent @swap @typeclasses', 'category': 'building', 'key': '@typeclass', 'no_prefix': 'typeclass update type parent swap typeclasses', 'tags': '', 'text': "\n set or change an object's typeclass\n\n Usage:\n typeclass[/switch] <object> [= typeclass.path]\n typeclass/prototype <object> = prototype_key\n\n typeclasses or typeclass/list/show [typeclass.path]\n swap - this is a shorthand for using /force/reset flags.\n update - this is a shorthand for using the /force/reload flag.\n\n Switch:\n show, examine - display the current typeclass of object (default) or, if\n given a typeclass path, show the docstring of that typeclass.\n update - *only* re-run at_object_creation on this object\n meaning locks or other properties set later may remain.\n reset - clean out *all* the attributes and properties on the\n object - basically making this a new clean object. This will also\n reset cmdsets!\n force - change to the typeclass also if the object\n already has a typeclass of the same name.\n list - show available typeclasses. Only typeclasses in modules actually\n imported or used from somewhere in the code will show up here\n (those typeclasses are still available if you know the path)\n prototype - clean and overwrite the object with the specified\n prototype key - effectively making a whole new object.\n\n Example:\n type button = examples.red_button.RedButton\n type/prototype button=a red button\n\n If the typeclass_path is not given, the current object's typeclass is\n assumed.\n\n View or set an object's typeclass. If setting, the creation hooks of the\n new typeclass will be run on the object. If you have clashing properties on\n the old class, use /reset. By default you are protected from changing to a\n typeclass of the same name as the one you already have - use /force to\n override this protection.\n\n The given typeclass must be identified by its location using python\n dot-notation pointing to the correct module and class. If no typeclass is\n given (or a wrong typeclass is given). Errors in the path or new typeclass\n will lead to the old typeclass being kept. The location of the typeclass\n module is searched from the default typeclass directory, as defined in the\n server settings.\n\n "}</em><a class="headerlink" href="#evennia.commands.default.building.CmdTypeclass.search_index_entry" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
</dd></dl>
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
|
|
@ -606,7 +606,7 @@ placing it in their inventory.</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.commands.default.general.CmdSay.aliases">
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ["'", '"']</em><a class="headerlink" href="#evennia.commands.default.general.CmdSay.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['"', "'"]</em><a class="headerlink" href="#evennia.commands.default.general.CmdSay.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
@ -637,7 +637,7 @@ placing it in their inventory.</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.commands.default.general.CmdSay.search_index_entry">
|
||||
<code class="sig-name descname">search_index_entry</code><em class="property"> = {'aliases': '\' "', 'category': 'general', 'key': 'say', 'no_prefix': ' \' "', 'tags': '', 'text': '\n speak as your character\n\n Usage:\n say <message>\n\n Talk to those in your current location.\n '}</em><a class="headerlink" href="#evennia.commands.default.general.CmdSay.search_index_entry" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">search_index_entry</code><em class="property"> = {'aliases': '" \'', 'category': 'general', 'key': 'say', 'no_prefix': ' " \'', 'tags': '', 'text': '\n speak as your character\n\n Usage:\n say <message>\n\n Talk to those in your current location.\n '}</em><a class="headerlink" href="#evennia.commands.default.general.CmdSay.search_index_entry" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
</dd></dl>
|
||||
|
|
@ -781,7 +781,7 @@ which permission groups you are a member of.</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.commands.default.general.CmdAccess.aliases">
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['groups', 'hierarchy']</em><a class="headerlink" href="#evennia.commands.default.general.CmdAccess.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['hierarchy', 'groups']</em><a class="headerlink" href="#evennia.commands.default.general.CmdAccess.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
@ -812,7 +812,7 @@ which permission groups you are a member of.</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.commands.default.general.CmdAccess.search_index_entry">
|
||||
<code class="sig-name descname">search_index_entry</code><em class="property"> = {'aliases': 'groups hierarchy', 'category': 'general', 'key': 'access', 'no_prefix': ' groups hierarchy', 'tags': '', 'text': '\n show your current game access\n\n Usage:\n access\n\n This command shows you the permission hierarchy and\n which permission groups you are a member of.\n '}</em><a class="headerlink" href="#evennia.commands.default.general.CmdAccess.search_index_entry" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">search_index_entry</code><em class="property"> = {'aliases': 'hierarchy groups', 'category': 'general', 'key': 'access', 'no_prefix': ' hierarchy groups', 'tags': '', 'text': '\n show your current game access\n\n Usage:\n access\n\n This command shows you the permission hierarchy and\n which permission groups you are a member of.\n '}</em><a class="headerlink" href="#evennia.commands.default.general.CmdAccess.search_index_entry" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
</dd></dl>
|
||||
|
|
|
|||
|
|
@ -963,7 +963,7 @@ main test suite started with</p>
|
|||
<p>Test the batch processor.</p>
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.commands.default.tests.TestBatchProcess.red_button">
|
||||
<code class="sig-name descname">red_button</code><em class="property"> = <module 'evennia.contrib.tutorials.red_button.red_button' from '/tmp/tmpi99fu0ku/a772e01e07bc7813a3c1c0d2e1d851c52a6ac692/evennia/contrib/tutorials/red_button/red_button.py'></em><a class="headerlink" href="#evennia.commands.default.tests.TestBatchProcess.red_button" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">red_button</code><em class="property"> = <module 'evennia.contrib.tutorials.red_button.red_button' from '/tmp/tmppiaiisc7/8efd6b52f3baf6dbefdf6e8265878b5e5828d092/evennia/contrib/tutorials/red_button/red_button.py'></em><a class="headerlink" href="#evennia.commands.default.tests.TestBatchProcess.red_button" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py method">
|
||||
|
|
|
|||
|
|
@ -130,7 +130,7 @@ connect “account name” “pass word”</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.commands.default.unloggedin.CmdUnconnectedConnect.aliases">
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['co', 'con', 'conn']</em><a class="headerlink" href="#evennia.commands.default.unloggedin.CmdUnconnectedConnect.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['con', 'co', 'conn']</em><a class="headerlink" href="#evennia.commands.default.unloggedin.CmdUnconnectedConnect.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
@ -165,7 +165,7 @@ there is no object yet before the account has logged in)</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.commands.default.unloggedin.CmdUnconnectedConnect.search_index_entry">
|
||||
<code class="sig-name descname">search_index_entry</code><em class="property"> = {'aliases': 'co con conn', 'category': 'general', 'key': 'connect', 'no_prefix': ' co con conn', 'tags': '', 'text': '\n connect to the game\n\n Usage (at login screen):\n connect accountname password\n connect "account name" "pass word"\n\n Use the create command to first create an account before logging in.\n\n If you have spaces in your name, enclose it in double quotes.\n '}</em><a class="headerlink" href="#evennia.commands.default.unloggedin.CmdUnconnectedConnect.search_index_entry" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">search_index_entry</code><em class="property"> = {'aliases': 'con co conn', 'category': 'general', 'key': 'connect', 'no_prefix': ' con co conn', 'tags': '', 'text': '\n connect to the game\n\n Usage (at login screen):\n connect accountname password\n connect "account name" "pass word"\n\n Use the create command to first create an account before logging in.\n\n If you have spaces in your name, enclose it in double quotes.\n '}</em><a class="headerlink" href="#evennia.commands.default.unloggedin.CmdUnconnectedConnect.search_index_entry" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
</dd></dl>
|
||||
|
|
@ -189,7 +189,7 @@ create “account name” “pass word”</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.commands.default.unloggedin.CmdUnconnectedCreate.aliases">
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['cre', 'cr']</em><a class="headerlink" href="#evennia.commands.default.unloggedin.CmdUnconnectedCreate.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['cr', 'cre']</em><a class="headerlink" href="#evennia.commands.default.unloggedin.CmdUnconnectedCreate.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
@ -226,7 +226,7 @@ create “account name” “pass word”</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.commands.default.unloggedin.CmdUnconnectedCreate.search_index_entry">
|
||||
<code class="sig-name descname">search_index_entry</code><em class="property"> = {'aliases': 'cre cr', 'category': 'general', 'key': 'create', 'no_prefix': ' cre cr', 'tags': '', 'text': '\n create a new account account\n\n Usage (at login screen):\n create <accountname> <password>\n create "account name" "pass word"\n\n This creates a new account account.\n\n If you have spaces in your name, enclose it in double quotes.\n '}</em><a class="headerlink" href="#evennia.commands.default.unloggedin.CmdUnconnectedCreate.search_index_entry" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">search_index_entry</code><em class="property"> = {'aliases': 'cr cre', 'category': 'general', 'key': 'create', 'no_prefix': ' cr cre', 'tags': '', 'text': '\n create a new account account\n\n Usage (at login screen):\n create <accountname> <password>\n create "account name" "pass word"\n\n This creates a new account account.\n\n If you have spaces in your name, enclose it in double quotes.\n '}</em><a class="headerlink" href="#evennia.commands.default.unloggedin.CmdUnconnectedCreate.search_index_entry" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
</dd></dl>
|
||||
|
|
|
|||
|
|
@ -147,7 +147,7 @@ the module given by settings.CONNECTION_SCREEN_MODULE.</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.base_systems.email_login.email_login.CmdUnconnectedConnect.aliases">
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['co', 'con', 'conn']</em><a class="headerlink" href="#evennia.contrib.base_systems.email_login.email_login.CmdUnconnectedConnect.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['con', 'co', 'conn']</em><a class="headerlink" href="#evennia.contrib.base_systems.email_login.email_login.CmdUnconnectedConnect.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
@ -177,7 +177,7 @@ there is no object yet before the account has logged in)</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.base_systems.email_login.email_login.CmdUnconnectedConnect.search_index_entry">
|
||||
<code class="sig-name descname">search_index_entry</code><em class="property"> = {'aliases': 'co con conn', 'category': 'general', 'key': 'connect', 'no_prefix': ' co con conn', 'tags': '', 'text': '\n Connect to the game.\n\n Usage (at login screen):\n connect <email> <password>\n\n Use the create command to first create an account before logging in.\n '}</em><a class="headerlink" href="#evennia.contrib.base_systems.email_login.email_login.CmdUnconnectedConnect.search_index_entry" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">search_index_entry</code><em class="property"> = {'aliases': 'con co conn', 'category': 'general', 'key': 'connect', 'no_prefix': ' con co conn', 'tags': '', 'text': '\n Connect to the game.\n\n Usage (at login screen):\n connect <email> <password>\n\n Use the create command to first create an account before logging in.\n '}</em><a class="headerlink" href="#evennia.contrib.base_systems.email_login.email_login.CmdUnconnectedConnect.search_index_entry" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
</dd></dl>
|
||||
|
|
@ -199,7 +199,7 @@ there is no object yet before the account has logged in)</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.base_systems.email_login.email_login.CmdUnconnectedCreate.aliases">
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['cre', 'cr']</em><a class="headerlink" href="#evennia.contrib.base_systems.email_login.email_login.CmdUnconnectedCreate.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['cr', 'cre']</em><a class="headerlink" href="#evennia.contrib.base_systems.email_login.email_login.CmdUnconnectedCreate.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
@ -235,7 +235,7 @@ name enclosed in quotes:</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.base_systems.email_login.email_login.CmdUnconnectedCreate.search_index_entry">
|
||||
<code class="sig-name descname">search_index_entry</code><em class="property"> = {'aliases': 'cre cr', 'category': 'general', 'key': 'create', 'no_prefix': ' cre cr', 'tags': '', 'text': '\n Create a new account.\n\n Usage (at login screen):\n create "accountname" <email> <password>\n\n This creates a new account account.\n\n '}</em><a class="headerlink" href="#evennia.contrib.base_systems.email_login.email_login.CmdUnconnectedCreate.search_index_entry" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">search_index_entry</code><em class="property"> = {'aliases': 'cr cre', 'category': 'general', 'key': 'create', 'no_prefix': ' cr cre', 'tags': '', 'text': '\n Create a new account.\n\n Usage (at login screen):\n create "accountname" <email> <password>\n\n This creates a new account account.\n\n '}</em><a class="headerlink" href="#evennia.contrib.base_systems.email_login.email_login.CmdUnconnectedCreate.search_index_entry" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
</dd></dl>
|
||||
|
|
|
|||
|
|
@ -124,7 +124,7 @@
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.base_systems.ingame_python.commands.CmdCallback.aliases">
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['@callback', '@calls', '@callbacks']</em><a class="headerlink" href="#evennia.contrib.base_systems.ingame_python.commands.CmdCallback.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['@callback', '@callbacks', '@calls']</em><a class="headerlink" href="#evennia.contrib.base_systems.ingame_python.commands.CmdCallback.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
@ -205,7 +205,7 @@ on user permission.</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.base_systems.ingame_python.commands.CmdCallback.search_index_entry">
|
||||
<code class="sig-name descname">search_index_entry</code><em class="property"> = {'aliases': '@callback @calls @callbacks', 'category': 'building', 'key': '@call', 'no_prefix': 'call callback calls callbacks', 'tags': '', 'text': '\n Command to edit callbacks.\n '}</em><a class="headerlink" href="#evennia.contrib.base_systems.ingame_python.commands.CmdCallback.search_index_entry" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">search_index_entry</code><em class="property"> = {'aliases': '@callback @callbacks @calls', 'category': 'building', 'key': '@call', 'no_prefix': 'call callback callbacks calls', 'tags': '', 'text': '\n Command to edit callbacks.\n '}</em><a class="headerlink" href="#evennia.contrib.base_systems.ingame_python.commands.CmdCallback.search_index_entry" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
</dd></dl>
|
||||
|
|
|
|||
|
|
@ -219,7 +219,7 @@ the operation will be general or on the room.</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.full_systems.evscaperoom.commands.CmdGiveUp.aliases">
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['quit', 'q', 'chicken out', 'abort']</em><a class="headerlink" href="#evennia.contrib.full_systems.evscaperoom.commands.CmdGiveUp.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['q', 'quit', 'chicken out', 'abort']</em><a class="headerlink" href="#evennia.contrib.full_systems.evscaperoom.commands.CmdGiveUp.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py method">
|
||||
|
|
@ -243,7 +243,7 @@ set in self.parse())</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.full_systems.evscaperoom.commands.CmdGiveUp.search_index_entry">
|
||||
<code class="sig-name descname">search_index_entry</code><em class="property"> = {'aliases': 'quit q chicken out abort', 'category': 'evscaperoom', 'key': 'give up', 'no_prefix': ' quit q chicken out abort', 'tags': '', 'text': '\n Give up\n\n Usage:\n give up\n\n Abandons your attempts at escaping and of ever winning the pie-eating contest.\n\n '}</em><a class="headerlink" href="#evennia.contrib.full_systems.evscaperoom.commands.CmdGiveUp.search_index_entry" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">search_index_entry</code><em class="property"> = {'aliases': 'q quit chicken out abort', 'category': 'evscaperoom', 'key': 'give up', 'no_prefix': ' q quit chicken out abort', 'tags': '', 'text': '\n Give up\n\n Usage:\n give up\n\n Abandons your attempts at escaping and of ever winning the pie-eating contest.\n\n '}</em><a class="headerlink" href="#evennia.contrib.full_systems.evscaperoom.commands.CmdGiveUp.search_index_entry" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
</dd></dl>
|
||||
|
|
@ -379,7 +379,7 @@ shout</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.full_systems.evscaperoom.commands.CmdSpeak.aliases">
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['whisper', ';', 'shout']</em><a class="headerlink" href="#evennia.contrib.full_systems.evscaperoom.commands.CmdSpeak.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = [';', 'whisper', 'shout']</em><a class="headerlink" href="#evennia.contrib.full_systems.evscaperoom.commands.CmdSpeak.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
@ -408,7 +408,7 @@ set in self.parse())</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.full_systems.evscaperoom.commands.CmdSpeak.search_index_entry">
|
||||
<code class="sig-name descname">search_index_entry</code><em class="property"> = {'aliases': 'whisper ; shout', 'category': 'general', 'key': 'say', 'no_prefix': ' whisper ; shout', 'tags': '', 'text': '\n Perform an communication action.\n\n Usage:\n say <text>\n whisper\n shout\n\n '}</em><a class="headerlink" href="#evennia.contrib.full_systems.evscaperoom.commands.CmdSpeak.search_index_entry" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">search_index_entry</code><em class="property"> = {'aliases': '; whisper shout', 'category': 'general', 'key': 'say', 'no_prefix': ' ; whisper shout', 'tags': '', 'text': '\n Perform an communication action.\n\n Usage:\n say <text>\n whisper\n shout\n\n '}</em><a class="headerlink" href="#evennia.contrib.full_systems.evscaperoom.commands.CmdSpeak.search_index_entry" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
</dd></dl>
|
||||
|
|
@ -498,7 +498,7 @@ looks and what actions is available.</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.full_systems.evscaperoom.commands.CmdFocus.aliases">
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['unfocus', 'ex', 'e', 'examine']</em><a class="headerlink" href="#evennia.contrib.full_systems.evscaperoom.commands.CmdFocus.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['ex', 'e', 'unfocus', 'examine']</em><a class="headerlink" href="#evennia.contrib.full_systems.evscaperoom.commands.CmdFocus.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
@ -527,7 +527,7 @@ set in self.parse())</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.full_systems.evscaperoom.commands.CmdFocus.search_index_entry">
|
||||
<code class="sig-name descname">search_index_entry</code><em class="property"> = {'aliases': 'unfocus ex e examine', 'category': 'evscaperoom', 'key': 'focus', 'no_prefix': ' unfocus ex e examine', 'tags': '', 'text': '\n Focus your attention on a target.\n\n Usage:\n focus <obj>\n\n Once focusing on an object, use look to get more information about how it\n looks and what actions is available.\n\n '}</em><a class="headerlink" href="#evennia.contrib.full_systems.evscaperoom.commands.CmdFocus.search_index_entry" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">search_index_entry</code><em class="property"> = {'aliases': 'ex e unfocus examine', 'category': 'evscaperoom', 'key': 'focus', 'no_prefix': ' ex e unfocus examine', 'tags': '', 'text': '\n Focus your attention on a target.\n\n Usage:\n focus <obj>\n\n Once focusing on an object, use look to get more information about how it\n looks and what actions is available.\n\n '}</em><a class="headerlink" href="#evennia.contrib.full_systems.evscaperoom.commands.CmdFocus.search_index_entry" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
</dd></dl>
|
||||
|
|
@ -634,7 +634,7 @@ set in self.parse())</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.full_systems.evscaperoom.commands.CmdRerouter.aliases">
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['@open', '@dig']</em><a class="headerlink" href="#evennia.contrib.full_systems.evscaperoom.commands.CmdRerouter.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['@dig', '@open']</em><a class="headerlink" href="#evennia.contrib.full_systems.evscaperoom.commands.CmdRerouter.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py method">
|
||||
|
|
@ -657,7 +657,7 @@ to all the variables defined therein.</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.full_systems.evscaperoom.commands.CmdRerouter.search_index_entry">
|
||||
<code class="sig-name descname">search_index_entry</code><em class="property"> = {'aliases': '@open @dig', 'category': 'general', 'key': 'open', 'no_prefix': ' open dig', 'tags': '', 'text': '\n Interact with an object in focus.\n\n Usage:\n <action> [arg]\n\n '}</em><a class="headerlink" href="#evennia.contrib.full_systems.evscaperoom.commands.CmdRerouter.search_index_entry" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">search_index_entry</code><em class="property"> = {'aliases': '@dig @open', 'category': 'general', 'key': 'open', 'no_prefix': ' dig open', 'tags': '', 'text': '\n Interact with an object in focus.\n\n Usage:\n <action> [arg]\n\n '}</em><a class="headerlink" href="#evennia.contrib.full_systems.evscaperoom.commands.CmdRerouter.search_index_entry" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
</dd></dl>
|
||||
|
|
|
|||
|
|
@ -753,7 +753,7 @@ try to influence the other part in the deal.</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.game_systems.barter.barter.CmdStatus.aliases">
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['deal', 'offers']</em><a class="headerlink" href="#evennia.contrib.game_systems.barter.barter.CmdStatus.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['offers', 'deal']</em><a class="headerlink" href="#evennia.contrib.game_systems.barter.barter.CmdStatus.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
@ -779,7 +779,7 @@ try to influence the other part in the deal.</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.game_systems.barter.barter.CmdStatus.search_index_entry">
|
||||
<code class="sig-name descname">search_index_entry</code><em class="property"> = {'aliases': 'deal offers', 'category': 'trading', 'key': 'status', 'no_prefix': ' deal offers', 'tags': '', 'text': "\n show a list of the current deal\n\n Usage:\n status\n deal\n offers\n\n Shows the currently suggested offers on each sides of the deal. To\n accept the current deal, use the 'accept' command. Use 'offer' to\n change your deal. You might also want to use 'say', 'emote' etc to\n try to influence the other part in the deal.\n "}</em><a class="headerlink" href="#evennia.contrib.game_systems.barter.barter.CmdStatus.search_index_entry" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">search_index_entry</code><em class="property"> = {'aliases': 'offers deal', 'category': 'trading', 'key': 'status', 'no_prefix': ' offers deal', 'tags': '', 'text': "\n show a list of the current deal\n\n Usage:\n status\n deal\n offers\n\n Shows the currently suggested offers on each sides of the deal. To\n accept the current deal, use the 'accept' command. Use 'offer' to\n change your deal. You might also want to use 'say', 'emote' etc to\n try to influence the other part in the deal.\n "}</em><a class="headerlink" href="#evennia.contrib.game_systems.barter.barter.CmdStatus.search_index_entry" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
</dd></dl>
|
||||
|
|
|
|||
|
|
@ -430,7 +430,7 @@ there is no room above/below you, your movement will fail.</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.grid.xyzgrid.commands.CmdFlyAndDive.aliases">
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['fly', 'dive']</em><a class="headerlink" href="#evennia.contrib.grid.xyzgrid.commands.CmdFlyAndDive.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['dive', 'fly']</em><a class="headerlink" href="#evennia.contrib.grid.xyzgrid.commands.CmdFlyAndDive.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py method">
|
||||
|
|
@ -453,7 +453,7 @@ to all the variables defined therein.</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.grid.xyzgrid.commands.CmdFlyAndDive.search_index_entry">
|
||||
<code class="sig-name descname">search_index_entry</code><em class="property"> = {'aliases': 'fly dive', 'category': 'general', 'key': 'fly or dive', 'no_prefix': ' fly dive', 'tags': '', 'text': '\n Fly or Dive up and down.\n\n Usage:\n fly\n dive\n\n Will fly up one room or dive down one room at your current position. If\n there is no room above/below you, your movement will fail.\n\n '}</em><a class="headerlink" href="#evennia.contrib.grid.xyzgrid.commands.CmdFlyAndDive.search_index_entry" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">search_index_entry</code><em class="property"> = {'aliases': 'dive fly', 'category': 'general', 'key': 'fly or dive', 'no_prefix': ' dive fly', 'tags': '', 'text': '\n Fly or Dive up and down.\n\n Usage:\n fly\n dive\n\n Will fly up one room or dive down one room at your current position. If\n there is no room above/below you, your movement will fail.\n\n '}</em><a class="headerlink" href="#evennia.contrib.grid.xyzgrid.commands.CmdFlyAndDive.search_index_entry" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
</dd></dl>
|
||||
|
|
|
|||
|
|
@ -431,6 +431,7 @@ useful but are deemed too game-specific to go into the core library.</p>
|
|||
</ul>
|
||||
</li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="evennia.contrib.tutorials.evadventure.html">evennia.contrib.tutorials.evadventure</a><ul>
|
||||
<li class="toctree-l3"><a class="reference internal" href="evennia.contrib.tutorials.evadventure.ai.html">evennia.contrib.tutorials.evadventure.ai</a></li>
|
||||
<li class="toctree-l3"><a class="reference internal" href="evennia.contrib.tutorials.evadventure.build_techdemo.html">evennia.contrib.tutorials.evadventure.build_techdemo</a></li>
|
||||
<li class="toctree-l3"><a class="reference internal" href="evennia.contrib.tutorials.evadventure.build_world.html">evennia.contrib.tutorials.evadventure.build_world</a></li>
|
||||
<li class="toctree-l3"><a class="reference internal" href="evennia.contrib.tutorials.evadventure.characters.html">evennia.contrib.tutorials.evadventure.characters</a></li>
|
||||
|
|
|
|||
|
|
@ -334,7 +334,7 @@ everyone but the person rolling.</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.rpg.dice.dice.CmdDice.aliases">
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['roll', '@dice']</em><a class="headerlink" href="#evennia.contrib.rpg.dice.dice.CmdDice.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['@dice', 'roll']</em><a class="headerlink" href="#evennia.contrib.rpg.dice.dice.CmdDice.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
@ -360,7 +360,7 @@ everyone but the person rolling.</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.rpg.dice.dice.CmdDice.search_index_entry">
|
||||
<code class="sig-name descname">search_index_entry</code><em class="property"> = {'aliases': 'roll @dice', 'category': 'general', 'key': 'dice', 'no_prefix': ' roll dice', 'tags': '', 'text': "\n roll dice\n\n Usage:\n dice[/switch] <nr>d<sides> [modifier] [success condition]\n\n Switch:\n hidden - tell the room the roll is being done, but don't show the result\n secret - don't inform the room about neither roll nor result\n\n Examples:\n dice 3d6 + 4\n dice 1d100 - 2 < 50\n\n This will roll the given number of dice with given sides and modifiers.\n So e.g. 2d6 + 3 means to 'roll a 6-sided die 2 times and add the result,\n then add 3 to the total'.\n Accepted modifiers are +, -, * and /.\n A success condition is given as normal Python conditionals\n (<,>,<=,>=,==,!=). So e.g. 2d6 + 3 > 10 means that the roll will succeed\n only if the final result is above 8. If a success condition is given, the\n outcome (pass/fail) will be echoed along with how much it succeeded/failed\n with. The hidden/secret switches will hide all or parts of the roll from\n everyone but the person rolling.\n "}</em><a class="headerlink" href="#evennia.contrib.rpg.dice.dice.CmdDice.search_index_entry" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">search_index_entry</code><em class="property"> = {'aliases': '@dice roll', 'category': 'general', 'key': 'dice', 'no_prefix': ' dice roll', 'tags': '', 'text': "\n roll dice\n\n Usage:\n dice[/switch] <nr>d<sides> [modifier] [success condition]\n\n Switch:\n hidden - tell the room the roll is being done, but don't show the result\n secret - don't inform the room about neither roll nor result\n\n Examples:\n dice 3d6 + 4\n dice 1d100 - 2 < 50\n\n This will roll the given number of dice with given sides and modifiers.\n So e.g. 2d6 + 3 means to 'roll a 6-sided die 2 times and add the result,\n then add 3 to the total'.\n Accepted modifiers are +, -, * and /.\n A success condition is given as normal Python conditionals\n (<,>,<=,>=,==,!=). So e.g. 2d6 + 3 > 10 means that the roll will succeed\n only if the final result is above 8. If a success condition is given, the\n outcome (pass/fail) will be echoed along with how much it succeeded/failed\n with. The hidden/secret switches will hide all or parts of the roll from\n everyone but the person rolling.\n "}</em><a class="headerlink" href="#evennia.contrib.rpg.dice.dice.CmdDice.search_index_entry" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
</dd></dl>
|
||||
|
|
|
|||
|
|
@ -709,7 +709,7 @@ a different language.</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.rpg.rpsystem.rpsystem.CmdSay.aliases">
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ["'", '"']</em><a class="headerlink" href="#evennia.contrib.rpg.rpsystem.rpsystem.CmdSay.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['"', "'"]</em><a class="headerlink" href="#evennia.contrib.rpg.rpsystem.rpsystem.CmdSay.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
@ -740,7 +740,7 @@ a different language.</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.rpg.rpsystem.rpsystem.CmdSay.search_index_entry">
|
||||
<code class="sig-name descname">search_index_entry</code><em class="property"> = {'aliases': '\' "', 'category': 'general', 'key': 'say', 'no_prefix': ' \' "', 'tags': '', 'text': '\n speak as your character\n\n Usage:\n say <message>\n\n Talk to those in your current location.\n '}</em><a class="headerlink" href="#evennia.contrib.rpg.rpsystem.rpsystem.CmdSay.search_index_entry" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">search_index_entry</code><em class="property"> = {'aliases': '" \'', 'category': 'general', 'key': 'say', 'no_prefix': ' " \'', 'tags': '', 'text': '\n speak as your character\n\n Usage:\n say <message>\n\n Talk to those in your current location.\n '}</em><a class="headerlink" href="#evennia.contrib.rpg.rpsystem.rpsystem.CmdSay.search_index_entry" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
</dd></dl>
|
||||
|
|
|
|||
312
docs/2.x/api/evennia.contrib.tutorials.evadventure.ai.html
Normal file
312
docs/2.x/api/evennia.contrib.tutorials.evadventure.ai.html
Normal file
|
|
@ -0,0 +1,312 @@
|
|||
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.17.1: http://docutils.sourceforge.net/" />
|
||||
|
||||
<title>evennia.contrib.tutorials.evadventure.ai — Evennia 2.x documentation</title>
|
||||
<link rel="stylesheet" href="../_static/nature.css" type="text/css" />
|
||||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||||
<script id="documentation_options" data-url_root="../" src="../_static/documentation_options.js"></script>
|
||||
<script src="../_static/jquery.js"></script>
|
||||
<script src="../_static/underscore.js"></script>
|
||||
<script src="../_static/doctools.js"></script>
|
||||
<script src="../_static/language_data.js"></script>
|
||||
<link rel="shortcut icon" href="../_static/favicon.ico"/>
|
||||
<link rel="index" title="Index" href="../genindex.html" />
|
||||
<link rel="search" title="Search" href="../search.html" />
|
||||
<link rel="next" title="evennia.contrib.tutorials.evadventure.build_techdemo" href="evennia.contrib.tutorials.evadventure.build_techdemo.html" />
|
||||
<link rel="prev" title="evennia.contrib.tutorials.evadventure" href="evennia.contrib.tutorials.evadventure.html" />
|
||||
</head><body>
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="related" role="navigation" aria-label="related navigation">
|
||||
<h3>Navigation</h3>
|
||||
<ul>
|
||||
<li class="right" style="margin-right: 10px">
|
||||
<a href="../genindex.html" title="General Index"
|
||||
accesskey="I">index</a></li>
|
||||
<li class="right" >
|
||||
<a href="../py-modindex.html" title="Python Module Index"
|
||||
>modules</a> |</li>
|
||||
<li class="right" >
|
||||
<a href="evennia.contrib.tutorials.evadventure.build_techdemo.html" title="evennia.contrib.tutorials.evadventure.build_techdemo"
|
||||
accesskey="N">next</a> |</li>
|
||||
<li class="right" >
|
||||
<a href="evennia.contrib.tutorials.evadventure.html" title="evennia.contrib.tutorials.evadventure"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 2.x</a> »</li>
|
||||
<li class="nav-item nav-item-1"><a href="../Evennia-API.html" >API Summary</a> »</li>
|
||||
<li class="nav-item nav-item-2"><a href="evennia-api.html" >evennia</a> »</li>
|
||||
<li class="nav-item nav-item-3"><a href="evennia.html" >evennia</a> »</li>
|
||||
<li class="nav-item nav-item-4"><a href="evennia.contrib.html" >evennia.contrib</a> »</li>
|
||||
<li class="nav-item nav-item-5"><a href="evennia.contrib.tutorials.html" >evennia.contrib.tutorials</a> »</li>
|
||||
<li class="nav-item nav-item-6"><a href="evennia.contrib.tutorials.evadventure.html" accesskey="U">evennia.contrib.tutorials.evadventure</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">evennia.contrib.tutorials.evadventure.ai</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="document">
|
||||
|
||||
<div class="documentwrapper">
|
||||
<div class="sphinxsidebar" role="navigation" aria-label="main navigation">
|
||||
<div class="sphinxsidebarwrapper">
|
||||
<p class="logo"><a href="../index.html">
|
||||
<img class="logo" src="../_static/evennia_logo.png" alt="Logo"/>
|
||||
</a></p>
|
||||
<div id="searchbox" style="display: none" role="search">
|
||||
<h3 id="searchlabel">Quick search</h3>
|
||||
<div class="searchformwrapper">
|
||||
<form class="search" action="../search.html" method="get">
|
||||
<input type="text" name="q" aria-labelledby="searchlabel" />
|
||||
<input type="submit" value="Go" />
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
<script>$('#searchbox').show(0);</script>
|
||||
<h4>Previous topic</h4>
|
||||
<p class="topless"><a href="evennia.contrib.tutorials.evadventure.html"
|
||||
title="previous chapter">evennia.contrib.tutorials.evadventure</a></p>
|
||||
<h4>Next topic</h4>
|
||||
<p class="topless"><a href="evennia.contrib.tutorials.evadventure.build_techdemo.html"
|
||||
title="next chapter">evennia.contrib.tutorials.evadventure.build_techdemo</a></p>
|
||||
<div role="note" aria-label="source link">
|
||||
<!--h3>This Page</h3-->
|
||||
<ul class="this-page-menu">
|
||||
<li><a href="../_sources/api/evennia.contrib.tutorials.evadventure.ai.md.txt"
|
||||
rel="nofollow">Show Page Source</a></li>
|
||||
</ul>
|
||||
</div><h3>Links</h3>
|
||||
<ul>
|
||||
<li><a href="https://www.evennia.com/docs/latest/index.html">Documentation Top</a> </li>
|
||||
<li><a href="https://www.evennia.com">Evennia Home</a> </li>
|
||||
<li><a href="https://github.com/evennia/evennia">Github</a> </li>
|
||||
<li><a href="http://games.evennia.com">Game Index</a> </li>
|
||||
<li>
|
||||
<a href="https://discord.gg/AJJpcRUhtF">Discord</a> -
|
||||
<a href="https://github.com/evennia/evennia/discussions">Discussions</a> -
|
||||
<a href="https://evennia.blogspot.com/">Blog</a>
|
||||
</li>
|
||||
</ul>
|
||||
<h3>Doc Versions</h3>
|
||||
<ul>
|
||||
|
||||
<li><a href="evennia.contrib.tutorials.evadventure.ai.html">2.x (main branch)</a></li>
|
||||
<ul>
|
||||
<li><a href="../1.3.0/index.html">1.3.0 (v1.3.0 branch)</a></li>
|
||||
|
||||
<li><a href="../0.9.5/index.html">0.9.5 (v0.9.5 branch)</a></li>
|
||||
|
||||
|
||||
</ul>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="bodywrapper">
|
||||
<div class="body" role="main">
|
||||
|
||||
<section id="module-evennia.contrib.tutorials.evadventure.ai">
|
||||
<span id="evennia-contrib-tutorials-evadventure-ai"></span><h1>evennia.contrib.tutorials.evadventure.ai<a class="headerlink" href="#module-evennia.contrib.tutorials.evadventure.ai" title="Permalink to this headline">¶</a></h1>
|
||||
<p>NPC AI module for EvAdventure (WIP)</p>
|
||||
<p>This implements a state machine for the NPCs, where it uses inputs from the game to determine what
|
||||
to do next. The AI works on the concept of being ‘ticks’, at which point, the AI will decide to move
|
||||
between different ‘states’, performing different ‘actions’ within each state until changing to
|
||||
another state. The odds of changing between states and performing actions are weighted, allowing for
|
||||
an AI agent to be more or less likely to perform certain actions.</p>
|
||||
<p>The state machine is fed a dictionary of states and their transitions, and a dictionary of available
|
||||
actions to choose between.</p>
|
||||
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="p">{</span>
|
||||
<span class="s2">"states"</span><span class="p">:</span> <span class="p">{</span>
|
||||
<span class="s2">"state1"</span><span class="p">:</span> <span class="p">{</span><span class="s2">"action1"</span><span class="p">:</span> <span class="n">odds</span><span class="p">,</span> <span class="s2">"action2"</span><span class="p">:</span> <span class="n">odds</span><span class="p">,</span> <span class="o">...</span><span class="p">},</span>
|
||||
<span class="s2">"state2"</span><span class="p">:</span> <span class="p">{</span><span class="s2">"action1"</span><span class="p">:</span> <span class="n">odds</span><span class="p">,</span> <span class="s2">"action2"</span><span class="p">:</span> <span class="n">odds</span><span class="p">,</span> <span class="o">...</span><span class="p">},</span> <span class="o">...</span>
|
||||
<span class="p">}</span>
|
||||
<span class="s2">"transition"</span><span class="p">:</span> <span class="p">{</span>
|
||||
<span class="s2">"state1"</span><span class="p">:</span> <span class="p">{</span><span class="s2">"state2"</span><span class="p">:</span> <span class="s2">"odds, "</span><span class="n">state3</span><span class="s2">": odds, ...},</span>
|
||||
<span class="s2">"state2"</span><span class="p">:</span> <span class="p">{</span><span class="s2">"state1"</span><span class="p">:</span> <span class="s2">"odds, "</span><span class="n">state3</span><span class="s2">": odds, ...}, ...</span>
|
||||
<span class="p">}</span>
|
||||
<span class="p">}</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
<p>The NPC class needs to look like this:</p>
|
||||
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="k">class</span> <span class="nc">NPC</span><span class="p">(</span><span class="n">DefaultCharacter</span><span class="p">):</span>
|
||||
|
||||
<span class="c1"># ...</span>
|
||||
|
||||
<span class="nd">@lazy_property</span>
|
||||
<span class="k">def</span> <span class="nf">ai</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
||||
<span class="k">return</span> <span class="n">AIHandler</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span>
|
||||
|
||||
<span class="k">def</span> <span class="nf">ai_roam</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">action</span><span class="p">):</span>
|
||||
<span class="c1"># perform the action within the current state ai.state</span>
|
||||
|
||||
<span class="k">def</span> <span class="nf">ai_hunt</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">action</span><span class="p">):</span>
|
||||
<span class="c1"># etc</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
<dl class="py class">
|
||||
<dt id="evennia.contrib.tutorials.evadventure.ai.AIHandler">
|
||||
<em class="property">class </em><code class="sig-prename descclassname">evennia.contrib.tutorials.evadventure.ai.</code><code class="sig-name descname">AIHandler</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">obj</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/contrib/tutorials/evadventure/ai.html#AIHandler"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.contrib.tutorials.evadventure.ai.AIHandler" title="Permalink to this definition">¶</a></dt>
|
||||
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">object</span></code></p>
|
||||
<p>AIHandler class. This should be placed on the NPC object, and will handle the state machine,
|
||||
including transitions and actions.</p>
|
||||
<p>Add to typeclass with @lazyproperty:</p>
|
||||
<blockquote>
|
||||
<div><dl>
|
||||
<dt>class NPC(DefaultCharacter):</dt><dd><p># …</p>
|
||||
<p>@lazyproperty
|
||||
def ai(self):</p>
|
||||
<blockquote>
|
||||
<div><p>return AIHandler(self)</p>
|
||||
</div></blockquote>
|
||||
</dd>
|
||||
</dl>
|
||||
</div></blockquote>
|
||||
<dl class="py method">
|
||||
<dt id="evennia.contrib.tutorials.evadventure.ai.AIHandler.__init__">
|
||||
<code class="sig-name descname">__init__</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">obj</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/contrib/tutorials/evadventure/ai.html#AIHandler.__init__"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.contrib.tutorials.evadventure.ai.AIHandler.__init__" title="Permalink to this definition">¶</a></dt>
|
||||
<dd><p>Initialize self. See help(type(self)) for accurate signature.</p>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py method">
|
||||
<dt id="evennia.contrib.tutorials.evadventure.ai.AIHandler.state">
|
||||
<em class="property">property </em><code class="sig-name descname">state</code><a class="headerlink" href="#evennia.contrib.tutorials.evadventure.ai.AIHandler.state" title="Permalink to this definition">¶</a></dt>
|
||||
<dd><p>Return the current state of the AI.</p>
|
||||
<dl class="field-list simple">
|
||||
<dt class="field-odd">Returns</dt>
|
||||
<dd class="field-odd"><p><em>str</em> – Current state of the AI.</p>
|
||||
</dd>
|
||||
</dl>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py method">
|
||||
<dt id="evennia.contrib.tutorials.evadventure.ai.AIHandler.states">
|
||||
<em class="property">property </em><code class="sig-name descname">states</code><a class="headerlink" href="#evennia.contrib.tutorials.evadventure.ai.AIHandler.states" title="Permalink to this definition">¶</a></dt>
|
||||
<dd><p>Return the states dictionary for the AI.</p>
|
||||
<dl class="field-list simple">
|
||||
<dt class="field-odd">Returns</dt>
|
||||
<dd class="field-odd"><p><em>dict</em> – States dictionary for the AI.</p>
|
||||
</dd>
|
||||
</dl>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py method">
|
||||
<dt id="evennia.contrib.tutorials.evadventure.ai.AIHandler.transitions">
|
||||
<em class="property">property </em><code class="sig-name descname">transitions</code><a class="headerlink" href="#evennia.contrib.tutorials.evadventure.ai.AIHandler.transitions" title="Permalink to this definition">¶</a></dt>
|
||||
<dd><p>Return the transitions dictionary for the AI.</p>
|
||||
<dl class="field-list simple">
|
||||
<dt class="field-odd">Returns</dt>
|
||||
<dd class="field-odd"><p><em>dict</em> – Transitions dictionary for the AI.</p>
|
||||
</dd>
|
||||
</dl>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py method">
|
||||
<dt id="evennia.contrib.tutorials.evadventure.ai.AIHandler.add_aidict">
|
||||
<code class="sig-name descname">add_aidict</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">aidict</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/contrib/tutorials/evadventure/ai.html#AIHandler.add_aidict"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.contrib.tutorials.evadventure.ai.AIHandler.add_aidict" title="Permalink to this definition">¶</a></dt>
|
||||
<dd><p>Add an AI dictionary to the AI handler.</p>
|
||||
<dl class="field-list simple">
|
||||
<dt class="field-odd">Parameters</dt>
|
||||
<dd class="field-odd"><p><strong>aidict</strong> (<em>dict</em>) – AI dictionary to add.</p>
|
||||
</dd>
|
||||
</dl>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py method">
|
||||
<dt id="evennia.contrib.tutorials.evadventure.ai.AIHandler.adjust_transition_probability">
|
||||
<code class="sig-name descname">adjust_transition_probability</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">state_start</span></em>, <em class="sig-param"><span class="n">state_end</span></em>, <em class="sig-param"><span class="n">odds</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/contrib/tutorials/evadventure/ai.html#AIHandler.adjust_transition_probability"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.contrib.tutorials.evadventure.ai.AIHandler.adjust_transition_probability" title="Permalink to this definition">¶</a></dt>
|
||||
<dd><p>Adjust the transition probability between two states.</p>
|
||||
<dl class="field-list simple">
|
||||
<dt class="field-odd">Parameters</dt>
|
||||
<dd class="field-odd"><ul class="simple">
|
||||
<li><p><strong>state_start</strong> (<em>str</em>) – State to start from.</p></li>
|
||||
<li><p><strong>state_end</strong> (<em>str</em>) – State to end at.</p></li>
|
||||
<li><p><strong>odds</strong> (<em>int</em>) – New odds for the transition.</p></li>
|
||||
</ul>
|
||||
</dd>
|
||||
</dl>
|
||||
<div class="admonition note">
|
||||
<p class="admonition-title">Note</p>
|
||||
<p>This will normalize the odds across the other transitions from the starting state.</p>
|
||||
</div>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py method">
|
||||
<dt id="evennia.contrib.tutorials.evadventure.ai.AIHandler.get_next_state">
|
||||
<code class="sig-name descname">get_next_state</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/contrib/tutorials/evadventure/ai.html#AIHandler.get_next_state"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.contrib.tutorials.evadventure.ai.AIHandler.get_next_state" title="Permalink to this definition">¶</a></dt>
|
||||
<dd><p>Get the next state for the AI.</p>
|
||||
<dl class="field-list simple">
|
||||
<dt class="field-odd">Returns</dt>
|
||||
<dd class="field-odd"><p><em>str</em> – Next state for the AI.</p>
|
||||
</dd>
|
||||
</dl>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py method">
|
||||
<dt id="evennia.contrib.tutorials.evadventure.ai.AIHandler.get_next_action">
|
||||
<code class="sig-name descname">get_next_action</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/contrib/tutorials/evadventure/ai.html#AIHandler.get_next_action"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.contrib.tutorials.evadventure.ai.AIHandler.get_next_action" title="Permalink to this definition">¶</a></dt>
|
||||
<dd><p>Get the next action for the AI within the current state.</p>
|
||||
<dl class="field-list simple">
|
||||
<dt class="field-odd">Returns</dt>
|
||||
<dd class="field-odd"><p><em>str</em> – Next action for the AI.</p>
|
||||
</dd>
|
||||
</dl>
|
||||
</dd></dl>
|
||||
|
||||
<dl class="py method">
|
||||
<dt id="evennia.contrib.tutorials.evadventure.ai.AIHandler.execute_ai">
|
||||
<code class="sig-name descname">execute_ai</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/contrib/tutorials/evadventure/ai.html#AIHandler.execute_ai"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.contrib.tutorials.evadventure.ai.AIHandler.execute_ai" title="Permalink to this definition">¶</a></dt>
|
||||
<dd><p>Execute the next ai action in the current state.</p>
|
||||
<p>This assumes that each available state exists as a method on the object, named
|
||||
ai_<state_name>, taking an optional argument of the next action to perform. The method
|
||||
will itself update the state or transition weights through this handler.</p>
|
||||
<p>Some states have in-built state transitions, via the special “change_state” action.</p>
|
||||
</dd></dl>
|
||||
|
||||
</dd></dl>
|
||||
|
||||
</section>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<div class="related" role="navigation" aria-label="related navigation">
|
||||
<h3>Navigation</h3>
|
||||
<ul>
|
||||
<li class="right" style="margin-right: 10px">
|
||||
<a href="../genindex.html" title="General Index"
|
||||
>index</a></li>
|
||||
<li class="right" >
|
||||
<a href="../py-modindex.html" title="Python Module Index"
|
||||
>modules</a> |</li>
|
||||
<li class="right" >
|
||||
<a href="evennia.contrib.tutorials.evadventure.build_techdemo.html" title="evennia.contrib.tutorials.evadventure.build_techdemo"
|
||||
>next</a> |</li>
|
||||
<li class="right" >
|
||||
<a href="evennia.contrib.tutorials.evadventure.html" title="evennia.contrib.tutorials.evadventure"
|
||||
>previous</a> |</li>
|
||||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 2.x</a> »</li>
|
||||
<li class="nav-item nav-item-1"><a href="../Evennia-API.html" >API Summary</a> »</li>
|
||||
<li class="nav-item nav-item-2"><a href="evennia-api.html" >evennia</a> »</li>
|
||||
<li class="nav-item nav-item-3"><a href="evennia.html" >evennia</a> »</li>
|
||||
<li class="nav-item nav-item-4"><a href="evennia.contrib.html" >evennia.contrib</a> »</li>
|
||||
<li class="nav-item nav-item-5"><a href="evennia.contrib.tutorials.html" >evennia.contrib.tutorials</a> »</li>
|
||||
<li class="nav-item nav-item-6"><a href="evennia.contrib.tutorials.evadventure.html" >evennia.contrib.tutorials.evadventure</a> »</li>
|
||||
<li class="nav-item nav-item-this"><a href="">evennia.contrib.tutorials.evadventure.ai</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div class="footer" role="contentinfo">
|
||||
© Copyright 2023, The Evennia developer community.
|
||||
Created using <a href="https://www.sphinx-doc.org/">Sphinx</a> 3.2.1.
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -18,7 +18,7 @@
|
|||
<link rel="index" title="Index" href="../genindex.html" />
|
||||
<link rel="search" title="Search" href="../search.html" />
|
||||
<link rel="next" title="evennia.contrib.tutorials.evadventure.build_world" href="evennia.contrib.tutorials.evadventure.build_world.html" />
|
||||
<link rel="prev" title="evennia.contrib.tutorials.evadventure" href="evennia.contrib.tutorials.evadventure.html" />
|
||||
<link rel="prev" title="evennia.contrib.tutorials.evadventure.ai" href="evennia.contrib.tutorials.evadventure.ai.html" />
|
||||
</head><body>
|
||||
|
||||
|
||||
|
|
@ -37,7 +37,7 @@
|
|||
<a href="evennia.contrib.tutorials.evadventure.build_world.html" title="evennia.contrib.tutorials.evadventure.build_world"
|
||||
accesskey="N">next</a> |</li>
|
||||
<li class="right" >
|
||||
<a href="evennia.contrib.tutorials.evadventure.html" title="evennia.contrib.tutorials.evadventure"
|
||||
<a href="evennia.contrib.tutorials.evadventure.ai.html" title="evennia.contrib.tutorials.evadventure.ai"
|
||||
accesskey="P">previous</a> |</li>
|
||||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 2.x</a> »</li>
|
||||
<li class="nav-item nav-item-1"><a href="../Evennia-API.html" >API Summary</a> »</li>
|
||||
|
|
@ -69,8 +69,8 @@
|
|||
</div>
|
||||
<script>$('#searchbox').show(0);</script>
|
||||
<h4>Previous topic</h4>
|
||||
<p class="topless"><a href="evennia.contrib.tutorials.evadventure.html"
|
||||
title="previous chapter">evennia.contrib.tutorials.evadventure</a></p>
|
||||
<p class="topless"><a href="evennia.contrib.tutorials.evadventure.ai.html"
|
||||
title="previous chapter">evennia.contrib.tutorials.evadventure.ai</a></p>
|
||||
<h4>Next topic</h4>
|
||||
<p class="topless"><a href="evennia.contrib.tutorials.evadventure.build_world.html"
|
||||
title="next chapter">evennia.contrib.tutorials.evadventure.build_world</a></p>
|
||||
|
|
@ -132,7 +132,7 @@
|
|||
<a href="evennia.contrib.tutorials.evadventure.build_world.html" title="evennia.contrib.tutorials.evadventure.build_world"
|
||||
>next</a> |</li>
|
||||
<li class="right" >
|
||||
<a href="evennia.contrib.tutorials.evadventure.html" title="evennia.contrib.tutorials.evadventure"
|
||||
<a href="evennia.contrib.tutorials.evadventure.ai.html" title="evennia.contrib.tutorials.evadventure.ai"
|
||||
>previous</a> |</li>
|
||||
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 2.x</a> »</li>
|
||||
<li class="nav-item nav-item-1"><a href="../Evennia-API.html" >API Summary</a> »</li>
|
||||
|
|
|
|||
|
|
@ -17,7 +17,7 @@
|
|||
<link rel="shortcut icon" href="../_static/favicon.ico"/>
|
||||
<link rel="index" title="Index" href="../genindex.html" />
|
||||
<link rel="search" title="Search" href="../search.html" />
|
||||
<link rel="next" title="evennia.contrib.tutorials.evadventure.build_techdemo" href="evennia.contrib.tutorials.evadventure.build_techdemo.html" />
|
||||
<link rel="next" title="evennia.contrib.tutorials.evadventure.ai" href="evennia.contrib.tutorials.evadventure.ai.html" />
|
||||
<link rel="prev" title="evennia.contrib.tutorials.bodyfunctions.tests" href="evennia.contrib.tutorials.bodyfunctions.tests.html" />
|
||||
</head><body>
|
||||
|
||||
|
|
@ -34,7 +34,7 @@
|
|||
<a href="../py-modindex.html" title="Python Module Index"
|
||||
>modules</a> |</li>
|
||||
<li class="right" >
|
||||
<a href="evennia.contrib.tutorials.evadventure.build_techdemo.html" title="evennia.contrib.tutorials.evadventure.build_techdemo"
|
||||
<a href="evennia.contrib.tutorials.evadventure.ai.html" title="evennia.contrib.tutorials.evadventure.ai"
|
||||
accesskey="N">next</a> |</li>
|
||||
<li class="right" >
|
||||
<a href="evennia.contrib.tutorials.bodyfunctions.tests.html" title="evennia.contrib.tutorials.bodyfunctions.tests"
|
||||
|
|
@ -71,8 +71,8 @@
|
|||
<p class="topless"><a href="evennia.contrib.tutorials.bodyfunctions.tests.html"
|
||||
title="previous chapter">evennia.contrib.tutorials.bodyfunctions.tests</a></p>
|
||||
<h4>Next topic</h4>
|
||||
<p class="topless"><a href="evennia.contrib.tutorials.evadventure.build_techdemo.html"
|
||||
title="next chapter">evennia.contrib.tutorials.evadventure.build_techdemo</a></p>
|
||||
<p class="topless"><a href="evennia.contrib.tutorials.evadventure.ai.html"
|
||||
title="next chapter">evennia.contrib.tutorials.evadventure.ai</a></p>
|
||||
<div role="note" aria-label="source link">
|
||||
<!--h3>This Page</h3-->
|
||||
<ul class="this-page-menu">
|
||||
|
|
@ -115,6 +115,7 @@
|
|||
documentation’s beginner tutorial.</p>
|
||||
<div class="toctree-wrapper compound">
|
||||
<ul>
|
||||
<li class="toctree-l1"><a class="reference internal" href="evennia.contrib.tutorials.evadventure.ai.html">evennia.contrib.tutorials.evadventure.ai</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="evennia.contrib.tutorials.evadventure.build_techdemo.html">evennia.contrib.tutorials.evadventure.build_techdemo</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="evennia.contrib.tutorials.evadventure.build_world.html">evennia.contrib.tutorials.evadventure.build_world</a></li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="evennia.contrib.tutorials.evadventure.characters.html">evennia.contrib.tutorials.evadventure.characters</a></li>
|
||||
|
|
@ -177,7 +178,7 @@ documentation’s beginner tutorial.</p>
|
|||
<a href="../py-modindex.html" title="Python Module Index"
|
||||
>modules</a> |</li>
|
||||
<li class="right" >
|
||||
<a href="evennia.contrib.tutorials.evadventure.build_techdemo.html" title="evennia.contrib.tutorials.evadventure.build_techdemo"
|
||||
<a href="evennia.contrib.tutorials.evadventure.ai.html" title="evennia.contrib.tutorials.evadventure.ai"
|
||||
>next</a> |</li>
|
||||
<li class="right" >
|
||||
<a href="evennia.contrib.tutorials.bodyfunctions.tests.html" title="evennia.contrib.tutorials.bodyfunctions.tests"
|
||||
|
|
|
|||
|
|
@ -122,6 +122,7 @@
|
|||
</ul>
|
||||
</li>
|
||||
<li class="toctree-l1"><a class="reference internal" href="evennia.contrib.tutorials.evadventure.html">evennia.contrib.tutorials.evadventure</a><ul>
|
||||
<li class="toctree-l2"><a class="reference internal" href="evennia.contrib.tutorials.evadventure.ai.html">evennia.contrib.tutorials.evadventure.ai</a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="evennia.contrib.tutorials.evadventure.build_techdemo.html">evennia.contrib.tutorials.evadventure.build_techdemo</a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="evennia.contrib.tutorials.evadventure.build_world.html">evennia.contrib.tutorials.evadventure.build_world</a></li>
|
||||
<li class="toctree-l2"><a class="reference internal" href="evennia.contrib.tutorials.evadventure.characters.html">evennia.contrib.tutorials.evadventure.characters</a></li>
|
||||
|
|
|
|||
|
|
@ -161,7 +161,7 @@ such as when closing the lid and un-blinding a character.</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.tutorials.red_button.red_button.CmdPushLidClosed.aliases">
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['press button', 'press', 'push']</em><a class="headerlink" href="#evennia.contrib.tutorials.red_button.red_button.CmdPushLidClosed.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['press', 'press button', 'push']</em><a class="headerlink" href="#evennia.contrib.tutorials.red_button.red_button.CmdPushLidClosed.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
@ -190,7 +190,7 @@ check if the lid is open or closed.</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.tutorials.red_button.red_button.CmdPushLidClosed.search_index_entry">
|
||||
<code class="sig-name descname">search_index_entry</code><em class="property"> = {'aliases': 'press button press push', 'category': 'general', 'key': 'push button', 'no_prefix': ' press button press push', 'tags': '', 'text': '\n Push the red button (lid closed)\n\n Usage:\n push button\n\n '}</em><a class="headerlink" href="#evennia.contrib.tutorials.red_button.red_button.CmdPushLidClosed.search_index_entry" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">search_index_entry</code><em class="property"> = {'aliases': 'press press button push', 'category': 'general', 'key': 'push button', 'no_prefix': ' press press button push', 'tags': '', 'text': '\n Push the red button (lid closed)\n\n Usage:\n push button\n\n '}</em><a class="headerlink" href="#evennia.contrib.tutorials.red_button.red_button.CmdPushLidClosed.search_index_entry" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
</dd></dl>
|
||||
|
|
@ -260,7 +260,7 @@ check if the lid is open or closed.</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.tutorials.red_button.red_button.CmdSmashGlass.aliases">
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['break lid', 'smash lid', 'smash']</em><a class="headerlink" href="#evennia.contrib.tutorials.red_button.red_button.CmdSmashGlass.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['break lid', 'smash', 'smash lid']</em><a class="headerlink" href="#evennia.contrib.tutorials.red_button.red_button.CmdSmashGlass.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
@ -287,7 +287,7 @@ break.</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.tutorials.red_button.red_button.CmdSmashGlass.search_index_entry">
|
||||
<code class="sig-name descname">search_index_entry</code><em class="property"> = {'aliases': 'break lid smash lid smash', 'category': 'general', 'key': 'smash glass', 'no_prefix': ' break lid smash lid smash', 'tags': '', 'text': '\n Smash the protective glass.\n\n Usage:\n smash glass\n\n Try to smash the glass of the button.\n\n '}</em><a class="headerlink" href="#evennia.contrib.tutorials.red_button.red_button.CmdSmashGlass.search_index_entry" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">search_index_entry</code><em class="property"> = {'aliases': 'break lid smash smash lid', 'category': 'general', 'key': 'smash glass', 'no_prefix': ' break lid smash smash lid', 'tags': '', 'text': '\n Smash the protective glass.\n\n Usage:\n smash glass\n\n Try to smash the glass of the button.\n\n '}</em><a class="headerlink" href="#evennia.contrib.tutorials.red_button.red_button.CmdSmashGlass.search_index_entry" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
</dd></dl>
|
||||
|
|
@ -387,7 +387,7 @@ be mutually exclusive.</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.tutorials.red_button.red_button.CmdPushLidOpen.aliases">
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['press button', 'press', 'push']</em><a class="headerlink" href="#evennia.contrib.tutorials.red_button.red_button.CmdPushLidOpen.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['press', 'press button', 'push']</em><a class="headerlink" href="#evennia.contrib.tutorials.red_button.red_button.CmdPushLidOpen.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
@ -416,7 +416,7 @@ set in self.parse())</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.tutorials.red_button.red_button.CmdPushLidOpen.search_index_entry">
|
||||
<code class="sig-name descname">search_index_entry</code><em class="property"> = {'aliases': 'press button press push', 'category': 'general', 'key': 'push button', 'no_prefix': ' press button press push', 'tags': '', 'text': '\n Push the red button\n\n Usage:\n push button\n\n '}</em><a class="headerlink" href="#evennia.contrib.tutorials.red_button.red_button.CmdPushLidOpen.search_index_entry" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">search_index_entry</code><em class="property"> = {'aliases': 'press press button push', 'category': 'general', 'key': 'push button', 'no_prefix': ' press press button push', 'tags': '', 'text': '\n Push the red button\n\n Usage:\n push button\n\n '}</em><a class="headerlink" href="#evennia.contrib.tutorials.red_button.red_button.CmdPushLidOpen.search_index_entry" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
</dd></dl>
|
||||
|
|
@ -514,7 +514,7 @@ be mutually exclusive.</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.tutorials.red_button.red_button.CmdBlindLook.aliases">
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['feel', 'get', 'listen', 'ex', 'l', 'examine']</em><a class="headerlink" href="#evennia.contrib.tutorials.red_button.red_button.CmdBlindLook.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['get', 'feel', 'ex', 'listen', 'examine', 'l']</em><a class="headerlink" href="#evennia.contrib.tutorials.red_button.red_button.CmdBlindLook.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
@ -540,7 +540,7 @@ be mutually exclusive.</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.tutorials.red_button.red_button.CmdBlindLook.search_index_entry">
|
||||
<code class="sig-name descname">search_index_entry</code><em class="property"> = {'aliases': 'feel get listen ex l examine', 'category': 'general', 'key': 'look', 'no_prefix': ' feel get listen ex l examine', 'tags': '', 'text': "\n Looking around in darkness\n\n Usage:\n look <obj>\n\n ... not that there's much to see in the dark.\n\n "}</em><a class="headerlink" href="#evennia.contrib.tutorials.red_button.red_button.CmdBlindLook.search_index_entry" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">search_index_entry</code><em class="property"> = {'aliases': 'get feel ex listen examine l', 'category': 'general', 'key': 'look', 'no_prefix': ' get feel ex listen examine l', 'tags': '', 'text': "\n Looking around in darkness\n\n Usage:\n look <obj>\n\n ... not that there's much to see in the dark.\n\n "}</em><a class="headerlink" href="#evennia.contrib.tutorials.red_button.red_button.CmdBlindLook.search_index_entry" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
</dd></dl>
|
||||
|
|
|
|||
|
|
@ -564,7 +564,7 @@ shift green root up/down</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.tutorials.tutorial_world.objects.CmdShiftRoot.aliases">
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['move', 'shiftroot', 'pull', 'push']</em><a class="headerlink" href="#evennia.contrib.tutorials.tutorial_world.objects.CmdShiftRoot.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['shiftroot', 'move', 'pull', 'push']</em><a class="headerlink" href="#evennia.contrib.tutorials.tutorial_world.objects.CmdShiftRoot.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
@ -600,7 +600,7 @@ yellow/green - horizontal roots</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.tutorials.tutorial_world.objects.CmdShiftRoot.search_index_entry">
|
||||
<code class="sig-name descname">search_index_entry</code><em class="property"> = {'aliases': 'move shiftroot pull push', 'category': 'tutorialworld', 'key': 'shift', 'no_prefix': ' move shiftroot pull push', 'tags': '', 'text': '\n Shifts roots around.\n\n Usage:\n shift blue root left/right\n shift red root left/right\n shift yellow root up/down\n shift green root up/down\n\n '}</em><a class="headerlink" href="#evennia.contrib.tutorials.tutorial_world.objects.CmdShiftRoot.search_index_entry" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">search_index_entry</code><em class="property"> = {'aliases': 'shiftroot move pull push', 'category': 'tutorialworld', 'key': 'shift', 'no_prefix': ' shiftroot move pull push', 'tags': '', 'text': '\n Shifts roots around.\n\n Usage:\n shift blue root left/right\n shift red root left/right\n shift yellow root up/down\n shift green root up/down\n\n '}</em><a class="headerlink" href="#evennia.contrib.tutorials.tutorial_world.objects.CmdShiftRoot.search_index_entry" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
</dd></dl>
|
||||
|
|
@ -617,7 +617,7 @@ yellow/green - horizontal roots</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.tutorials.tutorial_world.objects.CmdPressButton.aliases">
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['button', 'push button', 'press button']</em><a class="headerlink" href="#evennia.contrib.tutorials.tutorial_world.objects.CmdPressButton.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['push button', 'button', 'press button']</em><a class="headerlink" href="#evennia.contrib.tutorials.tutorial_world.objects.CmdPressButton.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
@ -643,7 +643,7 @@ yellow/green - horizontal roots</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.tutorials.tutorial_world.objects.CmdPressButton.search_index_entry">
|
||||
<code class="sig-name descname">search_index_entry</code><em class="property"> = {'aliases': 'button push button press button', 'category': 'tutorialworld', 'key': 'press', 'no_prefix': ' button push button press button', 'tags': '', 'text': '\n Presses a button.\n '}</em><a class="headerlink" href="#evennia.contrib.tutorials.tutorial_world.objects.CmdPressButton.search_index_entry" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">search_index_entry</code><em class="property"> = {'aliases': 'push button button press button', 'category': 'tutorialworld', 'key': 'press', 'no_prefix': ' push button button press button', 'tags': '', 'text': '\n Presses a button.\n '}</em><a class="headerlink" href="#evennia.contrib.tutorials.tutorial_world.objects.CmdPressButton.search_index_entry" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
</dd></dl>
|
||||
|
|
@ -787,7 +787,7 @@ parry - forgoes your attack but will make you harder to hit on next</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.tutorials.tutorial_world.objects.CmdAttack.aliases">
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['defend', 'stab', 'parry', 'hit', 'kill', 'bash', 'pierce', 'chop', 'slash', 'fight', 'thrust']</em><a class="headerlink" href="#evennia.contrib.tutorials.tutorial_world.objects.CmdAttack.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['slash', 'defend', 'bash', 'kill', 'parry', 'chop', 'thrust', 'hit', 'pierce', 'stab', 'fight']</em><a class="headerlink" href="#evennia.contrib.tutorials.tutorial_world.objects.CmdAttack.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
@ -813,7 +813,7 @@ parry - forgoes your attack but will make you harder to hit on next</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.tutorials.tutorial_world.objects.CmdAttack.search_index_entry">
|
||||
<code class="sig-name descname">search_index_entry</code><em class="property"> = {'aliases': 'defend stab parry hit kill bash pierce chop slash fight thrust', 'category': 'tutorialworld', 'key': 'attack', 'no_prefix': ' defend stab parry hit kill bash pierce chop slash fight thrust', 'tags': '', 'text': '\n Attack the enemy. Commands:\n\n stab <enemy>\n slash <enemy>\n parry\n\n stab - (thrust) makes a lot of damage but is harder to hit with.\n slash - is easier to land, but does not make as much damage.\n parry - forgoes your attack but will make you harder to hit on next\n enemy attack.\n\n '}</em><a class="headerlink" href="#evennia.contrib.tutorials.tutorial_world.objects.CmdAttack.search_index_entry" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">search_index_entry</code><em class="property"> = {'aliases': 'slash defend bash kill parry chop thrust hit pierce stab fight', 'category': 'tutorialworld', 'key': 'attack', 'no_prefix': ' slash defend bash kill parry chop thrust hit pierce stab fight', 'tags': '', 'text': '\n Attack the enemy. Commands:\n\n stab <enemy>\n slash <enemy>\n parry\n\n stab - (thrust) makes a lot of damage but is harder to hit with.\n slash - is easier to land, but does not make as much damage.\n parry - forgoes your attack but will make you harder to hit on next\n enemy attack.\n\n '}</em><a class="headerlink" href="#evennia.contrib.tutorials.tutorial_world.objects.CmdAttack.search_index_entry" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
</dd></dl>
|
||||
|
|
|
|||
|
|
@ -976,7 +976,7 @@ to find something.</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.tutorials.tutorial_world.rooms.CmdLookDark.aliases">
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['feel', 'search', 'feel around', 'fiddle', 'l']</em><a class="headerlink" href="#evennia.contrib.tutorials.tutorial_world.rooms.CmdLookDark.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['search', 'feel', 'fiddle', 'feel around', 'l']</em><a class="headerlink" href="#evennia.contrib.tutorials.tutorial_world.rooms.CmdLookDark.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
@ -1004,7 +1004,7 @@ random chance of eventually finding a light source.</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.tutorials.tutorial_world.rooms.CmdLookDark.search_index_entry">
|
||||
<code class="sig-name descname">search_index_entry</code><em class="property"> = {'aliases': 'feel search feel around fiddle l', 'category': 'tutorialworld', 'key': 'look', 'no_prefix': ' feel search feel around fiddle l', 'tags': '', 'text': '\n Look around in darkness\n\n Usage:\n look\n\n Look around in the darkness, trying\n to find something.\n '}</em><a class="headerlink" href="#evennia.contrib.tutorials.tutorial_world.rooms.CmdLookDark.search_index_entry" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">search_index_entry</code><em class="property"> = {'aliases': 'search feel fiddle feel around l', 'category': 'tutorialworld', 'key': 'look', 'no_prefix': ' search feel fiddle feel around l', 'tags': '', 'text': '\n Look around in darkness\n\n Usage:\n look\n\n Look around in the darkness, trying\n to find something.\n '}</em><a class="headerlink" href="#evennia.contrib.tutorials.tutorial_world.rooms.CmdLookDark.search_index_entry" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
</dd></dl>
|
||||
|
|
|
|||
|
|
@ -216,7 +216,7 @@ git evennia pull - Pull the latest evennia code.</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.utils.git_integration.git_integration.CmdGitEvennia.directory">
|
||||
<code class="sig-name descname">directory</code><em class="property"> = '/tmp/tmpi99fu0ku/a772e01e07bc7813a3c1c0d2e1d851c52a6ac692/evennia'</em><a class="headerlink" href="#evennia.contrib.utils.git_integration.git_integration.CmdGitEvennia.directory" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">directory</code><em class="property"> = '/tmp/tmppiaiisc7/8efd6b52f3baf6dbefdf6e8265878b5e5828d092/evennia'</em><a class="headerlink" href="#evennia.contrib.utils.git_integration.git_integration.CmdGitEvennia.directory" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
@ -277,7 +277,7 @@ git pull - Pull the latest code from your current branch.</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.contrib.utils.git_integration.git_integration.CmdGit.directory">
|
||||
<code class="sig-name descname">directory</code><em class="property"> = '/tmp/tmpi99fu0ku/a772e01e07bc7813a3c1c0d2e1d851c52a6ac692/evennia/game_template'</em><a class="headerlink" href="#evennia.contrib.utils.git_integration.git_integration.CmdGit.directory" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">directory</code><em class="property"> = '/tmp/tmppiaiisc7/8efd6b52f3baf6dbefdf6e8265878b5e5828d092/evennia/game_template'</em><a class="headerlink" href="#evennia.contrib.utils.git_integration.git_integration.CmdGit.directory" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
|
|||
|
|
@ -565,6 +565,7 @@ with ‘q’, remove the break line and restart server when finished.</p></li>
|
|||
</ul>
|
||||
</li>
|
||||
<li class="toctree-l3"><a class="reference internal" href="evennia.contrib.tutorials.evadventure.html">evennia.contrib.tutorials.evadventure</a><ul>
|
||||
<li class="toctree-l4"><a class="reference internal" href="evennia.contrib.tutorials.evadventure.ai.html">evennia.contrib.tutorials.evadventure.ai</a></li>
|
||||
<li class="toctree-l4"><a class="reference internal" href="evennia.contrib.tutorials.evadventure.build_techdemo.html">evennia.contrib.tutorials.evadventure.build_techdemo</a></li>
|
||||
<li class="toctree-l4"><a class="reference internal" href="evennia.contrib.tutorials.evadventure.build_world.html">evennia.contrib.tutorials.evadventure.build_world</a></li>
|
||||
<li class="toctree-l4"><a class="reference internal" href="evennia.contrib.tutorials.evadventure.characters.html">evennia.contrib.tutorials.evadventure.characters</a></li>
|
||||
|
|
|
|||
|
|
@ -344,7 +344,7 @@ indentation.</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.utils.eveditor.CmdEditorGroup.aliases">
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = [':fd', ':fi', ':uu', '::', ':u', ':>', ':wq', ':s', ':i', ':p', ':S', ':q', ':!', ':h', ':r', ':q!', ':::', ':f', ':', ':w', ':echo', ':I', ':<', ':UU', ':x', ':y', ':=', ':A', ':dw', ':j', ':DD', ':dd']</em><a class="headerlink" href="#evennia.utils.eveditor.CmdEditorGroup.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = [':f', ':::', ':fi', ':S', ':x', ':=', ':q', ':uu', ':wq', ':dd', ':p', ':h', ':s', ':>', ':j', ':A', ':q!', ':UU', ':r', ':<', ':echo', ':w', ':DD', ':fd', ':I', ':!', '::', ':', ':dw', ':y', ':i', ':u']</em><a class="headerlink" href="#evennia.utils.eveditor.CmdEditorGroup.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
@ -372,7 +372,7 @@ efficient presentation.</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.utils.eveditor.CmdEditorGroup.search_index_entry">
|
||||
<code class="sig-name descname">search_index_entry</code><em class="property"> = {'aliases': ':fd :fi :uu :: :u :> :wq :s :i :p :S :q :! :h :r :q! ::: :f : :w :echo :I :< :UU :x :y := :A :dw :j :DD :dd', 'category': 'general', 'key': ':editor_command_group', 'no_prefix': ' :fd :fi :uu :: :u :> :wq :s :i :p :S :q :! :h :r :q! ::: :f : :w :echo :I :< :UU :x :y := :A :dw :j :DD :dd', 'tags': '', 'text': '\n Commands for the editor\n '}</em><a class="headerlink" href="#evennia.utils.eveditor.CmdEditorGroup.search_index_entry" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">search_index_entry</code><em class="property"> = {'aliases': ':f ::: :fi :S :x := :q :uu :wq :dd :p :h :s :> :j :A :q! :UU :r :< :echo :w :DD :fd :I :! :: : :dw :y :i :u', 'category': 'general', 'key': ':editor_command_group', 'no_prefix': ' :f ::: :fi :S :x := :q :uu :wq :dd :p :h :s :> :j :A :q! :UU :r :< :echo :w :DD :fd :I :! :: : :dw :y :i :u', 'tags': '', 'text': '\n Commands for the editor\n '}</em><a class="headerlink" href="#evennia.utils.eveditor.CmdEditorGroup.search_index_entry" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
</dd></dl>
|
||||
|
|
|
|||
|
|
@ -939,7 +939,7 @@ single question.</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.utils.evmenu.CmdYesNoQuestion.aliases">
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['a', 'y', 'n', 'abort', 'no', 'yes', '__nomatch_command']</em><a class="headerlink" href="#evennia.utils.evmenu.CmdYesNoQuestion.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['no', '__nomatch_command', 'y', 'abort', 'yes', 'a', 'n']</em><a class="headerlink" href="#evennia.utils.evmenu.CmdYesNoQuestion.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
@ -965,7 +965,7 @@ single question.</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.utils.evmenu.CmdYesNoQuestion.search_index_entry">
|
||||
<code class="sig-name descname">search_index_entry</code><em class="property"> = {'aliases': 'a y n abort no yes __nomatch_command', 'category': 'general', 'key': '__noinput_command', 'no_prefix': ' a y n abort no yes __nomatch_command', 'tags': '', 'text': '\n Handle a prompt for yes or no. Press [return] for the default choice.\n\n '}</em><a class="headerlink" href="#evennia.utils.evmenu.CmdYesNoQuestion.search_index_entry" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">search_index_entry</code><em class="property"> = {'aliases': 'no __nomatch_command y abort yes a n', 'category': 'general', 'key': '__noinput_command', 'no_prefix': ' no __nomatch_command y abort yes a n', 'tags': '', 'text': '\n Handle a prompt for yes or no. Press [return] for the default choice.\n\n '}</em><a class="headerlink" href="#evennia.utils.evmenu.CmdYesNoQuestion.search_index_entry" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
</dd></dl>
|
||||
|
|
|
|||
|
|
@ -145,7 +145,7 @@ the <strong>caller.msg()</strong> construct every time the page is updated.</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.utils.evmore.CmdMore.aliases">
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['a', 'e', 'n', 'previous', 'abort', 'next', 'quit', 'q', 'end', 'p', 't', 'top']</em><a class="headerlink" href="#evennia.utils.evmore.CmdMore.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">aliases</code><em class="property"> = ['t', 'p', 'end', 'quit', 'n', 'top', 'q', 'abort', 'a', 'previous', 'e', 'next']</em><a class="headerlink" href="#evennia.utils.evmore.CmdMore.aliases" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
<dl class="py attribute">
|
||||
|
|
@ -171,7 +171,7 @@ the <strong>caller.msg()</strong> construct every time the page is updated.</p>
|
|||
|
||||
<dl class="py attribute">
|
||||
<dt id="evennia.utils.evmore.CmdMore.search_index_entry">
|
||||
<code class="sig-name descname">search_index_entry</code><em class="property"> = {'aliases': 'a e n previous abort next quit q end p t top', 'category': 'general', 'key': '__noinput_command', 'no_prefix': ' a e n previous abort next quit q end p t top', 'tags': '', 'text': '\n Manipulate the text paging. Catch no-input with aliases.\n '}</em><a class="headerlink" href="#evennia.utils.evmore.CmdMore.search_index_entry" title="Permalink to this definition">¶</a></dt>
|
||||
<code class="sig-name descname">search_index_entry</code><em class="property"> = {'aliases': 't p end quit n top q abort a previous e next', 'category': 'general', 'key': '__noinput_command', 'no_prefix': ' t p end quit n top q abort a previous e next', 'tags': '', 'text': '\n Manipulate the text paging. Catch no-input with aliases.\n '}</em><a class="headerlink" href="#evennia.utils.evmore.CmdMore.search_index_entry" title="Permalink to this definition">¶</a></dt>
|
||||
<dd></dd></dl>
|
||||
|
||||
</dd></dl>
|
||||
|
|
|
|||
|
|
@ -219,6 +219,8 @@
|
|||
<li><a href="api/evennia.contrib.rpg.traits.traits.html#evennia.contrib.rpg.traits.traits.TraitHandler.__init__">(evennia.contrib.rpg.traits.traits.TraitHandler method)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.rpg.traits.traits.html#evennia.contrib.rpg.traits.traits.TraitProperty.__init__">(evennia.contrib.rpg.traits.traits.TraitProperty method)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.tutorials.evadventure.ai.html#evennia.contrib.tutorials.evadventure.ai.AIHandler.__init__">(evennia.contrib.tutorials.evadventure.ai.AIHandler method)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.tutorials.evadventure.chargen.html#evennia.contrib.tutorials.evadventure.chargen.TemporaryCharacterSheet.__init__">(evennia.contrib.tutorials.evadventure.chargen.TemporaryCharacterSheet method)</a>
|
||||
</li>
|
||||
|
|
@ -709,6 +711,8 @@
|
|||
<li><a href="api/evennia.utils.optionhandler.html#evennia.utils.optionhandler.InMemorySaveHandler.add">(evennia.utils.optionhandler.InMemorySaveHandler method)</a>
|
||||
</li>
|
||||
</ul></li>
|
||||
<li><a href="api/evennia.contrib.tutorials.evadventure.ai.html#evennia.contrib.tutorials.evadventure.ai.AIHandler.add_aidict">add_aidict() (evennia.contrib.tutorials.evadventure.ai.AIHandler method)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.commands.default.comms.html#evennia.commands.default.comms.CmdChannel.add_alias">add_alias() (evennia.commands.default.comms.CmdChannel method)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.base_systems.ingame_python.commands.html#evennia.contrib.base_systems.ingame_python.commands.CmdCallback.add_callback">add_callback() (evennia.contrib.base_systems.ingame_python.commands.CmdCallback method)</a>
|
||||
|
|
@ -780,6 +784,8 @@
|
|||
<li><a href="api/evennia.web.templatetags.addclass.html#evennia.web.templatetags.addclass.addclass">addclass() (in module evennia.web.templatetags.addclass)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.base_systems.components.tests.html#evennia.contrib.base_systems.components.tests.RuntimeComponentTestC.added_tag">added_tag (evennia.contrib.base_systems.components.tests.RuntimeComponentTestC attribute)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.tutorials.evadventure.ai.html#evennia.contrib.tutorials.evadventure.ai.AIHandler.adjust_transition_probability">adjust_transition_probability() (evennia.contrib.tutorials.evadventure.ai.AIHandler method)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.web.admin.frontpage.html#evennia.web.admin.frontpage.admin_wrapper">admin_wrapper() (in module evennia.web.admin.frontpage)</a>
|
||||
</li>
|
||||
|
|
@ -799,6 +805,8 @@
|
|||
<li><a href="api/evennia.contrib.tutorials.evadventure.npcs.html#evennia.contrib.tutorials.evadventure.npcs.EvAdventureNPC.ai_next_action">(evennia.contrib.tutorials.evadventure.npcs.EvAdventureNPC method)</a>
|
||||
</li>
|
||||
</ul></li>
|
||||
<li><a href="api/evennia.contrib.tutorials.evadventure.ai.html#evennia.contrib.tutorials.evadventure.ai.AIHandler">AIHandler (class in evennia.contrib.tutorials.evadventure.ai)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.server.portal.webclient_ajax.html#evennia.server.portal.webclient_ajax.AjaxWebClient">AjaxWebClient (class in evennia.server.portal.webclient_ajax)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.server.portal.webclient_ajax.html#evennia.server.portal.webclient_ajax.AjaxWebClientSession">AjaxWebClientSession (class in evennia.server.portal.webclient_ajax)</a>
|
||||
|
|
@ -1575,12 +1583,12 @@
|
|||
</li>
|
||||
<li><a href="api/evennia.locks.lockhandler.html#evennia.locks.lockhandler.LockHandler.append">append() (evennia.locks.lockhandler.LockHandler method)</a>
|
||||
</li>
|
||||
</ul></td>
|
||||
<td style="width: 33%; vertical-align: top;"><ul>
|
||||
<li><a href="api/evennia.server.portal.telnet.html#evennia.server.portal.telnet.TelnetProtocol.applicationDataReceived">applicationDataReceived() (evennia.server.portal.telnet.TelnetProtocol method)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.tutorials.evadventure.chargen.html#evennia.contrib.tutorials.evadventure.chargen.TemporaryCharacterSheet.apply">apply() (evennia.contrib.tutorials.evadventure.chargen.TemporaryCharacterSheet method)</a>
|
||||
</li>
|
||||
</ul></td>
|
||||
<td style="width: 33%; vertical-align: top;"><ul>
|
||||
<li><a href="api/evennia.contrib.game_systems.turnbattle.tb_basic.html#evennia.contrib.game_systems.turnbattle.tb_basic.BasicCombatRules.apply_damage">apply_damage() (evennia.contrib.game_systems.turnbattle.tb_basic.BasicCombatRules method)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.game_systems.turnbattle.tb_items.html#evennia.contrib.game_systems.turnbattle.tb_items.TBItemsCharacter.apply_turn_conditions">apply_turn_conditions() (evennia.contrib.game_systems.turnbattle.tb_items.TBItemsCharacter method)</a>
|
||||
|
|
@ -7435,6 +7443,13 @@
|
|||
|
||||
<ul>
|
||||
<li><a href="api/evennia.contrib.tutorials.evadventure.html#module-evennia.contrib.tutorials.evadventure">module</a>
|
||||
</li>
|
||||
</ul></li>
|
||||
<li>
|
||||
evennia.contrib.tutorials.evadventure.ai
|
||||
|
||||
<ul>
|
||||
<li><a href="api/evennia.contrib.tutorials.evadventure.ai.html#module-evennia.contrib.tutorials.evadventure.ai">module</a>
|
||||
</li>
|
||||
</ul></li>
|
||||
<li>
|
||||
|
|
@ -7500,6 +7515,8 @@
|
|||
<li><a href="api/evennia.contrib.tutorials.evadventure.dungeon.html#module-evennia.contrib.tutorials.evadventure.dungeon">module</a>
|
||||
</li>
|
||||
</ul></li>
|
||||
</ul></td>
|
||||
<td style="width: 33%; vertical-align: top;"><ul>
|
||||
<li>
|
||||
evennia.contrib.tutorials.evadventure.enums
|
||||
|
||||
|
|
@ -7507,8 +7524,6 @@
|
|||
<li><a href="api/evennia.contrib.tutorials.evadventure.enums.html#module-evennia.contrib.tutorials.evadventure.enums">module</a>
|
||||
</li>
|
||||
</ul></li>
|
||||
</ul></td>
|
||||
<td style="width: 33%; vertical-align: top;"><ul>
|
||||
<li>
|
||||
evennia.contrib.tutorials.evadventure.equipment
|
||||
|
||||
|
|
@ -9113,6 +9128,8 @@
|
|||
<li><a href="api/evennia.utils.funcparser.html#evennia.utils.funcparser.FuncParser.execute">(evennia.utils.funcparser.FuncParser method)</a>
|
||||
</li>
|
||||
</ul></li>
|
||||
<li><a href="api/evennia.contrib.tutorials.evadventure.ai.html#evennia.contrib.tutorials.evadventure.ai.AIHandler.execute_ai">execute_ai() (evennia.contrib.tutorials.evadventure.ai.AIHandler method)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.accounts.accounts.html#evennia.accounts.accounts.DefaultAccount.execute_cmd">execute_cmd() (evennia.accounts.accounts.DefaultAccount method)</a>
|
||||
|
||||
<ul>
|
||||
|
|
@ -10728,6 +10745,8 @@
|
|||
<li><a href="api/evennia.server.portal.rss.html#evennia.server.portal.rss.RSSReader.get_new">get_new() (evennia.server.portal.rss.RSSReader method)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.grid.wilderness.wilderness.html#evennia.contrib.grid.wilderness.wilderness.get_new_coordinates">get_new_coordinates() (in module evennia.contrib.grid.wilderness.wilderness)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.tutorials.evadventure.ai.html#evennia.contrib.tutorials.evadventure.ai.AIHandler.get_next_action">get_next_action() (evennia.contrib.tutorials.evadventure.ai.AIHandler method)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.tutorials.evadventure.combat_turnbased.html#evennia.contrib.tutorials.evadventure.combat_turnbased.EvAdventureTurnbasedCombatHandler.get_next_action_dict">get_next_action_dict() (evennia.contrib.tutorials.evadventure.combat_turnbased.EvAdventureTurnbasedCombatHandler method)</a>
|
||||
</li>
|
||||
|
|
@ -10751,6 +10770,8 @@
|
|||
<li><a href="api/evennia.typeclasses.models.html#evennia.typeclasses.models.TypedObject.get_next_by_db_date_created">(evennia.typeclasses.models.TypedObject method)</a>
|
||||
</li>
|
||||
</ul></li>
|
||||
<li><a href="api/evennia.contrib.tutorials.evadventure.ai.html#evennia.contrib.tutorials.evadventure.ai.AIHandler.get_next_state">get_next_state() (evennia.contrib.tutorials.evadventure.ai.AIHandler method)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.base_systems.ingame_python.utils.html#evennia.contrib.base_systems.ingame_python.utils.get_next_wait">get_next_wait() (in module evennia.contrib.base_systems.ingame_python.utils)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.typeclasses.managers.html#evennia.typeclasses.managers.TypedObjectManager.get_nick">get_nick() (evennia.typeclasses.managers.TypedObjectManager method)</a>
|
||||
|
|
@ -15132,6 +15153,8 @@
|
|||
<li><a href="api/evennia.contrib.tutorials.bodyfunctions.tests.html#module-evennia.contrib.tutorials.bodyfunctions.tests">evennia.contrib.tutorials.bodyfunctions.tests</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.tutorials.evadventure.html#module-evennia.contrib.tutorials.evadventure">evennia.contrib.tutorials.evadventure</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.tutorials.evadventure.ai.html#module-evennia.contrib.tutorials.evadventure.ai">evennia.contrib.tutorials.evadventure.ai</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.tutorials.evadventure.batchscripts.html#module-evennia.contrib.tutorials.evadventure.batchscripts">evennia.contrib.tutorials.evadventure.batchscripts</a>
|
||||
</li>
|
||||
|
|
@ -20025,10 +20048,16 @@
|
|||
<li><a href="api/evennia.contrib.rpg.buffs.samplebuffs.html#evennia.contrib.rpg.buffs.samplebuffs.StatBuff">StatBuff (class in evennia.contrib.rpg.buffs.samplebuffs)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.full_systems.evscaperoom.room.html#evennia.contrib.full_systems.evscaperoom.room.EvscapeRoom.state">state() (evennia.contrib.full_systems.evscaperoom.room.EvscapeRoom property)</a>
|
||||
|
||||
<ul>
|
||||
<li><a href="api/evennia.contrib.tutorials.evadventure.ai.html#evennia.contrib.tutorials.evadventure.ai.AIHandler.state">(evennia.contrib.tutorials.evadventure.ai.AIHandler property)</a>
|
||||
</li>
|
||||
</ul></li>
|
||||
<li><a href="api/evennia.contrib.full_systems.evscaperoom.state.html#evennia.contrib.full_systems.evscaperoom.state.StateHandler">StateHandler (class in evennia.contrib.full_systems.evscaperoom.state)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.full_systems.evscaperoom.room.html#evennia.contrib.full_systems.evscaperoom.room.EvscapeRoom.statehandler">statehandler (evennia.contrib.full_systems.evscaperoom.room.EvscapeRoom attribute)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.tutorials.evadventure.ai.html#evennia.contrib.tutorials.evadventure.ai.AIHandler.states">states() (evennia.contrib.tutorials.evadventure.ai.AIHandler property)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.rpg.traits.traits.html#evennia.contrib.rpg.traits.traits.StaticTrait">StaticTrait (class in evennia.contrib.rpg.traits.traits)</a>
|
||||
</li>
|
||||
|
|
@ -23261,6 +23290,8 @@
|
|||
<li><a href="api/evennia.contrib.rpg.buffs.buff.html#evennia.contrib.rpg.buffs.buff.BuffHandler.traits">traits() (evennia.contrib.rpg.buffs.buff.BuffHandler property)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.grid.xyzgrid.xymap_legend.html#evennia.contrib.grid.xyzgrid.xymap_legend.TransitionMapNode">TransitionMapNode (class in evennia.contrib.grid.xyzgrid.xymap_legend)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.tutorials.evadventure.ai.html#evennia.contrib.tutorials.evadventure.ai.AIHandler.transitions">transitions() (evennia.contrib.tutorials.evadventure.ai.AIHandler property)</a>
|
||||
</li>
|
||||
<li><a href="api/evennia.contrib.grid.xyzgrid.example.html#evennia.contrib.grid.xyzgrid.example.TransitionToCave">TransitionToCave (class in evennia.contrib.grid.xyzgrid.example)</a>
|
||||
</li>
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -956,6 +956,11 @@
|
|||
<td>   
|
||||
<a href="api/evennia.contrib.tutorials.evadventure.html#module-evennia.contrib.tutorials.evadventure"><code class="xref">evennia.contrib.tutorials.evadventure</code></a></td><td>
|
||||
<em></em></td></tr>
|
||||
<tr class="cg-1">
|
||||
<td></td>
|
||||
<td>   
|
||||
<a href="api/evennia.contrib.tutorials.evadventure.ai.html#module-evennia.contrib.tutorials.evadventure.ai"><code class="xref">evennia.contrib.tutorials.evadventure.ai</code></a></td><td>
|
||||
<em></em></td></tr>
|
||||
<tr class="cg-1">
|
||||
<td></td>
|
||||
<td>   
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
Loading…
Add table
Add a link
Reference in a new issue