Module:Buildup/doc: Difference between revisions

LVL (talk | contribs)
Documentation of buildup module.
 
LVL (talk | contribs)
Updated info for doorman and paige
 
Line 34: Line 34:
== Internal Logic ==
== Internal Logic ==
The module uses the following formula derived from the game's mechanics:
The module uses the following formula derived from the game's mechanics:
<math>BPS = \frac{100}{BaseBuildup \times (RPS + 1)}</math>
<math>BPS = \frac{100}{BaseBuildup \times (RPS_{effective} + 1)}</math>


* '''Spin-Up Heroes:''' For heroes like McGinnis, the calculation uses their ''Max Spin'' RPS to ensure accurate representation of their intended buildup rate.
The '''Effective RPS''' is determined by analyzing specific hero mechanics:
* '''Shots to Proc:''' When generating tables, the module uses a Ceiling function (rounding up) to determine shots required. This accounts for cases like Kelvin where the math results in 19.99%, requiring 6 shots rather than the mathematically rounded 5.
* '''Standard Heroes:''' Uses the standard <code>RoundsPerSecond</code> from the data files.
* '''Spin-Up Heroes:''' For heroes like [[McGinnis]], the calculation uses their ''Max Spin'' RPS.
* '''Burst/Hybrid Heroes:''' For heroes like [[Paige]] and [[The Doorman]], the game displays a Fire Rate that includes an "Intra-Burst" delay, but the Buildup mechanic ignores this delay. The module detects this configuration (Burst Count = 1, but Interval > 0) and mathematically removes the interval to determine the true Effective RPS.
* '''Shots to Proc:''' The table uses <code>math.ceil</code> to always round up, ensuring accuracy for cases like [[Kelvin]] where the math results in 19.99% (requiring 6 shots, not 5).