Projekt

Allgemein

Profil

Aktionen

Fehler #904

geschlossen

Fehler #11636: [Merge] - PvP-Bugs

[Mechanik] Spelldelay

Von AirStyle vor fast 13 Jahren hinzugefügt. Vor mehr als 8 Jahren aktualisiert.

Status:
Live
Priorität:
Dringend
Zugewiesen an:
-
Kategorie:
Mechanik
Zielversion:
Beginn:
14.11.2011
Update Text Deutsch:

Zauber sollten nun erst einen Effekt haben sobald sie das Ziel treffen.


Beschreibung

Soweit ich weiß ist der Spelldelay die Zeit zwischen abgeschlossenem Cast und Hit.

Normalerweise sollten sich im Flug befindene Zauber erst einen Effekt haben sobald sie das Ziel treffen. Instants sollten ebenfalls nicht sofort, sondern erst nach 0.X sek treffen. Zur Zeit treffen allerdings alle Zauber zu früh, sich im FLug befindene einige Meter vorher(lässt sich am besten beweisen, wenn man versucht vor einem fliegenden Zauber wegzureiten/laufen). Deswegen sind viele entscheidenede Aktionen im PvP unmöglich oder viel schwerer als es sein sollte.

z.B.:
-Spells Vanishen/Iceblocken
-Double CC (Blind/Sheep/Sap etc.)

Aktionen #1

Von AirStyle vor fast 13 Jahren aktualisiert

http://www.nwnlexicon.com/compiled/function.spelldelay.html
Einen anderen Link (wow-head.com) hab ich nicht und bezweifle dass es dort einen Eintrag gibt.

Aktionen #2

Von Sioni vor fast 13 Jahren aktualisiert

Wtf, der Link ist für ein völlig anderes Spiel...

Aktionen #3

Von AirStyle vor fast 13 Jahren aktualisiert

srs? trifft aber warscheinlich trotzdem zu was den zunehmenden abstand angeht..

Aktionen #4

Von Sioni vor fast 13 Jahren aktualisiert

  • Status wurde von Neu zu Abgewiesen geändert

Da hier wohl nichts mehr kommt mach ich mal zu. Die Beschreibung einer Mechanik in Neverwinter Nights hat wohl kaum Relevanz für WoW.

Aktionen #5

Von provafix vor fast 13 Jahren aktualisiert

  • Status wurde von Abgewiesen zu Bestätigt geändert

Ich muss dich da leider korrigieren. Der Schaden/Effekt der Zauber sollte wirklich nicht bei Cast wirkung sondern beim Eintreffen des Zaubers. Verlässliche Quellen gibt es dazu nicht, nur meine Spielerfahrung ^^

Aktionen #6

Von provafix vor mehr als 12 Jahren aktualisiert

  • Zugewiesen an wurde auf provafix gesetzt
Aktionen #7

Von provafix vor mehr als 12 Jahren aktualisiert

  • Zugewiesen an wurde von provafix zu Lareine geändert
Aktionen #8

Von Daejiv vor mehr als 12 Jahren aktualisiert

  • Status wurde von Bestätigt zu Testbereit geändert
  • Zugewiesen an wurde von Lareine zu provafix geändert

https://github.com/rising-gods/Dev_RELOADED/commit/85303115af0673b96289af3341807e339c09a1c4

Beinhaltet, dass man vor Zaubern weglaufen kann.
Bitte jegliche Geschosszauber testen, das beinhaltet zB Feuerball vom Mage oÄ, AoE Spells wie Frostblitze bei Kel, Geschosse von Vehiclen(Verwüster zB).

Wenn fixed ist dann bitte zurück an Dev für den anderen Teil des Tickets aka Spelldelay.

Aktionen #9

Von provafix vor mehr als 12 Jahren aktualisiert

  • Zugewiesen an wurde von provafix zu Sioni geändert
Aktionen #10

Von provafix vor mehr als 12 Jahren aktualisiert

  • Zugewiesen an wurde von Sioni zu Smoo geändert

Bitte mit Fave zusammen testen.. möglichst bis morgen Abend! :)

Aktionen #11

Von Smoo vor mehr als 12 Jahren aktualisiert

  • Status wurde von Testbereit zu In Bearbeitung geändert

Funktioniert immernoch nicht. Wenn man aufm Mount vor z.b. Feuerball wegreitet bekommt man den Dmg obwohl der Zauber erst ca. 2-3 Sek später eintrifft. Wenn man zu Fuß ohne jegliche Beschleunigung vor dem Zauber wegläuft bekommt man 1-1,5sek zu früh Dmg und wenn man auf max range vom Zauber steht kommt der Schaden 0,5-1sek zu früh an.
Es wurde auch getestet mit Gm Speed, die Zauber machen Schaden obwohl sie ihn nie erreichen würden.

