Jump to content

ГКД


The_Zealot

Recommended Posts

1. Разное по длительности гкд от спеллов

https://db.pandawow.me/?spell=102351

https://db.pandawow.me/?spell=88423

https://db.pandawow.me/?spell=5211

 

2. У всех этих способностей в БД значение ГКД 1.5 секунды, как и у других. Но почему-то в игре эти абилки вызывают откат ощутимо дольше, чем все остальные.

 

3.

тайминг 5:08 - 5:12

https://db.pandawow.me/?spell=88423 и https://db.pandawow.me/?spell=48438 вызывают одинаковый откат всех способностей

 

4. 10.09.22

5. х5

6. 4/10

 

Возможно, что имеет такую же проблему смена формы, но это не точно. Тестов было мало, поэтому непонятно.

https://db.pandawow.me/?spell=768

https://db.pandawow.me/?spell=5487

Link to comment
2. У всех этих способностей в БД значение ГКД 1.5 секунды' date=' как и у других. Но почему-то в игре эти абилки вызывают откат ощутимо дольше, чем все остальные.[/quote']

Макро для проверки ГКД

/run local _,d = GetSpellCooldown(61304); print(d)

 

Как ползьзоваться: прожимаешь определенный спелл и во время последующего ГКД прожимаешь/спамишь макро. В чате циферки. Если прожать просто так - выдаст 0.

Хаста урезает ГКД, поэтому раздевайся, прежде чем тестить.

 

upd. пара первых статей с гугла, если понадобятся

https://wowwiki-archive.fandom.com/wiki/Cooldown

https://wowpedia.fandom.com/wiki/Cooldown

Edited by Ink_Forever
Link to comment
Макро для проверки ГКД

/run local _,d = GetSpellCooldown(61304); print(d)

 

Вот за вот это спасибо. Но на кой было написано все остальное, я немного не понял.

Ладно, я объясню еще проще, а теперь даже на цифрах с помощью макроса.

 

При наличии хасты в 48,71% практический все способности дают гкд другим способностям 1.008, кроме https://db.pandawow.me/?spell=5487, https://db.pandawow.me/?spell=768, https://db.pandawow.me/?spell=783, https://db.pandawow.me/?spell=5211, https://db.pandawow.me/?spell=99, https://db.pandawow.me/?spell=102793, https://db.pandawow.me/?spell=88423, https://db.pandawow.me/?spell=102351

 

Голым ты юзай, в пвп шмоте, в ПвЕ шмоте - неважно. От этих способностей всегда гкд 1.5 секунды.

Даже если скорость без всяких бафов 8061 (18,97%), то гкд 1.26, а от вышеперечисленных точно так же 1.5.

Link to comment

там ещё можно уйти в диминишинг гкд когда хаста его не уменьшает больше.

 

На фдк например

Link to comment
  • Developers

От хасты гкд снижается у магических заклинаний, у которых DamageClass = 1 (SPELL_DAMAGE_CLASS_MAGIC).

У https://db.pandawow.me/?spell=88423 , https://db.pandawow.me/?spell=102351 и смен форм DamageClass = 0 (SPELL_DAMAGE_CLASS_NONE)

У https://db.pandawow.me/?spell=5211 DamageClass = 2 (SPELL_DAMAGE_CLASS_MELEE)

Собственно, поэтому и разница в гкд. Вообще, гкд рассчитывается на уровне клиента, т.е. сервер не влияет на гкд, лишь повторяет логику клиента, чтобы время совпадало.

там ещё можно уйти в диминишинг гкд когда хаста его не уменьшает больше.

 

На фдк например

У дк по дефолту 1 сек гкд, от хасты никак не зависит.

Link to comment
От хасты гкд снижается у магических заклинаний, у которых DamageClass = 1 (SPELL_DAMAGE_CLASS_MAGIC).

У https://db.pandawow.me/?spell=88423 , https://db.pandawow.me/?spell=102351 и смен форм DamageClass = 0 (SPELL_DAMAGE_CLASS_NONE)

У https://db.pandawow.me/?spell=5211 DamageClass = 2 (SPELL_DAMAGE_CLASS_MELEE)

Собственно, поэтому и разница в гкд. Вообще, гкд рассчитывается на уровне клиента, т.е. сервер не влияет на гкд, лишь повторяет логику клиента, чтобы время совпадало.

 

Чет у меня вопросов стало еще больше. Откуда берется класс для каждой способности? Где я это могу узнать и посмотреть? Почему тогда https://db.pandawow.me/?spell=774 на местной бд и на вовхеде все так же имеет гкд 1.5 секунды, а здесь по факту 1? Клиент не может рассчитывать гкд без запроса на сервер, так как на него напрямую влияет хаста (даже при условии, что не на все способности), которая на стороне клиента не хранится, потому что в ином случае это просто дырень. Что будет делать сервер, если расчетные данные со стороны клиента не будут совпадать с серверными? Повторение одной и той же логики в двух разных местах - это признак говнокода. Я понимаю, что от близзард можно ожидать чего угодно, но это не отменяет предыдущего факта.

Link to comment
  • Administrators
Клиент не может рассчитывать гкд без запроса на сервер' date=' так как на него напрямую влияет хаста (даже при условии, что не на все способности), которая на стороне клиента не хранится[/quote']

:FeelsWowMan:

Есть в клиенте и хаста, и расчет гкд.

 

Повторение одной и той же логики в двух разных местах - это признак говнокода.

В данном случае нет, -2 пакета на каждый каст спелла игрока.

 

Откуда берется класс для каждой способности?

ДБЦ файлы клиента.

 

Почему тогда Омоложение на местной бд и на вовхеде все так же имеет гкд 1.5 секунды

БД еще очень сырая.

 

Что будет делать сервер' date=' если расчетные данные со стороны клиента не будут совпадать с серверными?[/quote']

Ничего. Если на стороне сервера гкд еще есть, а в клиенте нет, то каст не пройдет. Если гкд есть на стороне клиента, то он сам не даст кастануть.

Link to comment
  • Developers
Почему тогда Омоложение на местной бд и на вовхеде все так же имеет гкд 1.5 секунды' date=' а здесь по факту 1?[/quote']

У рдру есть пассивка https://db.pandawow.me/?spell=33886

Клиент не может рассчитывать гкд без запроса на сервер' date=' так как на него напрямую влияет хаста (даже при условии, что не на все способности), которая на стороне клиента не хранится, потому что в ином случае это просто дырень[/quote']

Значение хасты отправляется с сервера, после чего хранится в клиенте.

Link to comment
Есть в клиенте и хаста' date=' и расчет гкд.[/quote']

 

А расчет один и тот же, как написал мне Нефф, или он все таки разный?

 

В данном случае нет' date=' -2 пакета на каждый каст спелла игрока.[/quote']

 

Они одинаковые? Практической применение тогда какое у этого? Или все такие они разные? А если они разные, значит сторона клиента не должна быть "препятствием", ибо основной расчет - серверный.

 

ДБЦ файлы клиента.

Конкретнее.

 

Ничего. Если на стороне сервера гкд еще есть' date=' а в клиенте нет, то каст не пройдет. Если гкд есть на стороне клиента, то он сам не даст кастануть.[/quote']

Вывод - серверу плевать на сторону клиента. Вопрос. На кой это надо и причем тут вообще тогда клиент? Как клиент мне может не позволить сделать каст, обработка которого не должна быть вообще на его стороне? Вам самим это не кажется каким-то бредом? Ну ладно, предположим, что может, но я с таким же успехом это могу обойти. Возвращаемся к изначальному вопросу, на кой это надо и причем тут тогда клиент?

 

ЗЫ. Я все еще жду https://forum.pandawow.me/showthread.php?t=263666

https://cp.pandawow.me/armory/hide.html - причина была и есть в этом?

 

У рдру есть пассивка Быстрое омоложение

Тут зря быканул, согласен.

 

Значение хасты отправляется с сервера' date=' после чего хранится в клиенте.[/quote']

Клиент тогда должен ее тянуть постоянно, ибо любой прок/баф/дебаф и прочее - это изменение значения. То, что может потенциально храниться в клиенте не должно использоваться в расчетах, которые как-то влияют на серверную часть. Клиент вообще на сервер влиять не должен. Это же очевидно.

Link to comment
  • Developers
Вывод - серверу плевать на сторону клиента. Вопрос. На кой это надо и причем тут вообще тогда клиент?

Можно предположить, что сделано так для того, чтобы убрать влияние пинга. Если бы для срабатывания гкд надо было ждать ответа от сервера, то наверно выглядело бы это хуже, чем сейчас, особенно если пинг большой.

Клиент тогда должен ее тянуть постоянно' date=' ибо любой прок/баф/дебаф и прочее - это изменение значения.[/quote']

Так и работает. При любом изменении хасты, сервер отправляет клиенту пакет с новым значением. Иначе в статах она бы никак не менялась.

То' date=' что может потенциально храниться в клиенте не должно использоваться в расчетах, которые как-то влияют на серверную часть. Клиент вообще на сервер влиять не должен. Это же очевидно.[/quote']

Клиент и не влияет на серверную часть. Мы лишь даем знать клиенту, сколько у нас хасты, а на сервере ее значение никак не зависит от клиента.

  • Like 1
Link to comment
Можно предположить' date=' что сделано так для того, чтобы убрать влияние пинга. Если бы для срабатывания гкд надо было ждать ответа от сервера, то наверно выглядело бы это хуже, чем сейчас, особенно если пинг большой.[/quote']

 

Так и работает. При любом изменении хасты' date=' сервер отправляет клиенту пакет с новым значением. Иначе в статах она бы никак не менялась.[/quote']

 

Это значит, чтобы просчитать гкд, я вынужден вытянуть миллион данных с сервера, что как бы увеличивает размер того самого пакета для расчетов, не? А это так-то тоже не очень хорошо и может быть серьезной проблемой при высоком пинге. Но ладно, пускай так. Это не столь важно.

 

 

Клиент и не влияет на серверную часть. Мы лишь даем знать клиенту' date=' сколько у нас хасты, а на сервере ее значение никак не зависит от клиента.[/quote']

Это и так очевидно, вот только это лишь немного противоречит вот этому:

Вообще' date=' гкд рассчитывается на уровне клиента, т.е. сервер не влияет на гкд, лишь повторяет логику клиента, чтобы время совпадало.[/quote']

 

Поскольку товарищ Дедмовс не может мне отвечать конкретно, я повторю свой вопрос, но уже Вам. Где я могу узнать DamageClass для каждой способности? Мне просто это кажется немного странным, что для диспела он SPELL_DAMAGE_CLASS_NONE, как будто он не является заклинанием, но при этом под любым салом его использовать нельзя, в то время как решифт, щит кенария или мили способности, вроде баша, юзаются спокойно.

Link to comment
Где я могу узнать DamageClass для каждой способности?

Как вариант из спеллворка под панду п.с в спеллворке не всегда верная информация и не точная иногда может быть.

https://dropmefiles.com.ua/ua/mLyH

 

 

image.png

Link to comment
  • Developers
Это значит' date=' чтобы просчитать гкд, я вынужден вытянуть миллион данных с сервера, что как бы увеличивает размер того самого пакета для расчетов, не?[/quote']

С сервера никакие данные не отправляются для расчета гкд.

Поскольку товарищ Дедмовс не может мне отвечать конкретно' date=' я повторю свой вопрос, но уже Вам. Где я могу узнать DamageClass для каждой способности? Мне просто это кажется немного странным, что для диспела он SPELL_DAMAGE_CLASS_NONE, как будто он не является заклинанием, но при этом под любым салом его использовать нельзя, в то время как решифт, щит кенария или мили способности, вроде баша, юзаются спокойно.[/quote']

Выше скинули спеллворк, там можно посмотреть.

По поводу возможности использовании под салом, за это отвечает PreventionType.

У щита кенария PreventionType = 4 (SPELL_PREVENTION_TYPE_NO_ACTIONS) https://i.imgur.com/N1HGDjm.png (вроде бы деттеренс ханта и аналоги)

У баша PreventionType = 2 (SPELL_PREVENTION_TYPE_PACIFY) https://i.imgur.com/djVnRFG.png (боп паладина)

А у диспела PreventionType = 1 (SPELL_PREVENTION_TYPE_SILENCE) https://i.imgur.com/4v8nOGA.png

 

Проверка возможности юзать тот или иной спелл под сайленсом/другим контролем так же реализована на уровне клиента.

Link to comment
При любом изменении хасты' date=' сервер отправляет клиенту пакет с новым значением.[/quote']

 

С сервера никакие данные не отправляются для расчета гкд.

 

Как вы умудряетесь писать в двух своих сообщениях две противоположные вещи постоянно? Вот каким образом?

 

 

Выше скинули спеллворк' date=' там можно посмотреть.[/quote']

 

Кроме украинского домена его найти где-нибудь можно в чистом виде? Не в виде целого солюшена с гитхаба, а как вы это делаете с лаунчером - 0 исходников и 1 exe файл.

Link to comment
  • Developers
Как вы умудряетесь писать в двух своих сообщениях две противоположные вещи постоянно? Вот каким образом?

Для расчета гкд используется ранее сохраненная хаста в клиенте. Т.е. я имел ввиду то, что когда спелл уходит на гкд при нажатии, с сервера ничего не отправляется и клиент рассчитывает гкд сам.

Кроме украинского домена его найти где-нибудь можно в чистом виде? Не в виде целого солюшена с гитхаба' date=' а как вы это делаете с лаунчером - 0 исходников и 1 exe файл.[/quote']

Можно по идее в нашу дб на страницу спеллов добавить информацию про DamageClass, так думаю лучше будет, если это действительно нужно.

Link to comment
Кроме украинского домена его найти где-нибудь можно в чистом виде? Не в виде целого солюшена с гитхаба' date=' а как вы это делаете с лаунчером - 0 исходников и 1 exe файл.[/quote']

https://anonfiles.com/R0U0X281y5/spellwork_zip

Тяжело представить с какой ты пещеры вылез раз у тебя нет ВПН

Link to comment
Для расчета гкд используется ранее сохраненная хаста в клиенте. Т.е. я имел ввиду то, что когда спелл уходит на гкд при нажатии, с сервера ничего не отправляется и клиент рассчитывает гкд сам

 

Да понятно, что клиент берет из своей памяти хаст и что-то считает. Но хаста в любой момент может поменяться, а значит что клиент должен прослушивать сервер постоянно и ждать от него прихода новой информации. В общем, неважно. Забыли про клиент-серверное взаимодействие, не об этом речь изначально шла. Раз вы считаете, что ошибок тут нет, то тему можно закрывать.

 

Можно по идее в нашу дб на страницу спеллов добавить информацию про DamageClass' date=' так думаю лучше будет, если это действительно нужно.[/quote']

 

Вот это добренько. Вообще, желательно туда как можно больше информации помещать. Вы же вряд ли это все в ручную делаете все равно, так что не должно быть большой проблемой.

 

Тяжело представить с какой ты пещеры вылез раз у тебя нет ВПН

 

А практическое применение какое у него? Большинство ресурсов, что я использую, его не требуют. Так на кой он мне нужен? Или лишние действия нынче в моде?

Link to comment
×
×
  • Create New...