View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0006969 | Legion Core | Classes - Priest - Жрец | public | 2019-12-06 22:22 | 2024-09-05 14:49 |
Reporter | rJLyTTocTb | Assigned To | Ghost | ||
Priority | normal | Severity | minor | Reproducibility | always |
Status | confirmed | Resolution | reopened | ||
Summary | 0006969: Клиппинг майндфлай | ||||
Description | http://egammi.net/image/SnOy ru.wowhead.com/spell=216513/ У нас не реализованно Так же это действует и у лока на ru.wowhead.com/spell=198590 | ||||
Steps To Reproduce | Встаём у маникена, кастуем ru.wowhead.com/spell=216513/ , не прерывая каст, жмем МФ снова, длительность не изменится, от слова совсем | ||||
Additional Information | Пруф скину в коммы, если надо . Инфы по "клипанью" полно в Гугле От тестера: На данный момент клип механика не работает на эти ченнел спеллы, их длительность никак не меняется id: 198590 id: 234153 id: 15407 http://egammi.com/image/SnOy https://www.youtube.com/watch?v=gF7X3L57ttk | ||||
|
https://youtu.be/n1titGazQYk?t=124 первый 1.66 второй 2.20 |
|
Направляю разработчику |
|
Когда шп и аффли научатся клипать на ювове ?) Примерно хотя бы |
|
This was implemented in Cataclysm and is not specific to priest. Internally, this is called "positive pushback", and it happens by being an effective positive pushback (as pushbacks are usually negative). Here's how you **must** implement it, if you don't and cheat by making the new channel longer, addons will not calculate the ticks properly leading to ticks of damage happening out of sync with the addon's channel bar. This is the code from Gnosis, a castbar addon: function Gnosis:UpdateCastbar(cb, startTime, endTime, spell) local barname, cfg = cb.name, cb.conf; local fSPB = endTime - cb.endTime; -- spell pushback -- "positive" channel pushback (4.1) if(fSPB > 0 and cb.channel) then if(cfg.bExtChannels) then cb.duration = cb.duration + fSPB; end cb.endTime = endTime; if(cb.totalticks and cb.totalticks > 0) then for i = 1, cb.totalticks do cb.ticks[i] = cb.ticks[i] + fSPB; end if(cfg.bExtChannels) then if(cb.endTime - cb.ticks[cb.totalticks] > cb.channelticktime) then cb.totalticks = cb.totalticks + 1; cb.ticks[cb.totalticks] = cb.ticks[cb.totalticks-1] - cb.channelticktime; end self:DrawTicks(cb, cfg); end end -- "negative" pushback elseif(fSPB ~= 0) then cb.pushback = cb.pushback + fSPB; cb.endTime = endTime; self:DrawTicks(cb, cfg); end end This is a sniff of Cataclysm retail-era Mind Flay ClientToServer: CMSG_CAST_SPELL (0x4C07) Length: 22 ConnIdx: 0 Time: --/--/----18:26:59.000 Number: 13 Cast Count: 11 Spell ID: 15407 (15407) Glyph Index: 0 Cast Flags: 0 (None) Target Flags: 2 (Unit) Target GUID: TARGET -- TARGET -- TARGET -- TARGET ServerToClient: SMSG_SPELL_START (0x6415) Length: 41 ConnIdx: 0 Time: --/--/----18:27:00.000 Number: 14 Caster GUID: PLAYER -- PLAYER -- PLAYER -- PLAYER Caster Unit GUID: PLAYER -- PLAYER -- PLAYER -- PLAYER Cast Count: 11 Spell ID: 15407 (15407) Cast Flags: 2050 (HasTrajectory, PredictedPower) Time: 0 Time2: 0 Target Flags: 2 (Unit) Target GUID: TARGET -- TARGET -- TARGET -- TARGET Rune Cooldown: 106665 ServerToClient: SMSG_SPELL_GO (0x6E16) Length: 51 ConnIdx: 0 Time: --/--/----18:27:00.000 Number: 16 Caster GUID: PLAYER -- PLAYER -- PLAYER -- PLAYER Caster Unit GUID: PLAYER -- PLAYER -- PLAYER -- PLAYER Cast Count: 11 Spell ID: 15407 (15407) Cast Flags: 2304 (Unknown7, PredictedPower) Time: 0 Time2: 17812347 Hit Count: 1 [0] Hit GUID: TARGET -- TARGET -- TARGET -- TARGET Miss Count: 0 Target Flags: 2 (Unit) Target GUID: TARGET -- TARGET -- TARGET -- TARGET Rune Cooldown: 105018 ServerToClient: MSG_CHANNEL_START (0x0A15) Length: 14 ConnIdx: 0 Time: --/--/----18:27:00.000 Number: 17 GUID: PLAYER -- PLAYER -- PLAYER -- PLAYER Spell ID: 15407 (15407) Duration: 2352 Has castflag Immunity: false Has castflag HealPrediction: false ClientToServer: CMSG_CHAT_MESSAGE_SAY (0x1154) Length: 36 ConnIdx: 0 Time: --/--/----18:27:00.000 Number: 32 Language: 1 (Orcish) Message: Mind flay total duration:2.352 ServerToClient: SMSG_CHAT (0x2026) Length: 61 ConnIdx: 0 Time: --/--/----18:27:00.000 Number: 34 Type: 1 (Say) Language: 1 (Orcish) GUID: PLAYER -- PLAYER -- PLAYER -- PLAYER Constant time: 0 Sender GUID: PLAYER -- PLAYER -- PLAYER -- PLAYER Text Length: 31 Text: Mind flay total duration:2.352 Chat Tag: 0 (None) ServerToClient: SMSG_SPELL_PERIODIC_AURA_LOG (0x0416) Length: 45 ConnIdx: 0 Time: --/--/----18:27:00.000 Number: 38 Target GUID: TARGET -- TARGET -- TARGET -- TARGET Caster GUID: PLAYER -- PLAYER -- PLAYER -- PLAYER Spell ID: 15407 (15407) Count: 1 Aura Type: 3 (PeriodicDamage) Damage: 2634 Over damage: 2633 Spell Proto: 32 Absorb: 0 Resist: 0 Critical: 0 ClientToServer: CMSG_CAST_SPELL (0x4C07) Length: 22 ConnIdx: 0 Time: --/--/----18:27:01.000 Number: 55 Cast Count: 12 Spell ID: 15407 (15407) Glyph Index: 0 Cast Flags: 0 (None) Target Flags: 2 (Unit) Target GUID: TARGET -- TARGET -- TARGET -- TARGET ServerToClient: MSG_CHANNEL_UPDATE (0x2417) Length: 8 ConnIdx: 0 Time: --/--/----18:27:01.000 Number: 67 GUID: PLAYER -- PLAYER -- PLAYER -- PLAYER Timestamp: 0 ServerToClient: SMSG_SPELL_START (0x6415) Length: 41 ConnIdx: 0 Time: --/--/----18:27:01.000 Number: 68 Caster GUID: PLAYER -- PLAYER -- PLAYER -- PLAYER Caster Unit GUID: PLAYER -- PLAYER -- PLAYER -- PLAYER Cast Count: 12 Spell ID: 15407 (15407) Cast Flags: 2050 (HasTrajectory, PredictedPower) Time: 0 Time2: 0 Target Flags: 2 (Unit) Target GUID: TARGET -- TARGET -- TARGET -- TARGET Rune Cooldown: 105360 ServerToClient: SMSG_SPELL_GO (0x6E16) Length: 51 ConnIdx: 0 Time: --/--/----18:27:01.000 Number: 70 Caster GUID: PLAYER -- PLAYER -- PLAYER -- PLAYER Caster Unit GUID: PLAYER -- PLAYER -- PLAYER -- PLAYER Cast Count: 12 Spell ID: 15407 (15407) Cast Flags: 2304 (Unknown7, PredictedPower) Time: 0 Time2: 17814018 Hit Count: 1 [0] Hit GUID: TARGET -- TARGET -- TARGET -- TARGET Miss Count: 0 Target Flags: 2 (Unit) Target GUID: TARGET -- TARGET -- TARGET -- TARGET Rune Cooldown: 103713 ServerToClient: MSG_CHANNEL_START (0x0A15) Length: 14 ConnIdx: 0 Time: --/--/----18:27:01.000 Number: 71 GUID: PLAYER -- PLAYER -- PLAYER -- PLAYER Spell ID: 15407 (15407) Duration: 2352 Has castflag Immunity: false Has castflag HealPrediction: false ServerToClient: SMSG_AURA_UPDATE (0x4707) Length: 29 ConnIdx: 0 Time: --/--/----18:27:01.000 Number: 72 GUID: Full: TARGET -- TARGET -- TARGET -- TARGET [0] Slot: 2 [0] Spell ID: 15407 (15407) [0] Flags: 419 (EffectIndex0, EffectIndex1, Duration, Negative, Unk100) [0] Level: 85 [0] Charges: 0 [0] Caster GUID: PLAYER -- PLAYER -- PLAYER -- PLAYER [0] Max Duration: 3041 [0] Duration: 3041 ServerToClient: MSG_CHANNEL_UPDATE (0x2417) Length: 8 ConnIdx: 0 Time: --/--/----18:27:01.000 Number: 73 GUID: PLAYER -- PLAYER -- PLAYER -- PLAYER Timestamp: 3041 ClientToServer: CMSG_CHAT_MESSAGE_SAY (0x1154) Length: 36 ConnIdx: 0 Time: --/--/----18:27:01.000 Number: 84 Language: 1 (Orcish) Message: Mind flay total duration:3.041 ServerToClient: SMSG_CHAT (0x2026) Length: 61 ConnIdx: 0 Time: --/--/----18:27:01.000 Number: 85 Type: 1 (Say) Language: 1 (Orcish) GUID: PLAYER -- PLAYER -- PLAYER -- PLAYER Constant time: 0 Sender GUID: PLAYER -- PLAYER -- PLAYER -- PLAYER Text Length: 31 Text: Mind flay total duration:3.041 Chat Tag: 0 (None) Clipping was performed ingame at 0.8seconds remaining, with 0.1s of variance due to latency. The chat messages you see in the sniff are weakaura triggers that log the following Lua code: `select(6, UnitDebuff("target", 1))` To implement this, you must: - Send CHANNEL_UPDATE with duration 0 on recast (only when clipping) - Send CHANNEL_UPDATE with extended duration after SPELL_GO - **Never** remove the aura, just update its duration And finally this is my implementation from a few years ago https://github.com/The-Cataclysm-Preservation-Project/TrinityCore/pull/117 |
|
Bad link, my link should have been https://github.com/The-Cataclysm-Preservation-Project/TrinityCore/pull/117/files#diff-3bc4fed9fddf12c9bf4b42c47f58a3c3f1637d3732ec503801881e151c3e4bf2R2867 Most of the remainder of that merge request is useless because it implements CATACLYSM DOT HASTE SCALING, which is NOT A THING IN LEGION. See issue 0027577 |
|
s/27577/27571 |
|
апдейт? |
|
можно, наверное, просто забить на клип, 4 года уж скоро отмечать))0 |
Date Modified | Username | Field | Change |
---|---|---|---|
2019-12-06 22:22 | rJLyTTocTb | New Issue | |
2019-12-06 22:22 | rJLyTTocTb | Status | new => assigned |
2019-12-06 22:22 | rJLyTTocTb | Assigned To | => deadinside |
2019-12-07 00:21 | deadinside | Status | assigned => acknowledged |
2019-12-07 11:11 | rJLyTTocTb | Note Added: 0018360 | |
2019-12-07 13:51 | deadinside | Note Added: 0018376 | |
2019-12-07 13:52 | deadinside | Assigned To | deadinside => Ghost |
2019-12-07 13:52 | deadinside | Status | acknowledged => confirmed |
2020-01-12 19:38 | rJLyTTocTb | Note Added: 0020963 | |
2020-01-14 01:14 | Sun of a Bit | Assigned To | Ghost => Sun of a Bit |
2020-01-14 01:14 | Sun of a Bit | Status | confirmed => resolved |
2023-09-14 02:26 | godxx | Relationship added | related to 0027631 |
2023-09-14 02:41 | godxx | Assigned To | Sun of a Bit => Ghost |
2023-09-14 02:41 | godxx | Status | resolved => confirmed |
2023-09-14 02:41 | godxx | Resolution | open => reopened |
2023-09-14 02:41 | godxx | Additional Information Updated | View Revisions |
2023-09-16 09:57 | godxx | Relationship added | related to 0015110 |
2023-10-04 18:30 | wrptn3 | Note Added: 0072746 | |
2023-10-04 18:34 | wrptn3 | Note Added: 0072747 | |
2023-10-04 18:38 | wrptn3 | Note Added: 0072748 | |
2023-11-07 12:05 | kikotd | Note Added: 0073281 | |
2023-11-07 14:59 | rJLyTTocTb | Note Added: 0073285 |