Zu den Geschossen von Verwüstern/Kanonen: Die Animation bei dem der schießt und dem der den Schuss abbekommt ist anders. Bei dem offensiven Spieler fliegt das Geschoss sehr viel schneller und macht korrekter Weiße auch erst Schaden wenn es ankommt. Beim Getroffenen macht das Geschoss schon auf der Hälfte der Strecke Schaden, da die Animation viel langsamer ist.

Zusammen mit Fave auf Testserver getestet in Duellen und Strand der Uralten.

Aktionen #12

Von Daejiv vor mehr als 12 Jahren aktualisiert

  • Status wurde von In Bearbeitung zu Testbereit geändert
Aktionen #13

Von Daejiv vor mehr als 12 Jahren aktualisiert

  • Status wurde von Testbereit zu In Bearbeitung geändert
  • Zugewiesen an wurde von Smoo zu Daejiv geändert
Aktionen #14

Von Daejiv vor mehr als 12 Jahren aktualisiert

  • Status wurde von In Bearbeitung zu Testbereit geändert
  • Zugewiesen an wurde von Daejiv zu Smoo geändert
Aktionen #15

Von Yuliwee vor mehr als 12 Jahren aktualisiert

  • Status wurde von Testbereit zu In Bearbeitung geändert
  • Zugewiesen an wurde von Smoo zu Daejiv geändert

Fix rausgenommen, da er zu Servercrashes führt.

Aktionen #16

Von freeed vor mehr als 12 Jahren aktualisiert

Derschnitter:
Aufgrund der Korrespondenz im bugtracker habe ich das Gefühl, dass hier das falsche gefixt bzw getestet wird. Dass man vor spells wegreiten kann ergibt sich wohl aus dem spelldelay, allerdings scheint mir dass nicht getestet wird, ob z.B. doppel spellcasts von zwei Spielern aufeinander funktionieren und ob man heranfliegende Fähigkeiten blocken/vanishen kann.

-> Bitte mal angucken, das war auch der Ursprung des Tickets :) (Doublesap etc)

Aktionen #17

Von Daejiv vor mehr als 12 Jahren aktualisiert

Das ist mir durchaus bewusst, die Flugzeit Berechnung spielt da allerdings indirekt auch mit rein.

Aktionen #18

Von AirStyle vor mehr als 12 Jahren aktualisiert

Tut sich hier was?

Aktionen #19

Von Daejiv vor mehr als 12 Jahren aktualisiert

  • Status wurde von In Bearbeitung zu Bestätigt geändert
  • Zugewiesen an Daejiv wurde gelöscht
  • Zielversion wurde auf Merge gesetzt

Wird mit dem Merge mitgefixt.

Aktionen #20

Von Daejiv vor mehr als 12 Jahren aktualisiert

  • Thema wurde von Spelldelay zu [Merge] Spelldelay geändert
  • Status wurde von Bestätigt zu Testbereit geändert
  • Zugewiesen an wurde auf WotLK - Tester Mentor gesetzt
  • Priorität wurde von Normal zu Hoch geändert

https://github.com/rising-gods/Merge/commit/de4efb8f1999253ae451927d45ae1abf3ce94d3c
https://github.com/rising-gods/Merge/commit/17273073111c3b268c302a5c667f45fef816eb1e

Das Spell Delay ist nun implementiert und ermöglicht sehr genaues einstellen von ebendiesem (wie viel Delay hat welcher Spell/Effect).

Aktuell ist das Delay nur im PvP Kampf aktiv und beträgt 150ms auf CCs, welche instant gewirkt werden.
Eingetragen sind im Moment:

MECHANIC_INTERRUPT
MECHANIC_GRIP
SPELL_AURA_MOD_POSSESS
SPELL_AURA_MOD_CONFUSE
SPELL_AURA_MOD_STUN
SPELL_AURA_MOD_FEAR
SPELL_AURA_MOD_SILENCE
SPELL_AURA_MOD_DISARM

Das umfasst somit den Todesgriff von DK, jegliche Interrupt-, Disarm-, Fear-, Stuneffekte sowie Mindcontrol und Disorients.
Einige Beispiele: Gedankenkontrolle(Priest), Blenden(Rogue)
Was nicht wirkt: z.B. Furcht(Hexer), da Casttime vorhanden

Bitte die Tester einmal kruz drüberschauen lassen und dann wirds aufm PTR eingespielt um ein breiteres Feedback zu bekommen.

Bei Anpassungen bzgl. des Delays oder den betroffenden Spells bitte melden.

Aktionen #21

Von Catalina vor etwa 12 Jahren aktualisiert

