Коротко: мы провели полный вайп. Новый мир пре-сгенерирован заранее до радиуса 7000 блоков, обновлено ядро и 50 модов, добавлено 15 новых, убрано 4, появились личные комнатные измерения, обязательная регистрация кораблей и целый набор наших собственных исправлений, которые защищают сервер от падений. Ниже: что именно изменилось, зачем, как мы это проверяли и сколько на это ушло времени.
Статус. Сервер пока закрыт белым списком: идёт проверка в игре. Часть значений может измениться до открытия сезона.
1Главное для игрока #
- Новый мир, новый сезон. Постройки, инвентари и приваты Сезона 0 не переносились. Сохранены: аккаунты и права, киты, скины, группы и личные настройки приватов, составы команд FTB Teams.
- Мир готов заранее. Overworld и измерение Gimpanum пре-сгенерированы до радиуса 7000 блоков (граница 14 000 × 14 000). Незер ванильный, пре-сгенерирован до ±900 блоков, граница Незера 1750 блоков в ширину.
- Мир суровее. Рельеф Steel Sky с летающими островами и реалистичными ландшафтами, холодные районы, редкие структуры вдали от центра: одному выживать здесь трудно, держитесь вместе.
- Новое правило: регистрация кораблей (
/shipreg). Раздел 5.1. - Новая возможность: личная комната (Pocket Clusters), попасть в которую можно через «Личный портал». Раздел 5.2.
- Приваты только в Overworld. В Незере, Энде, Gimpanum и комнатах приватить нельзя.
- Нефть (Create Diesel Generators) стала конечной и реже. Раздел 5.3.
- Бесконечные горелки всполоха из структур отключены.
2Сколько времени это заняло #
Мир такого размера с рельефом Steel Sky генерируется долго. Ниже — сколько занимала каждая тяжёлая операция.

| Операция | Объём | Время | Скорость |
|---|---|---|---|
| Пре-генерация Overworld до радиуса 7000 | 769 129 чанков, 15 ГБ | 4 ч 44 мин | ≈ 45 чанков/с |
| Пре-генерация Gimpanum до радиуса 7000 | 769 129 чанков, 4,7 ГБ | менее 66 минут | ≈ 300 чанков/с |
| Пре-генерация Незера (ванильного) | 12 769 чанков | несколько минут | — |
| Пробные миры радиусом 1500 блоков (кандидаты, пересборки) | 35 721 чанк каждый | 16, 24 и 24 мин | ≈ 25–36 чанков/с |
| Скрининг сидов нашим инструментом | 6000 сидов | ≈ 14 мин | 0,14 с на сид |
Только на генерацию и выбор сида ушло более 6,5 часов машинного времени; несколько пробных прогонов и пересборок мира (после смены состава модов и после найденных ошибок) в таблицу не вошли.

Почему генерация такая долгая #
Мы профилировали генерацию (Java Flight Recorder, ≈20 тысяч замеров потоков). Две трети времени уходит на расчёт рельефа Steel Sky. Остальные моды на генерацию почти не влияют:


Вывод: ускорить можно подготовкой мира заранее (что мы и сделали). Выключение отдельных модов времени почти не даёт. Поэтому игроки не будут ждать генерацию нового места: во всех измерениях в границе она уже готова.
3Как мы выбирали сид #
Первые сиды оказывались «водными»: в нескольких из семи ранних сидов в центре было 91–100% океана. Тогда мы написали свой скринер: он берёт реальные настройки нашего мира (с Steel Sky и реалистичными ландшафтами), строит климат для случайного сида и считает биомы на 6000 блоков вокруг. Мы откалибровали его по сиду с известным результатом: скринер дал 91% океана и 3% рек, реальная генерация показала то же самое. Затем прогнали 6000 случайных сидов, из них 99 прошли наши условия (мало океана, мало зимы, есть реки), а лучшие кандидаты мы проверили реальной генерацией чанков и пробными мирами.

