Jump to content

[Fix]Sudden Death


Guest Gommes

Recommended Posts

but won't a "let cast it in combat if they have talent" patch work?

That's what Lightguard did. The skills are grayed out and disabled on the client side. You can't even begin to cast them unless the client knows that Juggernaut/Warbringer's auras are in effect.

Edit: See this hack-fix to see what I mean ->Hack<- (not thoroughly tested).

No, you don't really need to assign Juggernaut and Warbringer different slots since you can't learn them both at the same time, but I did so for testing purposes.

Also, _RemoveAura needs to be edited so that auras above MAX_AURAS can be removed. This is only assuming that Warbringer/Juggernaut have special aura slots. If not, ignore this.

Link to comment
Share on other sites

That's what Lightguard did. The skills are grayed out and disabled on the client side. You can't even begin to cast them unless the client knows that Juggernaut/Warbringer's auras are in effect.

ok so you are saying me that juggernault won't work until the client unlock it?

Link to comment
Share on other sites

There is not even a server-side check that prevents you from using non-combat spells in combat (except feeding pet or something) unless i'm really blind. So i guess currently you could use charge with cheats even without apropriate talents.

About Fingers of Frost, i also think it has to be "hacked" where the special code for ice Lance and Shatter already is. But the real problem is still that a certain company decided it shall share the proc roll with Frostbite. Current core structure does not allow to re-use a random value for another proc, so you can only do a non-offlike indepentant proc chance which is overpowered on targets that can be frozen. Otherwise, i'd probably already have posted a patch for FoF...

And i still think the damage from my Sudden Death code should be correct, someone has just to decide which way to check for an affecting aura 262 is the most beautiful/generic one...i'm no expert with all the available spell and aura attributes.

Link to comment
Share on other sites

Unfortunately, I think the way to implement Fingers of Frost will still be through a hack in Shatter/Ice Lance's custom script code.

Edit: @Pelle: patience, please... Sudden Death works with Lightguard's patch, I already stated Juggernaut is the same issue as Warbringer, Shadow Dance doesn't even use 262.

1. It would be terribly hacky to do so becuse of the direct calls to HasAuraState on the target, which still can be solved but this cannot be the general solution. Also note that this aura is used to override combat requirement too, and simply overriding aurastate checks would never solve that.

2. Shadowdance uses 275 afaik that's ignore form aura.

Link to comment
Share on other sites

That's what Lightguard did. The skills are grayed out and disabled on the client side. You can't even begin to cast them unless the client knows that Juggernaut/Warbringer's auras are in effect.

Edit: See this hack-fix to see what I mean ->Hack<- (not thoroughly tested).

No, you don't really need to assign Juggernaut and Warbringer different slots since you can't learn them both at the same time, but I did so for testing purposes.

Also, _RemoveAura needs to be edited so that auras above MAX_AURAS can be removed. This is only assuming that Warbringer/Juggernaut have special aura slots. If not, ignore this.

bug - after logout talent (bug is present in other talents) does not work

Link to comment
Share on other sites

bug - after logout talent (bug is present in other talents) does not work

It was just a hack fix to make a point...

1. It would be terribly hacky to do so becuse of the direct calls to HasAuraState on the target, which still can be solved but this cannot be the general solution. Also note that this aura is used to override combat requirement too, and simply overriding aurastate checks would never solve that.

Well as Lynx3d pointed out, first we have to add the server-side check to prevent the casting of non-combat spells in combat :P I am also not sure if fingers of frost should have an aurastate.

2. Shadowdance uses 275 afaik that's ignore form aura.

That seems to be the case.

Link to comment
Share on other sites

Ice lance requires it for damage multiplication that is done in Unit::SpellDamageBonus Deep freeze has aurastate and there's something like shatter or what that adds some crit chance if the target is frozen so it is implemented in the corresponding function. But all of them somehow dependent of that aurastate, all of them ends up somehow at unit->HasAuraState(AURA_STATE_FROZEN);

Link to comment
Share on other sites

Yes, basically Fingers of Frost would override the pVictim->isFrozen() calls in Unit::isSpellCrit (Shatter talent) and Unit::SpellDamageBonus (Ice Lance) from what i can tell.

Deep freeze then again should be pretty much like warriors execute, it requires the target to have a specific aurastate, but this requirement is ignored when the talent buff is active.

I'm still not sure what exactly the function of aura 262 from Warbringer is, with Juggernaught it must be the ability to use it in combat, but that's not aurastate related to my knowledge...unless there's some unknows state for this. In any case, it has nothing to do with the target/victim but the caster.

The stance part of Warbringer could be handled by aura 275 which is also used by shadow dance (ignore stealth state, which seems to be a form like warrior stances)

In sum, i just can't find a way to unify those uses of aura 262 in one piece of code...they're too special.

Link to comment
Share on other sites

That's what Lightguard did. The skills are grayed out and disabled on the client side. You can't even begin to cast them unless the client knows that Juggernaut/Warbringer's auras are in effect.

Edit: See this hack-fix to see what I mean ->Hack<- (not thoroughly tested).

No, you don't really need to assign Juggernaut and Warbringer different slots since you can't learn them both at the same time, but I did so for testing purposes.

Also, _RemoveAura needs to be edited so that auras above MAX_AURAS can be removed. This is only assuming that Warbringer/Juggernaut have special aura slots. If not, ignore this.

any update for this? warrior arms need help ç_ç or any way to improve that hack-fix?

Link to comment
Share on other sites

  • 2 weeks later...
The stance part of Warbringer could be handled by aura 275 which is also used by shadow dance (ignore stealth state, which seems to be a form like warrior stances)

for shadowdance i tried this on aura 275:

// only check at first call, Stealth auras are already removed at second call
   // for now, ignore triggered spells
   if( strict && !m_IsTriggeredSpell)
   {
       bool checkForm = true;
       // Ignore form req aura
       Unit::AuraList const& ignore = m_caster->GetAurasByType(SPELL_AURA_MOD_IGNORE_SHAPESHIFT);
       for(Unit::AuraList::const_iterator i = ignore.begin(); i != ignore.end(); ++i)
       {
           if (!(*i)->isAffectedOnSpell(m_spellInfo))
               continue;
       checkForm = false;
   +        if(m_caster->HasAura(51713)){
     +    checkForm = false;
   +          }

           break;
       }
       if (checkForm)
       {
           // Cannot be used in this stance/form
           SpellCastResult shapeError = GetErrorAtShapeshiftedCast(m_spellInfo, m_caster->m_form);
           if(shapeError != SPELL_CAST_OK)
               return shapeError;

           if ((m_spellInfo->Attributes & SPELL_ATTR_ONLY_STEALTHED) && !(m_caster->HasStealthAura())){
               return SPELL_FAILED_ONLY_STEALTHED;
           }
       }
   }

in this way, if the rogue has the aura active when i try to cast something out stealth, i have check form==fasle so it shouldn't check if i have stealth, but i still can't cast anything, don't work.

it's very strange because i can't find another return SPELL_FAILED_ONLY_STEALTHED; in the core, so i'm quite stuck.

Probably client side check?

Link to comment
Share on other sites

  • 9 months later...
  • 3 months later...
  • 2 months later...
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. Privacy Policy Terms of Use