User:Lestion
Action Speed is a collective term for factors that modify the time units taken by game actions. It is used to determine the order in which events occur.
Time Units
Time units are the basic measure of time in the HentaiVerse. A round starts with 0 time units elapsed. Monsters start a round with a randomised 'initiative roll' between 1% and 100% of their attack speed. When a player takes an action, the turn is resolved in this order:
- The player's action takes place, and its speed (in time units) is added to the round's time elapsed.
- For each monster, the action time taken is added to its previously recorded time units (including its initiative roll). This number is divided by the monster's speed to determine whether it attacks and how many times. The remainder is recorded for the next turn calculation.
- Effects are calculated (first for the player, and then for monsters). Effect durations are decremented by 1 each time 100 time units pass.
- Stunned monsters immediately attack upon stun expiry.
Time units can be calculated with the formula roundup( minmax( 20, 10000 / action_speed, 500 ) )
and as such are capped at a minimum of 20 and a maximum of 500 regardless of speed factors, although few modifiable actions realistically encounter this limit.
Factors
Action speed is calculated as 100 / (A1 * A2 * A3...)
where the set A is each factor affecting the action type.
Base Action Times
Action Type | Base Action Time |
---|---|
Attack | 1 |
Skill | List of Skill Base Action Times |
Spell | List of Spell Base Action Times |
Item | 0 |
Spirit | ? |
Defend | 1 |
Focus | 1 |
Character Sources
All equipment sources are reflected on the character sheet. It can be used as a factor as (1 - sheet_speed)
.
- This includes speed bonuses from abilities such as Cloth Castspeed.
- Burden above 40 reduces attack speed bonuses by an increasing amount up to 90 burden where they are negated entirely.
Effect Sources
Players can benefit from the Haste spell, while monsters can be affected by Slow, MagNet and Freezing Limbs. This is calculated as (1 / effect_value)
.
- As an example, Haste values range between 1 (for no Haste) up to 1.6 (Haste applied via scroll). In the case of a scroll, it becomes
(1 / 1.6) = 0.625
.
Proficiency Sources
Spells have individual proficiency-based cast speed factors calculated using their 'minimum' and 'maximum' proficiency in the formula 1 - 0.25 * ((effective_proficiency / min) / (max / min))
.
Monster-specific Sources
Monsters gain action speed through Chaos Upgrades (up to 50%), as well as a 25% permanent bonus on PFUDOR difficulty.
Example Calculation
An example calculation for the Imperil spell:
action_speed = 100 / ( spell_base_time * (1 - sheet_speed) * (1 - 0.25 * spell_prof_factor) * (1 / haste_mod) )
action_speed = 100 / ( 0.6 * (1 - 0.286) * (1 - 0.25) * (1 / 1.5) ) = 466.8534...
time_units = roundup( minmax( 20, 10000 / 466.8534, 500 ) ) = 22
Therefore, each Imperil takes 22 time units to complete with a sheet speed of 28.6%, effective proficiency above Imperil's maximum (495) and Haste granting 50%.