porymap/docs/manual/project-files.html
GriffinR 6a982402d9
Some checks failed
Build Porymap / build-linux (5.14.2) (push) Has been cancelled
Build Porymap / build-linux (6.8.*) (push) Has been cancelled
Build Porymap / build-macos (macos-15-intel) (push) Has been cancelled
Build Porymap / build-macos (macos-latest) (push) Has been cancelled
Build Porymap / build-static-windows (push) Has been cancelled
Update manual
2025-12-26 21:46:48 -05:00

1038 lines
82 KiB
HTML
Raw Permalink 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 class="writer-html5" lang="en" data-content_root="../">
<head>
<meta charset="utf-8" /><meta name="viewport" content="width=device-width, initial-scale=1" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Project Files &mdash; porymap documentation</title>
<link rel="stylesheet" type="text/css" href="../_static/pygments.css?v=b86133f3" />
<link rel="stylesheet" type="text/css" href="../_static/css/theme.css?v=e59714d7" />
<link rel="stylesheet" type="text/css" href="../_static/css/custom.css?v=eb07c574" />
<link rel="shortcut icon" href="../_static/porymap-icon-2.ico"/>
<script src="../_static/jquery.js?v=5d32c60e"></script>
<script src="../_static/_sphinx_javascript_frameworks_compat.js?v=2cd50e6c"></script>
<script src="../_static/documentation_options.js?v=5929fcd5"></script>
<script src="../_static/doctools.js?v=9bcbadda"></script>
<script src="../_static/sphinx_highlight.js?v=dc90522c"></script>
<script src="../_static/js/theme.js"></script>
<link rel="index" title="Index" href="../genindex.html" />
<link rel="search" title="Search" href="../search.html" />
<link rel="next" title="Breaking Changes" href="breaking-changes.html" />
<link rel="prev" title="Scripting Capabilities" href="scripting-capabilities.html" />
</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">
<div class="wy-side-nav-search" style="background: linear-gradient(180deg, #08ACD5 50%, #FF6262 0%);" >
<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" aria-label="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="Navigation menu">
<p class="caption" role="heading"><span class="caption-text">User Manual</span></p>
<ul class="current">
<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><ul>
<li class="toctree-l3"><a class="reference internal" href="navigation.html#tabs">Tabs</a></li>
<li class="toctree-l3"><a class="reference internal" href="navigation.html#buttons">Buttons</a></li>
<li class="toctree-l3"><a class="reference internal" href="navigation.html#status-icons">Status Icons</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="navigation.html#main-window">Main Window</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#move-tool">Move 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#straight-paths">Straight Paths</a></li>
<li class="toctree-l2"><a class="reference internal" href="editing-map-tiles.html#change-dimensions">Change Dimensions</a><ul>
<li class="toctree-l3"><a class="reference internal" href="editing-map-tiles.html#border-dimensions">Border Dimensions</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="editing-map-tiles.html#change-layout">Change Layout</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#change-map-border">Change Map Border</a></li>
<li class="toctree-l2"><a class="reference internal" href="editing-map-tiles.html#undo-redo">Undo &amp; Redo</a></li>
<li class="toctree-l2"><a class="reference internal" href="editing-map-tiles.html#prefabs">Prefabs</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>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="editing-map-events.html">Editing Map Events</a><ul>
<li class="toctree-l2"><a class="reference internal" href="editing-map-events.html#adding-deleting-events">Adding &amp; Deleting Events</a></li>
<li class="toctree-l2"><a class="reference internal" href="editing-map-events.html#event-positions">Event Positions</a></li>
<li class="toctree-l2"><a class="reference internal" href="editing-map-events.html#object-events">Object Events</a></li>
<li class="toctree-l2"><a class="reference internal" href="editing-map-events.html#clone-object-events">Clone Object Events</a></li>
<li class="toctree-l2"><a class="reference internal" href="editing-map-events.html#warp-events">Warp Events</a></li>
<li class="toctree-l2"><a class="reference internal" href="editing-map-events.html#trigger-events">Trigger Events</a></li>
<li class="toctree-l2"><a class="reference internal" href="editing-map-events.html#weather-trigger-events">Weather Trigger Events</a></li>
<li class="toctree-l2"><a class="reference internal" href="editing-map-events.html#sign-event">Sign Event</a></li>
<li class="toctree-l2"><a class="reference internal" href="editing-map-events.html#hidden-item-event">Hidden Item Event</a></li>
<li class="toctree-l2"><a class="reference internal" href="editing-map-events.html#secret-base-event">Secret Base Event</a></li>
<li class="toctree-l2"><a class="reference internal" href="editing-map-events.html#heal-locations">Heal Locations</a></li>
<li class="toctree-l2"><a class="reference internal" href="editing-map-events.html#custom-attributes">Custom Attributes</a></li>
<li class="toctree-l2"><a class="reference internal" href="editing-map-events.html#open-map-scripts">Open Map Scripts</a></li>
<li class="toctree-l2"><a class="reference internal" href="editing-map-events.html#tool-buttons">Tool Buttons</a></li>
<li class="toctree-l2"><a class="reference internal" href="editing-map-events.html#ruler-tool">Ruler Tool</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="editing-map-header.html">Editing Map Headers</a></li>
<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>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="editing-wild-encounters.html">Editing Wild Encounters</a><ul>
<li class="toctree-l2"><a class="reference internal" href="editing-wild-encounters.html#adding-new-encounter-groups">Adding New Encounter Groups</a></li>
<li class="toctree-l2"><a class="reference internal" href="editing-wild-encounters.html#configuring-the-wild-encounter-fields">Configuring the Wild Encounter Fields</a></li>
<li class="toctree-l2"><a class="reference internal" href="editing-wild-encounters.html#summary-chart">Summary Chart</a></li>
<li class="toctree-l2"><a class="reference internal" href="editing-wild-encounters.html#species-search">Species Search</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="creating-new-maps.html">Creating New Maps</a></li>
<li class="toctree-l1"><a class="reference internal" href="region-map-editor.html">The Region Map Editor</a><ul>
<li class="toctree-l2"><a class="reference internal" href="region-map-editor.html#background-image-tab">Background Image Tab</a></li>
<li class="toctree-l2"><a class="reference internal" href="region-map-editor.html#map-layout-tab">Map Layout Tab</a></li>
<li class="toctree-l2"><a class="reference internal" href="region-map-editor.html#map-entries-tab">Map Entries Tab</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="tileset-editor.html">The Tileset Editor</a><ul>
<li class="toctree-l2"><a class="reference internal" href="tileset-editor.html#metatile-properties">Metatile Properties</a><ul>
<li class="toctree-l3"><a class="reference internal" href="tileset-editor.html#layer-type">Layer Type</a></li>
<li class="toctree-l3"><a class="reference internal" href="tileset-editor.html#metatile-behavior">Metatile Behavior</a></li>
<li class="toctree-l3"><a class="reference internal" href="tileset-editor.html#encounter-type">Encounter Type</a></li>
<li class="toctree-l3"><a class="reference internal" href="tileset-editor.html#terrain-type">Terrain Type</a></li>
<li class="toctree-l3"><a class="reference internal" href="tileset-editor.html#metatile-label">Metatile Label</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="tileset-editor.html#tools-menu">Tools Menu</a><ul>
<li class="toctree-l3"><a class="reference internal" href="tileset-editor.html#import-tiles-image">Import Tiles Image…</a></li>
<li class="toctree-l3"><a class="reference internal" href="tileset-editor.html#import-metatiles-from-advance-map-1-92">Import Metatiles from Advance Map 1.92…</a></li>
<li class="toctree-l3"><a class="reference internal" href="tileset-editor.html#change-number-of-metatiles">Change Number of Metatiles</a></li>
<li class="toctree-l3"><a class="reference internal" href="tileset-editor.html#other-tools">Other Tools</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="tileset-editor.html#palette-editor">Palette Editor</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="scripting-capabilities.html">Scripting Capabilities</a><ul>
<li class="toctree-l2"><a class="reference internal" href="scripting-capabilities.html#custom-scripts-editor">Custom Scripts Editor</a></li>
<li class="toctree-l2"><a class="reference internal" href="scripting-capabilities.html#writing-a-custom-script">Writing a Custom Script</a></li>
<li class="toctree-l2"><a class="reference internal" href="scripting-capabilities.html#registering-script-actions">Registering Script Actions</a></li>
<li class="toctree-l2"><a class="reference internal" href="scripting-capabilities.html#scripting-api">Scripting API</a><ul>
<li class="toctree-l3"><a class="reference internal" href="scripting-capabilities.html#callbacks">Callbacks</a><ul>
<li class="toctree-l4"><a class="reference internal" href="scripting-capabilities.html#onProjectOpened"><code class="docutils literal notranslate"><span class="pre">onProjectOpened</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="scripting-capabilities.html#onProjectClosed"><code class="docutils literal notranslate"><span class="pre">onProjectClosed</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="scripting-capabilities.html#onMapOpened"><code class="docutils literal notranslate"><span class="pre">onMapOpened</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="scripting-capabilities.html#onLayoutOpened"><code class="docutils literal notranslate"><span class="pre">onLayoutOpened</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="scripting-capabilities.html#onBlockChanged"><code class="docutils literal notranslate"><span class="pre">onBlockChanged</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="scripting-capabilities.html#onBorderMetatileChanged"><code class="docutils literal notranslate"><span class="pre">onBorderMetatileChanged</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="scripting-capabilities.html#onBlockHoverChanged"><code class="docutils literal notranslate"><span class="pre">onBlockHoverChanged</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="scripting-capabilities.html#onBlockHoverCleared"><code class="docutils literal notranslate"><span class="pre">onBlockHoverCleared</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="scripting-capabilities.html#onMapResized"><code class="docutils literal notranslate"><span class="pre">onMapResized</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="scripting-capabilities.html#onBorderResized"><code class="docutils literal notranslate"><span class="pre">onBorderResized</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="scripting-capabilities.html#onMapShifted"><code class="docutils literal notranslate"><span class="pre">onMapShifted</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="scripting-capabilities.html#onTilesetUpdated"><code class="docutils literal notranslate"><span class="pre">onTilesetUpdated</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="scripting-capabilities.html#onMainTabChanged"><code class="docutils literal notranslate"><span class="pre">onMainTabChanged</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="scripting-capabilities.html#onMapViewTabChanged"><code class="docutils literal notranslate"><span class="pre">onMapViewTabChanged</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="scripting-capabilities.html#onBorderVisibilityToggled"><code class="docutils literal notranslate"><span class="pre">onBorderVisibilityToggled</span></code></a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="scripting-capabilities.html#functions">Functions</a><ul>
<li class="toctree-l4"><a class="reference internal" href="scripting-capabilities.html#map-editing-functions">Map Editing Functions</a></li>
<li class="toctree-l4"><a class="reference internal" href="scripting-capabilities.html#map-header-editing-functions">Map Header Editing Functions</a></li>
<li class="toctree-l4"><a class="reference internal" href="scripting-capabilities.html#tileset-functions">Tileset Functions</a></li>
<li class="toctree-l4"><a class="reference internal" href="scripting-capabilities.html#overlay-functions">Overlay Functions</a></li>
<li class="toctree-l4"><a class="reference internal" href="scripting-capabilities.html#settings-functions">Settings Functions</a></li>
<li class="toctree-l4"><a class="reference internal" href="scripting-capabilities.html#utility-functions">Utility Functions</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="scripting-capabilities.html#constants">Constants</a><ul>
<li class="toctree-l4"><a class="reference internal" href="scripting-capabilities.html#constants.max_primary_tiles"><code class="docutils literal notranslate"><span class="pre">constants.max_primary_tiles</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="scripting-capabilities.html#constants.max_secondary_tiles"><code class="docutils literal notranslate"><span class="pre">constants.max_secondary_tiles</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="scripting-capabilities.html#constants.max_primary_metatiles"><code class="docutils literal notranslate"><span class="pre">constants.max_primary_metatiles</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="scripting-capabilities.html#constants.max_secondary_metatiles"><code class="docutils literal notranslate"><span class="pre">constants.max_secondary_metatiles</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="scripting-capabilities.html#constants.num_primary_palettes"><code class="docutils literal notranslate"><span class="pre">constants.num_primary_palettes</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="scripting-capabilities.html#constants.num_secondary_palettes"><code class="docutils literal notranslate"><span class="pre">constants.num_secondary_palettes</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="scripting-capabilities.html#constants.layers_per_metatile"><code class="docutils literal notranslate"><span class="pre">constants.layers_per_metatile</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="scripting-capabilities.html#constants.tiles_per_metatile"><code class="docutils literal notranslate"><span class="pre">constants.tiles_per_metatile</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="scripting-capabilities.html#constants.metatile_behaviors"><code class="docutils literal notranslate"><span class="pre">constants.metatile_behaviors</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="scripting-capabilities.html#constants.base_game_version"><code class="docutils literal notranslate"><span class="pre">constants.base_game_version</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="scripting-capabilities.html#constants.version.major"><code class="docutils literal notranslate"><span class="pre">constants.version.major</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="scripting-capabilities.html#constants.version.minor"><code class="docutils literal notranslate"><span class="pre">constants.version.minor</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="scripting-capabilities.html#constants.version.patch"><code class="docutils literal notranslate"><span class="pre">constants.version.patch</span></code></a></li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l1 current"><a class="current reference internal" href="#">Project Files</a><ul>
<li class="toctree-l2"><a class="reference internal" href="#identifiers">Identifiers</a></li>
<li class="toctree-l2"><a class="reference internal" href="#global-constants">Global Constants</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="breaking-changes.html">Breaking Changes</a><ul>
<li class="toctree-l2"><a class="reference internal" href="breaking-changes.html#versioning">Versioning</a></li>
<li class="toctree-l2"><a class="reference internal" href="breaking-changes.html#what-s-a-breaking-change">Whats a breaking change?</a></li>
<li class="toctree-l2"><a class="reference internal" href="breaking-changes.html#updating-your-project">Updating your project</a><ul>
<li class="toctree-l3"><a class="reference internal" href="breaking-changes.html#from-5-x-x-to-6-x-x">From <code class="docutils literal notranslate"><span class="pre">5.x.x</span></code> to <code class="docutils literal notranslate"><span class="pre">6.x.x</span></code></a><ul>
<li class="toctree-l4"><a class="reference internal" href="breaking-changes.html#map-num-map-group">1. <code class="docutils literal notranslate"><span class="pre">MAP_NUM</span></code>/<code class="docutils literal notranslate"><span class="pre">MAP_GROUP</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="breaking-changes.html#heal-locations">2. Heal Locations</a></li>
<li class="toctree-l4"><a class="reference internal" href="breaking-changes.html#region-map-sections">3. Region Map Sections</a></li>
<li class="toctree-l4"><a class="reference internal" href="breaking-changes.html#local-ids">4. Local IDs</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="breaking-changes.html#from-4-x-x-to-5-x-x">From <code class="docutils literal notranslate"><span class="pre">4.x.x</span></code> to <code class="docutils literal notranslate"><span class="pre">5.x.x</span></code></a><ul>
<li class="toctree-l4"><a class="reference internal" href="breaking-changes.html#map-none-renamed">1. <code class="docutils literal notranslate"><span class="pre">MAP_NONE</span></code> renamed</a></li>
<li class="toctree-l4"><a class="reference internal" href="breaking-changes.html#dest-warp-id">2. <code class="docutils literal notranslate"><span class="pre">dest_warp_id</span></code></a></li>
<li class="toctree-l4"><a class="reference internal" href="breaking-changes.html#clone-object-events">3. Clone Object events</a></li>
<li class="toctree-l4"><a class="reference internal" href="breaking-changes.html#region-map-editor">4. Region Map Editor</a></li>
<li class="toctree-l4"><a class="reference internal" href="breaking-changes.html#additional-api-changes">5. Additional API changes</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="breaking-changes.html#prior-to-4-x-x">Prior to <code class="docutils literal notranslate"><span class="pre">4.x.x</span></code></a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="shortcuts.html">Shortcuts</a><ul>
<li class="toctree-l2"><a class="reference internal" href="shortcuts.html#main-window">Main Window</a></li>
<li class="toctree-l2"><a class="reference internal" href="shortcuts.html#tileset-editor">Tileset Editor</a></li>
<li class="toctree-l2"><a class="reference internal" href="shortcuts.html#region-map-editor">Region Map Editor</a></li>
<li class="toctree-l2"><a class="reference internal" href="shortcuts.html#custom-scripts-editor">Custom Scripts Editor</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="settings-and-options.html">Porymap Settings</a><ul>
<li class="toctree-l2"><a class="reference internal" href="settings-and-options.html#global-settings">Global settings</a></li>
<li class="toctree-l2"><a class="reference internal" href="settings-and-options.html#project-settings">Project settings</a><ul>
<li class="toctree-l3"><a class="reference internal" href="settings-and-options.html#general">General</a></li>
<li class="toctree-l3"><a class="reference internal" href="settings-and-options.html#maps">Maps</a></li>
<li class="toctree-l3"><a class="reference internal" href="settings-and-options.html#tilesets">Tilesets</a></li>
<li class="toctree-l3"><a class="reference internal" href="settings-and-options.html#events">Events</a></li>
<li class="toctree-l3"><a class="reference internal" href="settings-and-options.html#files-identifiers">Files &amp; Identifiers</a></li>
</ul>
</li>
</ul>
</li>
</ul>
<p class="caption" role="heading"><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></li>
<li class="toctree-l2"><a class="reference internal" href="../reference/changelog.html#id1">6.3.0 - 2025-12-26</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>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../reference/changelog.html#id2">6.2.0 - 2025-08-08</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id3">Added</a></li>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id4">Changed</a></li>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id5">Fixed</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../reference/changelog.html#id6">6.1.0 - 2025-06-09</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id7">Added</a></li>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id8">Changed</a></li>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id9">Fixed</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../reference/changelog.html#id10">6.0.0 - 2025-05-27</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#id11">Added</a></li>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id12">Changed</a></li>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id13">Fixed</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../reference/changelog.html#id14">5.4.1 - 2024-03-21</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id15">Fixed</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../reference/changelog.html#id16">5.4.0 - 2024-02-13</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id17">Added</a></li>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id18">Changed</a></li>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id19">Fixed</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../reference/changelog.html#id20">5.3.0 - 2024-01-15</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id21">Added</a></li>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id22">Changed</a></li>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id23">Fixed</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../reference/changelog.html#id24">5.2.0 - 2024-01-02</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id25">Added</a></li>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id26">Changed</a></li>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id27">Fixed</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../reference/changelog.html#id28">5.1.1 - 2023-02-20</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id29">Added</a></li>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id30">Changed</a></li>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id31">Fixed</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../reference/changelog.html#id32">5.1.0 - 2023-01-22</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id33">Added</a></li>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id34">Changed</a></li>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id35">Fixed</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../reference/changelog.html#id36">5.0.0 - 2022-10-30</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id37">Breaking Changes</a></li>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id38">Added</a></li>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id39">Changed</a></li>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id40">Fixed</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../reference/changelog.html#id41">4.5.0 - 2021-12-26</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id42">Added</a></li>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id43">Changed</a></li>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id44">Fixed</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../reference/changelog.html#id45">4.4.0 - 2020-12-20</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id46">Added</a></li>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id47">Changed</a></li>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id48">Fixed</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../reference/changelog.html#id49">4.3.1 - 2020-07-17</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id50">Added</a></li>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id51">Changed</a></li>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id52">Fixed</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../reference/changelog.html#id53">4.3.0 - 2020-06-27</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id54">Added</a></li>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id55">Changed</a></li>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id56">Fixed</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../reference/changelog.html#id57">4.2.0 - 2020-06-06</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id58">Added</a></li>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id59">Changed</a></li>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id60">Fixed</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../reference/changelog.html#id61">4.1.0 - 2020-05-18</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id62">Added</a></li>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id63">Changed</a></li>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id64">Fixed</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../reference/changelog.html#id65">4.0.0 - 2020-04-28</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id66">Breaking Changes</a></li>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id67">Added</a></li>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id68">Changed</a></li>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id69">Fixed</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../reference/changelog.html#id70">3.0.1 - 2020-03-04</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id71">Fixed</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../reference/changelog.html#id72">3.0.0 - 2020-03-04</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id73">Breaking Changes</a></li>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id74">Added</a></li>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id75">Changed</a></li>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id76">Fixed</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../reference/changelog.html#id77">2.0.0 - 2019-10-16</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id78">Breaking Changes</a></li>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id79">Added</a></li>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id80">Changed</a></li>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id81">Fixed</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../reference/changelog.html#id82">1.2.2 - 2019-05-16</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id83">Added</a></li>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id84">Changed</a></li>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id85">Fixed</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../reference/changelog.html#id86">1.2.1 - 2019-02-16</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id87">Added</a></li>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id88">Fixed</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../reference/changelog.html#id89">1.2.0 - 2019-02-04</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id90">Breaking Changes</a></li>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id91">Added</a></li>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id92">Changed</a></li>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id93">Fixed</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../reference/changelog.html#id94">1.1.0 - 2018-12-27</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id95">Breaking Changes</a></li>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id96">Added</a></li>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id97">Changed</a></li>
<li class="toctree-l3"><a class="reference internal" href="../reference/changelog.html#id98">Fixed</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../reference/changelog.html#id99">1.0.0 - 2018-10-26</a></li>
</ul>
</li>
<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="Mobile navigation menu" style="background: linear-gradient(180deg, #08ACD5 50%, #FF6262 0%);" >
<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="Page navigation">
<ul class="wy-breadcrumbs">
<li><a href="../index.html" class="icon icon-home" aria-label="Home"></a></li>
<li class="breadcrumb-item active">Project Files</li>
<li class="wy-breadcrumbs-aside">
<a href="https://github.com/huderlem/porymap/blob/master/docsrc/manual/project-files.rst" class="fa fa-github"> Edit on GitHub</a>
</li>
</ul>
<hr/>
</div>
<div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
<div itemprop="articleBody">
<section id="project-files">
<span id="files"></span><h1>Project Files<a class="headerlink" href="#project-files" title="Link to this heading"></a></h1>
<p>Porymap relies on the user maintaining a certain level of integrity with their project files.
This is a list of files that porymap reads from and writes to. Generally, if porymap writes
to a file, it probably is not a good idea to edit yourself unless otherwise noted.</p>
<p>The filepath that Porymap expects for each file can be overridden on the <code class="docutils literal notranslate"><span class="pre">Files</span></code> tab of <code class="docutils literal notranslate"><span class="pre">Options</span> <span class="pre">&gt;</span> <span class="pre">Project</span> <span class="pre">Settings</span></code>. A new path can be specified by entering it in the text box or choosing it with the <a class="reference internal" href="../_images/folder.png"><img alt="button-folder" src="../_images/folder.png" style="width: 24px; height: 24px;" /></a> button. Paths are expected to be relative to the root project folder. If no path is specified, or if the file/folder specified does not exist, then the default path will be used instead. The name of each setting in this section is listed in the table below under <code class="docutils literal notranslate"><span class="pre">Setting</span></code>.</p>
<figure class="align-center">
<a class="reference internal image-reference" href="../_images/tab-files.png"><img alt="Files tab" src="../_images/tab-files.png" style="width: 75%;" />
</a>
</figure>
<table class="docutils align-default">
<colgroup>
<col style="width: 22.2%" />
<col style="width: 5.6%" />
<col style="width: 5.6%" />
<col style="width: 22.2%" />
<col style="width: 44.4%" />
</colgroup>
<thead>
<tr class="row-odd"><th class="head"><p>File Name</p></th>
<th class="head"><p>Read</p></th>
<th class="head"><p>Write</p></th>
<th class="head"><p>Setting</p></th>
<th class="head"><p>Notes</p></th>
</tr>
</thead>
<tbody>
<tr class="row-even"><td><p>data/maps/</p></td>
<td><p>yes</p></td>
<td><p>yes</p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">data_map_folders</span></code></p></td>
<td><p>expected folder to find/create map data</p></td>
</tr>
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">data_map_folders</span></code>/*/map.json</p></td>
<td><p>yes</p></td>
<td><p>yes</p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">--</span></code></p></td>
<td></td>
</tr>
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">data_map_folders</span></code>/*/scripts.[inc|pory]</p></td>
<td><p>yes</p></td>
<td><p>no</p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">--</span></code></p></td>
<td><p>for finding script labels</p></td>
</tr>
<tr class="row-odd"><td><p>data/scripts/*.[inc|pory]</p></td>
<td><p>yes</p></td>
<td><p>no</p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">data_scripts_folders</span></code></p></td>
<td><p>for finding script labels</p></td>
</tr>
<tr class="row-even"><td><p>data/event_scripts.s</p></td>
<td><p>no</p></td>
<td><p>yes</p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">data_event_scripts</span></code></p></td>
<td><p>only appends new script files to end of file</p></td>
</tr>
<tr class="row-odd"><td><p>data/maps/map_groups.json</p></td>
<td><p>yes</p></td>
<td><p>yes</p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">json_map_groups</span></code></p></td>
<td><p>for populating the map list</p></td>
</tr>
<tr class="row-even"><td><p>data/layouts/layouts.json</p></td>
<td><p>yes</p></td>
<td><p>yes</p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">json_layouts</span></code></p></td>
<td><p>for populating the layout list and to know where layout data is. Files specified with <code class="docutils literal notranslate"><span class="pre">border_filepath</span></code> or <code class="docutils literal notranslate"><span class="pre">blockdata_filepath</span></code> in this file (normally, <code class="docutils literal notranslate"><span class="pre">border.bin</span></code> and <code class="docutils literal notranslate"><span class="pre">map.bin</span></code>) will also be read/written.</p></td>
</tr>
<tr class="row-odd"><td><p>data/layouts/</p></td>
<td><p>yes</p></td>
<td><p>yes</p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">data_layouts_folders</span></code></p></td>
<td><p>the root folder for creating new layout folders with <code class="docutils literal notranslate"><span class="pre">border.bin</span></code> and <code class="docutils literal notranslate"><span class="pre">map.bin</span></code> files.</p></td>
</tr>
<tr class="row-even"><td><p>src/data/tilesets/headers.h</p></td>
<td><p>yes</p></td>
<td><p>yes</p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">tilesets_headers</span></code></p></td>
<td><p>to populate the tileset list, to know where tileset data is, and to add new tileset data.</p></td>
</tr>
<tr class="row-odd"><td><p>src/data/tilesets/graphics.h</p></td>
<td><p>yes</p></td>
<td><p>yes</p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">tilesets_graphics</span></code></p></td>
<td><p>to locate tileset tiles and palettes, and to add new tileset data. The source files specified here (normally, <code class="docutils literal notranslate"><span class="pre">tiles.png</span></code> and <code class="docutils literal notranslate"><span class="pre">palettes/*.pal</span></code>) will also be read/written.</p></td>
</tr>
<tr class="row-even"><td><p>src/data/tilesets/metatiles.h</p></td>
<td><p>yes</p></td>
<td><p>yes</p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">tilesets_metatiles</span></code></p></td>
<td><p>to locate tileset metatile data, and to add new tileset data. The source files specified here (normally, <code class="docutils literal notranslate"><span class="pre">metatiles.bin</span></code> and <code class="docutils literal notranslate"><span class="pre">metatile_attributes.bin</span></code>) will also be read/written.</p></td>
</tr>
<tr class="row-odd"><td><p>data/tilesets/headers.inc</p></td>
<td><p>yes</p></td>
<td><p>yes</p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">tilesets_headers_asm</span></code></p></td>
<td><p>old assembly format to use if <code class="docutils literal notranslate"><span class="pre">tilesets_headers</span></code> cant be found</p></td>
</tr>
<tr class="row-even"><td><p>data/tilesets/graphics.inc</p></td>
<td><p>yes</p></td>
<td><p>yes</p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">tilesets_graphics_asm</span></code></p></td>
<td><p>old assembly format to use if <code class="docutils literal notranslate"><span class="pre">tilesets_headers</span></code> cant be found</p></td>
</tr>
<tr class="row-odd"><td><p>data/tilesets/metatiles.inc</p></td>
<td><p>yes</p></td>
<td><p>yes</p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">tilesets_metatiles_asm</span></code></p></td>
<td><p>old assembly format to use if <code class="docutils literal notranslate"><span class="pre">tilesets_headers</span></code> cant be found</p></td>
</tr>
<tr class="row-even"><td><p>data/tilesets/primary/</p></td>
<td><p>yes</p></td>
<td><p>yes</p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">data_primary_tilesets_folders</span></code></p></td>
<td><p>expected folder to find/create data for primary tilesets</p></td>
</tr>
<tr class="row-odd"><td><p>data/tilesets/secondary/</p></td>
<td><p>yes</p></td>
<td><p>yes</p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">data_secondary_tilesets_folders</span></code></p></td>
<td><p>expected folder to find/create data for secondary tilesets</p></td>
</tr>
<tr class="row-even"><td><p>src/data/wild_encounters.json</p></td>
<td><p>yes</p></td>
<td><p>yes</p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">json_wild_encounters</span></code></p></td>
<td><p>optional (only required to use Wild Pokémon tab)</p></td>
</tr>
<tr class="row-odd"><td><p>src/data/heal_locations.json</p></td>
<td><p>yes</p></td>
<td><p>yes</p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">json_heal_locations</span></code></p></td>
<td></td>
</tr>
<tr class="row-even"><td><p>src/data/object_events/object_event_graphics_info_pointers.h</p></td>
<td><p>yes</p></td>
<td><p>no</p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">data_obj_event_gfx_pointers</span></code></p></td>
<td><p>to read <code class="docutils literal notranslate"><span class="pre">symbol_obj_event_gfx_pointers</span></code></p></td>
</tr>
<tr class="row-odd"><td><p>src/data/object_events/object_event_graphics_info.h</p></td>
<td><p>yes</p></td>
<td><p>no</p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">data_obj_event_gfx_info</span></code></p></td>
<td><p>to read data about how to display object event sprites</p></td>
</tr>
<tr class="row-even"><td><p>src/data/object_events/object_event_pic_tables.h</p></td>
<td><p>yes</p></td>
<td><p>no</p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">data_obj_event_pic_tables</span></code></p></td>
<td><p>to locate object event sprites using data from <code class="docutils literal notranslate"><span class="pre">data_obj_event_gfx_info</span></code></p></td>
</tr>
<tr class="row-odd"><td><p>src/data/object_events/object_event_graphics.h</p></td>
<td><p>yes</p></td>
<td><p>no</p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">data_obj_event_gfx</span></code></p></td>
<td><p>to locate object event sprites using data from <code class="docutils literal notranslate"><span class="pre">data_obj_event_pic_tables</span></code></p></td>
</tr>
<tr class="row-even"><td><p>src/data/graphics/pokemon.h</p></td>
<td><p>yes</p></td>
<td><p>no</p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">data_pokemon_gfx</span></code></p></td>
<td><p>if <code class="docutils literal notranslate"><span class="pre">symbol_pokemon_icon_table</span></code> is read this file will be searched for filepaths to species icon</p></td>
</tr>
<tr class="row-odd"><td><p>src/data/region_map/region_map_sections.json</p></td>
<td><p>yes</p></td>
<td><p>yes</p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">json_region_map_entries</span></code></p></td>
<td><p>for populating the locations list and for region map data</p></td>
</tr>
<tr class="row-even"><td><p>src/data/region_map/porymap_config.json</p></td>
<td><p>yes</p></td>
<td><p>yes</p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">json_region_porymap_cfg</span></code></p></td>
<td><p>Porymaps config file for the region map editor</p></td>
</tr>
<tr class="row-odd"><td><p>include/constants/global.h</p></td>
<td><p>yes</p></td>
<td><p>no</p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">constants_global</span></code></p></td>
<td><p>to evaluate <code class="docutils literal notranslate"><span class="pre">define_obj_event_count</span></code></p></td>
</tr>
<tr class="row-even"><td><p>include/constants/items.h</p></td>
<td><p>yes</p></td>
<td><p>no</p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">constants_items</span></code></p></td>
<td><p>to find <code class="docutils literal notranslate"><span class="pre">regex_items</span></code> names</p></td>
</tr>
<tr class="row-odd"><td><p>include/constants/flags.h</p></td>
<td><p>yes</p></td>
<td><p>no</p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">constants_flags</span></code></p></td>
<td><p>to find <code class="docutils literal notranslate"><span class="pre">regex_flags</span></code> names</p></td>
</tr>
<tr class="row-even"><td><p>include/constants/vars.h</p></td>
<td><p>yes</p></td>
<td><p>no</p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">constants_vars</span></code></p></td>
<td><p>to find <code class="docutils literal notranslate"><span class="pre">regex_vars</span></code> names</p></td>
</tr>
<tr class="row-odd"><td><p>include/constants/weather.h</p></td>
<td><p>yes</p></td>
<td><p>no</p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">constants_weather</span></code></p></td>
<td><p>to find <code class="docutils literal notranslate"><span class="pre">regex_weather</span></code> names</p></td>
</tr>
<tr class="row-even"><td><p>include/constants/songs.h</p></td>
<td><p>yes</p></td>
<td><p>no</p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">constants_songs</span></code></p></td>
<td><p>to find <code class="docutils literal notranslate"><span class="pre">regex_music</span></code> names</p></td>
</tr>
<tr class="row-odd"><td><p>include/constants/pokemon.h</p></td>
<td><p>yes</p></td>
<td><p>no</p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">constants_pokemon</span></code></p></td>
<td><p>to evaluate <code class="docutils literal notranslate"><span class="pre">define_min_level</span></code> and <code class="docutils literal notranslate"><span class="pre">define_max_level</span></code></p></td>
</tr>
<tr class="row-even"><td><p>include/constants/map_types.h</p></td>
<td><p>yes</p></td>
<td><p>no</p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">constants_map_types</span></code></p></td>
<td><p>to find <code class="docutils literal notranslate"><span class="pre">regex_map_types</span></code> and <code class="docutils literal notranslate"><span class="pre">regex_battle_scenes</span></code> names</p></td>
</tr>
<tr class="row-odd"><td><p>include/constants/trainer_types.h</p></td>
<td><p>yes</p></td>
<td><p>no</p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">constants_trainer_types</span></code></p></td>
<td><p>to find <code class="docutils literal notranslate"><span class="pre">regex_trainer_types</span></code> names</p></td>
</tr>
<tr class="row-even"><td><p>include/constants/secret_bases.h</p></td>
<td><p>yes</p></td>
<td><p>no</p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">constants_secret_bases</span></code></p></td>
<td><p>to find <code class="docutils literal notranslate"><span class="pre">regex_secret_bases</span></code> names</p></td>
</tr>
<tr class="row-odd"><td><p>include/constants/event_object_movement.h</p></td>
<td><p>yes</p></td>
<td><p>no</p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">constants_obj_event_movement</span></code></p></td>
<td><p>to find <code class="docutils literal notranslate"><span class="pre">regex_movement_types</span></code> names</p></td>
</tr>
<tr class="row-even"><td><p>include/constants/event_objects.h</p></td>
<td><p>yes</p></td>
<td><p>no</p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">constants_obj_events</span></code></p></td>
<td><p>to evaluate <code class="docutils literal notranslate"><span class="pre">regex_obj_event_gfx</span></code> constants</p></td>
</tr>
<tr class="row-odd"><td><p>include/constants/event_bg.h</p></td>
<td><p>yes</p></td>
<td><p>no</p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">constants_event_bg</span></code></p></td>
<td><p>to find <code class="docutils literal notranslate"><span class="pre">regex_sign_facing_directions</span></code> names</p></td>
</tr>
<tr class="row-even"><td><p>include/constants/metatile_labels.h</p></td>
<td><p>yes</p></td>
<td><p>yes</p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">constants_metatile_labels</span></code></p></td>
<td><p>to read/write metatile labels using <code class="docutils literal notranslate"><span class="pre">define_metatile_label_prefix</span></code></p></td>
</tr>
<tr class="row-odd"><td><p>include/constants/metatile_behaviors.h</p></td>
<td><p>yes</p></td>
<td><p>no</p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">constants_metatile_behaviors</span></code></p></td>
<td><p>to evaluate <code class="docutils literal notranslate"><span class="pre">regex_behaviors</span></code> constants</p></td>
</tr>
<tr class="row-even"><td><p>include/constants/species.h</p></td>
<td><p>yes</p></td>
<td><p>no</p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">constants_species</span></code></p></td>
<td><p>to find names using <code class="docutils literal notranslate"><span class="pre">define_species_prefix</span></code></p></td>
</tr>
<tr class="row-odd"><td><p>include/global.fieldmap.h</p></td>
<td><p>yes</p></td>
<td><p>no</p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">global_fieldmap</span></code></p></td>
<td><p>to evaluate map and tileset data masks, and to read <code class="docutils literal notranslate"><span class="pre">regex_encounter_types</span></code> / <code class="docutils literal notranslate"><span class="pre">regex_terrain_types</span></code></p></td>
</tr>
<tr class="row-even"><td><p>include/fieldmap.h</p></td>
<td><p>yes</p></td>
<td><p>no</p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">constants_fieldmap</span></code></p></td>
<td><p>to evaluate a variety of tileset and map constants</p></td>
</tr>
<tr class="row-odd"><td><p>src/fieldmap.c</p></td>
<td><p>yes</p></td>
<td><p>no</p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">fieldmap</span></code></p></td>
<td><p>to read <code class="docutils literal notranslate"><span class="pre">symbol_attribute_table</span></code></p></td>
</tr>
<tr class="row-even"><td><p>src/event_object_movement.c</p></td>
<td><p>yes</p></td>
<td><p>no</p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">initial_facing_table</span></code></p></td>
<td><p>to read <code class="docutils literal notranslate"><span class="pre">symbol_facing_directions</span></code></p></td>
</tr>
<tr class="row-odd"><td><p>src/wild_encounter.c</p></td>
<td><p>yes</p></td>
<td><p>no</p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">wild_encounter</span></code></p></td>
<td><p>to evaluate <code class="docutils literal notranslate"><span class="pre">define_max_encounter_rate</span></code></p></td>
</tr>
<tr class="row-even"><td><p>src/pokemon_icon.c</p></td>
<td><p>yes</p></td>
<td><p>no</p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">pokemon_icon_table</span></code></p></td>
<td><p>to read <code class="docutils literal notranslate"><span class="pre">symbol_pokemon_icon_table</span></code></p></td>
</tr>
<tr class="row-odd"><td><p>graphics/pokemon/</p></td>
<td><p>yes</p></td>
<td><p>no</p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">pokemon_gfx</span></code></p></td>
<td><p>to search for Pokémon <code class="docutils literal notranslate"><span class="pre">icon.png</span></code> files if they arent found via <code class="docutils literal notranslate"><span class="pre">symbol_pokemon_icon_table</span></code></p></td>
</tr>
</tbody>
</table>
<section id="identifiers">
<h2>Identifiers<a class="headerlink" href="#identifiers" title="Link to this heading"></a></h2>
<p>In addition to these files, there are some specific symbol and macro names that Porymap expects to find in your project. These can be overridden on the <code class="docutils literal notranslate"><span class="pre">Identifiers</span></code> tab of <code class="docutils literal notranslate"><span class="pre">Options</span> <span class="pre">&gt;</span> <span class="pre">Project</span> <span class="pre">Settings</span></code>. The name of each setting in this section is listed in the table below under <code class="docutils literal notranslate"><span class="pre">Setting</span></code>. Settings with <code class="docutils literal notranslate"><span class="pre">regex</span></code> in the name support the <a class="reference external" href="https://perldoc.perl.org/perlre">regular expression syntax</a> used by Qt.</p>
<figure class="align-center">
<a class="reference internal image-reference" href="../_images/tab-identifiers.png"><img alt="Identifiers tab" src="../_images/tab-identifiers.png" style="width: 75%;" />
</a>
</figure>
<table class="docutils align-default">
<colgroup>
<col style="width: 28.6%" />
<col style="width: 28.6%" />
<col style="width: 42.9%" />
</colgroup>
<thead>
<tr class="row-odd"><th class="head"><p>Setting</p></th>
<th class="head"><p>Default</p></th>
<th class="head"><p>Notes</p></th>
</tr>
</thead>
<tbody>
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">symbol_facing_directions</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">gInitialMovementTypeFacingDirections</span></code></p></td>
<td><p>to set sprite frame for Object events based on its <code class="docutils literal notranslate"><span class="pre">Movement</span></code> type</p></td>
</tr>
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">symbol_obj_event_gfx_pointers</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">gObjectEventGraphicsInfoPointers</span></code></p></td>
<td><p>the array mapping <code class="docutils literal notranslate"><span class="pre">regex_obj_event_gfx</span></code> constants to their data</p></td>
</tr>
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">symbol_pokemon_icon_table</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">gMonIconTable</span></code></p></td>
<td><p>to map species constants to icon images</p></td>
</tr>
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">symbol_attribute_table</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">sMetatileAttrMasks</span></code></p></td>
<td><p>optionally read to get settings on <code class="docutils literal notranslate"><span class="pre">Tilesets</span></code> tab</p></td>
</tr>
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">symbol_tilesets_prefix</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">gTileset_</span></code></p></td>
<td><p>for new tileset names and to extract base tileset names</p></td>
</tr>
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">symbol_dynamic_map_name</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">Dynamic</span></code></p></td>
<td><p>reserved map name to display for <code class="docutils literal notranslate"><span class="pre">define_map_dynamic</span></code></p></td>
</tr>
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">define_obj_event_count</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">OBJECT_EVENT_TEMPLATES_COUNT</span></code></p></td>
<td><p>to limit total Object events</p></td>
</tr>
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">define_min_level</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">MIN_LEVEL</span></code></p></td>
<td><p>minimum wild encounters level</p></td>
</tr>
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">define_max_level</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">MAX_LEVEL</span></code></p></td>
<td><p>maximum wild encounters level</p></td>
</tr>
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">define_max_encounter_rate</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">MAX_ENCOUNTER_RATE</span></code></p></td>
<td><p>this value / 16 will be the maximum encounter rate on the <code class="docutils literal notranslate"><span class="pre">Wild</span> <span class="pre">Pokémon</span></code> tab</p></td>
</tr>
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">define_tiles_primary</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">NUM_TILES_IN_PRIMARY</span></code></p></td>
<td></td>
</tr>
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">define_tiles_total</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">NUM_TILES_TOTAL</span></code></p></td>
<td></td>
</tr>
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">define_metatiles_primary</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">NUM_METATILES_IN_PRIMARY</span></code></p></td>
<td><p>total metatiles are calculated using metatile ID mask</p></td>
</tr>
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">define_pals_primary</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">NUM_PALS_IN_PRIMARY</span></code></p></td>
<td></td>
</tr>
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">define_pals_total</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">NUM_PALS_TOTAL</span></code></p></td>
<td></td>
</tr>
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">define_tiles_per_metatile</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">NUM_TILES_PER_METATILE</span></code></p></td>
<td><p>to determine if triple-layer metatiles are in use. Values other than 8 or 12 are ignored</p></td>
</tr>
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">define_map_size</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">MAX_MAP_DATA_SIZE</span></code></p></td>
<td><p>to limit map dimensions</p></td>
</tr>
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">define_map_offset_width</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">MAP_OFFSET_W</span></code></p></td>
<td><p>to limit map dimensions</p></td>
</tr>
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">define_map_offset_height</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">MAP_OFFSET_H</span></code></p></td>
<td><p>to limit map dimensions</p></td>
</tr>
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">define_mask_metatile</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">MAPGRID_METATILE_ID_MASK</span></code></p></td>
<td><p>optionally read to get settings on <code class="docutils literal notranslate"><span class="pre">Maps</span></code> tab</p></td>
</tr>
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">define_mask_collision</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">MAPGRID_COLLISION_MASK</span></code></p></td>
<td><p>optionally read to get settings on <code class="docutils literal notranslate"><span class="pre">Maps</span></code> tab</p></td>
</tr>
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">define_mask_elevation</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">MAPGRID_ELEVATION_MASK</span></code></p></td>
<td><p>optionally read to get settings on <code class="docutils literal notranslate"><span class="pre">Maps</span></code> tab</p></td>
</tr>
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">define_mask_behavior</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">METATILE_ATTR_BEHAVIOR_MASK</span></code></p></td>
<td><p>optionally read to get settings on <code class="docutils literal notranslate"><span class="pre">Tilesets</span></code> tab</p></td>
</tr>
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">define_mask_layer</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">METATILE_ATTR_LAYER_MASK</span></code></p></td>
<td><p>optionally read to get settings on <code class="docutils literal notranslate"><span class="pre">Tilesets</span></code> tab</p></td>
</tr>
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">define_attribute_behavior</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">METATILE_ATTRIBUTE_BEHAVIOR</span></code></p></td>
<td><p>name used to extract setting from <code class="docutils literal notranslate"><span class="pre">symbol_attribute_table</span></code></p></td>
</tr>
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">define_attribute_layer</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">METATILE_ATTRIBUTE_LAYER_TYPE</span></code></p></td>
<td><p>name used to extract setting from <code class="docutils literal notranslate"><span class="pre">symbol_attribute_table</span></code></p></td>
</tr>
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">define_attribute_terrain</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">METATILE_ATTRIBUTE_TERRAIN</span></code></p></td>
<td><p>name used to extract setting from <code class="docutils literal notranslate"><span class="pre">symbol_attribute_table</span></code></p></td>
</tr>
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">define_attribute_encounter</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">METATILE_ATTRIBUTE_ENCOUNTER_TYPE</span></code></p></td>
<td><p>name used to extract setting from <code class="docutils literal notranslate"><span class="pre">symbol_attribute_table</span></code></p></td>
</tr>
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">define_metatile_label_prefix</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">METATILE_</span></code></p></td>
<td><p>expected prefix for metatile label macro names</p></td>
</tr>
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">define_heal_locations_prefix</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">HEAL_LOCATION_</span></code></p></td>
<td><p>default prefix for heal location macro names</p></td>
</tr>
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">define_layout_prefix</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">LAYOUT_</span></code></p></td>
<td><p>default prefix for layout ID names</p></td>
</tr>
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">define_map_prefix</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">MAP_</span></code></p></td>
<td><p>default prefix for map ID names</p></td>
</tr>
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">define_map_dynamic</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">MAP_DYNAMIC</span></code></p></td>
<td><p>ID name for Dynamic maps</p></td>
</tr>
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">define_map_empty</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">MAP_UNDEFINED</span></code></p></td>
<td><p>ID name for empty maps</p></td>
</tr>
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">define_map_section_prefix</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">MAPSEC_</span></code></p></td>
<td><p>expected prefix for location macro names</p></td>
</tr>
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">define_map_section_empty</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">NONE</span></code></p></td>
<td><p>macro name after prefix for empty region map sections</p></td>
</tr>
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">define_species_prefix</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">SPECIES_</span></code></p></td>
<td><p>expected prefix for species macro names</p></td>
</tr>
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">define_species_empty</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">NONE</span></code></p></td>
<td><p>macro name after prefix for the default species</p></td>
</tr>
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">regex_behaviors</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">\bMB_</span></code></p></td>
<td><p>regex to find metatile behavior constants to evaluate</p></td>
</tr>
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">regex_obj_event_gfx</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">\bOBJ_EVENT_GFX_</span></code></p></td>
<td><p>regex to find Object event graphics ID macro names</p></td>
</tr>
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">regex_items</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">\bITEM_(?!(B_)?USE_)</span></code></p></td>
<td><p>regex to populate the <code class="docutils literal notranslate"><span class="pre">Item</span></code> dropdown for Hidden Item events</p></td>
</tr>
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">regex_flags</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">\bFLAG_</span></code></p></td>
<td><p>regex to populate the <code class="docutils literal notranslate"><span class="pre">Event</span> <span class="pre">Flag</span></code>/<code class="docutils literal notranslate"><span class="pre">Flag</span></code> dropdowns for Object and Hidden Item events</p></td>
</tr>
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">regex_vars</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">\bVAR_</span></code></p></td>
<td><p>regex to populate the <code class="docutils literal notranslate"><span class="pre">Var</span></code> dropdown for Trigger events</p></td>
</tr>
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">regex_movement_types</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">\bMOVEMENT_TYPE_</span></code></p></td>
<td><p>regex to populate the <code class="docutils literal notranslate"><span class="pre">Movement</span></code> dropdown for Object events</p></td>
</tr>
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">regex_map_types</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">\bMAP_TYPE_</span></code></p></td>
<td><p>regex to populate the <code class="docutils literal notranslate"><span class="pre">Type</span></code> dropdown for maps</p></td>
</tr>
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">regex_battle_scenes</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">\bMAP_BATTLE_SCENE_</span></code></p></td>
<td><p>regex to populate the <code class="docutils literal notranslate"><span class="pre">Battle</span> <span class="pre">Scene</span></code> dropdown for maps</p></td>
</tr>
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">regex_weather</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">\bWEATHER_</span></code></p></td>
<td><p>regex to populate the <code class="docutils literal notranslate"><span class="pre">Weather</span></code> dropdowns for maps and Weather Trigger events</p></td>
</tr>
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">regex_coord_event_weather</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">\bCOORD_EVENT_WEATHER_</span></code></p></td>
<td><p>regex to find weather trigger macro names</p></td>
</tr>
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">regex_secret_bases</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">\bSECRET_BASE_[\w]+_[\d]+</span></code></p></td>
<td><p>regex to populate the <code class="docutils literal notranslate"><span class="pre">Secret</span> <span class="pre">Base</span></code> dropdown for Secret Base events</p></td>
</tr>
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">regex_sign_facing_directions</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">\bBG_EVENT_PLAYER_FACING_</span></code></p></td>
<td><p>regex to populate the <code class="docutils literal notranslate"><span class="pre">Player</span> <span class="pre">Facing</span> <span class="pre">Direction</span></code> dropdown for Sign events</p></td>
</tr>
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">regex_trainer_types</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">\bTRAINER_TYPE_</span></code></p></td>
<td><p>regex to populate the <code class="docutils literal notranslate"><span class="pre">Trainer</span> <span class="pre">Type</span></code> dropdown for Object events</p></td>
</tr>
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">regex_music</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">\b(SE|MUS)_</span></code></p></td>
<td><p>regex to populate <code class="docutils literal notranslate"><span class="pre">Song</span></code> dropdown for maps</p></td>
</tr>
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">regex_encounter_types</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">\bTILE_ENCOUNTER_</span></code></p></td>
<td><p>regex to populate the <code class="docutils literal notranslate"><span class="pre">Encounter</span> <span class="pre">Type</span></code> dropdown for the Tileset Editor</p></td>
</tr>
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">regex_terrain_types</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">\bTILE_TERRAIN_</span></code></p></td>
<td><p>regex to populate the <code class="docutils literal notranslate"><span class="pre">Terrain</span> <span class="pre">Type</span></code> dropdown for the Tileset Editor</p></td>
</tr>
<tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">pals_output_extension</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">.gbapal</span></code></p></td>
<td><p>the file extension to output for a new tilesets palette data files</p></td>
</tr>
<tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">tiles_output_extension</span></code></p></td>
<td><p><code class="docutils literal notranslate"><span class="pre">.4bpp.lz</span></code></p></td>
<td><p>the file extension to output for a new tilesets tiles image data file</p></td>
</tr>
</tbody>
</table>
</section>
<section id="global-constants">
<h2>Global Constants<a class="headerlink" href="#global-constants" title="Link to this heading"></a></h2>
<p>In some cases you may want to tell Porymap about a <code class="docutils literal notranslate"><span class="pre">#define</span></code> or <code class="docutils literal notranslate"><span class="pre">enum</span></code> it wouldnt otherwise know about, or override one that it already reads. For this you can add a global constant, or a global constant file, and Porymap will read and evaluate these before anything else. Lets look at an example of how each might be useful.</p>
<p>Porymap evaluates <code class="docutils literal notranslate"><span class="pre">MAX_LEVEL</span></code> in the <code class="docutils literal notranslate"><span class="pre">constants_pokemon</span></code> file, but lets say you have defined <code class="docutils literal notranslate"><span class="pre">MAX_LEVEL</span></code> to be <code class="docutils literal notranslate"><span class="pre">#define</span> <span class="pre">MAX_LEVEL</span>&#160; <span class="pre">(MY_CONSTANT</span> <span class="pre">+</span> <span class="pre">1)</span></code>, and <code class="docutils literal notranslate"><span class="pre">MY_CONSTANT</span></code> is defined in some other file <code class="docutils literal notranslate"><span class="pre">foo.h</span></code>. Porymap doesnt read <code class="docutils literal notranslate"><span class="pre">foo.h</span></code>, so it doesnt know what <code class="docutils literal notranslate"><span class="pre">MY_CONSTANT</span></code> is and it fails to evaluate <code class="docutils literal notranslate"><span class="pre">MAX_LEVEL</span></code>. To fix this, click the <a class="reference internal" href="../_images/add-global-constants-file.png"><img alt="add-global-constants-file" src="../_images/add-global-constants-file.png" style="height: 24px;" /></a> button on the <code class="docutils literal notranslate"><span class="pre">Files</span></code> tab and choose your <code class="docutils literal notranslate"><span class="pre">foo.h</span></code> file. Now Porymap will read any <code class="docutils literal notranslate"><span class="pre">#define</span></code> or <code class="docutils literal notranslate"><span class="pre">enum</span></code> in <code class="docutils literal notranslate"><span class="pre">foo.h</span></code>, and it will know what <code class="docutils literal notranslate"><span class="pre">MY_CONSTANT</span></code> is.</p>
<p>Now lets say that you have <code class="docutils literal notranslate"><span class="pre">#define</span> <span class="pre">MIN_LEVEL</span> <span class="pre">1</span></code>. Porymap will read this <code class="docutils literal notranslate"><span class="pre">1</span></code>, and use it as the lower limit for a Pokémons level on the <code class="docutils literal notranslate"><span class="pre">Wild</span> <span class="pre">Pokémon</span></code> tab. But what if you want to use level <code class="docutils literal notranslate"><span class="pre">0</span></code> on the <code class="docutils literal notranslate"><span class="pre">Wild</span> <span class="pre">Pokémon</span></code> tab to mean something special like “match the players level”? You could redefine <code class="docutils literal notranslate"><span class="pre">MIN_LEVEL</span></code> to be <code class="docutils literal notranslate"><span class="pre">0</span></code>, but that might have consequences in your code. You could instead override <code class="docutils literal notranslate"><span class="pre">MIN_LEVEL</span></code> in Porymap by redefining it. Click the <a class="reference internal" href="../_images/add-global-constant.png"><img alt="add-global-constant" src="../_images/add-global-constant.png" style="height: 24px;" /></a> button on the <code class="docutils literal notranslate"><span class="pre">Identifiers</span></code> tab, enter the name <code class="docutils literal notranslate"><span class="pre">MIN_LEVEL</span></code> and its value <code class="docutils literal notranslate"><span class="pre">0</span></code>, and now Porymap will ignore <code class="docutils literal notranslate"><span class="pre">#define</span> <span class="pre">MIN_LEVEL</span> <span class="pre">1</span></code> because you already told it the value.</p>
</section>
</section>
</div>
</div>
<footer><div class="rst-footer-buttons" role="navigation" aria-label="Footer">
<a href="scripting-capabilities.html" class="btn btn-neutral float-left" title="Scripting Capabilities" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
<a href="breaking-changes.html" class="btn btn-neutral float-right" title="Breaking Changes" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
</div>
<hr/>
<div role="contentinfo">
<p>&#169; Copyright 2023, huderlem.</p>
</div>
Built with <a href="https://www.sphinx-doc.org/">Sphinx</a> using a
<a href="https://github.com/readthedocs/sphinx_rtd_theme">theme</a>
provided by <a href="https://readthedocs.org">Read the Docs</a>.
</footer>
</div>
</div>
</section>
</div>
<script>
jQuery(function () {
SphinxRtdTheme.Navigation.enable(true);
});
</script>
</body>
</html>