Space Station 13 - Modules - TypesDefine Details

code/__DEFINES/ai.dm

SHOULD_RESISTMonkey checks
AI_MAX_PATH_LENGTHFor JPS pathing, the maximum length of a path we'll try to generate. Should be modularized depending on what we're doing later on
AI_FAILED_PLANNING_COOLDOWNCooldown on planning if planning failed last time
AI_CONTROLLER_INCOMPATIBLEFlags for ai_behavior new()
AI_BEHAVIOR_REQUIRE_MOVEMENTDoes this task require movement from the AI before it can be performed?
AI_BEHAVIOR_MOVE_AND_PERFORMDoes this task let you perform the action while you move closer? (Things like moving and shooting)
STOP_MOVING_WHEN_PULLEDAI flags
SUBTREE_RETURN_FINISH_PLANNINGSubtree defines This subtree should cancel any further planning, (Including from other subtrees)
BB_SONG_DATUMsong datum blackboard, set by instrument subtrees
HAUNTED_ITEM_ATTACK_HAUNT_CHANCEHaunted item controller defines Chance for haunted item to haunt someone
HAUNTED_ITEM_ESCAPE_GRASP_CHANCEChance for haunted item to try to get itself let go.
HAUNTED_ITEM_TELEPORT_CHANCEChance for haunted item to warp somewhere new
HAUNTED_ITEM_AGGRO_ADDITIONAmount of aggro you get when picking up a haunted item
BB_TO_HAUNT_LISTBlackboard keys for haunted items
BB_HAUNT_TARGETActual mob the item is haunting at the moment
BB_HAUNTED_THROW_ATTEMPT_COUNTAmount of successful hits in a row this item has had
CURSED_VIEW_RANGECursed item controller defines how far a cursed item will still try to chase a target
BB_CURSE_TARGETActual mob the item is haunting at the moment
BB_TARGET_SLOTWhere the item wants to land on
BB_CURSED_THROW_ATTEMPT_COUNTAmount of successful hits in a row this item has had
BB_MOD_TARGETMob the MOD is trying to attach to
BB_MOD_IMPLANTThe implant the AI was created from
MOD_AI_RANGERange for a MOD AI controller.
BB_VENDING_CURRENT_TARGETVending machine AI controller blackboard keys
BB_CUSTOMER_CURRENT_ORDERRobot customer AI controller blackboard keys
BB_CUSTOMER_SAID_CANT_FIND_SEAT_LINERobot customer has said their can't find seat line at least once. Used to rate limit how often they'll complain after the first time.
BB_HOSTILE_ORDER_MODEHostile AI controller blackboard keys
BB_HOSTILE_VISION_RANGEBasically, what is our vision/hearing range.
AI_HOSTILE_COMMAND_COOLDOWNAfter either being given a verbal order or a pointing order, ignore further of each for this duration
HOSTILE_COMMAND_NONEDon't do anything (will still react to stuff around them though)
HOSTILE_COMMAND_ATTACKWill attack a target.
HOSTILE_COMMAND_FOLLOWWill follow a target.
BB_SIMPLE_CARRY_ITEMDog AI controller blackboard keys
AI_DOG_VISION_RANGEBasically, what is our vision/hearing range for picking up on things to fetch
AI_DOG_PET_FRIEND_PROBWhat are the odds someone petting us will become our friend?
AI_FETCH_IGNORE_DURATIONAfter this long without having fetched something, we clear our ignore list
AI_DOG_HEEL_DURATIONAfter being ordered to heel, we spend this long chilling out
AI_DOG_COMMAND_COOLDOWNAfter either being given a verbal order or a pointing order, ignore further of each for this duration
DOG_COMMAND_NONEDon't do anything (will still react to stuff around them though)
DOG_COMMAND_FETCHWill try to pick up and bring back whatever you point to
DOG_COMMAND_ATTACKWill get within a few tiles of whatever you point at and continually growl/bark. If the target is a living mob who gets too close, the dog will attack them with bites

