Report ID | 8029 | Title | Auto Shot cast |
Product | Hunter | Status | Nové (Severity 0 - None Assigned) |
Report ID #8029: Auto Shot cast
#1 Chealin
Posted 29 April 2012 - 03:15 PM
Toto je největší bug ohledně celé classy hunterů - nejvíce nás znevýhodňuje, maximálně nás trestá za pomalý počítač nebo internet (můj případ) a při rychlejších zbraních tvoří udržení rotace nemožné. O co jde?
Někteří možná neví, že auto shot má 0.5 vteřiny cast. Do patche 2.3 tento cast fungoval jako jakýkoli jiný cast ve hře - když jste doprostřed vycastili Arcane shot, resetoval se a začal se castit znovu = Auto shot byl vypálen později (nebo vůbec, pokud jste např. castili steady shot skrz celých 0.5s). Teď to bude horší na vysvětlení.
Od patche 2.3 se změnil princip funkce castu Auto shotu (CAS). Pokud zmáčknete jakýkoli shot během CAS, vystřelí se až po Auto Shotu. Dále pak, pokud se AS začne castit během Steady Shotu, při vystřelení Steady Shotu se zároveň vystřelí i Auto Shot. Zkusím to trošku naznačit. Bílá AS, červená CAS, zelená SS.
Modelová situace:
Rychlost zbraně: 2,5s
Rychlost castu SS: 1,5s
CAS: neměnný 0,5s.
-,|: 0,1s.
-: cast
|: vystřelení shotu
.: čekání na vystřelení AS
Jak by to mělo fungovat teď, na patchi 2.4.3?
|-------------------------.....|
--------------|--------------|
...s tím, že pokud bych vyzkoušel místo druhého Steady Shotu vycastit vprostřed CAS (červené čárky) zmáčknout např. Arcane, tak se nic nestane, docastí se Auto a pak zároveň vyletí Arcane Shot.
A jak to funguje tady?
|-------------------------.....-----|
--------------|--------------|
...s tím, že jednotlivé mezery jsou ještě modifikovány latencí. Výsledek? Mnohem nižší dps, než by mělo být, když navíc přičteme další 2 bugy, které jsem nahlásil - tedy GCD a pomalý cast SS, navíc oslabený pet - nerfnutý hunter je na světě. Prosím, na kolenou prosím, opravte nás!
EDIT: Navíc je zde fakt, že při castění do AS můžou nastat tyto případy:
Dejme tomu, že rychlost zbraně je 2,5 s a SS zase 1,5 s.
1. SS se začne castit mezi 0.0 s a 1.0 s - SS se vycastí a AS vyletí přesně v 2.5 s - i když samotný cast přesahoval CAS, ten vyprší nejpozději při vystřelení SS a nedochází k žádnému zpomalení.
2. SS se začne castit mezi 1.0 s a 2.0 s - SS se vycastí a AS vyletí zároveň s ním, protože cast přesahoval CAS, který se tím posunul - dochází k malému zpomalení.
3. SS se začne castit mezi 2.0 s a 2.5 s - vzhledem k tomu, že v tuto chvíli již probíhá CAS, nic se nestane, ve 2.5 s vyletí Auto Shot a hned se začne castit SS, takže vystřelí přesně v 4.0 bez ohledu na latency a podobně.
Replies (1 - 19)
#3 Chealin
Posted 30 April 2012 - 08:49 PM
#4 orifox
Posted 03 December 2012 - 07:13 PM
když vykouzlím steadyshot, tak to chvilinku po něm hned vystřelí autoshot...
Oproti tomu, když vykouzlím třeba aimedshot, tak po jeho vystřelení to znovu čeká na swing autoshotu...
Rád bych se vám na to podíval, jenže tomu prostě nerozumím.. nevidím ten rozdíl. Autoshot by měl vyletět prakticky souběžně se steadyshotem?
z combatlogu jsem vyčetl, že autoshot udělí dmg 220-350ms po udělení dmg steadyshotu. (doba letu obou spellů je předpokládám stejná, takže se dá říct že zpoždění autoshotu po steadyshotu je rozhodně méně nez zmíněné půl sekundy...
Jak to můžu ověřit nebo zkontrolovat?
#5 Arlandia
Posted 03 December 2012 - 08:58 PM
viz. http://www.wowblues....2341815639.html
( http://www.ownedcore...-super-dps.html )
takže to byl v podstatě jen jednodenní bug na 2.3.2 a na 2.4.3 již není ^^
This post has been edited by Arlandia: 03 December 2012 - 08:59 PM
#6 Eldesitk
Posted 07 December 2012 - 12:35 PM
Tady je hezky vidět celá mechanika.
Momentálně přemýšlím jak tuhle problematiku vysvětlit.
BTW k tomu bugu : http://z3.invisionfr...ros/ar/t156.htm tady to máš popsáno, s naším problémem to nemá nic společného.
#7 Arlandia
Posted 07 December 2012 - 02:19 PM
tak co naznačuje Chealin, modelovou situací s attack speedem 2,5 a SS 1,5:
0,0s: začne cast steady shot
1,5s: vyletí 1. steady shot
3,0s: vyletí 2. steady shot a s ním by měl vyletět i autoshot?
podle odkazu z Elitejerks by to mělo fungovat takto
když se bude brát v potaz i haste ze steady shotu tak autoshot vyletí opět 0.5s po steady shotu, ale neztrácí se žádný čas od rychlosti zbraně, jelikož při castu 1.3s vychází přesně s autoshot castem na rychlost zbraně na 1.8.. takže tím pádem nedochází k žádnému opoždění navíc.
při attack speedu 2.8s
když si to shrnu, tak jsem z toho pochopila, že autoshot cast time je vždy konstantních 0.5s (neovlivněný haste efektem) a začne se castit vždy po docastění steady shotu (pokud překračuje do cast time autoattacku) a při špatném načasování tím pádem dochází k posunutí dalšího autoattacku
tím pádem tu vidím pouze problém s haste efektem ^^
kdyžtak mě opravte :D (třeba jsem to špatně pochopila..)
This post has been edited by Arlandia: 07 December 2012 - 02:27 PM
#8 Eldesitk
Posted 07 December 2012 - 02:48 PM
Jak tu ukazuje chealin nahoře, při 2 steady shotech, kdy CAS naběhne v průbehu 2. tak se mají vystřelit současně.
#9 Arlandia
Posted 07 December 2012 - 05:54 PM
z čehož vyplývá, že to má nejspíše opravdu fungovat tak jak psal Chealin
(něco z Elitejerks, v podstatě co psal Chealin)
možná by to šlo řešit přes nějakou frontu.. když je 0< cast autoshot <=0.5 a použije se spell, tak by se spell neseslal, ale uložil do fronty a seslal by se až při 0s cast autoshotu (něco na princip lag tolerance na retailu)
This post has been edited by Arlandia: 07 December 2012 - 05:54 PM
#10 Chealin
Posted 07 December 2012 - 06:34 PM
Takže, ehm:
Jo, měl jsem pravdu :D Víceméně jste shrnuli všechno, a díky Eldestíka za mé zastoupení. Situaci, kterou předtím popsala Arlandia, blizzard odstranil s 2.3, ten jednodenní bug způsoboval, že pokud se během CAS zmáčklo více jakýchkoli shotů, všechny vyletěly instantně hned po AS, přičemž další AS ani nebyl posunut a bylo proto možné začít znovu spamovat prakticky cokoli se smrtelnými následky pro kohokoli, kdo v daný moment nebyl hunterem schválen k zůstání naživu. V mých prvních postech je vysvětlena "aktuální" situace.
#11 orifox
Posted 25 December 2012 - 11:04 PM
Problém je v tom, že tu existuje něco jako "diff", případně interval, mezi kterým dochází ke kontrole stavu jednotlivých časovačů.
Ve skutečnosti tedy probíhá toto:
Steady Shot : --------------|--------------| Update : |---|---|---|---|---|---|---|---| MQ autoshot : |---?---?---?---?---?---?-..x...| možná oprava : |---?---?---?---?---?---?-...|
svislé čáry označují proběhnutý děj, pomlčky naznačují časovou prodlevu, otazníky neúspěšné kontroly pro provedení autoshootu (nedoběhl cd) a písmenko X značí místo, kdy sice CD na autoshot doběhnul, ale kvůli castu jiného spellu nemůže autoshoot proběhnout.
Rychlost průběhu na řádku "update" jsem si vycucal z prstu. slouží jen pro znázornění příčiny problému.
Tím se vysvětluje i to, že interval mezi udělením dmg steadyshotu a autoshotu (které oba letí stejnou dobu, takže jde v podstatě o interval mezi jejich výstřelem) není konstantní ale náhodně se mění, řádově v hodnotách desetin sekundy.
Řádek s možnou opravou naznačuje to, co jsem schopný spáchat, protože mi to tak už doma běží. Znamená to však, že k výstřelu autoshootu dochází prakticky okamžitě zároveň s výstřelem steady shotu. Nevidíte tedy dva šípy ale jen jeden. (respektive jsou tam dva, ale protože letí skutečně naráz, vidíte jen jeden)
Trochu taky musím opravit chealina v ohledu aplikace cast auto shot - ten se totiž zcela zřejmě aplikuje jen při začátku autoshotu - při prvním výstřelu. Při dalších již zřejmě není nijak brán v potaz.
No a nakonec jsou tu reference, které ukázala Arlandia... ty pro změnu tvrdí, že by to mělo fungovat ještě hůř než jak to jede tady - tedy že CAS by měl zablokovat jakýkoliv spell který v jeho průběhu bude kouzlen a v případě že je něco kouzleno, měl by sám počkat...
Takže teď je to na vás... aby jste mi řekli jak to teda chcete a proč si myslíte že zrovna tak je to správně :D
This post has been edited by orifox: 25 December 2012 - 11:09 PM
#12 Eldesitk
Posted 26 December 2012 - 01:16 PM
Máš to jako na kotvě na vleku. Autoshotu trvá 0,5s než si jí strčí pod zadnici a odjede k bosovi.
Jak funguje Mystiq fronta na vlek: Během těch nastupovacích 0,5s si to přifrčí steadyshot, shodí autoshot z kotvy na zem, 1,5s si cpe kotvu pod zadek a pak jede, mezitím se autoshot hrabe ve sněhu a podaří se mu chytit další kotvy po steadyshotu (s tou tvojí check prodlevou).
Jak to funguje na ofi : Během těch nastupovacích 0,5s si to přifrčí steadyshot, vidí že je autoshot hezká brunetka, tak se svezou spolu, s tím že steady shot si bude 1,5s nasazovat prkno. To samé při arcane shotu. Bohužel při příjezdu bukvy Aimed shotu tenhle Aimed přejede hezkou brunetku a shodí ji do sněhu.
Při příjezdu třeba 0,6s před nástupem brunetky (Autoshotu) ji všichni předběhnou a posunou o tuhle 0,6s za svůj cast time (arcane shot je instant tak si ho brunetka ani nevšimne a nastupuje si podle sebe)
#13 orifox
Posted 26 December 2012 - 01:43 PM
To snad neee. Pokud by to tak bylo, tak co když to nebude 0,6 sec ale třeba 1 sec? nebo 1,4 sec? To by se taky přesouvalo? to by pak vlastně znamenalo, že by při stálém opakování Steady nikdy nedošlo k vycastění Auto, protože by se ten zbývající čas stále posunoval a posunoval..
nejvhodnější vysvětlení které teda mám je, že:
- pokud dojde ke konci Autoshot timeru během castu Steadyshotu (nebo i něčeho jiného?), vystřelí se oba naráz. (uplně naráz nebo tam má být nějaká prodleva?)
- pokud dojde během poslední 0,5 sec před výstřelem Autoshotu k castu jakéhokoliv jiného spellu(nebo jen steadyshotu a arcane shotu?), bude posunut až za Autoshot.
Jsou tato tvrzení pravdivá? Pokud jo, tak mám asi jasnou představu co s tím a s trochou štěstí budeme ještě tento rok jeden z prvních free serverů s funkční 3:2 rotací pro huntery.
Asi nejlepší popis pro pochopení jsem našel na http://www.sasu-er.o...7302548.25;wap2 , na elitistjerk je pro změnu spousta hezkých obrázků ale ani jeden z nich nepopisuje přesně 3:2 rotaci.
edit: aha, postupně docházím k tomu že je to přesně to, co popisuješ na posledních třech řádcích svého prvního postu. Takže jen pro jistotu - je to tak správně?
This post has been edited by orifox: 26 December 2012 - 02:14 PM
#14 Eldesitk
Posted 26 December 2012 - 03:25 PM
Edit: Promiň za mystifikaci, přesouvá se POUZE cas(0,5s) ten zbytek autoshotu je totálně mimo jakýkoliv pravidla/casty/sněhurky, takže jediný možný rozhození při ukliku je 0,5s.
Proto se na TBC hunter NIKDY nejel na haste (nevycházelo by ti to se steady shotem, proto ho potřebuješ mít o 0,5s rychlejší, abys tam měl nerušenej CAS)
až tohle bude opravený (normální žůžas jestli teda budem první) tak pak už bude jedinej problém s steady shotem (ale to je v jinym vláknu)
A orifoxi vítej mezi top huntery :D protože víš už konečně jak to funguje i z tý složitější stránky
This post has been edited by Eldesitk: 26 December 2012 - 03:32 PM
#15 orifox
Posted 26 December 2012 - 03:29 PM
Jde o to že třeba ta stránka na kterou jsem odkazoval píše, že steady a auto můžou vystřelit naráz. Ty tu teď zase přicházíš s teorií, že naráz nevystřelí ale že bude muset naběhnout znovu CAS. Tedy aspoň já ten tvůj text chápu tak, že to popisuješ přesně opačně než chealin. Tedy tak, jak to v prvním příspěvku označil jako bugnuté.
Dokud nebudu mít jistotu že to chápu dobře, nebudu do toho nijak šahat.
#16 Eldesitk
Posted 26 December 2012 - 04:08 PM
Tady máš jak má vypadat 3:2, já tam těch 0,5s vidím.
+
http://www.google.cz...355534169,d.Yms
tady máš spreadcheet který počítá věškerý dmg huntera. v listu ROTATIONS sou časově rozepsaný jednotlivý střely u rotací (všech) naklikni si 3:2 a podívej se že je tam 0,5s mezera.
Taky se v elitisjerks baví o tom že je možný že je tenhle cas ovlivněn hastem, ale nikdo to neprokázal.
Nevím kde vzal chealin info že tam ta mezera být nemá.
Edit2: Ten tvůj odkaz. Nevím přijde mi spíš jako názorný vysvětlení co je to 3:2 s tím že mu nechtěli motat hlavu tím že se tam ten autoshot spozdí. Větší váhu přikládám diskuzi na jerksu kde je víc přispěvatelů než jen 2 a taky tomu spreadcheetu, který na ofiku až zázračně odpovídal danýmu dps (a že to je rozdíl jestli tam 0,5s je, nebo není).
This post has been edited by Eldesitk: 26 December 2012 - 04:49 PM
#17 Eldesitk
Posted 04 February 2013 - 04:34 PM
patch 2.3 (listopad 2007)
diskuze začíná zde : http://elitistjerks....llustrated/p12/
Dále vypíšu pouze posty týkající se problému.
post 174
-první zmínka o ,,rozbitém´´ autoshotu
post 189
-přišli na to že autoshot už není zpomalován ,,specielními´´ střelami
- nějaký frantík dosahuje vyšího dps pouhým mlácením do macra (první indicie ,,čekajícího SS´´)
post 192
-potvrzení 0,5s fronty na spely před vystřelením Autoshotu
Následují zjištění bugu kdy bylo možné střílet multishot Xkrát za sebou, to nás nezajímá.
post 200
-vysvětlení proč je tohle ideální pro BM huntery a 1:1 macro, také zmínka o SS za 1,1s což tu na mystiqu nefunguje.
post 207
-rozborka combat logu
-zjištění že arcane shot vyletí STEJNĚ s steady shotem
-mustlishot má 0,5s cast, proto vyletí po 0,5s
-pročtěte si to, je tam combatlog a vysvětlení
post 210
-přímá zmínka o spell frontě, kde si server zapamatuje spell a pak ho co nejdřív vyšle.
-bez zmínce o dalším fungování
post 219
-podívat se na combatlogy (zdánlivě nikomu nedávají smysl, ale při zpětném pohledu a uvědomnění že střely chvíli letí jim začíná docházet že na spell frontě něco bude).
post 221
-než se začnou vrtat do itemizace chtěli by vyjádření ,,blue postu´´ (od blizzu)
-tímto blizzard částečně odstranil nutnost vybírat si zbraň podle speedu (že to těm šikulům trvalo že?)
post 223
-zde popisují že při castu 2 steady po sobě vyletí zároveň s druhým steady i autoshot
-podle tohohle by tedy autoshot už neměl 0,5s čekat po poslední střele než vystřelí, ale pokud se steady shot stihne začít cástit před 0,5s frontou tak mají vyletět najednou.
post 261
-znovu potvrzení 0,5s fronty
- teď tu probírají že to blizzard celé předělal do staré podoby (kvůli odstranění buglých instantů)
- někteří se loučí s touhle featurkou, ale
post 275
-jasně popsána mechanika fronty
-GCD spellu se začíná počítat už v době kdy se na spell kliknulo a byl uložen do fronty
post 277
-potvrzení předchozího postu
post 200
-potvrzení fronty
-náznak nějaké mini fronty u casterů (není předmětem)
post 309
-potvrzení započetí GCD při zakliknutí do fronty před AS.
post 337+8
-potvrzení fronty
-potvrzení GCD při zakliknutí do fronty
post 349
-začínají se věnovat problematice steady shotu castěného přes autoshot
post 366
-popis chování autoshotu a steady shotu mezi sebou
-pokud je castěn SS přes vystřelení AS je autoshot vystřelen až 0,5s po SS
spousty dotazů netýkajících se problému.
post 506
-zde se píše že i přes to že by autoshot měl vystřelit až 0,5s PO docástění 2. steady shotu, děje se tak téměř současně. - zatím jediná nejasná věc.
Post 551
-Schema s tím že autoshot má po SS mezeru než vystřelí - vyvrací minulý post
-hned následující post potvrzuje to že hidden cast time se posouvá ZA steady shot při překrytí.
Shrnuto a podtrženo:
Fronta na spelly 0,5s přes vypuštěním autoshotu. (dále CAS)
Při castu spellu PŘED začátkem CAS se CAS posune za spell, to umožňuje dát 2 SS za sebe maximálně (při uber štěstí 3)
bráno z ElitisJerks. Klidně si to pročti celý :D po 5h mi z toho už ebe a moh sem něco vynechat.
#18 Elenae
Posted 04 February 2013 - 10:09 PM
Tak, co jsem z toho pochopil a vyčet jednoduše.
Co je rozbitý - Cast čehokoliv v CASu CAS zresetuje, a ten se pak začne castit znovu, po konci poslední akce (pohyb, cast něčeho jinýho), nejspíš s oním diffem na ,,update".
Jak by to mělo fungovat - Cokoliv, co se má začít castit v CASU (poslední půl vteřině castu autoshotu, případně už posunutý předchozím castem), se posune, a začne se to castit až po výstřelu autoshotu. Samozřejmě pohyb CAS posune tak jak tak.
Jak to stojí a běží teď, když budu spamovat do nekonečna steady shot, nikdy nevystřelim autoshot. Do dneška sem nevěděl, že poslední patche na TBC měly odstranit onen ,,strach z ukousnutí autoshotu", kdy se člověk bojí, aby další steady shot nezmáčkl moc brzo a o autoshot tím nepřišel (respective si ho neposunul až o celý další ss dál).
Na offi by podle tohohle, mělo fungovat makro pro BMhuntera /cast Kill Command /castsequence Steady shot, !Auto shot. Tohle makro by mělo teoreticky fungovat i tady, protože přimo nakazuje vystřelit autoshot, a až pak castit steady shot další. To by mělo obejít onen CAS problém, jenže - ted se ke slovu dostane nejspíš zase onen diff z ověřování, jestli už poslední akce skončila.
Tedy Mystiq praxe: Pokud budu tohle makro fest rychle spamovat, nebo si pomůžu přes AHK, tak mě (nejspíš onen update) posune ve většině případů výstřel aa ještě o kus dál. Věc druhá, i tady se projeví onen CAS, protože když mě doletí nějaký předchozí shot k cíli v nepravou chvíli a procne Kill Command do CASu, tak ho také zresetuje a o ten kousek + diff protáhne výstřel autoshotu.
Sečteno a podtrženo, momentálně vyhrává handweave, hunter s nejrychlejším netem a rukama, kterej umí nejlíp zmáčnout steadynu ne moc brzo, ale co nejdřív :)
Btw - tohle bylo asi víc pro mě. Taková korekce, jestli jsem tenhle topic pochopil správně, tak mě popř. opravte prosím.
Edit: Gramatika..