Баги и абузы Dota 6.83d

Явные баги


Я ухожу красиво
Команда из 4 представителей не лучшей части СНГ сливает катку? Оспаривают твое превосходство? Хотят птс, но не заслуживают их? Есть возможность уйти красиво! Просто напиши перед выходом -disablehelp, и твои предметы никто не сможет подобрать с земли! Проблема, конечно, в том, что кто-нибудь может догадаться переложить их в самого себя прямо с героя. Но любой другой способ обречен на неудачу, так что лишним не будет.

Экстренный выход
 Фантом может экстренно завершить игру, использовав прыжок Doppelganger за пределы карты. В некоторых случаях придется покрутить камерой, чтобы суметь указать точку за картой. Но, как только точка найдена, игра аварийно завершится. Главное — не спалиться, что ты этим занимаешься.

Читать дальше →

99 маленьких багов в коде: продолжение

Эх, очень давно не писал блоги. Времени нет, еще и патчи один охенней другого, да и багофиксы становятся болезненными и долгими. Однако тихонько прошел год с момента старта проекта, и карта уже распространилась на множестве локальных платформ. Поэтому, в выходной день, можно немного рассказать о провалах. А они у меня есть!

Читать дальше →

Нож в спину от варкрафта, или искусство кэширования

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

Всё прошло хорошо — вери изи триггеры, никакой высшей математики, на каждую стандартную волну (лина магнус баньша ) — фейковая для каста, настоящая у дамми. Оно работало без проблем, даммик в точности повторял приказ и осечек быть не могло. Я знал про теоретическую возможность даммика не суметь бросить волну, если игрок отдал приказ бросить волну в самого себя, но на практике этот кейс тоже был учтен и не представлял большого интереса — часто ли щелкают на своего героя?

Пару репортов с нерабочими волнами я списал именно на тот случай, когда даммик по каким-то причинам не сумел бросить заклинание. Подумал, что бросок пошел на скалы. Смотреть не посчитал нужным — были и более заметные баги, и более частые. И только когда карта вышла на ргц, я понял, что это серьезная проблема, и что мало репортов не значит «редкий». Кроме того, ульта SF тоже использовала фейковые волны, и они тоже иногда не работали.

Селфи драколича, по мнению игроков за СФа или лину

В статье описано, как был диагностирован баг и что он из себя представляет.


Читать дальше →

Кстати, о вин хаке

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

Читать дальше →

Winhack и с чем его едят

В 2008-2009 гг дота набрала сурьезную популярность, и встал вопрос — как следить за ней? Формат карт варкрафта подразумевает разворачивание событий от старта и до самого конца, без необходимости что-то сохранять в процессе. Кликнул в XY, отдал приказ X в юнита Y — ничего из этого дублировать в реплей не нужно, но и узнать о событии аналогично нельзя. А хотелось как-то автоматизировать процесс получения инфы о КДА, героях, артефактах. Тогда и придумали использовать для этого функцию SyncStored*. (* = Integer/String/etc, формат данных).

Читать дальше →

6.81d: фишки и уточнения

Вместе с организацией «Никто не знает» и её представителем Kuarinofu мы записали клип «Баги, фичи, абузы, интересности, приколы, невероятные приключения в DotA 6.81d»



Смотрим, комментируем, ставим пальцы вверх.