Мультиплеерные игры — это ад для генеративных моделей. Мало того, что нужно держать физику, так ещё и четыре независимых агента одновременно долбят мяч. Пока все делали синглплеерные world модели вроде LingBot-World или DreamX-World 1.0, которые генерировали одну сцену под одного актора, команда исследователей зачем-то взялась за Rocket League.
И сделали MIRA.
MIRA — мировая модель с открытым кодом, которая симулирует динамику Rocket League для 4 активных игроков. Код, датасет и браузерное демо уже доступны на GitHub.
Что умеет MIRA
В отличие от D4RT от DeepMind, который учится реконструировать 4D-сцены с одной камеры, MIRA с нуля генерирует многопользовательское игровое состояние. Она предсказывает положение машин, мяча, турбо-бустов и столкновений.
- 4 независимых агента — каждый со своим скрытым состоянием и действием.
- Открытый датасет — более 500к траекторий реальных матчей Rocket League.
- Демо прямо в браузере — спасибо MDST Engine, никаких установок.
- Возможность загрузки своих сценариев — подмени датасет, дообучи под другую игру.
Звучит как игрушка, но не спешите смеяться. Такая модель — идеальный стенд для RL-агентов. Вместо того чтобы гонять биткомы в самой игре с лагами и дисконнектами, вы кладёте их внутрь MIRA. Скорость обучения взлетает.
Сравнение с другими world models
| Модель | Мультиплеер | Открытый код | Демо |
|---|---|---|---|
| MIRA | Да (4 игрока) | Да | Браузер |
| LingBot-World | Нет | Да | Локально |
| DreamX-World 1.0 | Нет | Нет | API |
Единственная открытая world model, которая держит одновременно четырёх игроков. Oasis 3 симулирует вождение, но там один агент за рулём. MIRA — это, по сути, небольшой параллакс вселенной, где каждый управляет своим болидом.
Как это работает
Архитектура — гибрид Transformer + S4 (State Space Model). Вход: действия четырёх игроков за последние 8 кадров. Выход: следующее состояние арены. Модель обучалась на датасете логов серверов Psyonix (со звёздочками — все ники и статистика анонимизированы).
Инференс: на A100 80GB генерирует 16 кадров в секунду для 4 игроков. Но в демо на MDST Engine — около 6-8 FPS. Зато никуда не ехать, всё в браузере.
P.S. Если попробуете загрузить туда свои боты-агенты, ставьте --max-concurrent 1 в настройках сервера — иначе модель может захлебнуться. Проверено на горьком опыте (спасибо кейсу «Битвы Големов», где без Vision-моделей боты справляются лучше — тут то же самое, только внутри симуляции).
Кому MIRA нужна прямо сейчас
- Исследователям RL — быстрый полигон для multi-agent algorithms. Не нужно тащить движок Rocket League, достаточно одной нейросети.
- Геймдевам — тестировать ИИ-противников на ранних стадиях, без запуска фулл-билда игры. MIRA можно переобучить на свою физику.
- Любопытным — просто покликать в демке и увидеть, как нейросеть предсказывает хаос четырёх машин.
Кстати, о хаосе. В многомодельном театре на llama.cpp мы заставляли LLM играть в «Мафию», а тут модель сама генерирует всю динамику. Разница — как между сценарием и реальной импровизацией. MIRA — это первый раз, когда open-source сообщество получило работающий мультиплеерный симулятор мира.
Важно: MIRA не заменяет полноценный игровой движок. Если вам нужна физика с точностью до пикселя — лучше взять Unity. Но для обучения агентов и прототипирования — идеально.
И последнее. Управление несколькими моделями в продакшене — тема больная. Если захотите запустить MIRA на одном сервере с другими нейросетками, взгляните на Router Mode в llama.cpp — он помогает не перегружать сервер при переключении между рутингом. MIRA может жить на том же железе, что и языковые модели, если грамотно настроить приоритеты.
В общем, берите код, качайте датасет, запускайте демо. Через год такие модели будут симулировать не только Rocket League, а любую мультиплеерную песочницу. И тогда геймдев уже не будет прежним.