porymap/docs/manual/editing-map-events.html

442 lines
23 KiB
HTML
Raw Normal View History

2019-04-21 17:20:49 +01:00
<!DOCTYPE html>
<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Editing Map Events &mdash; porymap documentation</title>
<script type="text/javascript" src="../_static/js/modernizr.min.js"></script>
<script type="text/javascript" id="documentation_options" data-url_root="../" src="../_static/documentation_options.js"></script>
<script type="text/javascript" src="../_static/jquery.js"></script>
<script type="text/javascript" src="../_static/underscore.js"></script>
<script type="text/javascript" src="../_static/doctools.js"></script>
<script type="text/javascript" src="../_static/language_data.js"></script>
<script type="text/javascript" src="../_static/js/theme.js"></script>
<link rel="stylesheet" href="../_static/css/theme.css" type="text/css" />
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
2019-04-24 15:00:17 +01:00
<link rel="stylesheet" href="../_static/css/custom.css" type="text/css" />
2019-04-21 17:20:49 +01:00
<link rel="index" title="Index" href="../genindex.html" />
<link rel="search" title="Search" href="../search.html" />
<link rel="next" title="Editing Map Headers" href="editing-map-header.html" />
<link rel="prev" title="Editing Map Collisions" href="editing-map-collisions.html" />
2019-04-21 17:20:49 +01:00
</head>
<body class="wy-body-for-nav">
<div class="wy-grid-for-nav">
<nav data-toggle="wy-nav-shift" class="wy-nav-side">
<div class="wy-side-scroll">
2019-04-24 15:00:17 +01:00
<div class="wy-side-nav-search" style="background: linear-gradient(180deg, #08ACD5 50%, #FF6262 0%);" >
2019-04-21 17:20:49 +01:00
<a href="../index.html" class="icon icon-home"> porymap
</a>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../search.html" method="get">
<input type="text" name="q" placeholder="Search docs" />
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
</form>
</div>
</div>
<div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
<p class="caption"><span class="caption-text">User Manual</span></p>
<ul class="current">
2019-04-24 15:00:17 +01:00
<li class="toctree-l1"><a class="reference internal" href="introduction.html">Introduction</a><ul>
<li class="toctree-l2"><a class="reference internal" href="introduction.html#about-porymap">About Porymap</a></li>
<li class="toctree-l2"><a class="reference internal" href="introduction.html#getting-started">Getting Started</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="navigation.html">Navigation</a><ul>
<li class="toctree-l2"><a class="reference internal" href="navigation.html#map-list">Map List</a></li>
<li class="toctree-l2"><a class="reference internal" href="navigation.html#main-window">Main Window</a></li>
<li class="toctree-l2"><a class="reference internal" href="navigation.html#tileset-editor">Tileset Editor</a></li>
<li class="toctree-l2"><a class="reference internal" href="navigation.html#region-map-editor">Region Map Editor</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="editing-map-tiles.html">Editing Map Tiles</a><ul>
<li class="toctree-l2"><a class="reference internal" href="editing-map-tiles.html#visual-options">Visual Options</a></li>
<li class="toctree-l2"><a class="reference internal" href="editing-map-tiles.html#selecting-metatiles">Selecting Metatiles</a></li>
<li class="toctree-l2"><a class="reference internal" href="editing-map-tiles.html#pencil-tool">Pencil Tool</a></li>
<li class="toctree-l2"><a class="reference internal" href="editing-map-tiles.html#pointer-tool">Pointer Tool</a></li>
<li class="toctree-l2"><a class="reference internal" href="editing-map-tiles.html#bucket-fill-tool">Bucket Fill Tool</a></li>
<li class="toctree-l2"><a class="reference internal" href="editing-map-tiles.html#map-shift-tool">Map Shift Tool</a></li>
<li class="toctree-l2"><a class="reference internal" href="editing-map-tiles.html#smart-paths">Smart Paths</a></li>
<li class="toctree-l2"><a class="reference internal" href="editing-map-tiles.html#change-map-border">Change Map Border</a></li>
<li class="toctree-l2"><a class="reference internal" href="editing-map-tiles.html#change-map-tilesets">Change Map Tilesets</a></li>
<li class="toctree-l2"><a class="reference internal" href="editing-map-tiles.html#undo-redo">Undo &amp; Redo</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="editing-map-collisions.html">Editing Map Collisions</a><ul>
<li class="toctree-l2"><a class="reference internal" href="editing-map-collisions.html#selecting-collision-types">Selecting Collision Types</a></li>
<li class="toctree-l2"><a class="reference internal" href="editing-map-collisions.html#painting-collisions">Painting Collisions</a></li>
<li class="toctree-l2"><a class="reference internal" href="editing-map-collisions.html#collision-types">Collision Types</a></li>
2019-04-24 15:00:17 +01:00
</ul>
</li>
2019-04-26 00:32:32 +01:00
<li class="toctree-l1 current"><a class="current reference internal" href="#">Editing Map Events</a><ul>
<li class="toctree-l2"><a class="reference internal" href="#events-positions">Events Positions</a></li>
<li class="toctree-l2"><a class="reference internal" href="#event-objects">Event Objects</a></li>
<li class="toctree-l2"><a class="reference internal" href="#event-warps">Event Warps</a></li>
<li class="toctree-l2"><a class="reference internal" href="#event-triggers">Event Triggers</a></li>
<li class="toctree-l2"><a class="reference internal" href="#event-weather-triggers">Event Weather Triggers</a></li>
<li class="toctree-l2"><a class="reference internal" href="#event-signs">Event Signs</a></li>
<li class="toctree-l2"><a class="reference internal" href="#event-hidden-item">Event Hidden Item</a></li>
<li class="toctree-l2"><a class="reference internal" href="#event-secret-base">Event Secret Base</a></li>
<li class="toctree-l2"><a class="reference internal" href="#adding-deleting-events">Adding &amp; Deleting Events</a></li>
<li class="toctree-l2"><a class="reference internal" href="#open-map-scripts">Open Map Scripts</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="editing-map-header.html">Editing Map Headers</a></li>
2019-04-27 19:43:41 +01:00
<li class="toctree-l1"><a class="reference internal" href="editing-map-connections.html">Editing Map Connections</a><ul>
<li class="toctree-l2"><a class="reference internal" href="editing-map-connections.html#dive-emerge-warps">Dive &amp; Emerge Warps</a></li>
<li class="toctree-l2"><a class="reference internal" href="editing-map-connections.html#mirror-connections">Mirror Connections</a></li>
<li class="toctree-l2"><a class="reference internal" href="editing-map-connections.html#follow-connections">Follow Connections</a></li>
</ul>
</li>
2019-04-21 17:20:49 +01:00
</ul>
<p class="caption"><span class="caption-text">Reference</span></p>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../reference/changelog.html">Changelog</a><ul>
<li class="toctree-l2"><a class="reference internal" href="../reference/changelog.html#unreleased">Unreleased</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#added">Added</a></li>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#changed">Changed</a></li>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#fixed">Fixed</a></li>
2019-04-24 15:00:17 +01:00
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../reference/changelog.html#id1">1.2.1 - 2019-02-16</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id2">Added</a></li>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id3">Fixed</a></li>
2019-04-24 15:00:17 +01:00
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../reference/changelog.html#id4">1.2.0 - 2019-02-04</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#breaking-changes">Breaking Changes</a></li>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id5">Added</a></li>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id6">Changed</a></li>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id7">Fixed</a></li>
2019-04-24 15:00:17 +01:00
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../reference/changelog.html#id8">1.1.0 - 2018-12-27</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id9">Breaking Changes</a></li>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id10">Added</a></li>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id11">Changed</a></li>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id12">Fixed</a></li>
2019-04-24 15:00:17 +01:00
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../reference/changelog.html#id13">1.0.0 - 2018-10-26</a></li>
2019-04-24 15:00:17 +01:00
</ul>
</li>
2019-04-21 17:20:49 +01:00
<li class="toctree-l1"><a class="reference internal" href="../reference/related-projects.html">Related Projects</a></li>
</ul>
</div>
</div>
</nav>
<section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
<nav class="wy-nav-top" aria-label="top navigation">
<i data-toggle="wy-nav-top" class="fa fa-bars"></i>
<a href="../index.html">porymap</a>
</nav>
<div class="wy-nav-content">
<div class="rst-content">
<div role="navigation" aria-label="breadcrumbs navigation">
<ul class="wy-breadcrumbs">
<li><a href="../index.html">Docs</a> &raquo;</li>
<li>Editing Map Events</li>
<li class="wy-breadcrumbs-aside">
<a href="https://github.com/huderlem/porymap/blob/master/docsrc/manual/editing-map-events.rst" class="fa fa-github"> Edit on GitHub</a>
2019-04-21 17:20:49 +01:00
</li>
</ul>
<hr/>
</div>
<div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
<div itemprop="articleBody">
<div class="section" id="editing-map-events">
<h1>Editing Map Events<a class="headerlink" href="#editing-map-events" title="Permalink to this headline"></a></h1>
2019-04-26 00:32:32 +01:00
<p>Events are what bring your maps to life. They include NPCs, signposts, warps, scripts, and more. Open the <em>Events</em> tab above the map area, and lets dissect whats going on.</p>
2019-04-27 19:43:41 +01:00
<div class="figure" id="id2">
2019-04-26 00:32:32 +01:00
<img alt="Map Events View" src="../_images/map-events.png" />
<p class="caption"><span class="caption-text">Map Events View</span></p>
</div>
<p>All of the events are visible on the map. The Event Details window on the right displays the properties of the currently-selected event. If you look closely, youll see that the woman NPC near the Pokémon Center has a pink border around it because its selected. To select a different event, simple click on an event in the map area. Alternatively, you can use the spinner at the top of the event properties window. Multiple events can be selected at the same time by holding <code class="docutils literal notranslate"><span class="pre">Ctrl</span></code> and clicking another event.</p>
2019-04-27 19:43:41 +01:00
<div class="figure" id="id3">
2019-04-26 00:32:32 +01:00
<img alt="Event Id Spinner" src="../_images/event-id-spinner.png" />
<p class="caption"><span class="caption-text">Event Id Spinner</span></p>
</div>
<div class="admonition warning">
<p class="first admonition-title">Warning</p>
<p class="last">There is currently no undo/redo functionality when editing events! Use Git version control!</p>
</div>
<div class="section" id="events-positions">
<h2>Events Positions<a class="headerlink" href="#events-positions" title="Permalink to this headline"></a></h2>
<p>All events have X/Y coordinates. To move an Event, click and drag it to a new position on the map. Alternatively, you can use the X and Y spinners in the event properties.</p>
2019-04-27 19:43:41 +01:00
<div class="figure" id="id4">
2019-04-26 00:32:32 +01:00
<img alt="Event Coordinates Spinners" src="../_images/event-coords-spinners.png" />
<p class="caption"><span class="caption-text">Event Coordinates Spinners</span></p>
</div>
<p>Events also have an elevation, also known as Z coordinates (see image above). Elevations are explained in detail in the <a class="reference internal" href="editing-map-collisions.html#collision-types"><span class="std std-ref">Collision Types</span></a> section.</p>
<p>Next, well cover each type of event in detail.</p>
</div>
<div class="section" id="event-objects">
<h2>Event Objects<a class="headerlink" href="#event-objects" title="Permalink to this headline"></a></h2>
<p>Event objects are typically used for NPCs (non-player-characters). More technically, its any event that has a sprite and the ability to move around. Event objects are displayed using their assigned sprite, except for special cases. Any event object that uses a dynamic sprite will be displayed as a blue square with an <cite>N</cite> <img alt="dynamic-sprite" src="../_images/dynamic-sprite.png" />. Some examples of dynamic sprites are the players rival and berry trees.</p>
2019-04-27 19:43:41 +01:00
<div class="figure" id="id5">
2019-04-26 00:32:32 +01:00
<img alt="Event Object Properties" src="../_images/event-object.png" />
<p class="caption"><span class="caption-text">Event Object Properties</span></p>
</div>
<dl class="docutils">
<dt>Id</dt>
<dd>This is the local id of the object in the map. Some script values use this local id to specify object when using scripting commands such as <cite>applymovement</cite>.</dd>
<dt>Sprite</dt>
<dd>The sprite that is used by the object.</dd>
<dt>Movement</dt>
<dd>The movement type used by the object during normal gameplay.</dd>
<dt>Movement Radius X/Y</dt>
<dd>Movement types that involves walking or moving around the map can be bounded by a radius. The ensures that the object is always within the specified range from its original position.</dd>
<dt>Script</dt>
<dd>The script that executes when the player interacts with the object.</dd>
<dt>Event Flag</dt>
<dd>The flag value that controls if the object is visible. If the flag is set (equal to 1), then the object will be invisible. If the Event Flag is set to <cite>0</cite>, then the object will always be visible because <cite>0</cite> means “no flag”.</dd>
<dt>Trainer Type</dt>
<dd><cite>NONE</cite>, <cite>NORMAL</cite>, or <cite>SEE ALL DIRECTIONS</cite>. If the object is a trainer, <cite>NORMAL</cite> means that the trainer will spot the player in the objects line-of-sight.</dd>
<dt>Sight Radius or Berry Tree ID</dt>
<dd>If the object is a trainer, this property control how many tiles the trainer can see to spot the player for battle. If the object is a berry tree, this specifies the global id of the berry tree. Each berry tree in the game has a unique berry tree id.</dd>
</dl>
</div>
<div class="section" id="event-warps">
2019-04-27 19:43:41 +01:00
<span id="id1"></span><h2>Event Warps<a class="headerlink" href="#event-warps" title="Permalink to this headline"></a></h2>
2019-04-26 00:32:32 +01:00
<p>Event warps are how the player is able to warp to other maps, such as entering a building. Double-clicking on a warp will automatically open the destination map and select the destination warp. This makes it very easy to navigate around in Porymap.</p>
2019-04-27 19:43:41 +01:00
<div class="figure" id="id6">
2019-04-26 00:32:32 +01:00
<img alt="Event Warp Properties" src="../_images/event-warp.png" />
<p class="caption"><span class="caption-text">Event Warp Properties</span></p>
</div>
<dl class="docutils">
<dt>Id</dt>
<dd>This is the local id of the warp in the map. This is used when setting the Destination Warp property for another warp.</dd>
<dt>Destination Map</dt>
<dd>The destination map name.</dd>
<dt>Destination Warp</dt>
<dd>The Id of the warp in the destination map.</dd>
</dl>
</div>
<div class="section" id="event-triggers">
<h2>Event Triggers<a class="headerlink" href="#event-triggers" title="Permalink to this headline"></a></h2>
<p>Event triggers are scripts that execute when the player walks over them. However, they only execute when a variable is equal some value. Typically, they execute once, set the variables value to something else, and then never execute again because the variables value no longer matches.</p>
2019-04-27 19:43:41 +01:00
<div class="figure" id="id7">
2019-04-26 00:32:32 +01:00
<img alt="Event Trigger Properties" src="../_images/event-trigger.png" />
<p class="caption"><span class="caption-text">Event Trigger Properties</span></p>
</div>
<dl class="docutils">
<dt>Id</dt>
<dd>The local id of the trigger in the map. This value is not used for anything.</dd>
<dt>Script</dt>
<dd>The script that executes when the player walks over the trigger AND when the <cite>Var</cite> equals the <cite>Var Value</cite>.</dd>
<dt>Var</dt>
<dd>The variable used to determine if the triggers Script should execute.</dd>
<dt>Var Value</dt>
<dd>The value that the Var must equal for the triggers Script to execute.</dd>
</dl>
</div>
<div class="section" id="event-weather-triggers">
<h2>Event Weather Triggers<a class="headerlink" href="#event-weather-triggers" title="Permalink to this headline"></a></h2>
<p>Event weather triggers are a very specific type of trigger. When the player walks over a weather trigger, the overworlds weather will transition to the specified weather type.</p>
2019-04-27 19:43:41 +01:00
<div class="figure" id="id8">
2019-04-26 00:32:32 +01:00
<img alt="Event Weather Trigger Properties" src="../_images/event-weather-trigger.png" />
<p class="caption"><span class="caption-text">Event Weather Trigger Properties</span></p>
</div>
<dl class="docutils">
<dt>Id</dt>
<dd>The local id of the trigger in the map. This value is not used for anything.</dd>
<dt>Weather</dt>
<dd>The type of weather to transition to.</dd>
</dl>
</div>
<div class="section" id="event-signs">
<h2>Event Signs<a class="headerlink" href="#event-signs" title="Permalink to this headline"></a></h2>
<p>Event signs, or signposts, are simple interactable scripts. They are typically used for things like signs in front of buildings. The players facing direction can be required to be a certain direction in order to interact with the sign. Signs are the first of three “BG” event types.</p>
2019-04-27 19:43:41 +01:00
<div class="figure" id="id9">
2019-04-26 00:32:32 +01:00
<img alt="Event Sign Properties" src="../_images/event-sign.png" />
<p class="caption"><span class="caption-text">Event Sign Properties</span></p>
</div>
<dl class="docutils">
<dt>Id</dt>
<dd>The local id of the BG event in the map. This value is not used for anything.</dd>
<dt>Player Facing Direction</dt>
<dd>The direction the player must be facing in order to execute the signs script.</dd>
<dt>Script</dt>
<dd>The script that executes when the player interacts with the sign.</dd>
</dl>
</div>
<div class="section" id="event-hidden-item">
<h2>Event Hidden Item<a class="headerlink" href="#event-hidden-item" title="Permalink to this headline"></a></h2>
<p>Hidden items are invisible items that can be picked up by the player. They each use a flag to ensure the item can only be picked up once.</p>
2019-04-27 19:43:41 +01:00
<div class="figure" id="id10">
2019-04-26 00:32:32 +01:00
<img alt="Event Hidden Item Properties" src="../_images/event-hidden-item.png" />
<p class="caption"><span class="caption-text">Event Hidden Item Properties</span></p>
</div>
<dl class="docutils">
<dt>Id</dt>
<dd>The local id of the BG event in the map. This value is not used for anything.</dd>
<dt>Item</dt>
<dd>The item the player will receive when interacting with this hidden item.</dd>
<dt>Flag</dt>
<dd>This flag is set when the player receives the hidden item.</dd>
</dl>
</div>
<div class="section" id="event-secret-base">
<h2>Event Secret Base<a class="headerlink" href="#event-secret-base" title="Permalink to this headline"></a></h2>
<p>This is the event used to mark entrances to secret bases. This event will only be functional on certain metatiles. Unfortunately, they are hardcoded into the games engine (see <code class="docutils literal notranslate"><span class="pre">sSecretBaseEntranceMetatiles</span></code> in <code class="docutils literal notranslate"><span class="pre">src/secret_base.c</span></code>).</p>
2019-04-27 19:43:41 +01:00
<div class="figure" id="id11">
2019-04-26 00:32:32 +01:00
<img alt="Event Secret Base Properties" src="../_images/event-secret-base.png" />
<p class="caption"><span class="caption-text">Event Secret Base Properties</span></p>
</div>
<dl class="docutils">
<dt>Id</dt>
<dd>The local id of the BG event in the map. This value is not used for anything.</dd>
<dt>Secret Base Id</dt>
<dd>The id of the destination secret base.</dd>
</dl>
</div>
<div class="section" id="adding-deleting-events">
<h2>Adding &amp; Deleting Events<a class="headerlink" href="#adding-deleting-events" title="Permalink to this headline"></a></h2>
<p>To add a new event, press the green plus button. <img alt="add-event-button" src="../_images/add-event-button.png" /> You can choose between the different types of events by clicking the small arrow on the right.</p>
<p>To delete the selected event, press the delete button. <img alt="delete-event-button" src="../_images/delete-event-button.png" /></p>
</div>
<div class="section" id="open-map-scripts">
<h2>Open Map Scripts<a class="headerlink" href="#open-map-scripts" title="Permalink to this headline"></a></h2>
<p>Clicking the <code class="docutils literal notranslate"><span class="pre">Open</span> <span class="pre">Map</span> <span class="pre">Scripts</span></code> button <img alt="open-map-scripts-button" src="../_images/open-map-scripts-button.png" /> will open the maps scripts file in your default text editor. If nothing happens when this button is clicked, you may need to associate a text editor with the <cite>.inc</cite> file extension.</p>
</div>
2019-04-21 17:20:49 +01:00
</div>
</div>
</div>
<footer>
<div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
<a href="editing-map-header.html" class="btn btn-neutral float-right" title="Editing Map Headers" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right"></span></a>
2019-04-21 17:20:49 +01:00
<a href="editing-map-collisions.html" class="btn btn-neutral float-left" title="Editing Map Collisions" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left"></span> Previous</a>
2019-04-21 17:20:49 +01:00
</div>
<hr/>
<div role="contentinfo">
<p>
&copy; Copyright 2019, huderlem
</p>
</div>
Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/rtfd/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
</footer>
</div>
</div>
</section>
</div>
<script type="text/javascript">
jQuery(function () {
SphinxRtdTheme.Navigation.enable(true);
});
</script>
</body>
</html>