Dromok Опубликовано 10 часов назад Опубликовано 10 часов назад Только что, r0z1x сказал: - Тики дота (бит 19) - Reckoning мимо, как и разбирали раньше. - Сам факт наложения дота (бит 17 или 13) — это нормальный спелл-хит, и по флагам он попадает под Reckoning. супер, спасибо! именно то что хотел узнать. ты прав, что не надо всем просящим очень подробно расписывать кухню разработки, но в некоторых сложных кейсах иногда действительно это полезно сделать, чтобы снять все сомнения в правильном подходе. радует, что появился человек способный иногда это делать, пусть и без большого желания. всех благ, быть добру
Expo Опубликовано 10 часов назад Опубликовано 10 часов назад 1 hour ago, r0z1x said: Вы можете не тагать генсена – на такие вопросы вам отвечать буду я. To any damage, including campfire/environmental – это формулировка со страницы обсуждения, а не из самой статьи, и относилась она скорее к ванильной крит-версии; написана неточно. Сама статья Wowpedia формулирует аккуратнее, по тултипу: after being hit by any damaging attack – ключевое слово attack. В движке WoW attack (событие, несущее proc-флаги получения урона) – это прямой удар: мили/рендж-свинг, инстант-спелл, прямой нюк. Периодический урон (DoT-тики) такими флагами не помечен – поэтому он не триггерит on-being-hit проки, к которым относится и Reckoning. То есть наблюдение из видео с офа верное: доты Reckoning не набивают. Это согласуется и с формулировкой таланта в 2.0.1 (TBC): прок навешивает заряды, которые тратятся на следующие weapon swings – вся механика крутится вокруг событий атаки, а не вокруг любого источника урона. Флаги получения урона в движке, periodic – отдельный флаг, не attack. Флаг Значение Что это PROC_FLAG_TAKE_MELEE_SWING 0x00000008 мили-автоатака PROC_FLAG_TAKE_MELEE_ABILITY 0x00000020 мили-способность оружием PROC_FLAG_TAKE_RANGED_ATTACK 0x00000080 выстрел PROC_FLAG_TAKE_RANGED_ABILITY 0x00000200 рендж-способность PROC_FLAG_TAKE_HARMFUL_ABILITY 0x00002000 вредная способность (dmg class none) PROC_FLAG_TAKE_HARMFUL_SPELL 0x00020000 прямой вредный спелл PROC_FLAG_TAKE_HARMFUL_PERIODIC 0x00080000 бит 19 — DoT/HoT PROC_FLAG_TAKE_ANY_DAMAGE 0x00100000 бит 20 — любой урон Колонка procFlags = 139944 (для Reckoning), разбивка на флаги. Слагаемое Флаг 0x00008 TAKE_MELEE_SWING 0x00020 TAKE_MELEE_ABILITY 0x00080 TAKE_RANGED_ATTACK 0x00200 TAKE_RANGED_ABILITY 0x02000 TAKE_HARMFUL_ABILITY 0x20000 TAKE_HARMFUL_SPELL = 139944 (0x222A8) → Reckoning Побитовая разбивка procFlags = 139944. Бит Значение Флаг 20 0 TAKE_ANY_DAMAGE — не входит 19 0 TAKE_HARMFUL_PERIODIC — доты не прокают 18 0 — 17 1 TAKE_HARMFUL_SPELL 16 0 — 15 0 — 14 0 — 13 1 TAKE_HARMFUL_ABILITY 12 0 — 11 0 — 10 0 — 9 1 TAKE_RANGED_ABILITY 8 0 — 7 1 TAKE_RANGED_ATTACK 6 0 — 5 1 TAKE_MELEE_ABILITY 4 0 — 3 1 TAKE_MELEE_SWING 2 0 — 1 0 — 0 0 — Проверка разменом, вычитаем старшие степени двойки. Вычитание Остаток Бит 139944 − 131072 (2^17) 8872 17 8872 − 8192 (2^13) 680 13 680 − 512 (2^9) 168 9 168 − 128 (2^7) 40 7 40 − 32 (2^5) 8 5 8 − 8 (2^3) 0 3 Та же логика на пальцах – задача школьной программы. Представьте, что 139944 – это кучка денежек, и разменять её можно только купюрами особого вида: 1, 2, 4, 8, 16, 32… (каждая следующая вдвое больше). Каждая така бит. Правило размена: всегда берём самую крупную купюру, которая ещё помещается, откладываем её и смотрим, сколько осталось. С остатком повторяем. Было 139944. Самая крупная подходящая купюра – 131072. Отложили. Осталось 8872. Из 8872 берём 8192. Осталось 680. Из 680 берём 512. Осталось 168. Из 168 берём 128. Осталось 40. Из 40 берём 32. Осталось 8. Из 8 берём 8. Осталось 0 – всё разменяли. В итоге 139944 разменялось на купюры: 131072 + 8192 + 512 + 128 + 32 + 8. Каждая купюра означает один включённый флаг (мили-удар, рендж, прямой спелл и т.д.). Н ни купюры any damage (1048576) в наборе Reckoning нет – значит, от дота и от любого урона заряды не набиваются. У таланта нет флага TAKE_HARMFUL_PERIODIC (0x80000) – DoT-тики – и нет TAKE_ANY_DAMAGE (0x100000) – это сильный абуз и не соответствует видео с офа. Reckoning слушает только прямые удары (мили/рендж свинги и абилки, прямые вредные спеллы), и по битовой разбивке данных не может прокнуть от тика дота. Это ровно то, что видно в видео с офа. Больше я не буду тратить столько времени на объяснение стороны разработки – талант приведён в рабочее состояние. @Expo @Dromok Оч интересно но не понятно.. то оно должно прокать то не должно от дот прокать..Надеюсь генерить это помогала не аишка..Ну кароче я понял, мы будем смотреть куда угодно только не на актаульный клиент и версию. Суперхитрые заключения на безе 1.9,2.0, инфы с пиратского бекенда и тд. То есть то что у тебя тоже самое что на офе? А связь то с селфсперлами где? Проще кароче найти людей на офе: ретрика и лока и посмотреть как все работает...хотя даже после этого наверно ничего не измениться)) Удачки. На счет генсена.. твои ответы и подход я увидел, ничего нового. Но если решаешь только ты, ну что же, геймплей на сервере заиграет новыми красками)
Разработчик r0z1x Опубликовано 9 часов назад Разработчик Опубликовано 9 часов назад 1 час назад, Expo сказал: Оч интересно но не понятно.. то оно должно прокать то не должно от дот прокать..Надеюсь генерить это помогала не аишка..Ну кароче я понял, мы будем смотреть куда угодно только не на актаульный клиент и версию. Суперхитрые заключения на безе 1.9,2.0, инфы с пиратского бекенда и тд. То есть то что у тебя тоже самое что на офе? А связь то с селфсперлами где? Проще кароче найти людей на офе: ретрика и лока и посмотреть как все работает...хотя даже после этого наверно ничего не измениться)) Удачки. На счет генсена.. твои ответы и подход я увидел, ничего нового. Но если решаешь только ты, ну что же, геймплей на сервере заиграет новыми красками) Вам предоставляли актуальное видео, разработка ядра это подтверждает - работоспособность имеет полное соответствие с флагами которые идут при триггере события. Вам привели достаточно доказательств правильной работоспособности, но, она не соответствует вашим ожиданиям - изменять механики по вашему ощущения и ожиданиям никто не будет. Есть пруфы - предоставьте пожалуйста их. Перечитайте тему, в ней их предостаточно.
Рекомендуемые сообщения