Define Details

AI_BEHAVIOR_MOVE_AND_PERFORM

Does this task let you perform the action while you move closer? (Things like moving and shooting)

AI_BEHAVIOR_REQUIRE_MOVEMENT

Does this task require movement from the AI before it can be performed?

AI_CONTROLLER_INCOMPATIBLE

Flags for ai_behavior new()

AI_DOG_COMMAND_COOLDOWN

After either being given a verbal order or a pointing order, ignore further of each for this duration

AI_DOG_HEEL_DURATION

After being ordered to heel, we spend this long chilling out

AI_DOG_PET_FRIEND_PROB

What are the odds someone petting us will become our friend?

AI_DOG_VISION_RANGE

Basically, what is our vision/hearing range for picking up on things to fetch

AI_FAILED_PLANNING_COOLDOWN

Cooldown on planning if planning failed last time

AI_FETCH_IGNORE_DURATION

After this long without having fetched something, we clear our ignore list

AI_HOSTILE_COMMAND_COOLDOWN

After either being given a verbal order or a pointing order, ignore further of each for this duration

AI_MAX_PATH_LENGTH

For JPS pathing, the maximum length of a path we'll try to generate. Should be modularized depending on what we're doing later on

BB_CURSED_THROW_ATTEMPT_COUNT

Amount of successful hits in a row this item has had

BB_CURSE_TARGET

Actual mob the item is haunting at the moment

BB_CUSTOMER_CURRENT_ORDER

Robot customer AI controller blackboard keys

BB_CUSTOMER_SAID_CANT_FIND_SEAT_LINE

Robot customer has said their can't find seat line at least once. Used to rate limit how often they'll complain after the first time.

BB_HAUNTED_THROW_ATTEMPT_COUNT

Amount of successful hits in a row this item has had

BB_HAUNT_TARGET

Actual mob the item is haunting at the moment

BB_HOSTILE_ORDER_MODE

Hostile AI controller blackboard keys

BB_HOSTILE_VISION_RANGE

Basically, what is our vision/hearing range.

BB_MOD_IMPLANT

The implant the AI was created from

BB_MOD_TARGET

Mob the MOD is trying to attach to

BB_SIMPLE_CARRY_ITEM

Dog AI controller blackboard keys

BB_SONG_DATUM

song datum blackboard, set by instrument subtrees

BB_TARGET_SLOT

Where the item wants to land on

BB_TO_HAUNT_LIST

Blackboard keys for haunted items

BB_VENDING_CURRENT_TARGET

Vending machine AI controller blackboard keys

CURSED_VIEW_RANGE

Cursed item controller defines how far a cursed item will still try to chase a target

DOG_COMMAND_ATTACK

Will get within a few tiles of whatever you point at and continually growl/bark. If the target is a living mob who gets too close, the dog will attack them with bites

DOG_COMMAND_FETCH

Will try to pick up and bring back whatever you point to

DOG_COMMAND_NONE

Don't do anything (will still react to stuff around them though)

HAUNTED_ITEM_AGGRO_ADDITION

Amount of aggro you get when picking up a haunted item

HAUNTED_ITEM_ATTACK_HAUNT_CHANCE

Haunted item controller defines Chance for haunted item to haunt someone

HAUNTED_ITEM_ESCAPE_GRASP_CHANCE

Chance for haunted item to try to get itself let go.

HAUNTED_ITEM_TELEPORT_CHANCE

Chance for haunted item to warp somewhere new

HOSTILE_COMMAND_ATTACK

Will attack a target.

HOSTILE_COMMAND_FOLLOW

Will follow a target.

HOSTILE_COMMAND_NONE

Don't do anything (will still react to stuff around them though)

MOD_AI_RANGE

Range for a MOD AI controller.

SHOULD_RESIST

Monkey checks

STOP_MOVING_WHEN_PULLED

AI flags

SUBTREE_RETURN_FINISH_PLANNING

Subtree defines This subtree should cancel any further planning, (Including from other subtrees)