Ai goal actbusy: Difference between revisions
Jump to navigation
Jump to search
m (Templated the keyvalues.) |
(Templated the inputs.) |
||
Line 13: | Line 13: | ||
<!--This entity has no flags.---> | <!--This entity has no flags.---> | ||
==Inputs== | ==Inputs== | ||
*{{ | *{{I BaseActbusyGoal}} | ||
==Outputs== | ==Outputs== |
Revision as of 06:39, 6 April 2006
Entity Description
This entity points to a set of NPCs to control, and contains options about how it should go about making those NPCs act busy. There are two common methods of using ai_goal_actbusy entities:
The first is to fire the Activate input on the ai_goal_actbusy entity, which will cause it to start ordering the NPCs under its command to act busy.
The second is to leave the ai_goal_actbusy inactive, and send it ForceNPCToActBusy inputs to order specific NPCs under its command to act busy.
Keyvalues
- AI_ActBusyGoal:
- Search Range for Busy Hints (busysearchrange) <float>
- Maximum distance between an actbusy hint and NPC for the NPC to consider it.
- Visible Busy Hints Only (visibleonly) <boolean>
- If set, an NPC will only consider actbusy hints in view when deciding which to use. Once the choice has been made it will not change, even if new hints become visible.
- Actbusy Type (type) <choices>
- Is this Actbusy part of combat? For use with Combat Safe Zone.
- 0: Default (Standard)
- 1: Combat
- Allow actor to teleport? (allowteleport) <boolean>
- Sight Entity (seeentity) <targetname>
- Optionally, if the Actor playing the ActBusy loses sight of this specified entity for an amount of time defined by Sight Entity Timeout, the specified entity will leave the ActBusy.
Note:Only targetnames are allowed, not classnames!
- Sight Entity Timeout (seeentitytimeout) <float>
- Time in seconds to wait for an Actor to see the Sight Entity again before the entity may leave the ActBusy.
- Sight Enemy Method (sightmethod) <choices>
- How to determine if the Actor sees the Sight Entity.
- Combat Safe Zone (safezone) <targetname>
- Specify a brush entity to act as a safe zone if Actbusy Type is set to Combat. If any enemies are in the safe zone, the actbusy will break. Todo: Will actors go back to the actbusy once enemies are dead? What if they leave the safe zone but are still alive?
Inputs
- AI_ActBusyGoal:
- ForceNPCToActBusy <string >
- Format:
<targetname> [hint node targetname] [teleport] [nearest] [$<custom activity or sequence>] [max time]
- Force an NPC to act busy.
- The targetname parameter specifies the name of the NPC(s).
- The hint node targetname parameter specifies the name of the Hint node. Used to force an NPC to act busy on a specific node. If no hint node targetname is specified, it'll search for a random one.
- If the teleport keyword is specified as a parameter, the NPC will teleport onto the actbusy node instead of navigating to it.
- If the nearest keyword is specified as a parameter, the NPC will choose the nearest valid actbusy node, instead of choosing one randomly from all valid actbusy nodes.
- The max time parameter specifies the maximum time to actbusy. If no max time is specified, it'll use the default. Specifying 0 as the max time will make the NPC(s) act busy until disturbed.
- The $customactivityorsequence parameter specifies the name of a custom activity, prepended by a "$", that the NPC(s) will preform while navigating to the node, e.g.
$ACT_RUN
will make the NPC(s) run to the node. Sequence names can be used instead of activities.
- ForceThisNPCToActBusy <targetname >
- Force an specified NPC to act busy. If there are multiple NPCs with the same name, only one will be ordered.
- ForceThisNPCToLeave <targetname >
- Force an NPC to find an NPC exit point (
HINT_NPC_EXIT_POINT
hintnode) and vanish. Supports wildcards.
- SetBusySearchRange <float >
- Alters the Search Range for Busy Hints keyvalue for all actors.
Outputs
- OnNPCFinishedBusy <ehandle>
- Fired when an NPC targeted by this goal finishes an ActBusy animation sequence.
- OnNPCLeft <ehandle>
- Fired when an NPC targeted by this goal, ordered by the ForceThisNPCToLeave input, finishes its forced leave.
- OnNPCStartedBusy <ehandle>
- Fired when an NPC targeted by this goal starts an ActBusy animation sequence.
See Also
- Actbusy - The Actbusy system explained.
- ai_goal_actbusy_queue - A similar entity.