dixhuit/unitcrunch-issue-tracker

Modifiers that grant extra attacks are returning incorrect results on weapons with an Attacks characteristic >1

dixhuit opened this issue · 2 comments

Extra attacks are incorrectly added per attack rather than per [Attacks characteristic] attacks.

To Reproduce

  1. Create a new melee attacker with the following weapon profile: Count 10 / A 4 / WS 2+ / whatever else.
  2. Add a new global modifier "1 extra attack" (note this has no conditions so always triggers). Ensure the modifier is enabled.
  3. Add any defender and ensure 10k sims are run.
  4. Go to "Weapon results" table and select "Median" average.
  5. Note the "Attacks" are 40 (expected as this result is always unmodified) and the "hits" are ~67 (that's a bit high, that's what I'd expect from 80 attacks, not 50).
  6. Disable the global modifier.
  7. Check the "Weapon results" table again.
  8. Note the "Attacks" are 40 (expected as this result is always unmodified) and the "hits" are ~33 (expected).

Have cautiously tagged this for inclusion in v0.64.0 to save me having to effectively fix it twice (this part of the simulation code changes a fair bit between these 2 versions). Hopefully v0.64.0 should follow on fairly soon after v0.63.0 (both are currently under development).

Been investigating this one today and this is not a bug. This is more of a misunderstanding of how to model a certain type of ability in UC and so I'm marking this issue as "wontfix".

The "Generate extras" effect is evaluated on every attack. If you use it to generate extra attacks, on each attack, if the effect is triggered, it will generate n more attacks to be resolved. That explains the results in the simple reproduction in this issue's description.

If the user instead intends to increase the current weapon's "Attacks" characteristic whenever an effect is triggered, then they should use the "Increase weapon attacks" effect instead.

That said, I've added some things to make this a bit clearer when editing abilities/modifiers in v0.64.0.