<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://www.fightorder.net/wiki/index.php?action=history&amp;feed=atom&amp;title=Lua_PathFinder</id>
	<title>Lua PathFinder - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://www.fightorder.net/wiki/index.php?action=history&amp;feed=atom&amp;title=Lua_PathFinder"/>
	<link rel="alternate" type="text/html" href="https://www.fightorder.net/wiki/index.php?title=Lua_PathFinder&amp;action=history"/>
	<updated>2026-04-21T02:28:46Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.44.2</generator>
	<entry>
		<id>https://www.fightorder.net/wiki/index.php?title=Lua_PathFinder&amp;diff=473&amp;oldid=prev</id>
		<title>Qrow: 1 revision imported</title>
		<link rel="alternate" type="text/html" href="https://www.fightorder.net/wiki/index.php?title=Lua_PathFinder&amp;diff=473&amp;oldid=prev"/>
		<updated>2025-11-13T01:50:59Z</updated>

		<summary type="html">&lt;p&gt;1 revision imported&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 18:50, 12 November 2025&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-notice&quot; lang=&quot;en&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(No difference)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>Qrow</name></author>
	</entry>
	<entry>
		<id>https://www.fightorder.net/wiki/index.php?title=Lua_PathFinder&amp;diff=472&amp;oldid=prev</id>
		<title>interwiki3&gt;Flozi: /* PathNodeCosts */ 104.0 - implement Path.GetPathNodeCosts</title>
		<link rel="alternate" type="text/html" href="https://www.fightorder.net/wiki/index.php?title=Lua_PathFinder&amp;diff=472&amp;oldid=prev"/>
		<updated>2017-12-22T11:46:25Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;PathNodeCosts: &lt;/span&gt; 104.0 - implement Path.GetPathNodeCosts&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;[[Engine_Development|Development]] &amp;lt; [[Lua_Scripting|Lua Scripting]] &amp;lt; {{FULLPAGENAME}}&lt;br /&gt;
&lt;br /&gt;
== PathFinder ==&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Path.RequestPath&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
  ( string &amp;quot;MoveTypeName&amp;quot; | number moveID,&lt;br /&gt;
    number start_x, number start_y, number start_z,&lt;br /&gt;
    number end_x,   number end_y,   number end_z&lt;br /&gt;
    [, number radius = 8 ]&lt;br /&gt;
  ) -&amp;gt; nil | pathObject path &amp;lt;font color=&amp;quot;#55ee99&amp;quot;&amp;gt;(see below)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Path UserData Object ==&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Path:GetPathWayPoints&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
  ( ) -&amp;gt; nil | {&lt;br /&gt;
     [1] = { x,y,z }, ...&lt;br /&gt;
   },{&lt;br /&gt;
     [1] = startIdxOfDetailedPath,&lt;br /&gt;
     [2] = startIdxOfDetailedEstimatedPath1,&lt;br /&gt;
     [3] = startIdxOfDetailedEstimatedPath2,&lt;br /&gt;
   }&lt;br /&gt;
&amp;lt;font color=&amp;quot;#55ee99&amp;quot;&amp;gt;GetPathWayPoints() returns 2 tables:  1 table with the waypoints and 1 table with 3 indices (in the waypoint table) when a new (more lazy) pathfinding algorithm  begins.  So the waypoint table contains 3 different levels of details.&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Path:Next&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
  ( number pos_x, number pos_y, number pos_z,&lt;br /&gt;
    [, number radius = 0 ]&lt;br /&gt;
  ) -&amp;gt; nil | number x, number y, number z&lt;br /&gt;
&amp;lt;font color=&amp;quot;#55ee99&amp;quot;&amp;gt;Path:Next() returns the next waypoint in the path.  Unlike GetPathWayPoints() in which the resolution of the waypoints decreases, Next updates the path so the resolution will increase as it approaches the target.&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note that &amp;#039;&amp;#039;Path&amp;#039;&amp;#039; in &amp;#039;&amp;#039;Path:GetPathWayPoints&amp;#039;&amp;#039; and &amp;#039;&amp;#039;Path:Next&amp;#039;&amp;#039; is not part of the command, but rather a reference to the path Object created by &amp;#039;&amp;#039;Spring.RequestPath&amp;#039;&amp;#039;.  It must match the path Object (case sensitive).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Further Reading==&lt;br /&gt;
&lt;br /&gt;
{{forumlink|topic=22953&amp;amp;start=2|title=a forum thread}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=PathNodeCosts=&lt;br /&gt;
&lt;br /&gt;
The following functions allow manipulating the cost of nodes visited by the pathfinding algorithm through numbered additive overlays (arrays). Only one overlay can be active at once, but as many as desired may be created with &amp;#039;&amp;#039;&amp;#039;InitPathNodeCostsArray&amp;#039;&amp;#039;&amp;#039;. The active layer is set by &amp;#039;&amp;#039;&amp;#039;SetPathNodeCosts&amp;#039;&amp;#039;&amp;#039;.&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span class=&amp;quot;note&amp;quot;&amp;gt;NOTE: There are separate arrays for synced &amp;amp; unsynced! - don&amp;#039;t ask when the unsynced one is used ... -&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span class=&amp;quot;warning&amp;quot;&amp;gt;IMPORTANT: the size of a newly created layer can be arbitrary, but ideally should match the heightmap dimensions. &amp;#039;&amp;#039;&amp;#039;GetPathNodeCost&amp;#039;&amp;#039;&amp;#039; ALWAYS takes heightmap coordinates as arguments, which are internally converted to the resolution of the active node-overlay (if any).&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Path.InitPathNodeCostsArray&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
  (number arrayID, number numNodesX, number numNodesZ) -&amp;gt; boolean success&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Path.FreePathNodeCostsArray&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
  (number arrayID) -&amp;gt; boolean success&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Path.SetPathNodeCosts&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
  (number arrayID) -&amp;gt; boolean success&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Path.GetPathNodeCosts&amp;#039;&amp;#039;&amp;#039; {{new|104.0}}&lt;br /&gt;
  (number arrayID) -&amp;gt; nil | table overlayCosts&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Path.SetPathNodeCost&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
  (number arrayID, number nodeArrayIndex, number cost) -&amp;gt; boolean success&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Path.GetPathNodeCost&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
  (number arrayID, number heightMapX, number heightMapZ) -&amp;gt; number nodeCost&lt;br /&gt;
&lt;br /&gt;
[[category: Lua]]&lt;/div&gt;</summary>
		<author><name>interwiki3&gt;Flozi</name></author>
	</entry>
</feed>