Канал для поиска исполнителей для разных задач и организации мини конкурсов
Last updated 2 months, 1 week ago
Supercell сломали Brawl Stars на iOS — теперь он может просто крашнуться в случайный момент. Более того, по какой-то причине, это задело даже Null's Brawl. Возможно, чуть позже я сделаю разбор этой ситуации, но это просто МЕМ какой-то?
Спасибо, Пашка Дуров, вот бы еще звонки не лагали и фейковых каналов было поменьше…
Ой, вас уже 100+ команд зарегистрировалось... до конца регистрации осталось примерно полчаса, но вы еще можете успеть добить до 128 команд (чтобы все успели попасть, иначе сейчас попадут лишь первые 64)?
Ой, вас уже 100+ команд зарегистрировалось... до конца регистрации осталось примерно полчаса, но вы еще можете успеть добить до 128 команд (чтобы все успели попасть, иначе сейчас попадут лишь первые 64)?
Пасхалко в Brawl Stars?
Об этой ошибке мне рассказали еще вчера, когда случайно заметили её в Null's Brawl. Пришлось разбираться...
Краш игры происходит при попытке вызвать Animation::getRunningTime
с this = nullptr. А дальше уже магией реверс-инжиниринга было выяснено следующее: анимация, с которой пыталась работать игра, относилась к LobbyLoopAnim текущего скина петов (крыс) Эша. А такой анимации у них нет?
А почему игра пыталась с ней работать? Предположительно, она загружает анимации петов для всех трех бравлеров, если таковые есть у первого. А у Ларри и Лори они как раз есть. К тому же, это не касается персонажей, у которых петов нет вовсе (например, Колетт). Вот и получается, что в таком случае к ошибке приводит только Эш — у него единственного есть петы, но без нужной анимации?
Данную ошибку можно исправить, просто указав крысам Эша в LobbyLoopAnim что-то вроде KnightPetDefaultIdle (чтобы была хоть какая-нибудь анимация). Именно так я вчера и сделал в Null's Brawl, как временное решение проблемы. Но по-хорошему Supercell стоит не пытаться грузить анимации, которых не должно быть, и не судить об их наличии или отсутствии только по первому персонажу в списке?
Топ-3 новых бага в боях Brawl Stars, которые появились в этом обновлении:
1. Ульта гриффа теперь наносит 100% урона при атаке впритык (в два раза больше!)
2. У Мико в Нокауте 5 на 5 бафается заряд ульты при нанесении урона ультой (а если останется мало человек в команде — то ульта и вовсе может стать бесконечной)
3. Мины Тика от гиперзаряда остаются между раундами в Нокауте (да, и может убить противников сразу после их спавна!)
Да, я нашел всё это, пока работал над обновлением нуля бравлика. И вот теперь думаю, добавлять ли их ради совместимости, или может в следующем тех.перерыве SC их пофиксят...
(да, можете еще на скрин обновы посмотреть)
Ой, давно я ничего не постил??
Ладнааааа, самое время рассказать о каком-нибудь кринжовом баге официального клиента Brawl Stars!
Итак, суть: когда запускаешь поиск людей в команде из 3 или более человек в режимах 5 на 5, поиск мгновенно прекращается. Изначально мне пожаловались на данный баг в Null's Brawl, я проверил — да, воспроизводится, начал с дебаггером в руках смотреть что же происходит...
Как выяснилось, игра шлет LookForGameRoomRequestMessage
(запрос начала поиска людей в команду), и почти сразу после него — CancelMatchmakingMessage
. То есть сама игра отменяет этот подбор, но почему?
Берем IDA в руки и смотрим. И довольно быстро находим следующий код в LookingForATeamMemberPopup.update (см. скрин). Вкратце: игра запрашивает отмену подбора, если в команде >= 3 участников, и если 2 в режиме Дуо ШД?
И это просто эталон какого-то лютого костыля... к которому у меня сразу два вопроса:
1. Почему это вообще делается на клиенте?
2. В TeamEntry
изначально сервером передается максимальная вместимость команды. Почему игра пытается посчитать его сама, так еще и неправильно, не учитывая 5 на 5?
Ответы на эти вопросы мне уже неизвестны... остается только гадать❔
Хотя стоп, а почему этого бага нет в обычном бравле? Что ж, как выяснилось, там он на месте, но официальный сервер может проигнорировать запрос отмены подбора, если он отправлен сразу после начала. Более того, происходит это далеко не всегда. И всё это вызывает еще больше вопросов, если честно...?
Обновляю я тут свои патчи для iOS-версии (да, обнова не за горами), и замечаю, что яд-то теперь может быть выключен и без патчей!
Supercell добавили нативную возможность отключения яда в игре. Более того, флаг выключенного яда (на смещении +208) обновляется значением с сервера каждый тик, что дает больше гибкости: например, выключение яда прямо посреди боя.
Как это будут использовать в оригинальной игре, и будут ли вообще? Я не знаю. Но зато теперь модификатор "Без яда" в Null's Brawl будет полагаться на код игры — а это всегда лучше, чем кастомные патчи?
(неужели supercell следит за нашими фичами? тогда я жду не дождусь режима на 50 игроков в ориге!!)
Пару дней назад кто-то в моем чате предположил, что Brawl Stars написан на JavaScript. Тогда я лишь улыбнулся и ответил, что это не так, и все сделано на плюсах и джяве, но...
Сегодня я увидел ЭТО.
В китайской версии BS теперь НеИрОнИчНо (!) часть кода меню настроек переписана на Java Script. Они даже сделали биндинги к большинству привычных объектов: от LogicDataTables до SettingsLanguageScreen.
Безумие? Именно, ведь еще они обернули это всё в React.JS! Теперь я думаю, что видел в этой жизни всё...
А ведь представьте, сколько ресурсов было затрачено, чтобы сделать такую прослойку из натива в JS? А все ради того, чтобы заменить этот самый прекрасный натив на скрипты сомнительного качества...
Канал для поиска исполнителей для разных задач и организации мини конкурсов
Last updated 2 months, 1 week ago