Latest revision |
Your text |
Line 10: |
Line 10: |
| == Epic 1.0 == | | == Epic 1.0 == |
| {{#ev:youtube|7vihCsMQMUo}} | | {{#ev:youtube|7vihCsMQMUo}} |
|
| |
| == Using clicky items with /melody bug ==
| |
| {{Cquote|<br />There are 3 big pieces of spell casting code -
| |
| 1. CastSpell - this is when your mana is checked, cast time, some target requirements are made
| |
|
| |
| 2. LaunchSpell - when the spell's cast time has elapsed, check range to target, mana is charged, check if you were interrupted. This is where the game will update your spellbar to not be grayed out, so you can cast a new spell.
| |
|
| |
| 3. HitBySpell - when a target is hit by a spell, take damage, add/remove buffs, etc (this is the largest portion of spell code)
| |
|
| |
| When you begin casting a spell (or singing a song), if the spell has at least a 0.1 second cast time, the "currently pending" spell is stored on your character. If you use an item clicky with a cast time, it updates the currently pending spell ID. When it's time for the spell to launch, it looks for the pending spell ID on your character to update it. If the spell ID doesn't match (because you changed pending spell IDs before the first spell finished launching), your spellbar will not update to no longer be locked out. Depending on what happens, your spellbar will sit there waiting for the first spell to finish launching and you will be locked out. There are certain ways to get the client to reset your spellbar in this situation (usually clicking and interrupting an AA with a cast time).
| |
|
| |
| The problem with bards and item clickies is that bard songs are spells, and item clickies are spells, and bards are expected to always be singing. This means we have to interrupt melody to use certain clickies, and interrupting a melody can be inefficient and a DPS loss. The clicky has to be good enough for it to be worth interrupting melody (lots of them aren't, or you have to carefully micromanage when you interrupt and restart the melody). This is why instant clickies are so important for bards. It's not merely convenient, cast times make many clickies undesirable enough to be unusable.
| |
|
| |
| To fix this we would need to additionally store the currently launching item spell (for bards) so the launch of both spells can be completed. Or, we could prevent launching a new spell if another one hasn't finished (i.e. no clicking items with a > 0.1s cast time while singing).
| |
|
| |
| Another interesting part of this is those 3 above spell pieces (cast, launch, hit by spell) are the main factors in zone lag. Spells that are instant cast go straight from CastSpell into LaunchSpell. This makes instant spells more performant for the zone itself (and the player). Classes who don't have many instant spells are penalized more in laggy situations. ||| [https://forums.daybreakgames.com/eq/index.php?threads/any-word-on-bard-clickies-graying-out-spellbar.279172/#post-4084991 niente, EQ Developer, November 30, 2021]}}
| |
|
| |
|
| == References == | | == References == |