Мы выбрали сид с живым ландшафтом: острова, реки, много суши. Мир получился суровее среднего, и в этом его характер: одному здесь трудно, поэтому объединяйтесь.
4Что изменилось в модах #
В Сезоне 0 было 155 модов, сейчас 166 файлов (часть — библиотеки и наши служебные моды). Без изменений остались 101.
Ядро #
| Компонент | Было | Стало | Зачем |
|---|---|---|---|
| NeoForge | 21.1.228 | 21.1.252 | требуют новые JEI, Starcatcher, Sophisticated Backpacks. На замерах версии 228/252/255 по скорости неотличимы; 255 мы пропустили: она обновляет Mixin, на который завязаны наши исправления |
| Sable (физика кораблей) | 2.0.3 | 2.0.6 | исправления хранилища кораблей и запуска физики; все наши исправления пересобраны под неё |
| Create Aeronautics (вместе с Simulated) | 1.3.0 | 1.3.2 | стабильность |
| Create / Minecraft | 6.0.10 / 1.21.1 | без изменений | новее нет |
Добавлены #
| Мод | Версия | Что это даёт |
|---|---|---|
| Create: Structures Arise | 176.49.49 | 28 новых структур в стиле Create (наземные, подземная, океанская, летающие, 4 в Незере) |
| Create: Steam 'n' Rails | 0.3.0-beta.2 (неофициальный порт, бета) | паровозы, новые тележки, сцепки, семафоры и стрелки; проверен на поездах (раздел 6) |
| PowerGrid | 0.6.2 | электричество с законами физики: напряжение, ток, трансформаторы. Заменяет Create Additions |
| Create Propulsion: Simulated | 1.1.5 | двигатели (топливные, ионные) и крылья для кораблей |
| Create: Dreams & Desires | 2.3a-BETA | новые блоки и предметы в духе Create |
| Create Cobblestone | 1.5.0 | генераторы камня на силе вращения, снижают лаг от обычных ферм |
| Starcatcher | 3.3.4 | рыбалка: мини-игра, 100+ рыб, турниры |
| Drive-By-Wire: Typewriter | 1.2.0 | клавиатура как источник сигналов |
| Steel Sky Generation (вариант A) | 1.0.0 | мир с летающими островами и реалистичными ландшафтами, потолок строительства 447 |
| Pocket Clusters (наш мод) | 1.2.1 | личные комнаты игроков (раздел 5.2) |
| Наши исправления и утилиты | см. раздел 6 | chunkgen-fe███████████, no-infinite-b████████████, per-dimension█████████████, aeroclai███████; библиотека MezzConfig для JEI |
Убраны #
| Мод | Причина |
|---|---|
| Create Crafts & Additions 1.5.10 | заменён на PowerGrid |
| Live Radio Mod 1.0.2 | решение команды |
| Angel Islands 2.0.3 | входит в Steel Sky, вместе они не работают |
| Diabolical Islands 1.0.0 | подменял генерацию Незера на островную; Незер теперь ванильный |
TFMG (Create: The Factory Must Grow Community Edition). Мы его добавили, протестировали и в итоге пока отказались от него (решение команды). Поэтому в списках его нет: нефть и перегонка теперь через Create Diesel Generators.
Обновлены (50 модов) #
Полная таблица обновлений (нажми, чтобы развернуть)
| Мод | Было | Стало |
|---|---|---|
| Aeronautics Claims (AeroClaims) | 0.9.2 | 0.9.4 |
| Alcohol Industry | 2.1 | 2.2.3 |
| Arcadia Patch Create | 1.4.2 | 1.4.5 |
| Architectury | 13.0.8 | 13.0.11 |
| Balm | 21.0.59 | 21.0.66 |
| Carry On | 2.2.5 | 2.2.6 |
| Climbable Ropes for Create Aeronautics | 2.0.1 | 2.1.4 |
| Create Aeronautics | 1.3.0 | 1.3.2 |
| Create Aeronautics: Transmission & Linkage | 0.2.5 | 0.2.8 |
| Create Diesel Generators | 1.3.11 | 1.3.15 |
| Create Slice & Dice | 4.2.4 | 4.3.4 |
| Create Tracks+ | 1.0.5 | 1.0.6b7 |
| Create: Connected | 1.2.0 | 1.3.3 |
| Create: Copycats+ | 3.0.4 | 3.0.9 |
| Create: Dragons Plus | 1.10.1 | 1.11.9 |
| Create: Enchantment Industry | 2.3.1 | 2.5.4 |
| Exposure | 1.9.18 | 1.9.19 |
| Farmer's Delight | 1.3.1 | 1.3.4 |
| GeckoLib 4 | 4.9.2 | 4.9.3 |
| Gimpanum (наш мод) | 0.1.0 | 0.2.0 |
| Jade | 15.10.5 | 15.10.6 |
| Just Enough Items | 19.27 | 19.57 |
| Let's Do Vinery / Herbal Brews | 1.5.3 / 1.1.3 | 1.5.4 / 1.1.4 |
| Lootr | 1.11.37 | 1.11.38 |
| No Chat Reports | 2.9.0 | 2.9.1 |
| Polymorph | 1.1.0 | 1.2.0 |
| Puzzles Lib | 21.1.51 | 21.1.62 |
| Rhino (KubeJS) | build 81 | build 91 |
| Sable | 2.0.3 | 2.0.6 |
| Sable Map (наш мод) | 0.1.15 | 0.2.0 (регистрация кораблей) |
| Sable Ship LOD (наш мод) | 2.2.0 | 2.9.2 |
| Simple Voice Chat | 2.6.17 | 2.6.24 |
| SkinRestorer | 2.7.0 | 2.11.0 |
| Sophisticated Backpacks / Core / Create Integration | 3.25.51 / 1.4.43 / 0.1.5 | 3.26.7 / 1.5.5 / 0.2.1 |
| Yet Another World Protector (YAWP) | 0.6.3-beta3 | 0.6.3-beta4 |
| Наши исправления Sable и Simulated (assembl██████, border██████, corrupt-████████, explosi███████, frequen███████, handle-d███████, removed-████████, save-█████, invalid-████████, rope-npe-fix) | под Sable 2.0.3 | пересобраны под Sable 2.0.6 / Simulated 1.3.2 |
| Corpse Claims Fix (наш) | 1.3.0 | 1.3.2 |
| RNR Tablecloth Dupe Fix (наш) | 1.0.0 | 1.1.0 |
Намеренно оставлены на старых версиях #
| Мод | Почему |
|---|---|
| Open Parties and Claims 0.29.3 | новая версия в бете, а на OPAC держатся наши защиты приватов |
| NTGL 3.1.7, Create Gunsmithing 1.4.8 | Gunsmithing 1.4.9 требует NTGL 3.2.0 и не запускается на клиенте с 3.1.7 |
| Xaero Minimap / World Map, KubeJS build 348, Vista, Moonlight, createfood, aeroworks, Easy NPC | новые версии либо требуют новый OPAC, либо содержат крупные изменения без проверки |
5Новые правила и настройки #
5.1Регистрация кораблей (/shipreg) #
Зачем. В Сезоне 0 каждые сутки появлялось около 200 мусорных кораблей (в учёте было 229 незарегистрированных кораблей при 130 клеймах, у всех имя ship): оставленные заготовки, обломки, забытые конструкции. Каждый такой корабль хранится на диске и в памяти и нагружает физику. Нужна метка «этот корабль нужен», чтобы всё остальное можно было чистить.
Как зарегистрировать. Посмотри на свой корабль или встань на него:
| Команда | Что делает |
|---|---|
/shipreg register | регистрирует корабль, на который смотришь или на котором стоишь |
/shipreg list | список твоих кораблей |
/shipreg info | покажет, считается ли корабль зарегистрированным и почему |
/shipreg unregister [id] | снимает регистрацию (слот освобождается) |
- Лимит: 5 кораблей на игрока (администратор может изменить для конкретного игрока).
- Автоматически считаются зарегистрированными корабли с активным приватом AeroClaims.
- Зарегистрировать можно только свой корабль или корабль без известного создателя.
Незарегистрированные корабли могут удаляться при очистке сервера; сроки очистки и оповещение перед ней объявим отдельно перед открытием сезона.
5.2Личная комната (Pocket Clusters) #
Вместо отдельного измерения на каждого игрока (дорого и рискованно для сервера) у нас 4 общих пустых измерения-кластера, а в них сетка комнат, по одной на игрока. Новая комната попадает в наименее загруженный кластер.
Предварительный крафт (может измениться). Личный портал (Personal Portal) — 8 обсидиана вокруг жемчуга Края:
О О О
О Ж О О — обсидиан, Ж — жемчуг Края
О О О
Как пользоваться
- Скрафти портал и поставь его в обычном мире. Блок записывает тебя владельцем.
- ПКМ по порталу — ты в своей комнате. В комнате есть выход-портал, он возвращает на место входа.
- Комната: плоская платформа из гладкого камня 5×5 чанков (80×80 блоков). Она окружена невидимыми стенами из барьеров (потолок на 96 блоков выше пола, дно на 8 блоков ниже). Барьеры нельзя сломать, они останавливают предметы, мобов, поршни, контрапции и корабли Sable: вывести корабль из комнаты нельзя.
- Администратор может расширить комнату до 11×11 чанков (176×176 блоков).
Правила
- Один поставленный портал на игрока в обычном мире (крафтить можно сколько угодно, ограничено только размещение). Портал привязан к своему владельцу и месту установки.
- Гости могут входить в твой портал: чужой игрок, нажав на него, попадает в твою комнату как гость.
- Если хозяин не заходил в игру 60 дней, комнату можно очистить.
- «Ключ участка» (
Plot Key) не крафтится, его выдают киты или администрация. - Приватить в комнатах нельзя (приваты только в Overworld).
5.3Нефть (Create Diesel Generators) стала конечной и реже #
Нефть в Diesel Generators — это не блоки, а «нефтяные чанки», количество которых считается по сиду мира. Мы изменили четыре вещи:
| Параметр | Было | Стало | Эффект |
|---|---|---|---|
| Бесконечные нефтяные чанки | включены (порог 10 млн мБ) | выключены | нефть везде конечна |
| Порог наличия нефти | 4 млн мБ | 5 млн мБ | месторождений меньше |
| Множитель запаса на суше | 1,3 | 1,4 | запас на месторождение |
| Множитель в «богатых» биомах | 2,0 (океаны + саванна, пустыня, равнины, бесплодные земли) | 1,6 только для океанов | в океане нефти больше, чем на суше |
На нашем сиде в радиусе 1500 блоков получается примерно: на суше нефть в ≈ 20% чанков (запас до ≈ 9,4 млн мБ — около 9 400 вёдер), в океане в ≈ 34% чанков (до ≈ 10,6 млн мБ). Искать нефть можно сканером Diesel Generators. Нефть конечна: используйте её с умом.
5.4Прочие настройки #
| Что | Было | Стало | Зачем |
|---|---|---|---|
| Границы мира | лимит радиуса 4000 | Overworld и Gimpanum 14 000 в ширину (радиус 7000), Незер 1750 в ширину (наш мод per-dimension█████████████) | ваниль не умеет задавать границу отдельному измерению |
| Приваты OPAC | везде | только Overworld | остальные измерения — для приключений и комнат |
| Бесконечные горелки всполоха | в структурах | отключены (наш мод no-infinite-b████████████), творческий торт не работает | баланс |
| Структуры Незера с такими горелками | сетка 50–100 чанков | сетка 250–500 чанков: по одной на весь Незер, далеко от центра (2000–7300 блоков) | в 25 раз реже |
| Максимальный размер корабля | 128 000 блоков | 64 000 | верхняя граница нагрузки физики на один корабль |
| Дальность синхронизации кораблей (Sable) | 200 | 133 | меньше трафика и процессора |
| Сжатие регионов | deflate | lz4 | дешевле сохранение, главный периодический спайк |
| Форслоад корабля за слоты привата (AeroClaims) | выкл | вкл | клеймы больше не дают бесплатный форслоад в обход лимита |
6Стабильность: что мы чиним и как проверяем #
В Сезоне 0 главные боли: просадки TPS из-за физики кораблей (Sable/Rapier — в наших стеках около 30–35% времени главного потока), многосекундные подвисания на автосейве, падения сервера от редких ошибок в чужих модах. Мы разбирали исходники, писали маленькие исправления (Mixin) и проверяли их на изолированном стенде. У нас около 30 собственных исправлений, вот главные:
| Исправление | Что чинит | Результат |
|---|---|---|
sable-save██████████ | сохранение кораблей Sable открывало файлы с принудительным fsync на каждую запись | сохранение кораблей за цикл стабильно 70–150 мс (замер 30+ раз); худший пик подвисания на автосейве 4400 → 916 мс |
sable-s███████ (2.9.2) | физика кораблей, которые далеко от игроков и стоят, считалась зря | заморожено в среднем ≈ 29% кораблей за сессию; настройки живые, адаптивные |
sable-invalid█████████████ | рамки и таблички с «битой позицией» писали ошибку на каждой загрузке чанка | в журнале Сезона 0: 4759 событий за 8 часов и подвисания до 13 с; в версии 1.0.1 исправлена ещё и взаимная блокировка при генерации структур |
sable-handle-████████████, sable-rapier-deadlock-fix, sable-removed-su████████████████ | зависания и падения физики Rapier при удалении и пересборке кораблей | сервер не встаёт намертво |
sable-corrupt█████████████ | один битый файл корабля ронял сервер при каждом запуске | запуск проходит, корабля просто нет |
sable-explos████████████ | взрыв над кучей обломков вешал сервер на расчёте видимости | зависания нет |
sable-assemb███████████ | дюп предметов при сборке/разборке корабля | дюп закрыт |
simulated-rope-npe-fix | три падения Simulated 1.3 от верёвок и лазерной указки | падений нет |
chunkgen-fe███████████ | редкая ошибка озёр роняла сервер при генерации мира в цикле | на стенде: без мода падение через 155 с, с модом 35 721 чанк без падений; финальная пре-генерация 769 129 чанков прошла без падений |
chunkgen-aqui█████████████, chunkmap-null█████████████ | падения генерации на экстремальных координатах | генерация идёт без остановок |
coreprotectne█████████████, cosmeticarmorrew████████████████ | синхронная запись на диск на главном потоке | запись ушла в фон |
gcscla██████, corpsecl███████, protectionpix████████████ | дыры в приватах и баги предметов | закрыты |
Названия закрытых разработок намеренно скрыты наполовину.

