AI Lua API
Contents
- 1 AI
- 1.1 Description
- 1.2 Functions
- 1.2.1 Pause
- 1.2.2 Unpause
- 1.2.3 IsPaused
- 1.2.4 AddGoal
- 1.2.5 RemoveGoal
- 1.2.6 AddTemporaryGoal
- 1.2.7 GetNPCProfileByTag
- 1.2.8 Lua_CheckNPCProfile
- 1.2.9 GetNPCStat
- 1.2.10 SetNPCStat
- 1.2.11 AlterNPCStat
- 1.2.12 AlterNPCWorldState
- 1.2.13 FavourInterest
- 1.2.14 AvoidInterest
- 1.2.15 SetNPCFavouredComputer
- 1.2.16 AddAction
- 1.2.17 RemoveAction
AI
Description
API to control the logic of AI in the mission
Functions
Pause
AI.Pause(characterName)
Expected parameter types
Name | Type |
---|---|
characterName | string |
Description: Pauses the agent, and stops it from doing anything.
Returns: Nothing
Notes: The AI will be hidden from networks, meaning it will no longer interact with devices or send/receive messages.
Unpause
AI.Unpause(characterName)
Expected parameter types
Name | Type |
---|---|
characterName | string |
Description: Unpauses a hidden agent, resuming standard behaviour.
Returns: Nothing
IsPaused
AI.IsPaused(characterName)
Expected parameter types
Name | Type |
---|---|
characterName | string |
Description: Returns a bool based on if a character is currently paused or not
Returns: bool
AddGoal
AI.AddGoal(characterName, goal)
Expected parameter types
Name | Type |
---|---|
characterName | string |
goal | Lua Table |
Description: Adds a defined goal
Returns: Nothing
RemoveGoal
AI.RemoveGoal(characterName, goalName)
Expected parameter types
Name | Type |
---|---|
characterName | string |
goalName | string |
Description: Removes any defined goals
Returns: Nothing
AddTemporaryGoal
AI.AddTemporaryGoal(characterName, goal)
Expected parameter types
Name | Type |
---|---|
characterName | string |
goal | Lua Table |
Description: Adds a goal, taking top priority, to the named AI
Returns: Nothing
Notes: This goal will be removed from the AI once complete. If it isn't achievable it will be removed immediately.
GetNPCProfileByTag
AI.GetNPCProfileByTag(characterName, tag)
Expected parameter types
Name | Type |
---|---|
characterName | string |
tag | string |
Description: Get all values of a tag from a chaarcter's profile, if the tag exists.
Returns: System.String[]
Lua_CheckNPCProfile
AI.Lua_CheckNPCProfile(characterName, tag, value)
Expected parameter types
Name | Type |
---|---|
characterName | string |
tag | string |
value | string |
Description: Check if character's profile data contains a specific tag wiht a specific value
Returns: bool
GetNPCStat
AI.GetNPCStat(characterName, statName)
Expected parameter types
Name | Type |
---|---|
characterName | string |
statName | string |
Description: Returns current value of NPC's stat
Returns: number
Notes: This is only intended for debugging purposes, and not recommended in any actual game scripts.
SetNPCStat
AI.SetNPCStat(characterName, statName, newValue)
Expected parameter types
Name | Type |
---|---|
characterName | string |
statName | string |
newValue | number |
Description: Sets an NPC's AI stat to absolute value
Returns: Nothing
Notes: This is only intended for debugging purposes, and not recommended in any actual game scripts.
AlterNPCStat
AI.AlterNPCStat(characterName, statName, statDelta)
Expected parameter types
Name | Type |
---|---|
characterName | string |
statName | string |
statDelta | number |
Description: Alters an NPC's AI stat by relative value
Returns: Nothing
AlterNPCWorldState
AI.AlterNPCWorldState(characterName, state, value)
Expected parameter types
Name | Type |
---|---|
characterName | string |
state | string |
value | Lua Type |
Description: Change the World State of an NPC.
Returns: Nothing
FavourInterest
AI.FavourInterest(characterName, device, permanent)
Expected parameter types
Name | Type |
---|---|
characterName | string |
device | string |
permanent | bool |
Description: Reduce the cost of an AI using a particular Interest
Returns: Nothing
Notes: If permanent is false, the cost will revert to normal the next time this is successfully used
AvoidInterest
AI.AvoidInterest(characterName, device, permanent)
Expected parameter types
Name | Type |
---|---|
characterName | string |
device | string |
permanent | bool |
Description: Increase the cost of an AI using a particular Interest
Returns: Nothing
Notes: If permanent is false, the cost will revert to normal the next time this is successfully used
SetNPCFavouredComputer
AI.SetNPCFavouredComputer(characterName, computer)
Expected parameter types
Name | Type |
---|---|
characterName | string |
computer | MissionObject |
Description: Set NPC's computer, this will be used for a variety of actions
Returns: Nothing
AddAction
AI.AddAction(characterName, action)
Expected parameter types
Name | Type |
---|---|
characterName | string |
action | Lua Table |
Description: Adds an action that can be used immediately
Returns: Nothing
RemoveAction
AI.RemoveAction(characterName, actionName)
Expected parameter types
Name | Type |
---|---|
characterName | string |
actionName | string |
Description: Removes any action
Returns: Nothing
This file is auto generated, please don't edit manually!
Docs last hacked together on: 29/08/2023 16:24