Files
sfall/maps-and-encounters/index.html
T

12 lines
22 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!DOCTYPE html> <html lang="en-US"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=Edge"> <title>Maps and encounters - sfall</title> <link rel="shortcut icon" href="/favicon.ico" type="image/x-icon"> <link rel="stylesheet" href="/assets/css/just-the-docs-default.css"> <script type="text/javascript" src="/assets/js/vendor/lunr.min.js"></script> <script type="text/javascript" src="/assets/js/just-the-docs.js"></script> <meta name="viewport" content="width=device-width, initial-scale=1"> <!-- Begin Jekyll SEO tag v2.3.0 --> <title>Maps and encounters | sfall</title> <meta property="og:title" content="Maps and encounters" /> <meta property="og:locale" content="en_US" /> <meta name="description" content="Sfall documentation" /> <meta property="og:description" content="Sfall documentation" /> <link rel="canonical" href="/maps-and-encounters/" /> <meta property="og:url" content="/maps-and-encounters/" /> <meta property="og:site_name" content="sfall" /> <script type="application/ld+json"> {"@type":"WebPage","image":null,"url":"/maps-and-encounters/","publisher":null,"author":null,"headline":"Maps and encounters","dateModified":null,"datePublished":null,"sameAs":null,"description":"Sfall documentation","mainEntityOfPage":null,"name":null,"@context":"http://schema.org"}</script> <!-- End Jekyll SEO tag --> <link rel="apple-touch-icon" sizes="180x180" href="/assets/favicon/apple-touch-icon.png"> <link rel="icon" type="image/png" sizes="32x32" href="/assets/favicon/favicon-32x32.png"> <link rel="icon" type="image/png" sizes="16x16" href="/assets/favicon/favicon-16x16.png"> <link rel="manifest" href="/assets/favicon/site.webmanifest"> <link rel="mask-icon" href="/assets/favicon/safari-pinned-tab.svg" color="#5bbad5"> <meta name="msapplication-TileColor" content="#da532c"> <meta name="msapplication-config" content="/assets/favicon/browserconfig.xml"> <meta name="theme-color" content="#ffffff"> </head> <body> <svg xmlns="http://www.w3.org/2000/svg" style="display: none;"> <symbol id="svg-link" viewBox="0 0 24 24"> <title>Link</title> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-link"> <path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path> </svg> </symbol> <symbol id="svg-search" viewBox="0 0 24 24"> <title>Search</title> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-search"> <circle cx="11" cy="11" r="8"></circle><line x1="21" y1="21" x2="16.65" y2="16.65"></line> </svg> </symbol> <symbol id="svg-menu" viewBox="0 0 24 24"> <title>Menu</title> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-menu"> <line x1="3" y1="12" x2="21" y2="12"></line><line x1="3" y1="6" x2="21" y2="6"></line><line x1="3" y1="18" x2="21" y2="18"></line> </svg> </symbol> <symbol id="svg-arrow-right" viewBox="0 0 24 24"> <title>Expand</title> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-chevron-right"> <polyline points="9 18 15 12 9 6"></polyline> </svg> </symbol> <symbol id="svg-doc" viewBox="0 0 24 24"> <title>Document</title> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-file"> <path d="M13 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V9z"></path><polyline points="13 2 13 9 20 9"></polyline> </svg> </symbol> </svg> <div class="side-bar"> <div class="site-header"> <a href="/" class="site-title lh-tight"> sfall </a> <a href="#" id="menu-button" class="site-button"> <svg viewBox="0 0 24 24" class="icon"><use xlink:href="#svg-menu"></use></svg> </a> </div> <nav role="navigation" aria-label="Main" id="site-nav" class="site-nav"> <ul class="nav-list"><li class="nav-list-item"><a href="/" class="nav-list-link">Home</a></li><li class="nav-list-item"><a href="#" class="nav-list-expander"><svg viewBox="0 0 24 24"><use xlink:href="#svg-arrow-right"></use></svg></a><a href="/arrays/" class="nav-list-link">Arrays</a><ul class="nav-list "><li class="nav-list-item "><a href="/array-functions/" class="nav-list-link">Array functions</a></li><li class="nav-list-item "><a href="/lists/" class="nav-list-link">Lists</a></li></ul></li><li class="nav-list-item"><a href="/best-practices/" class="nav-list-link">Best practices</a></li><li class="nav-list-item"><a href="/data-types/" class="nav-list-link">Data types</a></li><li class="nav-list-item"><a href="#" class="nav-list-expander"><svg viewBox="0 0 24 24"><use xlink:href="#svg-arrow-right"></use></svg></a><a href="/global-scripts/" class="nav-list-link">Global scripts</a><ul class="nav-list "><li class="nav-list-item "><a href="/global-script-functions/" class="nav-list-link">Global script functions</a></li></ul></li><li class="nav-list-item"><a href="#" class="nav-list-expander"><svg viewBox="0 0 24 24"><use xlink:href="#svg-arrow-right"></use></svg></a><a href="/hooks/" class="nav-list-link">Hooks</a><ul class="nav-list "><li class="nav-list-item "><a href="/hook-functions/" class="nav-list-link">Hook functions</a></li><li class="nav-list-item "><a href="/hook-types/" class="nav-list-link">Hook types</a></li></ul></li><li class="nav-list-item"><a href="/sslc/" class="nav-list-link">SSLC</a></li><li class="nav-list-item"><a href="/optimization/" class="nav-list-link">Optimization</a></li><li class="nav-list-item"><a href="/animations/" class="nav-list-link">Animations</a></li><li class="nav-list-item"><a href="/art-and-appearance/" class="nav-list-link">Art and appearance</a></li><li class="nav-list-item"><a href="/audio/" class="nav-list-link">Audio</a></li><li class="nav-list-item"><a href="/car/" class="nav-list-link">Car</a></li><li class="nav-list-item"><a href="#" class="nav-list-expander"><svg viewBox="0 0 24 24"><use xlink:href="#svg-arrow-right"></use></svg></a><a href="/combat/" class="nav-list-link">Combat</a><ul class="nav-list "><li class="nav-list-item "><a href="/knockback/" class="nav-list-link">Knockback</a></li><li class="nav-list-item "><a href="/weapons-and-ammo/" class="nav-list-link">Weapons and ammo</a></li></ul></li><li class="nav-list-item"><a href="#" class="nav-list-expander"><svg viewBox="0 0 24 24"><use xlink:href="#svg-arrow-right"></use></svg></a><a href="/direct-memory-access/" class="nav-list-link">Direct memory access</a><ul class="nav-list "><li class="nav-list-item "><a href="/call_offset_vx/" class="nav-list-link">call_offset_vX</a></li><li class="nav-list-item "><a href="/read_xxx/" class="nav-list-link">read_xxx</a></li><li class="nav-list-item "><a href="/write_xxx/" class="nav-list-link">write_xxx</a></li></ul></li><li class="nav-list-item"><a href="/explosions/" class="nav-list-link">Explosions</a></li><li class="nav-list-item"><a href="/global-variables/" class="nav-list-link">Global variables</a></li><li class="nav-list-item"><a href="/graphics/" class="nav-list-link">Graphics</a></li><li class="nav-list-item"><a href="/ini-settings/" class="nav-list-link">INI settings</a></li><li class="nav-list-item"><a href="#" class="nav-list-expander"><svg viewBox="0 0 24 24"><use xlink:href="#svg-arrow-right"></use></svg></a><a href="/interface/" class="nav-list-link">Interface</a><ul class="nav-list "><li class="nav-list-item "><a href="/cursor/" class="nav-list-link">Cursor</a></li><li class="nav-list-item "><a href="/inventory/" class="nav-list-link">Inventory</a></li><li class="nav-list-item "><a href="/main-interface/" class="nav-list-link">Main interface</a></li><li class="nav-list-item "><a href="/outline/" class="nav-list-link">Outline</a></li><li class="nav-list-item "><a href="/pip-boy/" class="nav-list-link">Pip-Boy</a></li><li class="nav-list-item "><a href="/tags/" class="nav-list-link">Tags</a></li><li class="nav-list-item "><a href="/windows-and-images/" class="nav-list-link">Windows and images</a></li></ul></li><li class="nav-list-item"><a href="/keyboard-and-mouse/" class="nav-list-link">Keyboard and mouse</a></li><li class="nav-list-item"><a href="/locks/" class="nav-list-link">Locks</a></li><li class="nav-list-item active"><a href="#" class="nav-list-expander"><svg viewBox="0 0 24 24"><use xlink:href="#svg-arrow-right"></use></svg></a><a href="/maps-and-encounters/" class="nav-list-link active">Maps and encounters</a><ul class="nav-list "><li class="nav-list-item "><a href="/rest/" class="nav-list-link">Rest</a></li><li class="nav-list-item "><a href="/worldmap/" class="nav-list-link">Worldmap</a></li></ul></li><li class="nav-list-item"><a href="/objects-and-scripts/" class="nav-list-link">Objects and scripts</a></li><li class="nav-list-item"><a href="/other/" class="nav-list-link">Other</a></li><li class="nav-list-item"><a href="#" class="nav-list-expander"><svg viewBox="0 0 24 24"><use xlink:href="#svg-arrow-right"></use></svg></a><a href="/perks-and-traits/" class="nav-list-link">Perks and traits</a><ul class="nav-list "><li class="nav-list-item "><a href="/npc-perks/" class="nav-list-link">NPC perks</a></li></ul></li><li class="nav-list-item"><a href="/sfall-funcx-macros/" class="nav-list-link">Sfall funcX macros</a></li><li class="nav-list-item"><a href="#" class="nav-list-expander"><svg viewBox="0 0 24 24"><use xlink:href="#svg-arrow-right"></use></svg></a><a href="/sfall/" class="nav-list-link">Sfall</a><ul class="nav-list "><li class="nav-list-item "><a href="/funcx/" class="nav-list-link">funcX</a></li><li class="nav-list-item "><a href="/version/" class="nav-list-link">Version</a></li></ul></li><li class="nav-list-item"><a href="/skills/" class="nav-list-link">Skills</a></li><li class="nav-list-item"><a href="#" class="nav-list-expander"><svg viewBox="0 0 24 24"><use xlink:href="#svg-arrow-right"></use></svg></a><a href="/stats/" class="nav-list-link">Stats</a><ul class="nav-list "><li class="nav-list-item "><a href="/alter-min-max/" class="nav-list-link">Alter min/max</a></li></ul></li><li class="nav-list-item"><a href="/tiles-and-paths/" class="nav-list-link">Tiles and paths</a></li><li class="nav-list-item"><a href="#" class="nav-list-expander"><svg viewBox="0 0 24 24"><use xlink:href="#svg-arrow-right"></use></svg></a><a href="/variables/" class="nav-list-link">Variables</a><ul class="nav-list "><li class="nav-list-item "><a href="/math/" class="nav-list-link">Math</a></li><li class="nav-list-item "><a href="/strings/" class="nav-list-link">Strings</a></li></ul></li><li class="nav-list-item"><a href="/virtual-file-system/" class="nav-list-link">Virtual file system</a></li></ul> </nav> <footer class="site-footer"> This site uses <a href="https://github.com/pmarsceill/just-the-docs">Just the Docs</a>, a documentation theme for Jekyll. </footer> </div> <div class="main" id="top"> <div id="main-header" class="main-header"> <div class="search"> <div class="search-input-wrap"> <input type="text" id="search-input" class="search-input" tabindex="0" placeholder="Search sfall" aria-label="Search sfall" autocomplete="off"> <label for="search-input" class="search-label"><svg viewBox="0 0 24 24" class="search-icon"><use xlink:href="#svg-search"></use></svg></label> </div> <div id="search-results" class="search-results"></div> </div> <nav aria-label="Auxiliary" class="aux-nav"> <ul class="aux-nav-list"> <li class="aux-nav-list-item"> <a href="https://nma-fallout.com/threads/fo2-engine-tweaks-sfall.178390/" class="site-button" > Forum </a> </li> <li class="aux-nav-list-item"> <a href="https://github.com/phobos2077/sfall/" class="site-button" > GitHub </a> </li> </ul> </nav> </div> <div id="main-content-wrap" class="main-content-wrap"> <div id="main-content" class="main-content" role="main"> <h1 class="no_toc" id="maps-and-encounters"> <a href="#maps-and-encounters" class="anchor-heading" aria-labelledby="maps-and-encounters"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> Maps and encounters </h1> <h2 class="no_toc" id="subcategories"> <a href="#subcategories" class="anchor-heading" aria-labelledby="subcategories"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> Subcategories </h2> <ul> <li><a href="/rest/"><strong>Rest</strong></a></li> <li><a href="/worldmap/"><strong>Worldmap</strong></a></li> </ul> <h2 class="no_toc" id="functions"> <a href="#functions" class="anchor-heading" aria-labelledby="functions"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> Functions </h2> <ul id="markdown-toc"> <li><a href="#exec_map_update_scripts" id="markdown-toc-exec_map_update_scripts"><strong>exec_map_update_scripts</strong></a></li> <li><a href="#force_encounter" id="markdown-toc-force_encounter"><strong>force_encounter</strong></a></li> <li><a href="#force_encounter_with_flags" id="markdown-toc-force_encounter_with_flags"><strong>force_encounter_with_flags</strong></a></li> <li><a href="#get_map_enter_position" id="markdown-toc-get_map_enter_position"><strong>get_map_enter_position</strong></a></li> <li><a href="#in_world_map" id="markdown-toc-in_world_map"><strong>in_world_map</strong></a></li> <li><a href="#set_map_enter_position" id="markdown-toc-set_map_enter_position"><strong>set_map_enter_position</strong></a></li> <li><a href="#set_map_time_multi" id="markdown-toc-set_map_time_multi"><strong>set_map_time_multi</strong></a></li> <li><a href="#set_terrain_name" id="markdown-toc-set_terrain_name"><strong>set_terrain_name</strong></a></li> <li><a href="#set_town_title" id="markdown-toc-set_town_title"><strong>set_town_title</strong></a></li> </ul><hr /> <h3 class="d-inline-block" id="exec_map_update_scripts"> <a href="#exec_map_update_scripts" class="anchor-heading" aria-labelledby="exec_map_update_scripts"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> <strong>exec_map_update_scripts</strong> </h3> <p class="label label-green">sfall.h</p> <div class="language-c++ highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="kt">void</span> <span class="n">exec_map_update_scripts</span><span class="p">()</span>
</code></pre></div></div> <p>Executes <code class="highlighter-rouge">map_update_p_proc</code> for all objects on map and global/hook scripts as well.</p><hr /> <h3 id="force_encounter"> <a href="#force_encounter" class="anchor-heading" aria-labelledby="force_encounter"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> <strong>force_encounter</strong> </h3> <div class="language-c++ highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="kt">void</span> <span class="n">force_encounter</span><span class="p">(</span><span class="kt">int</span> <span class="n">map</span><span class="p">)</span>
</code></pre></div></div> <p>Can be called either from a global script while traveling on the world map, or from a normal script while on a local map. In either case the encounter occurs shortly after the next time the player moves on the world map. The player will not get an outdoorsman skill check.</p><hr /> <h3 id="force_encounter_with_flags"> <a href="#force_encounter_with_flags" class="anchor-heading" aria-labelledby="force_encounter_with_flags"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> <strong>force_encounter_with_flags</strong> </h3> <div class="language-c++ highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="kt">void</span> <span class="n">force_encounter_with_flags</span><span class="p">(</span><span class="kt">int</span> <span class="n">map</span><span class="p">,</span> <span class="kt">int</span> <span class="n">flags</span><span class="p">)</span>
</code></pre></div></div> <p>Does the same thing as force_encounter, but allows the specification of some extra options (see <code class="highlighter-rouge">sfall.h</code> for available flags). Forcing a random encounter on a map that is not normally used for random encounters may cause the player to lose the car, if they have it. In this case use <code class="highlighter-rouge">force_encounter_with_flags</code> with the <code class="highlighter-rouge">ENCOUNTER_FLAG_NO_CAR</code> flag set.</p><hr /> <h3 id="get_map_enter_position"> <a href="#get_map_enter_position" class="anchor-heading" aria-labelledby="get_map_enter_position"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> <strong>get_map_enter_position</strong> </h3> <div class="language-c++ highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="n">array</span> <span class="n">get_map_enter_position</span><span class="p">()</span>
</code></pre></div></div> <p>Returns an array of the players position data (index: 0 - tile, 1 - elevation, 2 - rotation) when entering the map through exit grids. If entering from the world map, the tile value will be -1. Should be called in <code class="highlighter-rouge">map_enter_p_proc</code> procedure to get the correct position data.</p><hr /> <h3 id="in_world_map"> <a href="#in_world_map" class="anchor-heading" aria-labelledby="in_world_map"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> <strong>in_world_map</strong> </h3> <div class="language-c++ highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="kt">bool</span> <span class="n">in_world_map</span>
</code></pre></div></div> <p>Returns 1 if the player is looking at the world map, or 0 at any other time. Obviously this is only useful in global scripts, since normal scripts will never get the chance to run on the world map.</p><hr /> <h3 id="set_map_enter_position"> <a href="#set_map_enter_position" class="anchor-heading" aria-labelledby="set_map_enter_position"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> <strong>set_map_enter_position</strong> </h3> <div class="language-c++ highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="kt">void</span> <span class="n">set_map_enter_position</span><span class="p">(</span><span class="kt">int</span> <span class="n">tile</span><span class="p">,</span> <span class="kt">int</span> <span class="n">elevation</span><span class="p">,</span> <span class="kt">int</span> <span class="n">rotation</span><span class="p">)</span>
</code></pre></div></div> <p>Overrides the players entry position when entering the map through exit grids. Setting the tile to 0 will put the player on the start hex (default tile and elevation) of the map. Works only in <code class="highlighter-rouge">map_enter_p_proc</code> procedure.</p><hr /> <h3 id="set_map_time_multi"> <a href="#set_map_time_multi" class="anchor-heading" aria-labelledby="set_map_time_multi"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> <strong>set_map_time_multi</strong> </h3> <div class="language-c++ highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="kt">void</span> <span class="n">set_map_time_multi</span><span class="p">(</span><span class="kt">float</span> <span class="n">multi</span><span class="p">)</span>
</code></pre></div></div> <p>Adjusts how fast time passes while youre on the world map. It takes a single float as an argument, where 1 is the normal speed. This function works in addition to the <code class="highlighter-rouge">WorldMapTimeMod</code> setting in <code class="highlighter-rouge">ddraw.ini</code> and the Pathfinder perk, rather than overriding it, so calling <code class="highlighter-rouge">set_map_time_multi(0.5)</code> when the player has 2 levels of Pathfinder would result in time passing at 25% the normal speed on the world map.</p><hr /> <h3 id="set_terrain_name"> <a href="#set_terrain_name" class="anchor-heading" aria-labelledby="set_terrain_name"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> <strong>set_terrain_name</strong> </h3> <div class="language-c++ highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="kt">void</span> <span class="n">sfall_func3</span><span class="p">(</span><span class="s">"set_terrain_name"</span><span class="p">,</span> <span class="kt">int</span> <span class="n">x</span><span class="p">,</span> <span class="kt">int</span> <span class="n">y</span><span class="p">,</span> <span class="n">string</span> <span class="n">name</span><span class="p">)</span>
</code></pre></div></div> <p>Overrides the terrain type name for the sub-tile on the world map by the specified coordinates.</p><hr /> <h3 id="set_town_title"> <a href="#set_town_title" class="anchor-heading" aria-labelledby="set_town_title"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> <strong>set_town_title</strong> </h3> <div class="language-c++ highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="kt">void</span> <span class="n">sfall_func2</span><span class="p">(</span><span class="s">"set_town_title"</span><span class="p">,</span> <span class="kt">int</span> <span class="n">areaID</span><span class="p">,</span> <span class="n">string</span> <span class="n">title</span><span class="p">)</span>
</code></pre></div></div> <p>Sets a floating text for a town on the world map when hovering the cursor over the players marker.</p> <div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>- areaID: the ID number of the town from city.txt
</code></pre></div></div> </div> </div> <div class="search-overlay"></div> </div> </body> </html>