Also Blenden und Sap, sowie Double-Fear(Priester) gehen soweit.
Wenn man den Delay auch für Casts einspielen könnte wäre das top, nur CC's reichen fürs erste aber auch schon.

Aktionen #23

Von karn vor fast 12 Jahren aktualisiert

  • Status wurde von Testbereit zu Live geändert
  • Zugewiesen an WotLK - Tester Mentor wurde gelöscht
Aktionen #24

Von 2danger vor fast 10 Jahren aktualisiert

karn schrieb:

spelldelay 100ms

Kann das mal jemand auf seinen Bestand hin überprüfen, bitte.

Aktionen #25

Von Rushor vor fast 10 Jahren aktualisiert

welche spells? alle?

ansonsten gilt das:

INSERT INTO `spell_delay` VALUES (2, 6, 100, 'MECHANIC_GRIP');
INSERT INTO `spell_delay` VALUES (1, 2, 100, 'SPELL_AURA_MOD_POSSESS');
INSERT INTO `spell_delay` VALUES (1, 5, 100, 'SPELL_AURA_MOD_CONFUSE');
INSERT INTO `spell_delay` VALUES (1, 12, 100, 'SPELL_AURA_MOD_STUN');
INSERT INTO `spell_delay` VALUES (1, 7, 100, 'SPELL_AURA_MOD_FEAR');
INSERT INTO `spell_delay` VALUES (1, 67, 100, 'SPELL_AURA_MOD_DISARM');
INSERT INTO `spell_delay` VALUES (0, 49576, 100, 'DK - Deathgrip');

Aktionen #26

Von Randomx vor mehr als 9 Jahren aktualisiert

Gibts hierzu etwas neues? Scheint ja wieder komplett draußen zu sein.

Aktionen #27

Von sniffy vor mehr als 9 Jahren aktualisiert

  • Thema wurde von [Merge] Spelldelay zu [Mechanik] Spelldelay geändert
  • Kategorie wurde von Zauber zu Mechanik geändert
  • Zugewiesen an wurde auf Rushor gesetzt
  • Priorität wurde von Hoch zu Dringend geändert
  • Zielversion wurde von Merge zu PvP geändert
  • Übergeordnetes Ticket wurde auf #11636 gesetzt

Ist scheinbar mitm merge rausgeflogen. Das wegreiten, bzw. der Delay von fliegenden Zaubern funktioniert korrekt. Aber die instant cc sind kaputt gegangen. Die Castbaren CC müssen auch gemacht werden.

Trinity ticket dazu: https://github.com/TrinityCore/TrinityCore/issues/1195

Aktionen #28

Von Rushor vor mehr als 9 Jahren aktualisiert

  • Status wurde von Live zu In Bearbeitung geändert

vlt. lässt sich das repo noch in den archiven finden..

Aktionen #29

Von Rushor vor mehr als 9 Jahren aktualisiert

  • Zugewiesen an wurde von Rushor zu Daejiv geändert
Aktionen #30

Von 1337 vor etwa 9 Jahren aktualisiert

Wäre wichtig.

Aktionen #32

Von Rushor vor etwa 9 Jahren aktualisiert

  • Status wurde von In Bearbeitung zu Testbereit geändert
  • Zugewiesen an wurde von Daejiv zu 1337 geändert
diff --git a/src/server/game/Spells/Spell.cpp b/src/server/game/Spells/Spell.cpp
index d64fea0..cdf3abc 100644
--- a/src/server/game/Spells/Spell.cpp
+++ b/src/server/game/Spells/Spell.cpp
@@ -3333,7 +3333,7 @@ void Spell::cast(bool skipCheck)
     SendSpellGo();

     // Okay, everything is prepared. Now we need to distinguish between immediate and evented delayed spells
-    if ((m_spellInfo->Speed > 0.0f && !m_spellInfo->IsChanneled()) || m_spellInfo->AttributesEx4 & SPELL_ATTR4_UNK4)
+    if (((m_spellInfo->Speed > 0.0f || m_spellInfo->IsAffectedBySpellDelay(m_caster)) && !m_spellInfo->IsChanneled()) || m_spellInfo->AttributesEx4 & SPELL_ATTR4_UNK4)
     {
         // Remove used for cast item if need (it can be already NULL after TakeReagents call
         // in case delayed spell remove item at cast delay start

in spell:cast selbst is der check rausgeflogen

Aktionen #33

Von Furorion vor etwa 9 Jahren aktualisiert

  • Status wurde von Testbereit zu Ready geändert
  • Zugewiesen an 1337 wurde gelöscht
  • Update Text Deutsch aktualisiert (Vergleich)
Aktionen #34

Von Daejiv vor etwa 9 Jahren aktualisiert

  • Status wurde von Ready zu Live geändert
Aktionen #35

Von Rushor vor mehr als 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