This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
battle_timers [2021/10/07 00:21] – [The Action Timer] wylem | battle_timers [2024/04/13 20:41] (current) – [Sleep and Paralyze] wylem | ||
---|---|---|---|
Line 6: | Line 6: | ||
On each tick, every active timer counts down by one((With the exception of Count, which decrements every second tick)), and any timers that reach zero are flagged as expired. Only one expired timer for one participant can be handled in a given ATB tick, and they are checked in order. If none of that participant' | On each tick, every active timer counts down by one((With the exception of Count, which decrements every second tick)), and any timers that reach zero are flagged as expired. Only one expired timer for one participant can be handled in a given ATB tick, and they are checked in order. If none of that participant' | ||
- | For more details on how ATB ticks work, read the (currently non-existent) article on ATB. | + | For more details on how ATB ticks work, see: [[ATB System]]. |
=====Timer Details===== | =====Timer Details===== | ||
Line 35: | Line 35: | ||
All actions must be queued before they can be executed. The Action Timer is used to determine when both of these steps can happen. | All actions must be queued before they can be executed. The Action Timer is used to determine when both of these steps can happen. | ||
- | At the start of battle((Exception: | + | At the start of battle((Exception: |
* If this is a character, they enter the Menu Queue. | * If this is a character, they enter the Menu Queue. | ||
- | * If this is a monster, the next step of their script is handled. This queues a command (though that command may be "Do Nothing" | + | * If this is a monster, the next step of their script is handled. This queues a command (though that command may be "Do Nothing" |
After a command is entered, the Action Timer is set to a value that depends on the command. | After a command is entered, the Action Timer is set to a value that depends on the command. | ||
* For monsters, the base value is always 1. | * For monsters, the base value is always 1. | ||
- | * For many commands like Fight, Parry, Change, Item, Hide, Bluff and Sneak, the base value is 0. | + | * For many commands like Fight, Parry, Change, Item, Hide, Sing, [[twincast|Twin]], Bluff and Sneak, the base value is 0. |
* For spells, the base value is set to the spell' | * For spells, the base value is set to the spell' | ||
* For Jump, the base value is 4 ticks. | * For Jump, the base value is 4 ticks. | ||
- | * For Twin, Kick and Dark, the base value is RA / 2, rounded down. | + | * For [[twincast|TwinCast]], Kick and Dark, the base value is RA / 2, rounded down (with a minimum value of 1). |
* For Aim and Dart, the base value is RA / 4, rounded down. | * For Aim and Dart, the base value is RA / 4, rounded down. | ||
+ | * For Recall, the base value is equal to RA. | ||
The [[Speed Modifier]] is then applied to the base value, and the Action Timer is set to the resulting value. When the timer is handled after expiration, the action is executed. | The [[Speed Modifier]] is then applied to the base value, and the Action Timer is set to the resulting value. When the timer is handled after expiration, the action is executed. | ||
Line 53: | Line 54: | ||
The Sleep and Paralyze status effects both work by setting the Action Timer to a high number, preventing the target from acting until after it expires. | The Sleep and Paralyze status effects both work by setting the Action Timer to a high number, preventing the target from acting until after it expires. | ||
+ | The formula is: ( (300 - (4 * target' | ||
=====Chains===== | =====Chains===== | ||
Line 59: | Line 60: | ||
+ | |||
+ | =====Timer Flags===== | ||
+ | This section is highly technical, and probably only useful in the context of physical attack [[status procs]], certain spells that cause Paralyze or Sleep, and possibly the mimic glitch. | ||
+ | |||
+ | Each timer includes a byte for storing flags: | ||
+ | |||
+ | * **EXPIRED**: | ||
+ | * **COMMAND**: | ||
+ | * **STATUS**: Set when the timer is tied to a status effect (e.g., the Poison Timer, or with Sleep/ | ||
+ | * **READY**: Mostly used in the same way as the EXPIRED flag, but for characters it isn't cleared until a command is queued. Seems to be used to track when a character is Stopped while at the command menu or in the Menu Queue. When Stop expires, their Action Timer will be set back to 1. | ||
+ | |||
+ | For the purposes of status procs and the relevant spells that cause Paralyze and Sleep, the effect will fail if any flags are set on the target' | ||
+ | |||
+ | =====Interactions===== | ||
+ | ====Hide/ | ||
+ | The handlers for expired Poison, Stone, and Count timers do nothing if the character is currently Hiding or Jumping. The Poison damage/ | ||
+ | |||
+ | Wall and Sap timers are handled normally, though the character will not take damage from Sap. |