(Пик «до» — из журнала расследования от 10–11 августа; «после» — повторные замеры.)
Как мы проверяем новые моды #
- Замер в простое: каждый новый мод по отдельности и вместе. Ни один не даёт измеримой нагрузки в простое (разница в пределах шума ±0,3 мс).

- Поезда Steam 'n' Rails: собрали 6 поездов по 4 вагона (24 вагона) на тележках Create и Steam 'n' Rails, 2 минуты гоняли туда-обратно: ни одной ошибки, тик 1,3–2,5 мс против 1,4–1,6 мс без поездов. Между Create и Steam 'n' Rails разницы в пределах шума (в среднем +145 и +148 мкс на поезд из 4 вагонов).
- Прогрузка всех «целевых классов» наших исправлений (231 класс): 227 загрузились без ошибок, 4 отсутствуют (клиентские рендереры, на сервере не нужны).
- Граница по измерениям: на стенде проверили команды
worldborder set, плавное изменение иadd: Незер сохраняет 1750, остальные следуют за Overworld. - Бесконечные горелки: на стенде горелка с «творческим» флагом после загрузки становится обычной, а горелка с обычным топливом остаётся рабочей.
- Структуры:
locateпо структурам Незера, перегенерация Незера.
7Чему мы научились между сезонами #
Что шло не так и что мы изменили.
| Что случилось | Чему научились | Что делаем теперь |
|---|---|---|
| Обновили Carry On, и наше исправление для трупов перестало совпадать: любой клик по блоку мог уронить сервер | Миксин проверяется лениво, старт сервера ничего не говорит | После каждого обновления мода принудительно грузим все целевые классы всех наших исправлений на стенде |
| При обновлении сборки попал в «безопасные» Gunsmithing 1.4.9, который не запускался на клиенте с NTGL 3.1.7 | Версии, которые зависят друг от друга по методам, проверяем попарно | Пока остаёмся на 1.4.8, список клиента сверяем с сервером |
| После перезапуска граница Незера оказывалась по умолчанию (60 млн блоков) | В ваниле граница одна, при загрузке она копируется не во все измерения | Свой мод: размер Незера задаётся при старте и проверяется каждые 2 секунды |
Наше исправление sable-invalid█████████████ при генерации структур с рамками вызывало взаимную блокировку | Исправления обязаны оставаться вне ванильных путей генерации | В 1.0.1 исправление отступает в структурах |
| Замеры «блоки стоят в простое» показывали, что всё хорошо, хотя они не отражают работу механизмов | Цена присутствия блоков ≠ цена их работы | Добавили сценарии с нагрузкой: поезда, структуры, границы |
В Сезоне 0 мы только запустились и были без опыта: в основном тестировали, а потому неизбежно попадали под краши и ошибки. Теперь у нас есть наработанная база, которая легла в основу переработанной архитектуры сервера, новых правил и механик. Они позволят новому сезону работать стабильнее.
8Что дальше #
- Проверка в игре белым списком (идёт сейчас).
- Открытие сезона: снятие белого списка, объявление, приват на спавне.
- Для клиентов: наш лаунчер сам докачает все необходимые моды, вручную ничего собирать и сверять не нужно.
- Если возникнут проблемы с обновлением NeoForge до 21.1.252: в лаунчере откройте вкладку «Настройки» и нажмите кнопку «Переустановить майнкрафт».
Спасибо всем, кто терпеливо ждал и тестировал. Если найдёте ошибку или странное поведение, напишите: каждая такая находка делает следующий сезон устойчивее.
Особая благодарность игрокам zelkhere, beepatient, Dolban, Inter_Kot, Twixxik, kirbornu, Turbina_ за содействие проекту, разработку и тестирование фич для подготовки к вайпу. А также всем игрокам, активно участвующим в жизни сервера: голосующим, предлагающим в предложку моды и участвующим в их обсуждениях.