evennia/docs/3.x/Contribs/Contrib-Ingame-Map-Display.html
2023-12-21 00:12:31 +01:00

206 lines
No EOL
10 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!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>Basic Map &#8212; Evennia 3.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="Map Builder" href="Contrib-Mapbuilder.html" />
<link rel="prev" title="Extended Room" href="Contrib-Extended-Room.html" />
</head><body>
<div class="admonition important">
<p class="first admonition-title">Note</p>
<p class="last">You are reading an old version of the Evennia documentation. <a href="https://www.evennia.com/docs/latest/index.html">The latest version is here</a></p>.
</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"
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="Contrib-Mapbuilder.html" title="Map Builder"
accesskey="N">next</a> |</li>
<li class="right" >
<a href="Contrib-Extended-Room.html" title="Extended Room"
accesskey="P">previous</a> |</li>
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 3.x</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="Contribs-Overview.html" accesskey="U">Contribs</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">Basic Map</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><a href="../index.html">Table of Contents</a></h3>
<ul>
<li><a class="reference internal" href="#">Basic Map</a><ul>
<li><a class="reference internal" href="#installation">Installation:</a></li>
<li><a class="reference internal" href="#settings">Settings:</a></li>
<li><a class="reference internal" href="#features">Features:</a><ul>
<li><a class="reference internal" href="#ascii-map-and-evennia-supports-utf-8-characters-and-even-emojis">ASCII map (and evennia supports UTF-8 characters and even emojis)</a></li>
<li><a class="reference internal" href="#new-command">New command</a></li>
</ul>
</li>
</ul>
</li>
</ul>
<h4>Previous topic</h4>
<p class="topless"><a href="Contrib-Extended-Room.html"
title="previous chapter">Extended Room</a></p>
<h4>Next topic</h4>
<p class="topless"><a href="Contrib-Mapbuilder.html"
title="next chapter">Map Builder</a></p>
<div role="note" aria-label="source link">
<!--h3>This Page</h3-->
<ul class="this-page-menu">
<li><a href="../_sources/Contribs/Contrib-Ingame-Map-Display.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>
</div>
</div>
<div class="bodywrapper">
<div class="body" role="main">
<section class="tex2jax_ignore mathjax_ignore" id="basic-map">
<h1>Basic Map<a class="headerlink" href="#basic-map" title="Permalink to this headline"></a></h1>
<p>Contribution - helpme 2022</p>
<p>This adds an ascii <code class="docutils literal notranslate"><span class="pre">map</span></code> to a given room which can be viewed with the <code class="docutils literal notranslate"><span class="pre">map</span></code> command.
You can easily alter it to add special characters, room colors etc. The map shown is
dynamically generated on use, and supports all compass directions and up/down. Other
directions are ignored.</p>
<p>If you dont expect the map to be updated frequently, you could choose to save the
calculated map as a .ndb value on the room and render that instead of running mapping
calculations anew each time.</p>
<section id="installation">
<h2>Installation:<a class="headerlink" href="#installation" title="Permalink to this headline"></a></h2>
<p>Adding the <code class="docutils literal notranslate"><span class="pre">MapDisplayCmdSet</span></code> to the default character cmdset will add the <code class="docutils literal notranslate"><span class="pre">map</span></code> command.</p>
<p>Specifically, in <code class="docutils literal notranslate"><span class="pre">mygame/commands/default_cmdsets.py</span></code>:</p>
<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="o">...</span>
<span class="kn">from</span> <span class="nn">evennia.contrib.grid.ingame_map_display</span> <span class="kn">import</span> <span class="n">MapDisplayCmdSet</span> <span class="c1"># &lt;---</span>
<span class="k">class</span> <span class="nc">CharacterCmdset</span><span class="p">(</span><span class="n">default_cmds</span><span class="o">.</span><span class="n">CharacterCmdSet</span><span class="p">):</span>
<span class="o">...</span>
<span class="k">def</span> <span class="nf">at_cmdset_creation</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
<span class="o">...</span>
<span class="bp">self</span><span class="o">.</span><span class="n">add</span><span class="p">(</span><span class="n">MapDisplayCmdSet</span><span class="p">)</span> <span class="c1"># &lt;---</span>
</pre></div>
</div>
<p>Then <code class="docutils literal notranslate"><span class="pre">reload</span></code> to make the new commands available.</p>
</section>
<section id="settings">
<h2>Settings:<a class="headerlink" href="#settings" title="Permalink to this headline"></a></h2>
<p>In order to change your default map size, you can add to <code class="docutils literal notranslate"><span class="pre">mygame/server/settings.py</span></code>:</p>
<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="n">BASIC_MAP_SIZE</span> <span class="o">=</span> <span class="mi">5</span> <span class="c1"># This changes the default map width/height.</span>
</pre></div>
</div>
</section>
<section id="features">
<h2>Features:<a class="headerlink" href="#features" title="Permalink to this headline"></a></h2>
<section id="ascii-map-and-evennia-supports-utf-8-characters-and-even-emojis">
<h3>ASCII map (and evennia supports UTF-8 characters and even emojis)<a class="headerlink" href="#ascii-map-and-evennia-supports-utf-8-characters-and-even-emojis" title="Permalink to this headline"></a></h3>
<p>This produces an ASCII map for players of configurable size.</p>
</section>
<section id="new-command">
<h3>New command<a class="headerlink" href="#new-command" title="Permalink to this headline"></a></h3>
<ul class="simple">
<li><p><code class="docutils literal notranslate"><span class="pre">CmdMap</span></code> - view the map</p></li>
</ul>
<hr class="docutils" />
<p><small>This document page is generated from <code class="docutils literal notranslate"><span class="pre">evennia/contrib/grid/ingame_map_display/README.md</span></code>. Changes to this
file will be overwritten, so edit that file rather than this one.</small></p>
</section>
</section>
</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="Contrib-Mapbuilder.html" title="Map Builder"
>next</a> |</li>
<li class="right" >
<a href="Contrib-Extended-Room.html" title="Extended Room"
>previous</a> |</li>
<li class="nav-item nav-item-0"><a href="../index.html">Evennia 3.x</a> &#187;</li>
<li class="nav-item nav-item-1"><a href="Contribs-Overview.html" >Contribs</a> &#187;</li>
<li class="nav-item nav-item-this"><a href="">Basic Map</a></li>
</ul>
</div>
<div class="admonition important">
<p class="first admonition-title">Note</p>
<p class="last">You are reading an old version of the Evennia documentation. <a href="https://www.evennia.com/docs/latest/index.html">The latest version is here</a></p>.
</div>
<div class="footer" role="contentinfo">
&#169; Copyright 2023, The Evennia developer community.
Created using <a href="https://www.sphinx-doc.org/">Sphinx</a> 3.2.1.
</div>
</body>
</html>