❌

Normal view

Как немножко обмануть сервер

В прошлых статьях я рассказывал, как "немножко обманывать" игрока и давать ему ощущение естественного поведения игры, про давно известные приёмы, которые широко опробованы в сингловых играх. Но всё меняется, когда появляется сеть и логику приходится разносить между сервером и клиентами, и выясняется, что матч не должен одновременно владеть инвентарём, аккаунтами и прочим хозяйством игры, а компьютер, на котором игра запущена, внезапно... принадлежит игроку, а не разработчику. Если мы по недосмотру доверили клиенту право сообщать серверу, где находится персонаж, сколько у него денег и кого он только что убил, то рано или поздно найдётся человек, который трактует эти права гораздо шире, чем предполагал разработчик.

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

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

Читать далее

Вайб-кодинг вместо унылых ТЗ: как автономные ИИ-агенты ускоряют разработку игр

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

«Как же хорошо, что человечество уже придумало нейросети», — подумали мы в Magnus Tech и полностью отказались от ручного написания текстовых ТЗ для проверки гипотез. Потому что зачем описывать механику буквами, если ее можно быстро навайбкодить? Теперь для тестирования новых фичей мы не пишем таски на десятки страниц, мы собираем черновой прототип на примитивах за пару часов и сразу его тестируем. В результате время от задумки до первого теста сократилось с недель до нескольких часов.

Но чтобы такая схема работала, обычного чат-бота в соседней вкладке браузера недостаточно. Нейросеть должна сама шерстить папки с проектом, ковыряться в скриптах и понимать структуру движка. Чтобы показать, как это устроено на практике, мы поговорили с Иваном Дворяновым, продюсером игрового направления в Magnus Tech. В этой статье делимся его опытом и рассказываем, как мы пустили Claude напрямую в Unity через MCP, почему вайб-кодинг всё равно требует жесткого планирования и в каких задачах лучше не доверяться ИИ, а по старинке работать руками.

Читать далее

Пошаговая стратегия в духе 90-х в одном HTML‑файле: Telegram Mini App, бэкенд за $0 и графика из нейросети

Помните игры, где герой с армией бродит по карте, вербует отряды в городах, осаждает замки и собирает по кусочкам карту следующей земли? Мы сделали такую игру заново и запустили её прямо внутри Telegram. Её не нужно ставить и не нужно регистрироваться: нажал кнопку в боте — и через пару секунд ты уже на карте.

Игра называется «Морвейн». Под капотом — один HTML‑файл без фреймворков, отрисовка на canvas, процедурные миры, тактический бой на 80 клетках и сервер на Cloudflare, который пока не стоил нам ни копейки. А всю графику — от травы до драконов — мы сгенерировали нейросетью и научили код собирать её в цельную карту.

В этой статье расскажу, что умеет игра, как она устроена и какие задачи пришлось решать по дороге. Будет про генерацию континентов, сохранения в облаке Telegram с лимитом 4 КБ на значение, честный рейтинг без античита на сервере, вырезание розового фона «по оттенку» и про то, почему преследующий вас слон должен быть опасен.

Читать далее
❌