Мод для серверов Майнкрафт, который уменьшает лаги во время автосохранения мира. Он создаёт снимки изменённых данных в основном потоке, а сериализацию и запись на диск выполняет в фоновых потоках — это помогает избежать зависаний при сохранении чанков, сущностей и данных мира.
Возможности
- Обрабатывает в фоне сохранение чанков, сущностей и данных мира.
- При нагрузке автоматически снижает интенсивность работы, а к следующему циклу автосохранения ускоряется, чтобы очередь не накапливалась.
- При выключении сервера ждёт завершения отложенных записей, а финальное сохранение выполняет обычным способом.
- При ошибке записи повторяет попытку; если они исчерпаны, чанки и данные мира сохраняются синхронно.
- В сборке для Forge дополнительно защищает данные игрока, достижения, статистику и
level.datот некоторых ошибок записи. - Отслеживает долгие синхронные загрузки чанков и паузы между тиками, которые могут не отображаться в обычных графиках TPS и MSPT.
Как пользоваться
Для команд нужен уровень прав оператора 2.
/betterautosave status— показать текущее состояние./betterautosave metrics— вывести краткие показатели работы./betterautosave debug— показать подробную диагностику: очереди, время этапов и счётчики./betterautosave flush— записать на диск все ожидающие сохранения./betterautosave drain-unload— дождаться сохранения ожидающих чанков./betterautosave hottest-chunks [count]— вывести самые медленно сохраняемые чанки; помогает найти тяжёлые фермы, большое число блоков-сущностей и сложный редстоун./betterautosave force-async— принудительно запустить фоновое сохранение чанков текущего измерения для диагностики./betterautosave diagnose [count]— показать источники синхронной загрузки чанков и длинные паузы между тиками./betterautosave diagnose reset— очистить таблицы диагностики.
Настройки
Конфиг создаётся по пути config/Shinoyuki-Optimize/shinoyuki_betterautosave/common.toml.
general.enabled— включает мод; значениеfalseвозвращает обычное сохранение Майнкрафт.throttle.chunksPerTickBase— число чанков, для которых основной поток создаёт снимки за тик.throttle.adaptiveEnabled— автоматическое снижение нагрузки при проблемах на сервере.workers.chunkWorkerThreads,workers.entityWorkerThreads,workers.savedDataWorkerThreads— число фоновых потоков для чанков, сущностей и данных мира.compat.eventCompatMode— уровень совместимости с событиями других модов.
Асинхронная загрузка чанков доступна только в сборке для Forge и отключена по умолчанию.
Требования и совместимость
Мод нужен только на сервере: игрокам устанавливать его не требуется. Поддерживаются Forge и NeoForge; для Forge требуется Java 17 или новее, для NeoForge — Java 21 или новее.
Нельзя использовать одновременно с Fast Async World Save, Smooth Chunk Save и другими модами, которые заменяют тот же путь сохранения. С C2ME сохранение нужно выбирать в одном из модов; параллельная загрузка совместима, пока не включена асинхронная загрузка чанков в этом моде. Starlight, Radium, Canary, ModernFix и FerriteCore совместимы.
