Статус: что работает сегодня
Это единственная полная таблица статуса в документации, на других страницах показана ее часть. У каждой строки есть дата и либо проверка, которую можно запустить, либо раздел PERF.md.
Что значат состояния
Заголовок раздела «Что значат состояния»| Состояние | Значение |
|---|---|
| Работает | Это подтверждает тест, который можно запустить, или замер в PERF.md |
| Частично | Часть работает, остальное описано в issue или PR |
| В работе | В коде этого нет или оно не закончено, и на это есть issue |
| Решения нет | Решения пока нет. В этом состоянии загрузчик плагинов (jar, wasm, скрипты) |
| Не планируется | Закрытое решение отвечает “нет” |
Статус по областям
Заголовок раздела «Статус по областям»| Область | Состояние | Работает | Не готово |
|---|---|---|---|
| Генерация мира | Работает | Шум, поверхность, аквиферы, карверы, фичи и структуры. Результат сравнивается поэлементно с дампами настоящей игры (около 14 из 49 записей tools/fixtures.json относятся к генерации мира). Пресеты normal и flat. | Совпадение проверено на эталонных сидах и чанках, а не на любом сиде. Сущности из сгенерированных структур не сделаны. В работе#170Частично#523 |
| Свет | Частично | Небесный и блочный свет в крейтах светового движка, есть пример массовой загрузки. | Цветной блочный свет есть, но по умолчанию выключен. В работе#346 |
| Клиент и рендер | Частично | Рельеф, небо, облака, свет, мобы, оверлей F3, чат и ломание блоков в креативе. Дальность по умолчанию 96 колонок. | На 96 колонках GPU-кадр 3.7 мс при цели 1.0 мс, процесс держит 12 ГБ. Замеры только на Apple M4 Max и macOS. Веб-сборка зависает. Нет звука, частиц и погоды. В работе#337В работе#344В работе#129 |
| Протокол | Частично | Handshake, status, login, configuration и play. Типизировано 71 из 144 clientbound и 52 из 69 serverbound play-пакетов. | Остальные play-пакеты идут сырыми байтами. Одна версия игры за раз, трансляция для старых клиентов только запланирована. В работе#295В работе#537 |
| Сеть | Частично | TCP со сжатием, status с MOTD и иконкой, transfer, LAN-анонс, whitelist и баны. | Нет online mode и шифрования: любой входит под любым ником. Нет поддержки прокси (modern forwarding, BungeeCord, Velocity). В работе#82В работе#296 |
| Сохранения и Anvil | Частично | Читает существующий мир Java Edition. Игроки сохраняются при чистом выключении сервера. | Измененные чанки на диск не пишутся. Мир другой версии данных не загружается, датафиксеров нет. В работе#78В работе#169 |
| Геймплей | Частично | Вход, чат с отменяемым событием до рассылки, режимы игры, ломание блоков в креативе, случайные тики, блочные события, дропы блоков. | Крафт, бой, редстоун, жидкости, рост растений, торговля, боссы. Цикла выживания пока нет. В работе#182В работе#190 |
| Команды | Частично | Парсер и дерево команд, пакет commands и подсказки по Tab. 20 команд ванили, среди них execute, gamemode, tp, summon, kill, data, time, fill, whitelist и ban. | Дерево команд с уровнями прав пока открыто. Частично#285 |
| Сущности и мобы | Частично | Строки сущностей по тайлам, 5 типов мобов с данными (свинья, корова, овца, курица, зомби-свинолюд), ИИ свиней, репликация мобов клиентам. | Большинство остальных мобов и их ИИ. Бенчмарк на 50 000 свиней автор сам пометил как предварительный, поэтому его цифр мы не публикуем. Частично#102В работе#224 |
| Физика и движение | Частично | Ядро физики с коллизиями и импульсами, проверка движения игрока, сверка с записями ванильного клиента. Результат не зависит от числа потоков. Подтверждение телепорта работает по спецификации, его проверяют тесты со скриптовым клиентом. | Общая модель движения игрока пока открыта. В спецификации подтверждения телепорта остались открытые вопросы, например accept старого id, когда ничего не ожидает подтверждения. Частично#85Частично#623 |
| Датапаки и реестры | Работает | 147 реестров и 9079 записей загружаются из датапака при старте. Биомы и измерения берутся из пака без пересборки. | Перезагрузка датапака на ходу. В работе#316 |
| Molang | Работает | Парсер, компилятор, скалярный, батч и WGSL бэкенды, корпус выражений Bedrock для сверки. | Новый код, на дату проверки ему около недели. Отдельной issue нет. Частично#338 |
| Инструменты | Работает | Одна команда переводит проект на новый снапшот игры. Еще oracle ванили, mob bench, server bench, client recorder, корпус Molang и проверки xtask. | Часть инструментов требует Java 21 или новее, а mob bench требует Java 25. В работе#507 |
| Крейты как библиотека | Частично | 122 крейта. CI проверяет, что 100 пакетов собираются без Bevy, 9 без std и 11 под wasm32. | На crates.io ничего не опубликовано, примеров библиотеки нет, API не стабилен. В работе#180В работе#287Решения нет#321 |
Цифры производительности собраны в PERF.md, у каждой указаны машина и сценарий. Все они сняты на одной машине, Apple M4 Max с macOS. Сравнений с ванилью, Paper и другими серверами мы не публикуем.
Что не планируется
Заголовок раздела «Что не планируется»- Поддержка старых версий игры. mcrs работает с одной версией за раз.1
- Датафиксеры (datafixers). Сохранение читается строго в целевой версии данных, а неизвестное поле вызывает явную ошибку.2
- Фасад или крейт с Bukkit-подобным API.3 Это решение касается только фасада. По загрузчику плагинов в виде jar, wasm или скриптов решения пока нет.
Как следить за ходом работы
Заголовок раздела «Как следить за ходом работы»Чтобы следить за проектом, читать код не обязательно.
- Вся работа видна в репозитории на GitHub.
- Чтобы следить за одной issue, откройте ее из таблицы и нажмите Watch справа. Нужен аккаунт GitHub, и при каждом изменении issue вам придет письмо.
- Последние изменения в коде и релизы тоже лежат на GitHub.
- Вопросы и отчеты о ходе работы есть в Discord.
- Направление задают три issue: про библиотеку, про работу на многих нодах и про геймплей.456
- Решения с причинами записаны в issue с меткой
decision.
Эту страницу мы вручную проверяем раз в месяц и при каждом новом теге.
Footnotes
Заголовок раздела «Footnotes»-
Не планируется#412 Решение о том, что цель - одна версия за раз, без обратной совместимости. ↩
-
Не планируется#388 Решение о том, что сохранения читаются строго в целевой версии данных, без датафиксеров. ↩
-
Не планируется#437 Решение о том, что фасадного или API-крейта нет, а публичная поверхность - сами крейты и плагины. ↩
-
В работе#180 Направление: mcrs как библиотека, от прокси до полного сервера. ↩
-
В работе#181 Направление: одно измерение на многих узлах для тысяч игроков. ↩
-
В работе#182 Направление: геймплей ванили и тесты поведения на масштабируемой архитектуре. ↩
Источники и проверка
Проверено: 26.4-snapshot-7, 3540f457b, 2026-11-10
Переведено с версии 3540f457b