Overview
This page lists all known modules and functions that can be used to create ZT2 AI.
"animTableEntry"
(actually, the tag is always the name of the anim set, eg. Stand)
Attributes:
- anim (string) - The exact animation that should be played in this set, eg.
Stand_Idle. - behSet (string) - May apparently be used instead of an anim.
- weight (int) - The probability of using this subset; should add up to 100.
- minAnimSpeed (float) - Minimum anim speed to use in playback.
- maxAnimSpeed (float) - Maximum anim speed to use in playback.
Children:
- None
"behaviorTableEntry"
(actually, the tag is always the name of the state the entity is in, eg. default, Stand, water, underwater)
Attributes:
- behSet (string) - Specifies the behSet to be played in the current state.
Children:
- None
"randomAnimsEntry"
(The tag is really the name of the anim that should be played, eg. Stand_Idle)
Attributes:
- weight (int) - The probability of using this anim; should add up to 100.
Children:
- None
"randomSetsEntry"
(actually, the tag is always the name of the behSet, eg. DefaultPant)
Attributes:
- weight (int) - The probability of using this subset; should add up to 100.
Children:
- None
"textkeysEntry"
(actually, the tag is always the name of the function, eg. blowhole, tranquilize, detachobject, attachobject)
Attributes:
- text (string) - In one-line txtkeys syntax, specifying nodes etc.
Children:
- None
AnimalEnters
Attributes:
- BaseScore (int) - (0, 10, 20),
- FavoriteAnimalBonus (int) - (-20, 20, 70),
- FuzzyFactor (int) - (20, 50),
- ShowQualityMult (int) - (-2, 1, 20, 4, 6),
Children:
AnimalLeaves
Attributes:
- BaseScore (int) - (0, 10, 20),
- FavoriteAnimalBonus (int) - (-20, 20, 70),
- FuzzyFactor (int) - (20, 50),
- ShowQualityMult (int) - (-2, 1, 20, 4, 6),
Children:
BFAIAttributeFloatMap
Attributes:
- "attribute" (float or bool) - Assigns the given value to the named attribute.
Children:
- None
BFAIBiomeMap
Maps each biome to a preference / weight in range 0-1. Always called from BFAIEvalData.
Attributes:
- "biome" (float) - Assigns the given preference to the named biome.
Children:
- None
Example:
<BFAIBiomeMap alpine=".30" borealforest=".75" temperateforest=".75" desert=".10" grassland=".50" savannah=".10" tropicalrainforest=".10" scrub=".10" tundra=".10" wetlands="1.00"/>
BFAICompletionData
Attributes:
- invalidateTarget (bool) - Default is
false. - needPointsBad (float) - (.1, 1, 30, 5, 50),
Children:
- BFAIAttributeFloatMap
- BFAISubjectData
- BFAITargetData
- BFAITokenList
- BFBehExecTask
- BFBehSendToken
- userData
BFAICreateData
Attributes:
- None
Children:
BFAIEvalData
Attributes:
- fixedScore (int) - (.00005, 10000, 12000, 12003, 12005),
- distanceInfluenced (bool) - (false, true),
- leaveZoo (bool) - (true),
- needPointsBad (int) - (.1, 1, 30, 5, 50),
- needPointsGood (float) - (.1, 10, 15, 5, 50),
- ?f_needPointsGood? (string) - (15, G 0, L 50),
- !needGoodPoints! (int) - (5),
- !needPointsgood! (int) - (5),
Children:
BFAIFailureData
Attributes:
- None
Children:
BFAISubjectData
Must be called from BFBehSetAttribute.
Attributes:
- "attribute" (int or bool) - Assigns the given integer to the named attribute.
Children:
Example:
<BFBehSetAttribute>
<BFAISubjectData health="30"/>
</BFBehSetAttribute>
BFAITargetData
Must be called from BFBehSetAttribute.
Attributes:
- "attribute" (int or bool) - Assigns the given integer to the named attribute.
Children:
Example:
<BFBehSetAttribute>
<BFAITargetData exercise="-10"/>
</BFBehSetAttribute>
BFAITaskTemplate
Attributes:
- CursorTask (bool) - (false),
- Name (string) - (DefaultTask_Aardvark, DefaultTask_Actor, FastWander, Interact_Player, WanderWater),
- Priority (int) - (1, 10, 100, 5, 900),
- TaskDelayMax (int) - (100000, 180, 300, 420, 60),
- TaskDelayMin (int) - (10000, 180, 30, 300, 60),
- UniqueID (string) - (Aardvark:DefaultTask_Aardvark, Aardvark:FastWander, Aardvark:WanderWater, actor:DefaultTask_Actor, playerinteractions:Interact_Player),
- UseForKeeperPanel (bool) - (false),
- UseFromTokenQualifiers (bool) - (true),
- attachTag (string) - (back, cleanerfish, hand, lefthandyoung, mouth),
- distanceInfluenced (bool) - (false, true),
- objectContainer (string) - (back, hand, lefthandyoung, mouth, righthand),
- objectName (string) - (entityname:CheeseCake_lower, entityname:CottonCandy_lower, entityname:FruitCup_lower, entityname:IceCream_lower, entityname:Popcorn_lower),
- priority (int) - (-1, 0, 1, 10, 2),
- reserveTag (string) - (Browse, General, Graze, Rest, TAP),
- sensorTag (string) - (explore, habitat, path, tour, viewanimals),
- useFromTokenQualifiers (bool) - (true),
Children:
- BFAIAttributeFloatMap
- BFAIBiomeMap
- BFAICompletionData
- BFAICreateData
- BFAIEvalData
- BFAIFailureData
- BFAIValidationData
- BFBehExecTask
BFAITaskTemplateList
The top-level container for all BFAITaskTemplates.
Attributes:
- None
Children:
BFAIToken
A token (= an object) that can be sent to an entity / other entities. Must be called from BFAITokenList
Attributes:
- Name (string) - Name of the token to be sent. Usuall prefaced with ´t_´, eg. ´t_GiveTreat´
- GiveTo (string) -
- Payload (string) - Either
subjectortarget. - Radius (int) - How far can this token be sent?
- Chance (int) - How likely will this token be sent, in percent.
- Reconsider (bool) - Default is
false. - RetainOnFailure (bool) - Default is
false. - RetainOnSuccess (bool) - Default is
false. - RetainOnError (bool) - Default is
false. - OnlyOne (bool) - Default is
false. - ModifyChance (bool) - Default is
false. - Timein (float) - Delay, in seconds?
- Timeout (int) - Delay, in seconds?
Children:
- None
BFAITokenList
Contains BFAITokens. Can be called from BFBehSendToken, ZTBehSplashGuest and possibly more
Attributes:
- None
Children:
Example:
<BFBehSendToken>
<BFAITokenList>
<BFAIToken Name="t_GiveTreat" Payload="subject" GiveTo="target" Timeout="5" Reconsider="true"/>
</BFAITokenList>
</BFBehSendToken>
BFAIValidationData
Attributes:
- None
Children:
BFBehAnimSwitchSet
May switch between different behSets according to the state (= anim set) the subject entity is currently in.
Attributes:
- loopFlag (bool) - Default is
false.
Children:
Example:
<BFBehAnimSwitchSet>
<behaviorTable>
<Stand behSet="DefaultStand"/>
<Lie behSet="DefaultLie"/>
<Sleep behSet="DefaultSleep"/>
<Rest behSet="DefaultRest"/>
<default behSet="DefaultStand"/>
</behaviorTable>
</BFBehAnimSwitchSet>
BFBehAnimate
Plays an animation, optionally specifying "textkeys" as well.
Attributes:
- targetAnim (string) - The name of the anim that should be played.
- playTime (int) - How long this behSet should be played.
- animSpeed (float) - Exact anim speed to use in playback.
- minAnimSpeed (float) - Minimum anim speed to use in playback.
- maxAnimSpeed (float) - Maximum anim speed to use in playback.
- loopFlag (bool) - Should this loop forever? Default is
false. - interruptFlag (bool) - Allow interruptions? Default is
false. - interruptible (bool) - Can this anim be stopped during playback? Default is
false. - blendDuration (int) - Probably orphaned and not used.
- groundFit (bool) - Fit to ground according to leg nodes? Default is
true. - physObj (string) - For multi-piece objects, which physObj should be animated (eg.
Vendorfor shops)
Children:
BFBehAnimateRandom
Randomly plays an anim from the randomAnims table.
Attributes:
- minPlays (int) - How long many times should this behSet be run?
- maxPlays (int) - How long many times should this behSet be run?
- playTime (int) - How long this behSet should be played.
- loopFlag (bool) - Should this loop forever? Default is
false. - interruptFlag (bool) - Allow interruptions? Default is
false.
Children:
BFBehAnimateSwitch
Switches between different animations according to which state (anim set) the AI is in.
Attributes:
- None
Children:
Example:
<BFBehAnimateSwitch>
<animTable>
<Swim anim="TreadWater_Idle"/>
<TreadWater anim="TreadWater_Idle"/>
<default anim="TreadWater_Idle"/>
</animTable>
</BFBehAnimateSwitch>
BFBehAnimateTAP
Starts a TAP interaction, must be preceded by BFBehDockTAP. During use, the subject's animation is driven by macros that are defined in its XML and executed by the TAP anim's txtkeys.
Attributes:
- subjectNode (string) - Name of the subject's dock node, eg.
Node_Mouth,Floor... - targetTAP (string) - The name of the TAP anim / node the entity should follow.
- exitTAP (bool) - Either
trueorfalse. - !exitTap! (bool) - Typo for exitTAP.
Children:
- None
Example:
<BFBehAnimateTAP subjectNode="Floor" targetTAP="DockNode01_BaseA2Branch1AEnd" exitTap="false"/>
<BFBehAnimateTAP subjectNode="Floor" targetTAP="DockNode02_Branch1AEnd2ExitA" exitTAP="true"/>
BFBehAttachObject
Attaches an object to the subject.
Attributes:
- attachEntity (string) - May be the name of an entity (eg.
Trash) or a property referring to an entity (eg.s_prop). - targetAnim (string) - The name of the anim that should be played during attaching.
- subjectNode (string) - Name of the subject's node that will be parent to the attachment, eg.
Node_Eat. This is often specified in the targetAnim's txtkey rather than explicitly in the BEH. - targetNode (string) - Name of the target's attachment root node, usually
Dock_Attach... - targetBehSet (string) - (DockFight, HitMediumEqual, BiteMed, Rendezvous, DefendEqual, ...)
- detachAction (string) - (killitem, dropitem, inventory)
- detachBehSet (string) - (Chew, DropYoung, DetachBaby, LetBabyOff, DetachRat)
- !detachBeh! (string) - Typo for detachBehSet.
- container (string) - (foodprop, righthand, lefthandobject, mouth, head_inventory, ...)
- locoMod (string) - (carry, carryback, drag, carryyoung, carrybaby)
- physObjToHide (string) - (mainObj, prop, ballprop)
- interruptFlag (bool) - (true)
- groundFit (bool) - (false),
Children:
- None
Example:
<BFBehAttachObject attachEntity="s_prop" targetAnim="Graze_Idle" targetNode="Dock_Attach" detachAction="killitem" container="foodprop"/>
BFBehDetachObject
Detaches an object from the subject.
Attributes:
- container (string) - (foodprop, head_inventory, lefthandobject, mouth, righthand),
- detachAction (string) - (dropitem, inventory, killitem, maketrash),
- detachEntity (string) - (BrownFish_Prop, ElephantAfrican_Gift, ShakerToy, ShakerToy_Open, object),
- subjectNode (string) - (Floor, Node_Mouth, Poop, p_GroomNode, p_PreyOffset),
- targetAnim (string) - The name of the anim that should be played.
Children:
Example:
<BFBehDetachObject targetAnim="StandBiObject_2Stand" detachEntity="object" detachAction="killitem"/>
BFBehDock
Docks an entity exactly according to subject's and target's dock nodes.
Attributes:
- subjectNode (string) - Name of the subject's dock node, eg.
Node_Mouth,Floor... - targetNode (string) - Name of the target's dock node, eg.
p_InvestigateNode,Dock_Attach... - targetAnim (string) - The name of the anim that should be played during docking.
- locoSpeed (string) - Which locoSpeed to use (referred in main XML). Default is
slow. - avoidWater (bool) - Should the entity try to stay on land? Default is
false. - redock (bool) - Default is
false. - reserveSlotName (string) - Either
generalorTrainer. - interpolationDistance (float) - ?
Children:
- None
<BFBehDock subjectNode="Node_Mouth" targetAnim="Stand_Idle"/>
BFBehDockNow
This (probably) is the docking operation that greatly speeds up an entity's movement to reach the dock almost instantly.
Attributes:
- subjectNode (string) - Name of the subject's dock node, eg.
Node_Mouth,Floor... - targetNode (string) - Name of the target's dock node, eg.
p_InvestigateNode,Dock_Attach... - targetAnim (string) - The name of the anim that should be played during docking.
- reserveSlotName (string) - Either
generalorTrainer. - redock (bool) - Default is
false. - unparent (bool) - Default is
false. - parentToTarget (bool) - Default is
false.
Children:
- None
Example:
<BFBehDockNow subjectNode="p_FightOffset" targetNode="p_FightOffset" reserveSlotName="general" redock="true"/>
BFBehDockQueue
This docks guests to a queue in front of a building.
Attributes:
- container (string) - Name of the queue container.
- hitRadius (int) - Distance to enter the queue.
- locoSpeed (string) - Which locoSpeed to use (referred in main XML). Default is
slow. - queueRadius (int) - Size of the queue.
Children:
- None
Example:
<BFBehDockQueue hitRadius="2.5" queueRadius="12" locoSpeed="slow"/>
BFBehDockRadial
Docks an entity according to subject's dock nodes, ignoring the rotation specified by the target's dock node.
Attributes:
- subjectNode (string) - Name of the subject's dock node, eg.
Node_Mouth,Floor... - targetNode (string) - Name of the target's dock node, eg.
p_InvestigateNode,Dock_Attach... - targetAnim (string) - Anim the subject should play when docking with the target, eg.
Fly_Ahead. - targetRadius (int) - Radius around the target.
- rotError (int) - Always 180.
- locoSpeed (string) - Which locoSpeed to use (referred in main XML). Default is
slow. - dockRadius (float) -
- interpolationDistance (float) - ?
Children:
- None
Example:
<BFBehDockRadial subjectNode="Floor" targetAnim="StandBiObject_Idle"/>
BFBehDockSpline
Docks usin spline interpolation, in 3D?
Attributes:
- subjectNode (string) - Name of the subject's dock node, eg.
Node_Mouth,Floor... - targetNode (string) - Name of the target's dock node, eg.
p_InvestigateNode,Dock_Attach... - targetAnim (string) - The name of the anim that should be played.
- locoSpeed (string) - Which locoSpeed to use (referred in main XML). Default is
slow. - ignoreCollisionWithTarget (bool) - Default is
true. - useBuoyNodes (bool) - Default is
true. - redock (bool) - Default is
false.
Children:
- None
Example:
<BFBehDockSpline locoSpeed="fast" targetAnim="TreadWater_Idle"/>
BFBehDockTAP
Starts a TAP interaction, is followed by BFBehAnimateTAP.
Attributes:
- subjectNode (string) - Name of the subject's dock node, eg.
Node_Mouth,Floor... - targetAnim (string) - The name of the anim that should be played.
- targetTAP (string) - The name of the TAP anim / node the entity should dock at.
Children:
- None
Example:
<BFBehDockTAP targetAnim="Walk_Ahead" subjectNode="Floor" targetTAP="DockNode01_BaseA2Branch1AEnd"/>
BFBehEnter
Used to initiate interaction with a building; generally followed by a useContainer behSet.
Attributes:
- None
Children:
- None
Example:
<BFBehEnter/>
<BFBehPlaySet behSet="useContainer"/>
BFBehEscapeObstacle
Only used in some marine animals; apparently tries to move beached swimmers back into water.
Attributes:
- locoSpeed (string) - Which locoSpeed to use (referred in main XML). Default is
slow. - escapeTime (int) - (5, 20)
- escapeRadius (int) - (5)
Children:
- None
Example:
<BFBehEscapeObstacle locoSpeed="medium" escapeTime="5" escapeRadius="5"/>
BFBehEvasion
Directed motion fleeing from a target, optionally avoiding third-party entities given in avoidEntityTypes.
Attributes:
- locoSpeed (string) - Which locoSpeed to use (referred in main XML). Default is
slow. - evasionRadius (int) - Minimal distance between subject and target to stop evading.
- evasionTime (int) - How much time should be spent evading the target?
- avoidObstacleRadius (int) - How much distance should be kept between the subject and obstacles?
- avoidWater (bool) - Should the entity try to stay on land? Default is
false. - avoidLand (bool) - Should the entity try to stay in water? Default is
false.
Children:
BFBehExecTask
The TSK equivalent to the BEH's behaviors container. Can use more or less the same functions.
Attributes:
- None
Children:
- BFAISubjectData
- BFBehAnimSwitchSet
- BFBehAnimate
- BFBehAnimateRandom
- BFBehAttachObject
- BFBehDetachObject
- BFBehDock
- BFBehDockQueue
- BFBehDockRadial
- BFBehDockSpline
- BFBehEnter
- BFBehEscapeObstacle
- BFBehEvasion
- BFBehExit
- BFBehFaceTarget
- BFBehFall
- BFBehHeadLook
- BFBehHide
- BFBehKill
- BFBehLocoSwitchSet
- BFBehMove
- BFBehPlaySet
- BFBehPursuit
- BFBehRandomSet
- BFBehScript
- BFBehSendToken
- BFBehSendTrigger
- BFBehSetAttribute
- BFBehSpawn
- BFBehSyncSet
- BFBehWaitQueue
- BFBehWander
- ZTBehAddSubjectAsDiseaseTarget
- ZTBehChangeWaterDirtiness
- ZTBehDockFence
- ZTBehDockTankWall
- ZTBehDockWater
- ZTBehEconomy
- ZTBehExitTankGate
- ZTBehFeedback
- ZTBehFindArtifact
- ZTBehKickOffRider
- ZTBehMorph
- ZTBehPlaceTarget
- ZTBehStaffTrainAnimal
- ZTBehTargetFence
- ZTBehTeleportToLoc
- ZTBehTestTargetPos
- ZTBehTour
- ZTBehUsePortal
- ZTBehViewAnimals
- ZTBehViewEvent
BFBehExit
Used to terminate interaction with a building; apparently not necessarily used after BFBehEnter.
Attributes:
- exitBehSet (string) - (ExitBench, ExitGrandstand, ExitTrashContainer),
Children:
- None
BFBehFaceTarget
Makes the subject face its target, preferably by playing the appropriate turning animations.
Attributes:
- rotError (int) - (180, 22.5),
Children:
- None
BFBehFall
Attributes:
- None
Children:
- None
BFBehFollowEntity
Makes the subject follow the target.
Attributes:
- subjectNode (string) - Name of the subject's follow node, eg.
Node_Mouth,Floor... - targetNode (string) - Name of the target's (ie. the leader's) follow node, eg.
p_InvestigateNode,Dock_Attach... - locoSpeed (string) - Which locoSpeed to use (referred in main XML). Default is
slow. - minPlayTime (int) - How long this behSet should be played.
- maxPlayTime (int) - How long this behSet should be played.
Children:
- None
BFBehHeadLook
Toggles the secondary headlook component in the XML.
Attributes:
- disengage (bool) Turns it off again. Default is
false. - targetNode (string) - Apparently which node in the target to look at.
Children:
- None
BFBehHide
Attributes:
- maxTime (int) - (1, 20, 8),
- minTime (int) - (1, 15, 4),
Children:
- None
BFBehKill
Deletes entities, optionally fading them out.
Attributes:
- killSubject (bool) - Default is
false. - killTarget (bool) - Default is
false. - killUsingDestroyEntity (bool) - Default is
false. - radiusKillType (string) - Probably related to the above bool, names an entity like ´fence´,
ShakerToy_Opento be killed in the radius (below). - radius (int) - The radius in which entities of the given type should be killed in.
- targetAnim (string) - The name of the anim that should be played.
- fadeOutPeriod (int) - Duration of the fadeout in seconds, default is probably
0.
Children:
- None
Example:
<BFBehKill targetAnim="Stand_BashFence" killTarget="true" radius="5" radiusKillType="fence" fadeOutPeriod="1" killUsingDestroyEntity="true"/>
BFBehLocoSwitchSet
May switch between different behSets according to the location the subject entity is currently in.
Attributes:
- switch (bool) - Default is
true.
Children:
Example:
<BFBehLocoSwitchSet>
<behaviorTable>
<ground behSet="Ground_Failure"/>
<water behSet="Water_Failure"/>
</behaviorTable>
</BFBehLocoSwitchSet>
BFBehMove
Attributes:
- depthBelowSurface (int or comparison) - eg. (4, 0, 12, G 1, LE 1, ...)
- pathRadius (int) - (0, 3, 10, 7, 20, ...)
- moveRadius (int) - (1000, 5, 1, 3, 4, ...)
- closestApproach (bool) - Default is
false. - targetNode (string) - name of the dock node, eg.
p_InvestigateNode,Dock_Attach... - locoSpeed (string) - Which locoSpeed to use (referred in main XML). Default is
slow. - heightAboveFloor (float) - Seafloor offset?
- hitRadius (int) - (5, 3, 10, 8, 6, ...)
- depthAboveBottom (int or comparison) - (LE 1, LE 3, 1)
Children:
- None
BFBehPlaySet
Very generic function that simply plays back another behSet.
Attributes:
- behSet (string) - The name of the behSet to be played.
- playTime (int) - How long this behSet should be played.
- interruptEvent (string) - Apparently, this event stops the playing behSet prematurely, eg.
collideWithTarget. - loopFlag (bool) - Should this loop forever? Default is
false. - interruptFlag (bool) - Allow interruptions? Default is
false.
Children:
- None
Example:
<BFBehPlaySet behSet="Graze"/>
BFBehPursuit
Chases the target and stops when the subject has reached it.
Attributes:
- hitRadius (int) - The maximum distance between subject and target for the pursuit to stop.
- pursuitRadius (int) - The maximum distance between subject and target for the pursuit to start.
- failureRadius (int) - The minimum start distance between subject and target for the pursuit to fail.
- locoSpeed (string) - Which locoSpeed to use (referred in main XML). Default is
slow. - pollFreq (float) - How often it is updated? Usually
0.1.
Children:
- None
BFBehRandomSet
Randomly plays behSets given in randomSets according to each entries' weight.
Attributes:
- minPlays (int) - How long many times should this behSet be run at least?
- maxPlays (int) - How long many times should this behSet be run at max?
- loopFlag (bool) - Should this loop forever? Default is
false.
Children:
- randomSets
- ?BFBehAnimate? (probably an error)
Example:
<BFBehRandomSet minPlays="1" maxPlays="2">
<randomSets>
<SpawnF weight="50"/>
<SpawnM weight="50"/>
</randomSets>
</BFBehRandomSet>
BFBehScript
Executes a function from a BIN or LUA script.
Attributes:
- context (string) - Always
behavior. - file (string) - Absolute path to a BIN or LUA script, eg.
scripts/CrateAnimal.lua, scripts/playparticle.lua, scripts/justgavebirth.lua, scripts/canreproduce.lua, scripts/setmates.lua, ...) - function (string) - Name of a function in the given script, eg.
CrateAnimal. - params (string) - Additional parameters to be passed to the function, usually for particles (in txtkeys syntax?) eg.
{Floor} runps PlacementCloud.
Children:
- None
Example:
<BFBehScript context="behavior" file="scripts/playparticle.lua" function="playParticle" params="{Floor} runps PlacementCloud"/>
BFBehSendToken
Always contains a BFAITokenList.
Attributes:
- None
Children:
BFBehSendTrigger
Attributes:
- subjectTrigger (string) - (Adjust_SurveyData, Adjust_ZooFame, Use_Bathroom, Use_Skytower_Down, Use_Skytower_Up),
Children:
- None
BFBehSetAttribute
Can set attributes on the subject or the target.
Attributes:
- None
Children:
- BFAISubjectData
- BFAITargetData
- !BFAISubjecttData! (typo, in the wild, not functional!)
BFBehSpawn
Creates new (child) entities.
Attributes:
- spawnEntity (string) - Entity type that should be spawned, eg.
Poop_Ungulate,AntelopeSableGiant_Young_F. - subjectNode (string) - Name of the subject's node from which the entities should be spawned.
- targetAnim (string) - The name of the anim that should be played during spawning.
- spawnRelation (string) - If this parameter is given, it is always
child. - fadeInPeriod (int) - Default is
0. - randomPosOffset (int)
- randomRotOffset (int)
- spawnInTA (bool) - TA = TAP? Default is
false
Children:
- None
Example:
<BFBehSpawn spawnEntity="Poop_Medium" subjectNode="Poop" targetAnim="Poop_Idle"/>
BFBehSyncSet
Simultaneously plays behSets on subject and target.
Attributes:
- subjectBehSet (string) - The behSet performed by the subject.
- targetBehSet (string) - The behSet performed by the target.
- resetPhase (bool) - Default is
false - useTargetName (bool) - Use the name in the info; default is
false - syncEntity (string) - If this parameter is given, it is always
object.
Children:
- None
Example:
<BFBehSyncSet syncEntity="object" subjectBehSet="MommaLetYoungOff" targetBehSet="DebarkMom"/>
BFBehWaitQueue
Controls guests as they wait in a queue.
Attributes:
- container (string) - Name of the queue container.
- maxWaitTime (int) - (360, 60, 90),
- minWaitTime (int) - (30, 60),
- waitBehSet (string) - (WaitInLine, WaitInLineStation),
Children:
- None
Example:
<BFBehWaitQueue minWaitTime="30" maxWaitTime="60" waitBehSet="WaitInLine"/>
BFBehWander
Random, undirected locomotion, optionally avoiding third-party entities given in avoidEntityTypes.
Attributes:
- playTime (int) - How long this behSet should be played.
- minPlayTime (int) - How long this behSet should be played.
- maxPlayTime (int) - How long this behSet should be played.
- minDepth (int) - How shallow can this entity go?
- maxDepth (int) - How deep can this entity go?
- locoSpeed (string) - Which locoSpeed to use (referred in main XML). Default is
slow. - avoidObstacleRadius (int) - Distance from (static?) obstacles.
- avoidEntityRadius (int) - Distance from other entities.
- avoidLand (bool) - Should the entity try to stay in water? Default is
false. - avoidWater (bool) - Should the entity try to stay on land? Default is
false. - ignoreBuoyNodes (bool) - Should this entity walk on the sea floor?
- heightAboveFloor (float) - Seafloor offset?
Children:
Example:
<BFBehWander minPlayTime="7" maxPlayTime="15" avoidWater="true" avoidEntityRadius="8">
<avoidEntityTypes>
<b_XLargePredator/>
<b_LargePredator/>
<b_MediumPredator/>
<b_SmallPredator/>
</avoidEntityTypes>
</BFBehWander>
BFBehWhap
Used for interaction with physics objects, like balls.
Attributes:
- targetAnim (string) - The name of the anim that should be played.
- interruptFlag (bool) - Allow interruptions? Default is
false. - groundFit (bool) - Fit to ground according to leg nodes? Default is
true. - whapAngle (int) - In degrees, eg.
225. - randomOffset (int) - Usually
0,
Children:
- None
Example:
<BFBehWhap targetAnim="Stand_SlamBallRight"/>
BeforeShow
Attributes:
- BaseScore (int) - (0, 10, 20),
- FavoriteAnimalBonus (int) - (-20, 20, 70),
- FuzzyFactor (int) - (20, 50),
- ShowQualityMult (int) - (-2, 1, 20, 4, 6),
Children:
DefaultEvent
Attributes:
- BaseScore (int) - (0, 10, 20),
- FavoriteAnimalBonus (int) - (-20, 20, 70),
- FuzzyFactor (int) - (20, 50),
- ShowQualityMult (int) - (-2, 1, 20, 4, 6),
Children:
EventScoring
Attributes:
- None
Children:
- AnimalEnters
- AnimalLeaves
- BeforeShow
- DefaultEvent
- MCEvent
- ShowCancelled
- ShowEnds
- Splashed
- TrickCritical
- TrickFailure
- TrickSuccess
- WatchingAnimal
MCEvent
Attributes:
- BaseScore (int) - (0, 10, 20),
- FuzzyFactor (int) - (20, 50),
- ShowQualityMult (int) - (-2, 1, 20, 4, 6),
Children:
Objects
Objects required for this BFAITaskTemplate.
Attributes:
- None
Children:
- None
Objects_AND
Objects required for this BFAITaskTemplate.
Attributes:
- None
Children:
- None
Options
Attributes:
- Reset (bool) - (true),
Children:
- None
Reaction
Attributes:
- BehSet (string) - (TrickSuccess_Path_Pos_1, TrickSuccess_Path_Pos_2, WatchShow_Path_Midpoint, WatchShow_Path_Neg_1, WatchShow_Path_Pos_1),
- MinScore (int) - (0, 10, 20, 30, 40),
Children:
- None---
ShowCancelled
Attributes:
- Priority (int) - (1, 10, 100, 5, 900),
- ShowQualityMult (int) - (-2, 1, 20, 4, 6),
Children:
ShowEnds
Attributes:
- Priority (int) - (1, 10, 100, 5, 900),
- ShowQualityMult (int) - (-2, 1, 20, 4, 6),
Children:
Splashed
Attributes:
- BaseScore (int) - (0, 10, 20),
- FavoriteAnimalBonus (int) - (-20, 20, 70),
- FuzzyFactor (int) - (20, 50),
- Priority (int) - (1, 10, 100, 5, 900),
- ShowQualityMult (int) - (-2, 1, 20, 4, 6),
Children:
Subjects
Subjects required for this BFAITaskTemplate.
Attributes:
- None
Children:
- None
Subjects_AND
Subjects required for this BFAITaskTemplate.
Attributes:
- None
Children:
- None
Targets
Targets required for this BFAITaskTemplate.
Attributes:
- None
Children:
- None
Targets_AND
Targets required for this BFAITaskTemplate.
Attributes:
- None
Children:
- None
TrickCritical
Attributes:
- BaseScore (int) - (0, 10, 20),
- FavoriteAnimalBonus (int) - (-20, 20, 70),
- FuzzyFactor (int) - (20, 50),
- PerPrevious (int) - (40),
- ShowQualityMult (int) - (-2, 1, 20, 4, 6),
- TrickPopularityMult (float) - (-0.1, 0.3),
Children:
TrickFailure
Attributes:
- BaseScore (int) - (0, 10, 20),
- FavoriteAnimalBonus (int) - (-20, 20, 70),
- FuzzyFactor (int) - (20, 50),
- IgnorePrevious (int) - (2),
- PerPrevious (int) - (40),
- ShowQualityMult (int) - (-2, 1, 20, 4, 6),
- TrickPopularityMult (float) - (-0.1, 0.3),
Children:
TrickLearning
Attributes:
- None
Children:
- None
TrickSuccess
Attributes:
- BaseScore (int) - (0, 10, 20),
- FavoriteAnimalBonus (int) - (-20, 20, 70),
- FuzzyFactor (int) - (20, 50),
- ShowQualityMult (int) - (-2, 1, 20, 4, 6),
- TrickPopularityMult (float) - (-0.1, 0.3),
Children:
WatchingAnimal
Attributes:
- BaseScore (int) - (0, 10, 20),
- FavoriteAnimalBonus (int) - (-20, 20, 70),
- FuzzyFactor (int) - (20, 50),
- ShowQualityMult (int) - (-2, 1, 20, 4, 6),
- TrickPopularityMult (float) - (-0.1, 0.3),
Children:
ZTAIShowEvent
Can be called from ZTBehSplashGuest. Not to be confused with ZTBehShowEvent!
Attributes:
- Name (string) - Name of this event.
- interrupt (bool) - Either
trueorfalse. - ExpireWithTask (bool) - Either
trueorfalse. - Timeout (int) - When is this event discarded?
Children:
- None
Example:
<ZTBehShowEvent Type="AnimalEvent" Name="TrickFailure" Priority="2" Interrupt="true" ExpireWithTask="true" Timein="1" Timeout="3"/>
<ZTBehSplashGuest targetAnim="SwimSub_JumpFailure" interruptFlag="true" groundFit="false">
<ZTAIShowEvent Name="Splashed" Interrupt="true" ExpireWithTask="false" Timeout="1"/>
<BFAITokenList>
<BFAIToken Name="t_Splashed" GiveTo="target" Payload="subject" Timeout="15" Reconsider="true" OnlyOne="true"/>
</BFAITokenList>
</ZTBehSplashGuest>
ZTActionInfo
This info is shown in the entity's info panel.
Attributes:
- locID (string) - The info to be raised in the info bar of the entity, may include placeholders.
- useTargetName (bool) - Will appear instead of
%sor%1sin the locID. - useTargetContents (bool) - Will appear instead of
%2sin the locID. - useObjectName (bool) - Will appear instead of
%sor%1sin the locID. - timeout (float) - (0.0f, 15, 30, 60),
Children:
- None
Example:
<ZTBehFeedback>
<ZTFeedbackData>
<ZTActionInfo locID="animalactions:GoingToLookAt" useTargetName="true"/>
</ZTFeedbackData>
</ZTBehFeedback>
ZTBehAddSubjectAsDiseaseTarget
Usually called from an BFBehExecTask.
Attributes:
- disease (string) - Type of disease, eg.
Bloodlust,CatScratchFever,PinkElephantDisease - types (string or list of string) - Entity types that can be infected, eg.
Elephantidae,Elephantidae Mammutidae. - attributes (string) - Qualifier for types, eg.
b_Carnivore=true. - immediate (bool) - Are the types infected immediately?
Children:
- None
Example:
<ZTBehAddSubjectAsDiseaseTarget disease="Bloodlust" types="animal" attributes="b_Carnivore=true" immediate="true"/>
<ZTBehAddSubjectAsDiseaseTarget disease="PinkElephantDisease" types="Elephantidae Mammutidae" immediate="false"/>
ZTBehChangeWaterDirtiness
Attributes:
- Clean (bool) - (true),
- Delta (int) - (750),
Children:
- None
ZTBehCureDisease
Lets the subject (eg. Keeper) cure (not heal) a diseased target.
Attributes:
- None
Children:
- None
Example:
<ZTBehCureDisease/>
ZTBehDigArtifact
The subject (Paleontologist) excavates a fossil site (fossilmarker) target previously marked with ZTBehFindArtifact.
Attributes:
- None
Children:
- None
Example:
<BFBehAnimate targetAnim="Stand_Excavate"/>
<ZTBehDigArtifact/>
ZTBehDockFence
Attributes:
- locoSpeed (string) - (burrow, evade, fast, medium, slow),
- subjectNode (string) - (Floor, Node_Mouth, Poop, p_GroomNode, p_PreyOffset),
- targetAnim (string) - (LieSide_Idle, Lie_Idle, SleepCurl_Idle, Stand_Idle, TreadWater_Idle),
Children:
- None
ZTBehDockTankWall
Subject interacts with a tank wall. Apparently always called from "inside" ZTBehTargetFence.
Attributes:
- subjectNode (string) - Name of the subject's dock node, eg.
Node_Mouth,Floor... - locoSpeed (string) - Which locoSpeed to use (referred in main XML). Default is
slow. - heightAboveGround (int) - Measured from the outside ground, not tank floor.
- depthBelowWater (int) - Measured from the water surface.
Children:
- None
Example:
<ZTBehDockTankWall subjectNode="Node_RamWall" locoSpeed="fast" heightAboveGround="1"/>
ZTBehDockWater
Attributes:
- drinkDepth (float) - (.3, .4),
- interpolationDistance (float) - (0.15, 0.5, 1, 2, 9.0),
- subjectNode (string) - (Floor, Node_Mouth, Poop, p_FightOffset, p_PreyOffset),
- targetAnim (string) - (Fly_Ahead, Fly_Call, Stand_Idle, Swim_Ahead, TreadWaterSub_Idle),
Children:
- None
ZTBehEconomy
Attributes:
- general (bool) - (true),
- transactionName (string) - (add_user, destroy, donate, getCash, remove_user),
Children:
- None
ZTBehExitTankGate
Attributes:
- None
Children:
- None
ZTBehFeedback
Container of ZTFeedbackData.
Attributes:
- None
Children:
ZTBehFindArtifact
The subject (Paleontologist) makes a hidden FossilSite target visible.
Attributes:
- None
Children:
- None
Example:
<BFBehPlaySet behSet="MarkFossil"/>
<ZTBehFindArtifact/>
ZTBehKickOffRider
Attributes:
- None
Children:
- None
ZTBehMorph
Morphs the subject into another entity, either maintaining or discarding its initial identity.
Attributes:
- morphEntity (string) - Either
subject,targetor an entity type, eg.CamarasaurusNest_Egg. - morphTargetEntityType (string) - The entity type to morph into, eg.
BearGrizzly_Juvenile_F. - NameIt (bool) - Names the result? Default is
false. - morphFade (bool) - Morph by crossfading the alpha values. Default is
false. - morphScale (bool) - Morph by adjusting the scale. Default is
false. - morphPeriod (int) - Time to spend morphing.
- initScale (float) - Initial scale of the final entity for scale morphing; should match the scale of the subject.
Children:
- None
Example:
<ZTBehMorph morphEntity="AnkylosaurusNest_Egg" morphTargetEntityType="Ankylosaurus_Young_F" morphPeriod="2"/>
ZTBehPlaceTarget
Very similar to BFBehSpawn, but only used by keepers to place food.
Attributes:
- container (string) - (foodprop, head_inventory, lefthandobject, mouth, righthand),
- targetBeh (string) - (PlaceFood),
- targetType (string) - (Guest, s_KeeperDrinkType, s_KeeperEatType),
Children:
- None
Example:
<ZTBehPlaceTarget container="food" targetType="s_KeeperEatType" targetBeh="PlaceFood"/>
ZTBehShowEvent
Not to be confused with ZTAIShowEvent!
Attributes:
- Type (string) - Always
AnimalEvent. - Name (string) - eg. ``...
- Priority (int) - (1, 900, 5, 100, 2, ...)
- interrupt (bool) - (false, true)
- ExpireWithTask (bool) - (true, false)
- Timein (int) - (1110, 1008, 1004.21, 416.84, 1, ...)
- Timeout (int) - (30, 15, 5, 20, 10, ...),
Children:
- None
Example:
<ZTBehShowEvent Type="AnimalEvent" Name="TrickFailure" Priority="2" Interrupt="true" ExpireWithTask="true" Timein="1" Timeout="3"/>
ZTBehSplashGuest
Subject splashes guests, plays a particle system and triggers a reaction in guests.
Attributes:
- targetAnim (string) - The name of the anim that should be played.
- interruptFlag (bool) - Allow interruptions? Default is
false. - splashVector (matrix3x3) - Always
1 0 0, -1 0 0, 0 1 0. - groundFit (bool) - Fit to ground according to leg nodes? Default is
true. - splashFromWaterSurface (bool) - Default is
true. - splashName (string) - The name of the particle effect that should be played, eg.
directed_large,directed_medium,directed_small.
Children:
ZTBehStaffTrainAnimal
Attributes:
- AnimalDoesTrickLoopingBeh (string) - (Idle_Bored),
- AnimalDoesTrickPrimaryBeh (string) - (Point),
- AnimalDoesTrickTimeout (int) - (60),
- CleanupPrimaryBeh (string) - (Cleanup),
- GoToPlatformPrimaryBeh (string) - (DockPlatform),
- IncrementAmt (float) - (11.0),
- PreTrainingPrimaryBeh (string) - (),
- RewardAnimalPrimaryBeh (string) - (GiveTreat),
- SummonAnimalLoopingBeh (string) - (Idle_Bored),
- SummonAnimalPrimaryBeh (string) - (),
- SummonAnimalTimeout (int) - (60),
- TrainAnimalPrimaryBeh (string) - (TrainAnimal),
Children:
- None
ZTBehTargetFence
Makes the subject find a fence.
Attributes:
- behSet (string) - This behSet is used to dock to the tank wall, and will usually contain ZTBehDockTankWall.
- fenceType (string) - Entity subclass of fences, eg.
tankwallsegment. - searchDistance (int) - How far the subject may travel to find a fence.
Children:
- None
ZTBehTeleportToLoc
Only used in MC.tsk's ReplaceProp task.
Attributes:
- resetProp (bool) - Default is
false.
Children:
- None
Example:
<ZTBehTeleportToLoc resetProp="true"/>
ZTBehTestTargetPos
Apparently only used in failure BFBehExecTask.
Attributes:
- illegalBeh (string) - (KillTarget),
- legalBeh (string) - (MWFailFeedback, ZKFailCleanWaterFeedback, ZKFailFeedback),
Children:
- None
Example:
<ZTBehTestTargetPos legalBeh="ZKFailFeedback" illegalBeh="KillTarget"/>
ZTBehTour
Attributes:
- None
Children:
- None
ZTBehUsePortal
Lets the subject pass a tank portal to enter or exit a show tank.
Attributes:
- locoSpeed (string) - (charge, evade, fast, medium, slow),
- targetAnim (string) - (Fly_Ahead, Fly_Call, Stand_Idle, Swim_Ahead, TreadWaterSub_Idle),
Children:
- None
Example:
<ZTBehUsePortal targetAnim="SwimSub_Ahead" locoSpeed="fast"/>
ZTBehViewAnimals
Attributes:
- dockVPBeh (string) - (GotoPathVP),
- retarget (bool) - (false),
- viewMeterStart (int) - (200),
- viewMeterStartMax (int) - (250),
- viewMeterStartMin (int) - (150),
Children:
ZTBehViewEvent
Attributes:
- edDonate (string) - (f_EdDonNormal),
- edValue (string) - (f_EdNormal),
- targetType (string) - (Guest, s_KeeperDrinkType, s_KeeperEatType),
- viewKey (string) - Apparently a grading scale for the quality of the event, eg.
Pos_2,Pos_3,Neg_5... - viewRadius (int) - (20),
Children:
ZTBehWatchShow
Attributes:
- None
Children:
ZTEmoticonInfo
This raises an emoticon over the subject entity.
Attributes:
- emoticonName (string) - Name of the emoticon to be raised, eg.
EmoteAnimalHungerBad. - emoticonScale (float) - Scale of the emoticon.
- emoticonEntityNode (string) - Name of the emoticon's parent node, eg.
Bip01 Head.
Children:
- None
ZTFeedbackData
May be used from inside a ZTBehFeedback or a ZTBehViewEvent.
Attributes:
- None
Children:
ZTMessageInfo
Attributes:
- locID (string) - The info to be raised in the info bar of the entity.
- priority (int) - This message's relative priority.
- timeout (int) - How soon should this message disappear?
- interval (int) - how much time must pass until the message is raised again?
- tolerance (int) - Unknown.
- global (bool) - Not sure. Either (false, true)
- useEntityName (bool) - Default is
false. - useTargetName (bool) - Default is
false - filterAttribute (string) - Rare, eg.
b_Rampage EQ true
Children:
- None
ZTThoughtInfo
Attributes:
- locID (string) - The info to be raised in the info bar of the entity.
- priority (int) - This message's relative priority.
- timeout (int) - How soon should this message disappear?
- global (bool) - Not sure. Either (false, true)
- useTargetName (bool) - Will appear instead of
%sin the locID. - useTargetTarget (bool) - Will appear instead of
%sin the locID. - useTargetSpecies (bool) - Will appear instead of
%sin the locID. - useTargetObject (bool) - Will appear instead of
%sin the locID.
Children:
- None
animTable
Switches between different animations in a BFBehAnimateSwitch
Attributes:
- None
Children:
avoidEntityTypes
Holds a list of entities that should be avoided in BFBehWander and BFBehEvasion sets.
Attributes:
- None
Children:
- "avoidEntityTypesEntry" (not documented)
behaviorTable
May be used from inside a BFBehLocoSwitchSet or a BFBehAnimSwitchSet.
Attributes:
- None
Children:
behaviors
This is the top-level container for BEH behavior. Note that not all structures can be called directly from top level. Some may be encapsulated in other components.
Attributes:
- None
Children:
- BFBehAnimSwitchSet
- BFBehAnimate
- BFBehAnimateRandom
- BFBehAnimateSwitch
- BFBehAnimateTAP
- BFBehAttachObject
- BFBehDetachObject
- BFBehDock
- BFBehDockNow
- BFBehDockQueue
- BFBehDockRadial
- BFBehDockSpline
- BFBehDockTAP
- BFBehEnter
- BFBehEscapeObstacle
- BFBehEvasion
- BFBehFaceTarget
- BFBehFollowEntity
- BFBehHeadLook
- BFBehHide
- BFBehKill
- BFBehLocoSwitchSet
- BFBehMove
- BFBehPlaySet
- BFBehPursuit
- BFBehRandomSet
- BFBehScript
- BFBehSendToken
- BFBehSendTrigger
- BFBehSetAttribute
- BFBehSpawn
- BFBehSyncSet
- BFBehWaitQueue
- BFBehWander
- BFBehWhap
- ZTBehCureDisease
- ZTBehDigArtifact
- ZTBehDockFence
- ZTBehDockTankWall
- ZTBehEconomy
- ZTBehFeedback
- ZTBehMorph
- ZTBehShowEvent
- ZTBehSplashGuest
- ZTBehTargetFence
- ZTBehViewAnimals
- ZTBehViewEvent
- ZTBehWatchShow
emoteSets
Attributes:
- None
Children:
- None
randomAnims
Attributes:
- None
Children:
randomSets
Attributes:
- None
Children:
textkeys
Attributes:
- None
Children:
userData
Attributes:
- invalidateHabitat (bool) - (true),
Children:
- None