Projekt

Allgemein

Profil

Aktionen

Fehler #324

geschlossen

[Klingenschuppe][10] Flammenpuffer Debuff

Von Tester-Nyx vor mehr als 12 Jahren hinzugefügt. Vor etwa 8 Jahren aktualisiert.

Status:
Live
Priorität:
Normal
Zugewiesen an:
-
Kategorie:
-
Zielversion:
Beginn:
25.10.2011
Update Text Deutsch:

Beschreibung

In der 3 Phase gibt Klingenschuppe (http://de.wowhead.com/npc=33186) auf jeden Spieler einen stapelbaren Flammenpuffer Debuff [http://de.wowhead.com/spell=64016], allerdings ist er visuell da, aber man bekommt keinen erhöhten Feuerschaden.
Dieser Flammenpuffer Debuff soll dann jede 10 Sekunden 1000 Schaden mehr machen (1000,2000,3000 usw.)

Aktionen #1

Von Tester-Nyx vor mehr als 12 Jahren aktualisiert

Aktionen #2

Von Daejiv vor mehr als 12 Jahren aktualisiert

Den Debuff gibt es, scheint allerdings nicht den erlittenden Feuerschaden erhöhen.

Aktionen #3

Von Tester-Nyx vor mehr als 12 Jahren aktualisiert

Aktionen #4

Von elevim vor mehr als 12 Jahren aktualisiert

  • Kategorie wurde von Kreaturen zu 13 geändert
Aktionen #5

Von idostyle vor mehr als 12 Jahren aktualisiert

Flame Buffet selber macht keinen Schaden als solcher.

Gibt aber 2 Probleme, zum einem, würde der Bonus nicht voll angerechnet werden:

https://github.com/rising-gods/Dev_Ulduar/blob/26e24b3b72ead637a1aae8f55d3100fefaacc0e0/src/server/game/Entities/Unit/Unit.cpp#L10942
10942 coeff = (CastingTime / 3500.0f) * DotFactor;

Zum anderen haben die anderen Boss Spells keinen SpellFamilyName gesetzt und bekommen somit überhaupt keinen Bonus:

https://github.com/rising-gods/Dev_Ulduar/blob/26e24b3b72ead637a1aae8f55d3100fefaacc0e0/src/server/game/Entities/Unit/Unit.cpp#L10948
10948 if (spellProto->SpellFamilyName) // TODO: fix this
10949 TakenTotal+= int32(TakenAdvertisedBenefit * coeff * coeff2);

Aktionen #6

Von Daejiv vor mehr als 12 Jahren aktualisiert

Ersteres Problem sollte nicht existent sein, da...

int32 CastingTime = IsChanneledSpell(spellProto) ? GetSpellDuration(spellProto) : GetSpellCastTime(spellProto);

in GetSpellCastTime(spellProto);
springt, welcher
CastingTime (Id 1) = 0,00
liefert.
Bei der späteren neubrechnung
CastingTime = GetCastingTimeForBonus(spellProto, damagetype, CastingTime);
[...]
if (CastingTime == 0 && GetTypeId() == TYPEID_UNIT && !ToCreature()->isPet())
        return 3500;

gibt, da CastingTime == 0 ist, 3500 zurück, wodurch coeff = (CastingTime / 3500.0f) * DotFactor; gleich 1 wird.
Einzig der float coeff2 = CalculateLevelPenalty(spellProto) * stack; verringert den Wert wahrscheinlich.

Bleibt allerdings weiterhin das Problem mit if (spellProto->SpellFamilyName). So sehe ich das Problem aktuell.
Entweder schöne Lösung suchen, Hackfix für die Spells, if Check auf Sinn überprüfen^^(den ich aktuell nicht sofort sehe).

Aktionen #8

Von Daejiv vor mehr als 12 Jahren aktualisiert

  • Zugewiesen an wurde auf Daejiv gesetzt
Aktionen #9

Von Daejiv vor mehr als 12 Jahren aktualisiert

  • Status wurde von Bestätigt zu Testbereit geändert
  • Zugewiesen an wurde von Daejiv zu Alacant geändert
Aktionen #10

Von provafix vor mehr als 12 Jahren aktualisiert

  • Status wurde von Testbereit zu Pending geändert
  • Zugewiesen an Alacant wurde gelöscht
Aktionen #11

Von elevim vor mehr als 12 Jahren aktualisiert

  • % erledigt wurde von 0 zu 100 geändert
Aktionen #12

Von elevim vor mehr als 12 Jahren aktualisiert

  • Status wurde von Pending zu Live geändert
Aktionen #13

Von Rushor vor etwa 8 Jahren aktualisiert

Bedeutung Live:

- Der Bug wurde erfolgreich behoben und der Fix dazu befindet sich auf dem Spielserver. Sollte der Fehler weiterhin bestehen sollte ein neues Ticket ( https://redmine.rising-gods.de/projects/live/issues/new ) erstellt werden. Anmerkungen in dem alten abgewiesenen oder live genommenen Tickets werden ignoriert und gelöscht.

Aktionen

Auch abrufbar als: Atom PDF