Guardian Druid: Moonfire should not reset swing timer

Open
#11,935 0 comments 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

Nobody has claimed this yet.

Assessment

Difficulty
3/5
Estimated time
1-2 days
Newbie friendliness
45/100
Issue type
Bug
Clarity
Mostly clear
Activity status
Active
Tech stack
cpp
Domain
game-dev

Research direction

The suspected cause is that druid_spell_base_t treats Moonfire as a GCD-triggering spell when checking trigger_gcd > 0, which resets the swing timer. Start from that base class and the swing-timer reset path it reaches, then compare with the attached moonfire_on and moonfire_off logs. Done means Moonfire no longer resets auto attacks in those logs, and Swipe and Moonfire rotations show the same auto-attack count as before.

Written by the indexing model from the issue text.

Description

Describe the bug

When using Lunation, the APL switches to an extended use of moonfire. This has been observed to reduce the amount of auto attacks.
A first analysis as shown that moonfire might reset the swing timer, as it derives from druid_spell_base_t which checks for trigger_gcd > 0.

Expected behavior

Using moonfire over swipe should not influence the auto attack speed and should not reset the swing timer as it does not represent actual game behavior.

To Reproduce

moonfire off, auto attack is being executed:
moonfire_off.txt

moonfire on (only moonfire), no auto attacks are being executed at all:
moonfire_on.txt

Additional information
  • SimulationCraft Version simc-1210.01.d08a1c3-win64
Dominant language
C++
Stars
1.6k
Forks
789
Avg merge
13h 25m
Merged PRs (30d)
52

Getting set up

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from simulationcraft/simc

All issues in simulationcraft/simc

Similar issues

More C++ issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.