Skip to content

Action / Parameters

Each Player character has a {model_id}_action and a {model_id}_parameter file in system/player/data/{model_id}.

  • The parameter file will list off the player's Damage caps in an array, with identifying numbers
  • The action file will list off the player's actions, listing the motions associated with each one, as well as how the game should treat each action.

Action File

The Action file will list off the player's actions, listing the motions associated with each one, as well as how the game should treat each action.

Actions, when called, can have projectiles or other attacks linked to them that do not use the XML/BXM file format. these will be located in the FSMs for that character.

Name
Type Description
id_ string This will be the number used to refer to the action by other files or other actions in branching paths.
abilityTag_ string Names the skill, refers to ability table. This is only used for actual abilities, not just normal actions. Example: "AB_PL0000_09" (this is Gran's 9th ability. The ordering of abilities can be found by matching this against data\system\table\text\[Language]\text.msg, or removing all selected abilities in game, and counting from top to bottom).
saveActionType_ int Unknown. Certain numbers can change how the skill cooldown is spent. ie. on skill startup, or when Flag1:7 is called.
straddleFlagBit_ int Bit flags. Controls how the game will handle the action. May remove the ability to chain to other actions without the right flags.
usePoint_ int Whether to grants honors to the player upon using the action.
autoHomingType_ int Unknown. Possibly impacts how the game handles targeting while this move is called.
autoHomingOffsetDistance_ int Unknown.
abilityStocks_ int This will be the number of charges an ability can hold, like Lancelot's Lawinsturm.
saveAbilityChargeType_ int 1 will make the ability function like any other, 2 will set it to be a 1 time use, like Seofon's 7SB or Tweyen's 2CS.
abilityChargeTime_ int Ability cooldown.
abilityChargeDelayMin_ int Extra timer that will delay the cooldown starting, this does not impact Cascade.
abilityChargeDelayMax_ int Extra timer that will delay the cooldown starting, this does not impact Cascade.
branchXAtk_ int When X is pressed while Flag0:1 or Flag0:24 is enabled in the action being played, it will go to the action listed.
branchYAtk_ int When Y is pressed while Flag0:1 or Flag0:6 is enabled in the action being played, it will go to the action listed.
branchXAtk_Just_ int When X is pressed while Flag1:18 is enabled in the action being played, and Flag1:19 is called, it will go to the action listed.
branchYAtk_Just_ int When Y is pressed while Flag1:18 is enabled in the action being played, and Flag1:19 is called, it will go to the action listed.
branchXAtk_Hold_ int When X is being held when Flag1:17 is enabled, the action will transition to the action listed here.
branchYAtk_Hold_ int When Y is being held when Flag1:17 is enabled, the action will transition to the action listed here.
branchAtkHit_ int When Flag0:19 is called during an action, if attacks have landed prior to the flag being called, the action listed here will begin.
dist_ int Affects the distance the action is set to be called at by AI.
type_ uint Unknown.
controlTypeHash_ uint Controls how motions in an action are handled when called. List of Control Types
supportTypeHash_ uint Unknown. Appears to be completely unused by game code.
actionName_ string Possibly unused. Generally a name assigned to the action by the devs. Does not seem to impact anything, and is purely for in-house naming.
saveMotId{number}_ uint Motions being called by this action.
actionFreeWork{number}_ uint Values associated with the action, such as for Zeta, when she does a Rhapsody parry, the angle of bounce and force behind the lift will be listed here
freeWork{number}_ uint Unknown. 5 and 6 are seemingly always 1
bulletType_ uint Refers to the FSM associated with the action. This value is only used on specific characters and links from value to FSM are set in the executable. FSM is called by Flag1:4 in the motions tied to the action.
bulletFreeWork{number}_ uint Unknown.
supportEffectList_ uint[] Utilizes a hash and 6 values in an array format to state the buffs that will be applied to the character or team members when Flag1:2 is called during andy of the motions in this action. 1st value in the array is how many buffs the game should be attempting to give, 2-8th value = Buff Id
uiIconCategory_ uint Possibly unused.
actionCategory_ uint BitFlag that affects how this action is called by AI when the skill is available. Each has specific requirements to be active depending on conditions set in the executable. Compared against abilityBit_ in certain FSM nodes such as AIBattleRequestAbilityAction and AIBattleUseIdAction.
isTriggerAttackHit_ uint Allows supportEffects to be called by a hitbox with atkFlag:29 on hit when set to true.
damageLimitType_ uint Should be unused after 1.3, the game migrated to the next value
damageLimitDataIndex_ uint Specifies the damage cap in the Parameter File's Damage cap index that is associated with this action
relatedAbilityType_ uint Associates the action with the id assigned, possibly not needed, changing it still allowed the action to function as intended
indirectDamagePoint_ uint Additional honors, possibly given on granting buffs to other players, not fully aware of how honors works
isIndirectDamageAddMulti_ bool Unknown. true for Vane's Bubble
isCheckComboCutAbility_ bool When set to true, disables players from casting a skill and having access to the skill follow-ups listed in BranchXAtk and BranchYAtk before the skill cooldown is used either by flag1:7, or by other methods. Not tested if it can function on non-skill actions.

Spawned Entities

Some players spawn weapons/entities during their attacks, those characters include:

  • Eugen - Grenades
  • Rosetta - Roses and normal attacks/combo finishers
  • Katalina - Ares
  • Seofon - Avatar
  • Cagliostro - Almost all of her attacks
  • Sandalphon - Gems thrown during specific attacks
  • Ferry - Pets

The weapons will have motion files and BXMs specific to them.

For some characters, the weapons will handle their own hitboxes

For other characters, the weapons are mostly decoration

For Cagliostro and Rosetta, the weapon animation assignments are located in the parameter file, where each action will be assigned a weapon animation (or multiple).


Credits: MidnightAugur