Fehler #16642
geschlossenFehler #4058: [Schamane] - Hauptticket
[Schamane] Feuerelementar: Dmgskalierung falsch
Schamane: Das Feuerelementar sollte nun immer immun gegen Feuerattacken sein. Zudem wurden Zaubermacht, Resistenzen und die Intelligenzskalierungen aktualisiert.
Beschreibung
Comes with:
Melee attack (Deals Fire damage.)
Fire Nova (Deals AoE Fire-damage close to his melee damage)
Fire Blast (Deals mediocre Fire damage.)
Fire Shield(Deals low Fire damage on hit.)"
Das sind die richtigen Koeffizienten!
Swing: 180 + 0.6 * SP + ( 2.0 / 14 ) * AP
Blast: ( 725 to 825 ) + 0.2 * SP
Nova: ( 925-1050 ) + 0.5 * SP
Shield: 96 + 0.015 * SP
Base Mana: 4000 + 15(0.3 * Int)
Die SP/AP/Int-Werte entsprechen denen des Besitzers! nicht des Pets!!! (Wenn man die Pet AP/ ZM etc nehmen muss, alle Koeffizienten *2 nehmen, da das PEt 50% der ZM des Owners übernimmt)
(1) there is a 5sec CD for Fire Nova
(2) While Fire Nova may be a 2sec cast, the elemental never does anything 0.5sec after the cast is over..... so I have chosen to effectively model it as a 2.5sec cast
(3) Fire Blast also seems to have a 5sec CD
(4) There is no clear priority list. If both FB and FN are off cooldown, it seems random which one is picked
(5) Swing time is 2sec and un-modified by any haste effects
(6) If FB or FN will come off CD in less than 2sec, the Elemental will often just wait instead of trying to get in another melee swing. I haven't yet determined the crossover point yet.
(7) FN costs 207 mana and FB costs 276 mana
(8) The elemental has 4k base mana and inherits 30% of master's intellect, gaining 15 mana per intellect
(9) When out of the five-second-rule it gains 10.66 mana per second
Wie das ganze modifiziert werden sollte:
- Das Pet skaliert mit den 10% AP bzw + AP Auren wie AP-Shout.
- Das Pet oder die Casts davon skalieren weder mit Haste, noch sollte der Dmg der Autohits durch Rüstung verändert werden.
- Der einzige Critmodifier, welches das Pet Crits erlauben sollte ist Herz des Kreuzfahrers ( Wenn nicht mgl einfach only 3% Crit adden)
- Das Pet hat im Simulator immer 100% Hit auf Spells? ( In den Logs auch keine Misses)
- Das Pet sollte durch Agi-Buff ( zB Horn des Winters auch AP kriegen 1:1 Umwandlung(Zusätzlich zum AP Gain des Besitzers)
- Alle Spells + der Autohit profitieren von FdE und ähnlichen Effekten (13% Spelldmg erhöhung)
- Manaregeffekte wie Replenishment/ Revitalize/ Euphoria sollten auch aufs Pet funktionieren
- Das ganze sollte nicht live modifiziert werden, sondern einen Snapshot der Werte zum Summon des Pets machen und dann durch obere Dinge modifiziert werden.
- Das Ding sollte immung gegen alle Spells aus der Feuerschule sein.
Der Autohit sollte in einer Attacktable stehen, davon 25% Glancing Blows. zusätzlich unterliegt der Autohit und die restlichen Casts dem Spellresist-system. (Ist de facto gerade so)
Ids:
https://db.rising-gods.de/?spell=32982
https://db.rising-gods.de/?npc=15438
https://db.rising-gods.de/?spell=57984
https://db.rising-gods.de/?spell=12470
https://db.rising-gods.de/?spell=13376
Quellen:
Cataclysm-Logo-Small Patch 4.3.0 (29-Nov-2011): Fire Elemental now benefits from 55% of its master's spell power, up from 50%.
Patch 3.1.0 (14-Apr-2009): The summoned Fire Elemental should now have moderately more health and mana, and its damage scaling has been increased. In addition, the Fire Elemental's spells now cost less mana.
Zugehörige Tickets
Von Mollestus vor etwa 9 Jahren aktualisiert
Interessant ist, dass Fireblast vom Ele zum Mage verlinkt ist^^
https://wow.freakz.ro/spells.php?spell=57984
Hier ists zu den Eletalenten verlinkt :>
http://de.wowhead.com/spell=57984/feuerschlag#sounds Hier ist er bei 45,9 aber WOD
Von Rushor vor etwa 9 Jahren aktualisiert
- Beziehung mit Fehler #10048: [Todesritter] Armee der Toten - Glancing Hits wurde hinzugefügt
Von Rushor vor etwa 9 Jahren aktualisiert
bezüglich der blows: https://redmine.rising-gods.de/issues/10048 für die entry des pets die ausnahme hinzufügen
Von Rushor vor etwa 9 Jahren aktualisiert
bezüglich der sp: Skalieren die Zauber des Pets überhaupt mit der ZM des petowners?
http://bug.omfg.gg/issues/6175 30 days no anwser close ..........
https://wotlk-twinhead.twinstar.cz/?issue=1038 - ein paar infos
zu 1) https://redmine.rising-gods.de/issues/5667 commits davon nachschauen
kay beim fireele scheint es so zu sklaieren:
case ENTRY_FIRE_ELEMENTAL: { if (!pInfo) { SetCreateHealth(40*petlevel); SetCreateMana(28 + 10*petlevel); } SetBonusDamage(int32(GetOwner()->SpellBaseDamageBonusDone(SPELL_SCHOOL_MASK_FIRE) * 0.5f)); SetBaseWeaponDamage(BASE_ATTACK, MINDAMAGE, float(petlevel * 4 - petlevel)); SetBaseWeaponDamage(BASE_ATTACK, MAXDAMAGE, float(petlevel * 4 + petlevel)); break; }
Von Mollestus vor etwa 9 Jahren aktualisiert
http://forums.elitistjerks.com/forums/topic/87430-enhancement-bis-gear-and-set-up-discussion-33-and-onward/
http://enhsim.codeplex.com/releases/view/50238
Hab die Quellen gefunden.
Ich spiel später mal etwas am Simulator :>
Von Mollestus vor etwa 9 Jahren aktualisiert
- Beschreibung aktualisiert (Vergleich)
- Status wurde von Neu zu Bestätigt geändert
- Priorität wurde von Normal zu Hoch geändert
Das Ticket nochmal komplett überarbeitet mit meinen Tests :P
Von Mollestus vor etwa 9 Jahren aktualisiert
- Thema wurde von [Schamane] Feuerelementar: Besitzt Glancing Blows und Dmgskalierung falsch zu [Schamane] Feuerelementar: Dmgskalierung falsch geändert
Von Rushor vor mehr als 8 Jahren aktualisiert
- Beziehung mit Fehler #5667: Petscaling - Hauptticket wurde hinzugefügt
Von Rushor vor mehr als 8 Jahren aktualisiert
- Status wurde von Bestätigt zu Testbereit geändert
alles übernommen was ich so finden konnte:
spells welche nun übertragen werden:
SPELL_FERAL_SPIRIT_PET_SCALING_04 = 61783,
SPELL_FIRE_ELEMENTAL_SCALING_01 = 35665,
SPELL_FIRE_ELEMENTAL_SCALING_02 = 35666,
SPELL_FIRE_ELEMENTAL_SCALING_03 = 35667,
SPELL_FIRE_ELEMENTAL_SCALING_04 = 35668,
basedmg:
SetBonusDamage(int32(GetOwner()->SpellBaseDamageBonusDone(SPELL_SCHOOL_MASK_FIRE) * 0.5f));
SetBaseWeaponDamage(BASE_ATTACK, MINDAMAGE, float(petlevel * 3.5 - petlevel));
SetBaseWeaponDamage(BASE_ATTACK, MAXDAMAGE, float(petlevel * 3.5 + petlevel));
spellimplemenierungen:
class spell_sha_fire_elemental_scaling : public SpellScriptLoader { public: spell_sha_fire_elemental_scaling() : SpellScriptLoader("spell_sha_fire_elemental_scaling") { } class spell_sha_fire_elemental_scaling_AuraScript : public AuraScript { PrepareAuraScript(spell_sha_fire_elemental_scaling_AuraScript); void CalculateResistanceAmount(AuraEffect const* aurEff, int32 & amount, bool & /*canBeRecalculated*/) { // fire elemental inherits 40% of resistance from owner and 35% of armor if (Unit* owner = GetUnitOwner()->GetOwner()) { SpellSchoolMask schoolMask = SpellSchoolMask(aurEff->GetSpellInfo()->Effects[aurEff->GetEffIndex()].MiscValue); int32 modifier = schoolMask == SPELL_SCHOOL_MASK_NORMAL ? 35 : 40; amount = CalculatePct(std::max<int32>(0, owner->GetResistance(schoolMask)), modifier); } } void CalculateStatAmount(AuraEffect const* aurEff, int32 & amount, bool & /*canBeRecalculated*/) { // fire elemental inherits 30% of intellect / stamina if (Unit* owner = GetUnitOwner()->GetOwner()) { Stats stat = Stats(aurEff->GetSpellInfo()->Effects[aurEff->GetEffIndex()].MiscValue); amount = CalculatePct(std::max<int32>(0, owner->GetStat(stat)), 30); } } void CalculateAPAmount(AuraEffect const* aurEff, int32 & amount, bool & /*canBeRecalculated*/) { // fire elemental inherits 300% / 150% of SP as AP if (Unit* owner = GetUnitOwner()->GetOwner()) { int32 fire = owner->SpellBaseDamageBonusDone(SPELL_SCHOOL_MASK_FIRE); amount = CalculatePct(std::max<int32>(0, fire), (GetUnitOwner()->GetEntry() == ENTRY_FIRE_ELEMENTAL ? 300 : 150)); } } void CalculateSPAmount(AuraEffect const* aurEff, int32 & amount, bool & /*canBeRecalculated*/) { // fire elemental inherits 100% of SP if (Unit* owner = GetUnitOwner()->GetOwner()) { int32 fire = owner->SpellBaseDamageBonusDone(SPELL_SCHOOL_MASK_FIRE); amount = CalculatePct(std::max<int32>(0, fire), 100); // Update appropriate player field if (owner->GetTypeId() == TYPEID_PLAYER) owner->SetUInt32Value(PLAYER_PET_SPELL_POWER, (uint32)amount); } } void HandleEffectApply(AuraEffect const* aurEff, AuraEffectHandleModes /*mode*/) { GetUnitOwner()->ApplySpellImmune(0, IMMUNITY_STATE, aurEff->GetAuraType(), true); if (aurEff->GetAuraType() == SPELL_AURA_MOD_ATTACK_POWER) GetUnitOwner()->ApplySpellImmune(0, IMMUNITY_STATE, SPELL_AURA_MOD_ATTACK_POWER_PCT, true); else if (aurEff->GetAuraType() == SPELL_AURA_MOD_STAT) GetUnitOwner()->ApplySpellImmune(0, IMMUNITY_STATE, SPELL_AURA_MOD_TOTAL_STAT_PERCENTAGE, true); } void Register() override { if (m_scriptSpellId != 35665 && m_scriptSpellId != 65225) DoEffectCalcAmount += AuraEffectCalcAmountFn(spell_sha_fire_elemental_scaling_AuraScript::CalculateResistanceAmount, EFFECT_ALL, SPELL_AURA_MOD_RESISTANCE); if (m_scriptSpellId == 35666 || m_scriptSpellId == 65226) DoEffectCalcAmount += AuraEffectCalcAmountFn(spell_sha_fire_elemental_scaling_AuraScript::CalculateStatAmount, EFFECT_ALL, SPELL_AURA_MOD_STAT); if (m_scriptSpellId == 35665 || m_scriptSpellId == 65225) { DoEffectCalcAmount += AuraEffectCalcAmountFn(spell_sha_fire_elemental_scaling_AuraScript::CalculateAPAmount, EFFECT_ALL, SPELL_AURA_MOD_ATTACK_POWER); DoEffectCalcAmount += AuraEffectCalcAmountFn(spell_sha_fire_elemental_scaling_AuraScript::CalculateSPAmount, EFFECT_ALL, SPELL_AURA_MOD_DAMAGE_DONE); } OnEffectApply += AuraEffectApplyFn(spell_sha_fire_elemental_scaling_AuraScript::HandleEffectApply, EFFECT_ALL, SPELL_AURA_ANY, AURA_EFFECT_HANDLE_REAL); } }; AuraScript* GetAuraScript() const override { return new spell_sha_fire_elemental_scaling_AuraScript(); } };
ist nun auch immun gegen fireattacken
sollte es eine verbesserung darstellen und sonst nichts kaputt machen > ready
Von Laederlappen vor mehr als 8 Jahren aktualisiert
- Status wurde von Testbereit zu Ready geändert
- Zugewiesen an wurde auf Rushor gesetzt
- Update Text Deutsch aktualisiert (Vergleich)
Jo es stellt eine Verbesserung dar, daher auf ready, danach wieder auf bestätigt, da die Spells immer noch alle! zu niedrig skalieren.
Von Rushor vor mehr als 8 Jahren aktualisiert
- Update Text Deutsch aktualisiert (Vergleich)
// fire elemental inherits 40% of resistance from owner and 35% of armor
// fire elemental inherits 30% of intellect / stamina
// fire elemental inherits 300% / 150% of SP as AP
// fire elemental inherits 100% of SP
wurde auch kurz überprüft oder?
ansonsten noch die spell_bonus_data einträge:
INSERT INTO `spell_bonus_data` VALUES ('57984', '0.2', '0', '0', '0', 'Pet Shaman - Fire Elemental Fire Blast'); INSERT INTO `spell_bonus_data` VALUES ('12470', '0.5', '0', '0', '0', 'Pet Shaman - Fire Elemental Fire Nova'); INSERT INTO `spell_bonus_data` VALUES ('13376', '0.015', '0', '0', '0', 'Pet Shaman - Fire Elemental Fire Shield');
Von Rushor vor mehr als 8 Jahren aktualisiert
- Zugewiesen an
Rushorwurde gelöscht - DB-Link wurde auf https://db.rising-gods.de/?spell=32982 gesetzt
master reset > neuer hash
spell_bonus_data wurde gleich mit übernommen
Von Veylen vor mehr als 8 Jahren aktualisiert
- Update Text Deutsch aktualisiert (Vergleich)
Von Daejiv vor fast 8 Jahren aktualisiert
- Zielversion wurde von Klassen zu Klasse - Schamane geändert
Von Left4Info vor mehr als 6 Jahren aktualisiert
- Tags wurde auf Classes, Shaman gesetzt