<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://g1r-mp.com/wiki/index.php?action=history&amp;feed=atom&amp;title=CreateAiNavigationBlocker</id>
	<title>CreateAiNavigationBlocker - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://g1r-mp.com/wiki/index.php?action=history&amp;feed=atom&amp;title=CreateAiNavigationBlocker"/>
	<link rel="alternate" type="text/html" href="https://g1r-mp.com/wiki/index.php?title=CreateAiNavigationBlocker&amp;action=history"/>
	<updated>2026-09-19T06:22:10Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.46.0</generator>
	<entry>
		<id>https://g1r-mp.com/wiki/index.php?title=CreateAiNavigationBlocker&amp;diff=873&amp;oldid=prev</id>
		<title>QCherry: Document expanded scripting capacities and complete audited limits for 0.1.3 BUILD81</title>
		<link rel="alternate" type="text/html" href="https://g1r-mp.com/wiki/index.php?title=CreateAiNavigationBlocker&amp;diff=873&amp;oldid=prev"/>
		<updated>2026-09-12T11:51:45Z</updated>

		<summary type="html">&lt;p&gt;Document expanded scripting capacities and complete audited limits for 0.1.3 BUILD81&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw-interface=&quot;&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 11:51, 12 September 2026&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l37&quot;&gt;Line 37:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 37:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* All coordinates and dimensions use metres. A box uses centre &amp;lt;code&amp;gt;x/y/z&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;width&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;depth&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;height&amp;lt;/code&amp;gt;, and optional yaw in degrees. A cylinder uses centre &amp;lt;code&amp;gt;x/y/z&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;radius&amp;lt;/code&amp;gt;, and &amp;lt;code&amp;gt;height&amp;lt;/code&amp;gt;. Each dimension must be 0.01-10000 metres.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* All coordinates and dimensions use metres. A box uses centre &amp;lt;code&amp;gt;x/y/z&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;width&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;depth&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;height&amp;lt;/code&amp;gt;, and optional yaw in degrees. A cylinder uses centre &amp;lt;code&amp;gt;x/y/z&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;radius&amp;lt;/code&amp;gt;, and &amp;lt;code&amp;gt;height&amp;lt;/code&amp;gt;. Each dimension must be 0.01-10000 metres.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* A polygon uses &amp;lt;code&amp;gt;points = {{x=...,y=...}, ...}&amp;lt;/code&amp;gt; with 3-16 vertices plus &amp;lt;code&amp;gt;minZ&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;maxZ&amp;lt;/code&amp;gt;. It must be finite, simple and convex; clockwise input is normalized. Coordinates are limited to +/-100000 metres.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* A polygon uses &amp;lt;code&amp;gt;points = {{x=...,y=...}, ...}&amp;lt;/code&amp;gt; with 3-16 vertices plus &amp;lt;code&amp;gt;minZ&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;maxZ&amp;lt;/code&amp;gt;. It must be finite, simple and convex; clockwise input is normalized. Coordinates are limited to +/-100000 metres.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Optional &amp;lt;code&amp;gt;enabled&amp;lt;/code&amp;gt; defaults to true. The server permits at most &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;1024 &lt;/del&gt;blockers per resource and &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;4096 &lt;/del&gt;total, and also bounds spatial-index growth.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Optional &amp;lt;code&amp;gt;enabled&amp;lt;/code&amp;gt; defaults to true. The server permits at most &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;4096 &lt;/ins&gt;blockers per resource and &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;16384 &lt;/ins&gt;total, and also bounds spatial-index growth.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* The blocker is visible to every AI entity whose collision mode includes the custom layer, not only entities owned by the creating resource. Only the creating resource may inspect, update, enable, disable or destroy it.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* The blocker is visible to every AI entity whose collision mode includes the custom layer, not only entities owned by the creating resource. Only the creating resource may inspect, update, enable, disable or destroy it.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Stopping or restarting the owning resource removes all of its blockers automatically. Dynamic player, NPC and monster capsule collision is separate and always remains active.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Stopping or restarting the owning resource removes all of its blockers automatically. Dynamic player, NPC and monster capsule collision is separate and always remains active.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Use custom blockers for static geometry and occasional changes such as opening or closing a gate. Moving or toggling blockers every server tick is unsupported; moving characters already use the mandatory dynamic capsule layer.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Use custom blockers for static geometry and occasional changes such as opening or closing a gate. Moving or toggling blockers every server tick is unsupported; moving characters already use the mandatory dynamic capsule layer.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;* Expanded limits apply from update 0.1.3 BUILD81. See [[Scripting limits]]; earlier 0.1.3 binaries retain their old limits.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:Lua Functions]]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:Lua Functions]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>QCherry</name></author>
	</entry>
	<entry>
		<id>https://g1r-mp.com/wiki/index.php?title=CreateAiNavigationBlocker&amp;diff=749&amp;oldid=prev</id>
		<title>QCherry: Document G1R:MP 0.1.2 navigation collision API</title>
		<link rel="alternate" type="text/html" href="https://g1r-mp.com/wiki/index.php?title=CreateAiNavigationBlocker&amp;diff=749&amp;oldid=prev"/>
		<updated>2026-09-04T13:52:25Z</updated>

		<summary type="html">&lt;p&gt;Document G1R:MP 0.1.2 navigation collision API&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;= createAiNavigationBlocker =&lt;br /&gt;
