-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathai-scripting-reference.html
144 lines (139 loc) · 39.3 KB
/
ai-scripting-reference.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head lang="en">
<title>UnrealWiki: AI Scripting Reference</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link rel="stylesheet" type="text/css" media="screen, print"
href="shared/stylebase.structural.css">
<link rel="stylesheet" type="text/css" media="screen"
href="shared/template-default.css">
<link rel="stylesheet" type="text/css" media="screen"
href="shared/styles.chblue.css">
<link rel="stylesheet" type="text/css" media="print"
href="shared/template-default-print.css">
<!--[if IE 6]>
<style>
/* dirty hack for IE6. */
#quickbar {
position: absolute;
}
</style>
<![endif]-->
<link rel="start" href="http://wiki.beyondunreal.com/">
<link rel="glossary" href="http://wiki.beyondunreal.com/wiki/Terminology">
<link rel="help" href="http://wiki.beyondunreal.com/wiki/Using_The_Wiki">
<script type="text/javascript" src="shared/dhtml.js"></script>
<script type="text/javascript" src="shared/dhtml-menu.js"></script>
<style type="text/css">#dhtml-menu { background: #eee; padding: 5px 0px; margin-right: -20px; border: 1px solid #888; border-left: 1px solid #ccc; border-top: 1px solid #ccc; border-right: 1px solid #888; border-bottom: 1px solid #888 }
#dhtml-menu td { color: #000; font-family: Arial,Helvetica,sans-serif; font-size: 9pt; line-height: 13pt; padding: 1px 10px; cursor: default }
#dhtml-menu a { color: #000; font-family: Arial,Helvetica,sans-serif; font-size: 9pt; line-height: 13pt; text-decoration: none }
#dhtml-menu tt { font-family: monospace; font-size: 9pt }
#dhtml-menu-separator { height: 1px; background: red }
#dhtml-menu-anchor { cursor: default }
</style>
<script type="text/javascript" src="shared/expandable.js"></script>
</head>
<body onLoad="menuInit(); document.cookie='page=AI_Scripting_Reference; path=/'" class="default">
<div id="scrolling"><!-- contains all except the fixed sidebar -->
<div id="topbar" class="bar">
<div class="righthalf">
<form class="inline" method="post" action="/wiki" enctype="application/x-www-form-urlencoded"><input type="text" name="search" size="20" /> <input type="submit" name="search" value="search" /></form>
</div>
<div class="lefthalf">
<script type="text/javascript"><!--
menuAlignRight = false;
//--></script>
<span><script type="text/javascript"><!--
menuWriteAnchor("Quick Navigation") //--></script></span> | <a href="(start).html">Home Page</a> | <a href="recent-changes.html">Recent Changes</a> | <a href="http://wiki.beyondunreal.com/wiki?action=editprefs">Preferences</a>
</div>
</div>
<div id="content"><!-- contains the title and article -->
<h1 class='pagetitle'><a href="http://wiki.beyondunreal.com/wiki?back=AI Scripting Reference">AI Scripting Reference</a></h1>
<div class="wiki"><p>Commands for <a href="unreal-2.html">Unreal 2</a>'s <a href="ai-scripting.html">AI Scripting</a> system.</p>
<h2><a name="0.1"></a>Commands</h2>
<dl><dt>addammo</dt><dd><em class="em3">ammostring amount [maxclip]</em> gives N units of specified ammo to NPC, if maxclip=1 makes sure clip is as full as possible </dd><dt>agentbind</dt><dd><em class="em3">inputname valuename</em> sets and locks an agent input to a given value, for characters with agent-driven meshes </dd><dt>agentcall</dt><dd><em class="em3">actionname [wait]</em> calls an agent action of the given name, for characters with agent-driven meshes </dd><dt>agentexecute</dt><dd><em class="em3">actiontext [wait]</em> compiles and executes a GAL string on-the-fly as if were inside an action, and calls it </dd><dt>agentunbind</dt><dd><em class="em3">inputname</em> unlocks an agent input previously locked and set with AgentBind </dd><dt>animloop</dt><dd><em class="em3">name [rate tweentime [wait]]</em> loops specified anim on channel 0 </dd><dt>animloopex</dt><dd><em class="em3">channel name [rate tweentime [wait]]</em> loops specified anim on arbitrary channel </dd><dt>animplay</dt><dd><em class="em3">name [rate tweentime [wait]]</em> plays specified anim on channel 0 </dd><dt>animplayex</dt><dd><em class="em3">channel name [rate tweentime [wait]]</em> plays specified anim on arbitrary channel </dd><dt>animrelease</dt><dd>allow NPC to control anims (currently idle only) </dd><dt>animtween</dt><dd><em class="em3">name [tweentime [wait]]</em> tweens specified anim on channel 0 </dd><dt>animtweenex</dt><dd><em class="em3">channel name [tweentime [wait]]</em> tweens specified anim on arbitrary channel </dd><dt>call</dt><dd><em class="em3">label</em> pushes line after current one and jumps to given label </dd><dt>callscript</dt><dd><em class="em3">scriptname</em> pushes current script state and switches to specified file </dd><dt>callend</dt><dd>aborts any previously pushed call (can no longer return) </dd><dt>clearevents</dt><dd>clears any current onevents </dd><dt>cleartimers</dt><dd>clears any current general timers </dd><dt>cleartriggers</dt><dd>clears any current ontriggers </dd><dt>consolecommand</dt><dd><em class="em3">command</em> executes given console command </dd><dt>debugai</dt><dd><em class="em3">0/1</em> enables/disables debug AI mode in controlled NPC </dd><dt>debugaievents</dt><dd><em class="em3">0/1</em> enables/disables debug events mode in controlled NPC </dd><dt>debugaiflags</dt><dd><em class="em3">###</em> explicitely sets debug AI flags in controlled NPC </dd><dt>debugmode</dt><dd><em class="em3">flags</em> enables/disables various debug modes for the script controller </dd><dt>decproperty</dt><dd><em class="em3">name property value [#]</em> decrements (integer) property in named actor by 1 or by # </dd><dt>deployinventory</dt><dd><em class="em3">S [1]</em> deploy given inventory item [alt deploy it] </dd><dt>destroy</dt><dd>destroy controlled NPC (and controller) </dd><dt>dialogdisable</dt><dd><em class="em3">topicname</em> disable this dialog node </dd><dt>dialogenable</dt><dd><em class="em3">topicname</em> enable this dialog node </dd><dt>dialogfar</dt><dd><em class="em3">topicname speaker1 [speaker2]</em> starts dialog b/w 2 npcs regardless of distance </dd><dt>dialogfarwait</dt><dd><em class="em3">topicname speaker1 [speaker2]</em> waits for dialog b/w 2 npcs to finish </dd><dt>dialoginitiate</dt><dd><em class="em3">speaker topicname</em> tries to initiate given dialog with given target </dd><dt>dialogterminate</dt><dd><em class="em3">speaker</em> tries to remove NPC from dialog </dd><dt>directionalpatrol</dt><dd><em class="em3">0/1</em> whether NPC faces in direction of patrol destination </dd><dt>dormant</dt><dd><em class="em3">0/1 [1]</em> toggle whether NPC (Pawn and Controller) is dormant (bStasis=true and Physics=PHYS_None) [1] means stay dormant even if script removed? </dd><dt>dropinventory</dt><dd><em class="em3">S</em> drop given inventory item </dd><dt>enableprobeevent</dt><dd><em class="em3">probename 0|1</em> enables/disables NPC probe event (for performance) e.g. enableprobeevent seeplayer 0 → no more seeplayer events </dd><dt>enablexmphandling</dt><dd><em class="em3">0/1</em> enables/disables NPC reacting to XMP items (inert 0/1 sets this to 1/0 use enablexmphandling 0/1 to override this). </dd><dt>error</dt><dd>used internally </dd><dt>eventdisable</dt><dd><em class="em3">event</em> disables event </dd><dt>eventenable</dt><dd><em class="em3">event</em> enables event </dd><dt>eventwait</dt><dd><em class="em3">event</em> waits until event occurs </dd><dt>findactor</dt><dd><em class="em3">[name Min Max Type Vis Num gotolabel targetlabel]</em> searches for actors in level (all args optional) </dd><dt>fire</dt><dd><em class="em3">[duration]</em> fire (weapon / animation-based) for given duration </dd><dt>firealt</dt><dd><em class="em3">[duration]</em> alt fire (weapon / animation-based) for given duration </dd><dt>gib</dt><dd><em class="em3">[bDestroy] [gorelevel]</em> gib controlled NPC. If gib fails, bDestroy determines if npc is killed or destroyed. Gore level overrides the gibset's default gore level </dd><dt>giball</dt><dd><em class="em3">targetclass [bDestroy] [gorelevel]</em> gib all actors of the given class. . If gib fails, bDestroy determines if npc is killed or destroyed. Gore level overrides the gibset's default gore level </dd><dt>giveinventory</dt><dd><em class="em3">inventorystring</em> gives the specified inventory item to the NPC </dd><dt>giveitemtoplayer</dt><dd><em class="em3">inventorystring [ammocount]</em> give item to player, if ammocount treats as ammo and adds this much ammo to player's inventory </dd><dt>givetosseditem</dt><dd><em class="em3">inventorystring</em> add item to tossed items list </dd><dt>gotoactor</dt><dd><em class="em3">targetname [dist [face]]</em> sends NPC to specifed actor at specified dist (error if target not found), face=1 ==> try to face target (e.g. for initiating dialog) </dd><dt>gotoactorsafe</dt><dd><em class="em3">targetname [dist [face]]</em> sends NPC to specifed actor at specified dist (not an error if target not found), face=1 ==> try to face target (e.g. for initiating dialog) </dd><dt>gotolabel</dt><dd><em class="em3">label</em> jumps to given label </dd><dt>incproperty</dt><dd><em class="em3">name property value [#]</em> increments (integer) property in named actor by 1 or by # </dd><dt>inert</dt><dd><em class="em3">0/1</em> toggles NPC reacting to sensory input – shorthand for toggling bump, hearnoise, seeplayer, tookdamage </dd><dt>handlergroup</dt><dd>denotes start of a new handler groups (can't be in one currently?) </dd><dt>handlergroupend</dt><dd>denotes end of a new handler groups (must be in one currently) </dd><dt>headtracking</dt><dd><em class="em3">0/1</em> </dd><dt>jump</dt><dd><em class="em3">X Y Z</em> launch NPC in given direction </dd><dt>kill</dt><dd>kill controlled NPC (goes into dying state) </dd><dt>killall</dt><dd><em class="em3">targetclass</em> kill all actors of the given class </dd><dt>lockstep</dt><dd><em class="em3">name [f]</em> maintain given or current distance from named actor (for keeping squads in formation) </dd><dt>message</dt><dd><em class="em3">string [0|1|2]</em> displays the given message in-game (surround with "" for multiple words) 0: onscreen 1: log 2: onscreen and log </dd><dt>onevent</dt><dd><em class="em3">xxx [gotolabel ### [clear]]</em> when event xxx occurs, jumps to given label (or disables previous onevent) </dd><dt>ontimer</dt><dd><em class="em3">index [delay repeat gotolabel ###]</em> adds a general-purpose timer </dd><dt>ontrigger</dt><dd><em class="em3">name [gotolabel ###]</em> when trigger with given event name occurs, jumps to given label (or disables previous ontrigger) </dd><dt>playsound</dt><dd><em class="em3">name sound [slot [volume [bNoOverride [Radius [Pitch]]]]]</em> plays sound through named actor (or self=controlled NPC) </dd><dt>playsoundwait</dt><dd><em class="em3">name sound [slot [volume [bNoOverride [Radius [Pitch]]]]]</em> plays sound through named actor (or self=controlled NPC) and script waits for sound to finish </dd><dt>playsoundtableslot</dt><dd><em class="em3">name slot</em> play sound belonging to the specified group from named pawn's sound table </dd><dt>playsoundtableslotwait</dt><dd><em class="em3">name slot</em> play sound belonging to the specified group from named pawn's sound table and script waits for sound to finish </dd><dt>removeinventory</dt><dd><em class="em3">[string]</em> removes all [or the specified] inventory from the NPC </dd><dt>removeinventoryfromplayer</dt><dd><em class="em3">[string]</em> removes all [or the specified] inventory from the player </dd><dt>removeitemfromplayer</dt><dd><em class="em3">inventorystring</em> add item to player's inventory </dd><dt>removetosseditem</dt><dd><em class="em3">inventorystring</em> remove item from tossed items list </dd><dt>resumepatrol</dt><dd><em class="em3">startlabel endlabel</em> finds the "best" destination at which the resume patrolling and jumps to that line </dd><dt>return</dt><dd>returns to most recently pushed line or script state (error if no applicable) </dd><dt>rotate</dt><dd><em class="em3">#.#</em> rotate #.# degrees clockwise (right) relative to forward </dd><dt>savedestination</dt><dd>copies GotoActorTarget into SavedDestination for later use with resumepatrol </dd><dt>sendevent</dt><dd><em class="em3">EventName [triggerpawns]</em> triggers all Actors with tag that matches given Event, or all NPCs </dd><dt>setactorrangetest</dt><dd><em class="em3">target distance</em> sets the InRangeActor and InRangeDistance for ActorInRange/ActorOutOfRange events </dd><dt>setaimodds</dt><dd><em class="em3">odds</em> sets odds of hitting target when firing weapon under script control </dd><dt>setalert</dt><dd><em class="em3">0/1</em> controls whether NPC uses "alert" animations </dd><dt>setammo</dt><dd><em class="em3">ammostring amount [maxclip]</em> makes sure NPC has exactly specified amount of given type of ammo, if maxclip=1 makes sure clip is as full as possible </dd><dt>setfocus</dt><dd><em class="em3">[name]</em> set scripted focus to given actor or clear focus </dd><dt>sethealth</dt><dd><em class="em3">x.x</em> sets controlled NPC's health to x.x </dd><dt>setinventory</dt><dd><em class="em3">targetname inventorystring</em> sets target's selected inventory to x.x </dd><dt>setlocation</dt><dd><em class="em3">locationname [allowfail]</em> move pawn to location of locationame </dd><dt>setlocationnamed</dt><dd><em class="em3">targetname locationname [allowfail]</em> move actor matching targetname to location of locationame </dd><dt>setlocationvector</dt><dd><em class="em3">targetname X Y Z</em> move targetname to given coordinates </dd><dt>setmovespeed</dt><dd><em class="em3">speed [stance]</em> 0.01 to MaxDesiredSpeed (usually 1.0) – set speed used for scripted movement </dd><dt>setmovespeedauto</dt><dd><em class="em3">speed</em> 0.01 to MaxDesiredSpeed (usually 1.0) – set speed used for autonomous movement </dd><dt>setorders</dt><dd><em class="em3">orders [OrdersObject [fparam [ordergiver]]]</em> sets/clears orders </dd><dt>setphysics</dt><dd><em class="em3">physics</em> </dd><dt>setproperty</dt><dd><em class="em3">targetname property value</em> sets property in named actor to value </dd><dt>setproperties</dt><dd><em class="em3">classname property value</em> sets given property in all actors which are a classname </dd><dt>setsatellite</dt><dd><em class="em3">satellitename [targetname]</em> binds a mesh satellite node of the given name to the given target, for dynamic animations </dd><dt>setscript</dt><dd><em class="em3">filename [startlabel]</em> switches over to the given script [at the given label] </dd><dt>setskill</dt><dd><em class="em3">skill</em> set NPC's skill to given value (0.0..1.0) </dd><dt>setstance</dt><dd><em class="em3">stand / crouch / prone</em> specifies stance that NPC should use while patrolling </dd><dt>setstationary</dt><dd><em class="em3">1/0 [1]</em> makes NPC immobile/mobile, optionally forever </dd><dt>settacticalmovetype</dt><dd><em class="em3">0/1/2</em> sets tactical move type to use during scripted movement (0: none 1: basic 2: serpentine) </dd><dt>setweapon</dt><dd><em class="em3">weaponstring</em> set NPC's weapon to specified one, spawning it if necessary </dd><dt>shutdown</dt><dd><em class="em3">1/0</em> makes NPC as inert as possible without actually making it dormant or removing its controller </dd><dt>sleep</dt><dd><em class="em3">[x.x]</em> puts controller to sleep for x.x seconds (defaults to "forever") </dd><dt>sleeprand</dt><dd><em class="em3">[x.x]</em> puts controller to sleep for random time in 0..x.x seconds (x.x defaults to 1.0) </dd><dt>spawn</dt><dd><em class="em3">targetname S [1 [filename [startlabel]]]</em> spawn given actor at targetname's location, if 1 is given, failure = error, optionally gives spawned NPCs a script </dd><dt>stop</dt><dd>stops execution, detaches script controller </dd><dt>stopmovement</dt><dd>stops NPC movement </dd><dt>stopsound</dt><dd><em class="em3">slot [bStopNoOverrideSounds]</em> stops any sounds played through the named actor on the specified sound slot </dd><dt>testactorinrange</dt><dd><em class="em3">name distance</em> if given actor is outside given distance of pawn ==> next command skipped </dd><dt>testproperty</dt><dd><em class="em3">name property value</em> property != value ==> next command skipped (string comparison) </dd><dt>testpropertyci</dt><dd><em class="em3">name property value</em> property != value ==> next command skipped (case-insensitive string comparison) </dd><dt>testpropertye</dt><dd><em class="em3">name property value</em> property != value ==> next command skipped (numerical comparison) </dd><dt>testpropertyg</dt><dd><em class="em3">name property value</em> property <= value ==> next command skipped (numerical comparison) </dd><dt>testpropertyge</dt><dd><em class="em3">name property value</em> property < value ==> next command skipped (numerical comparison) </dd><dt>testpropertyl</dt><dd><em class="em3">name property value</em> property >= value ==> next command skipped (numerical comparison) </dd><dt>testpropertyle</dt><dd><em class="em3">name property value</em> property > value ==> next command skipped (numerical comparison) </dd><dt>testrandom</dt><dd><em class="em3">float</em> (if random number in 0.0..1.0 > value ==> next command skipped) </dd><dt>teststate</dt><dd><em class="em3">name name</em> (false ==> next command skipped) </dd><dt>turntoactor</dt><dd><em class="em3">targetname [LOS [Lock]]</em> turn NPC to face named actor, LOS=0 ==> LOS not needed, LOS=1 ==> LOS needed, LOS=2 ==> LOS not needed but turn anyway, Lock means target actor won't be cleared </dd><dt>unuse</dt><dd><em class="em3">name</em> unuse the named actor </dd><dt>use</dt><dd><em class="em3">name</em> use the named actor </dd><dt>usepickups</dt><dd><em class="em3">0/1</em> if 0, won't go after or pickup pickups </dd><dt>weaponload</dt><dd>load current weapon </dd><dt>WeaponSetAmmoType</dt><dd><em class="em3">ammoname</em> </dd><dt>WeaponSupportsAltFire</dt><dd><em class="em3">weaponname 0/1</em> disables/enables NPC being able to alt fire weapon </dd><dt>WeaponSupportsFire</dt><dd><em class="em3">weaponname 0/1</em> disables/enables NPC being able to primary fire weapon </dd></dl>
<pre class="paraverbatim"> </pre><h2><a name="0.2"></a>Events</h2>
<pre class="paraverbatim"> </pre><dl><dt>ActorInRange</dt><dd>generated when the InRangeActor comes within the InRangeDistance </dd><dt>ActorOutOfRange</dt><dd>generated once when the InRangeActor comes goes out of the InRangeDistance </dd><dt>AnimEnd</dt><dd>goes to Controller unless Pawn has no Controller (dying state) </dd><dt>AutoBegin</dt><dd>goes to Controller, generated by U2NPCControllerScriptable </dd><dt>AutoEnd</dt><dd>goes to Controller, generated by Controller : seems to be used for after fighting conditions </dd><dt>BumpEnemy</dt><dd>NotifyBump –> Controller –> BumpEnemy/Friend/Other </dd><dt>BumpFriend</dt><dd>NotifyBump –> Controller –> BumpEnemy/Friend/Other </dd><dt>BumpOther</dt><dd>NotifyBump –> Controller –> BumpEnemy/Friend/Other </dd><dt>BumpPlayer</dt><dd>not an actual event: eventwait BumpPlayer –> BumpEnemy/BumpFriend checked for player </dd><dt>DestinationReached</dt><dd>goes to Controller </dd><dt>DialogBegin</dt><dd>generated by Controller before destroyed </dd><dt>DialogUnPause</dt><dd>generated when dialog unpauses npc's script </dd><dt>Died</dt><dd>generated by Controller before destroyed </dd><dt>EnemyNotVisible</dt><dd>goes to Controller </dd><dt>HearNoiseFriendly</dt><dd>HearNoise –> Controller –> HearNoiseFriendly </dd><dt>HearNoiseOther</dt><dd>HearNoise –> Controller –> HearNoiseOther </dd><dt>HearNoiseThreat</dt><dd>HearNoise –> Controller –> HearNoiseThreat </dd><dt>InheritEnemy</dt><dd>generated when NPC could inherit another NPC's Enemy </dd><dt>ScriptedLanding</dt><dd>generated when NPC in scripted state lands (not passed back to NPC) </dd><dt>SeeAlertFriend</dt><dd>SeeAlertFriend –> Controller </dd><dt>SeeEnemy</dt><dd>SeeEnemy –> Controller </dd><dt>SeeFriend</dt><dd>SeeFriend –> Controller –> SeeFriend </dd><dt>SeeOther</dt><dd>SeeOther –> Controller –> SeeOther </dd><dt>SeePlayer</dt><dd>not an actual event: eventwait SeePlayer –> SeeEnemy/SeeFriend checked for player </dd><dt>TakeDamage</dt><dd>goes to Pawn </dd><dt>TookDamage</dt><dd>eventTakeDamage –> TookDamage generated by U2NPCControllerScriptable </dd><dt>TookDamageEnemy</dt><dd>generated internall from TookDamage for use by scripts only </dd><dt>TookDamageFriend</dt><dd>generated internall from TookDamage for use by scripts only </dd><dt>Trigger</dt><dd>goes to Pawn then Controller </dd></dl>
<h2><a name="0.3"></a>Related Topics</h2>
<ul><li><a href="artificial-intelligence.html">Artificial Intelligence</a> – A super topic for all AI</li>
<li><a href="ai-scripting.html">AI Scripting</a></li>
<li><a href="scriptedpawn.html">ScriptedPawn</a></li>
</ul>
<pre class="paraverbatim"> </pre><h2><a name="0.4"></a>Discussion</h2>
<p><em class="em2">Unknown:</em> Maybe explain what these are and where to put them?</p>
<p><em class="em2">Unknown:</em> I'll put that stuff in <a href="basic-ai-scripting-tutorial.html">Basic AI Scripting Tutorial</a> when I make it.</p>
<p><em class="em2">SuperApe:</em> This page needs help. Is it purely U2? It should be applicable to all versions. Since, I'm working on the <a href="basic-ai-scripting-tutorial.html">Basic AI Scripting Tutorial</a>, I may revise this.</p>
<hr class="thin"><p><a href="category-mapping.html">Category Mapping</a></p>
<p><a href="category-to-do.html">Category To Do</a> – This page needs to be updated and made relevant to all Unreal versions as well as the current wiki structure.</p>
<script type="text/javascript"><!--
menuItemAdd("Commands", "#0.1");
menuItemAdd("Events", "#0.2");
menuItemAdd("Related Topics", "#0.3");
menuItemAdd("Discussion", "#0.4");
menuWrite() //--></script></div>
</div>
<div id="footer" class="bar">
<p><form method="post" action="http://wiki.beyondunreal.com/wiki" enctype="application/x-www-form-urlencoded">
<a href="(start).html">Home Page</a> | <a href="recent-changes.html">Recent Changes</a> | <a href="http://wiki.beyondunreal.com/wiki?action=editprefs">Preferences</a><br>
<a href="http://wiki.beyondunreal.com/wiki?action=edit&id=AI_Scripting_Reference">Edit text of this page</a> | <a href="http://wiki.beyondunreal.com/wiki?action=history&id=AI_Scripting_Reference">View other revisions</a><br>Last edited December 6, 2005 16:27 <a href="http://wiki.beyondunreal.com/wiki?action=browse&diff=1&id=AI_Scripting_Reference">(diff)</a><br>Search: <input type="text" name="search" size="20" /><input type="hidden" name="dosearch" value="1" /><br><br><small><a href="http://wiki.beyondunreal.com/wiki/AI_Scripting_Reference">Original page</a> – copy created Sat, Jun 23, 2007</small><div></div>
</form>
</p>
<p>Gah - a solution with more questions. (EntropicLqd)
</p>
</div>
</div><!-- close of "scrolling" div -->
<div id="quickbar">
<div id="logo"><a href="http://wiki.beyondunreal.com/"><img src="shared/wikilogo.jpg" width="143" height="100" border="0"></a>
</div>
<div class="qbsitename">
<p>The Unreal Engine Documentation Site</p>
</div>
<div class="qbsection">
<p><a href="metatopics.html">Wiki Community</a></p>
<p><a href="category-category.html">Topic Categories</a></p>
<p><a href="/cgi-bin/imageupload.cgi/wiki-ext/imageupload.htt" target="_blank ">Image Uploads</a></p>
<p><a href="http://wiki.beyondunreal.com/wiki?action=random">Random Page</a></p>
<p><a href="recent-changes.html">Recent Changes</a></p>
<p><a href="offline-wiki.html">Offline Wiki</a></p>
</div><div class="qbsection">
<p><a href="unreal-engine.html">Unreal Engine</a></p>
<p><a href="console-commands.html">Console Commands</a></p>
<p><a href="terminology.html">Terminology</a></p>
<p><a href="category-faq.html">FAQs</a></p>
<p><a href="help-desk.html">Help Desk</a></p>
</div><div class="qbsection">
<p><a href="topics-on-mapping.html">Mapping Topics</a></p>
<p><a href="mapping-lessons.html">Mapping Lessons</a></p>
<p><a href="unrealed-3.html">UnrealEd Interface</a></p>
</div><div class="qbsection">
<p><a href="unrealscript.html">UnrealScript Topics</a></p>
<p><a href="unrealscript-lessons.html">UnrealScript Lessons</a></p>
<p><a href="making-mods.html">Making Mods</a></p>
<p><a href="class-tree.html">Class Tree</a></p>
</div><div class="qbsection">
<p><a href="topics-on-modeling.html">Modeling Topics</a></p>
</div><div class="qbsection">
<p><a href="chongqing-page.html">Chongqing Page</a></p>
<p><a href="log-in.html">Log In</a></p></div>
</div>
</body></html>