code/__DEFINES/ai/ai.dm 
            
        
| 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 | 
|---|---|
| AI_FAILED_PLANNING_COOLDOWN | Cooldown on planning if planning failed last time | 
| AI_CONTROLLER_INCOMPATIBLE | Flags for ai_behavior new() | 
| AI_BEHAVIOR_REQUIRE_MOVEMENT | Does this task require movement from the AI before it can be performed? | 
| AI_BEHAVIOR_REQUIRE_REACH | Does this require the current_movement_target to be adjacent and in reach? | 
| AI_BEHAVIOR_MOVE_AND_PERFORM | Does this task let you perform the action while you move closer? (Things like moving and shooting) | 
| AI_BEHAVIOR_KEEP_MOVE_TARGET_ON_FINISH | Does finishing this task not null the current movement target? | 
| AI_BEHAVIOR_CAN_PLAN_DURING_EXECUTION | Does this behavior NOT block planning? | 
| STOP_MOVING_WHEN_PULLED | AI flags Don't move if being pulled | 
| CAN_ACT_WHILE_DEAD | Continue processing even if dead | 
| PAUSE_DURING_DO_AFTER | Stop processing while in a progress bar | 
| CAN_ACT_IN_STASIS | Continue processing while in stasis | 
| SUBTREE_RETURN_FINISH_PLANNING | This subtree should cancel any further planning, (Including from other subtrees) | 
| RESIST_SUBTREE_PROB | probability that the pawn should try resisting out of restraints | 
| SHOULD_RESIST | macro for whether it's appropriate to resist right now, used by resist subtree | 
| IS_DEAD_OR_INCAP | macro for whether the pawn can act, used generally to prevent some horrifying ai disasters | 
Define Details
AI_BEHAVIOR_CAN_PLAN_DURING_EXECUTION
            
         
    
    Does this behavior NOT block planning?
AI_BEHAVIOR_KEEP_MOVE_TARGET_ON_FINISH
            
         
    
    Does finishing this task not null the current movement target?
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_BEHAVIOR_REQUIRE_REACH
            
         
    
    Does this require the current_movement_target to be adjacent and in reach?
AI_CONTROLLER_INCOMPATIBLE
            
         
    
    Flags for ai_behavior new()
AI_FAILED_PLANNING_COOLDOWN
            
         
    
    Cooldown on planning if planning failed last time
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
CAN_ACT_IN_STASIS
            
         
    
    Continue processing while in stasis
CAN_ACT_WHILE_DEAD
            
         
    
    Continue processing even if dead
IS_DEAD_OR_INCAP
            
            
         
    
    macro for whether the pawn can act, used generally to prevent some horrifying ai disasters
PAUSE_DURING_DO_AFTER
            
         
    
    Stop processing while in a progress bar
RESIST_SUBTREE_PROB
            
         
    
    probability that the pawn should try resisting out of restraints
SHOULD_RESIST
            
            
         
    
    macro for whether it's appropriate to resist right now, used by resist subtree
STOP_MOVING_WHEN_PULLED
            
         
    
    AI flags Don't move if being pulled
SUBTREE_RETURN_FINISH_PLANNING
            
         
    
    This subtree should cancel any further planning, (Including from other subtrees)