&amp;lt;div style=&amp;quot;background:#fff5f5; border:1px solid #d13b3b; border-left:5px solid #d13b3b; color:#111111; padding:0.85rem 1rem; margin:0.75rem 0 1rem;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;color:#111111; font-weight:bold; letter-spacing:0.04em;&amp;quot;&amp;gt;AVAILABLE FROM UPDATE 0.1.2&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;color:#111111; margin-top:0.25rem;&amp;quot;&amp;gt;This function is available in G1R:MP 0.1.2 and later. The contract below includes the compatibility guarantees introduced in that update.&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Creates a resource-owned static navigation blocker used by server-simulated NPCs and monsters.&lt;br /&gt;
&lt;br /&gt;
== Syntax ==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
string|false createAiNavigationBlocker(table definition)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Parameters ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Name !! Type !! Required !! Description&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;definition&amp;lt;/code&amp;gt; || &amp;lt;code&amp;gt;table&amp;lt;/code&amp;gt; || yes || A validated &amp;lt;code&amp;gt;box&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;cylinder&amp;lt;/code&amp;gt;, or convex &amp;lt;code&amp;gt;polygon&amp;lt;/code&amp;gt; definition in metres.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Returns ==&lt;br /&gt;
Returns a new opaque decimal blocker ID string, or &amp;lt;code&amp;gt;false&amp;lt;/code&amp;gt; when the definition is invalid or a bounded resource/server limit is reached.&lt;br /&gt;
&lt;br /&gt;
== Examples ==&lt;br /&gt;
Block a rotated doorway volume:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot; line&amp;gt;&lt;br /&gt;
local blockerId = createAiNavigationBlocker({&lt;br /&gt;
    shape = &amp;quot;box&amp;quot;,&lt;br /&gt;
    x = 125.0, y = -48.0, z = 2.0,&lt;br /&gt;
    width = 2.5, depth = 0.8, height = 4.0,&lt;br /&gt;
    yaw = 30,&lt;br /&gt;
})&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Notes ==&lt;br /&gt;
* Available only in server-side resource scripts.&lt;br /&gt;
* All coordinates and dimensions use metres. A box uses centre &amp;lt;code&amp;gt;x/y/z&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;width&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;depth&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;height&amp;lt;/code&amp;gt;, and optional yaw in degrees. A cylinder uses centre &amp;lt;code&amp;gt;x/y/z&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;radius&amp;lt;/code&amp;gt;, and &amp;lt;code&amp;gt;height&amp;lt;/code&amp;gt;. Each dimension must be 0.01-10000 metres.&lt;br /&gt;
* A polygon uses &amp;lt;code&amp;gt;points = {{x=...,y=...}, ...}&amp;lt;/code&amp;gt; with 3-16 vertices plus &amp;lt;code&amp;gt;minZ&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;maxZ&amp;lt;/code&amp;gt;. It must be finite, simple and convex; clockwise input is normalized. Coordinates are limited to +/-100000 metres.&lt;br /&gt;
* Optional &amp;lt;code&amp;gt;enabled&amp;lt;/code&amp;gt; defaults to true. The server permits at most 1024 blockers per resource and 4096 total, and also bounds spatial-index growth.&lt;br /&gt;
* The blocker is visible to every AI entity whose collision mode includes the custom layer, not only entities owned by the creating resource. Only the creating resource may inspect, update, enable, disable or destroy it.&lt;br /&gt;
* Stopping or restarting the owning resource removes all of its blockers automatically. Dynamic player, NPC and monster capsule collision is separate and always remains active.&lt;br /&gt;
* Use custom blockers for static geometry and occasional changes such as opening or closing a gate. Moving or toggling blockers every server tick is unsupported; moving characters already use the mandatory dynamic capsule layer.&lt;br /&gt;
&lt;br /&gt;
[[Category:Lua Functions]]&lt;br /&gt;
[[Category:Server Functions]]&lt;br /&gt;
[[Category:World Functions]]&lt;br /&gt;
[[Category:Navigation Functions]]&lt;/div&gt;</summary>
		<author><name>QCherry</name></author>
	</entry>
</feed>