ActorParam/AISchedule: Difference between revisions

From ZeldaMods (Breath of the Wild)
Jump to navigation Jump to search
imported>Leoetlino
(Created page with "{{stub|what=Needs a description for AISchedule and a complete list of properties. The current lists are extremely incomplete.}} == Contents == <source lang="yaml"> Conditional...")
 
 
(7 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{stub|what=Needs a description for AISchedule and a complete list of properties. The current lists are extremely incomplete.}}
<onlyinclude>
== Contents ==
'''AISchedule''' configures actions based on time and other conditions for an actor, as well as the [[AI system|AI states]] or [[Event system|events]] that it can trigger.
</onlyinclude>
 
==Contents==
<source lang="yaml">
<source lang="yaml">
ConditionalTimelines:
ConditionalTimelines:
Line 23: Line 26:
DisplayDistanceMode: None 
DisplayDistanceMode: None 
</source>
</source>
=== Node ===
===Node===
{{expand section}}
Example:
Example:
<source lang="yaml">
<source lang="yaml">
Line 40: Line 44:
</source>
</source>


=== TriggerEvent ===
===TriggerEvent===
{|class="wikitable"
{{expand section}}
! Name !! Type !! Description
An event that will be triggered when a condition is satisfied.
 
{| class="wikitable"
!Name!!Type!!Description
|-
|EvflEntry||str||Name of the entry point that will be executed. The event flowchart name is the same as the name of the associated actor or quest (for AISchedule blocks defined in [[QuestProduct]]).
|-
|IsPauseOtherActors||bool||Whether other actors should be paused when the event is triggered
|-
|Trigger||str||Event trigger
|-
|Parameters||dict||
|}
 
====Triggers====
{{expand section}}
{| class="wikitable"
!Value!!Description
|-
|Talk||When the actor is talked to
|-
|-
| EvflEntry || str || Name of the entry point that will be executed. The event flowchart name is the same as the name of the associated actor or quest (for AISchedule blocks defined in [[QuestProduct]]).
|EachFrame||On every frame
|-
|-
| IsPauseOtherActors || bool || Whether other actors should be paused when the event is triggered
|Near||When Link is close to the actor
|-
|-
| Trigger || str || Event trigger
|StepStart||When the quest step starts (only for [[QuestProduct]])
|}
|}


Example:
==Files==
<source lang="yaml">
AISchedule information is stored in baischedule files as an [[ActorParam]] resource or as a part of the Actors array in quest steps in [[QuestProduct.bquestpack]].
{ EvflEntry: Talk, IsPauseOtherActors: true, Trigger: Talk }
</source>

Latest revision as of 16:24, 5 September 2021

AISchedule configures actions based on time and other conditions for an actor, as well as the AI states or events that it can trigger.


Contents

ConditionalTimelines:
- Condition: Npc_Kakariko001_Talk
  Nodes:
  - <NODE_1>
  - <NODE_2>
  - ...
  TriggerEvents:
  - <TRIGGER_EVENT_1>
  - <TRIGGER_EVENT_2>
  - ...
DefaultTimeline:
  Nodes:
  - <NODE_1>
  - <NODE_2>
  - ...
  TriggerEvents:
  - <TRIGGER_EVENT_1>
  - <TRIGGER_EVENT_2>
  - ...
DisplayDistanceMode: None 

Node

Example:

{ AIName: Action2, CanBeAwaken: 'True', Emotion: Normal, EndTime: 5, IsAlignmentWaitPosition: 'False',
  IsEnableMoveNext: false, IsInheritWaitASToTalk: 'False', IsRainAlignmentWaitPosition: 'False',
  IsRainInheritWaitASToTalk: 'False', MeetingASName: '', MeetingReactionType: 1,
  MoveEquipment: Invisible, MoveGreetingType: NotAndNot, MovePosture: 0, MoveReactionType: 2,
  MoveTalkTurn: 2, MoveToAnchorASName: Walk, MoveToAnchorRainASName: '', RainEmotion: Normal,
  ReactionToApproach: Quit, ReactionToApproachDist: 5, ReactionToApproachRain: None,
  ReactionToApproachTurnASName: Turn, ReactionToApproachWaitASName: Wait, ReturnActionRainTimeAfterTalk: -1,
  ReturnActionTimeAfterTalk: -1, ReturnMoveTimeAfterTalk: 60, SleepOnBed: 'True',
  StartTime: 0, WaitAnchorASName: Sleep, WaitAnchorRainASName: '', WaitEquipment: Invisible,
  WaitForScheduleMoveASName: Wait, WaitGreetingType: NotAndNot, WaitPosture: 0,
  WaitRainEquipment: Invisible, WaitRainPosture: 0, WaitRainReactionType: 0, WaitRainTalkTurn: 3,
  WaitReactionType: 0, WaitTalkTurn: 2}

TriggerEvent

An event that will be triggered when a condition is satisfied.

Name Type Description
EvflEntry str Name of the entry point that will be executed. The event flowchart name is the same as the name of the associated actor or quest (for AISchedule blocks defined in QuestProduct.bquestpack).
IsPauseOtherActors bool Whether other actors should be paused when the event is triggered
Trigger str Event trigger
Parameters dict

Triggers

Value Description
Talk When the actor is talked to
EachFrame On every frame
Near When Link is close to the actor
StepStart When the quest step starts (only for QuestProduct.bquestpack)

Files

AISchedule information is stored in baischedule files as an ActorParam resource or as a part of the Actors array in quest steps in QuestProduct.bquestpack.