
Spark Unforged
Spark Unforged - бэкпорт современного профилировщика Spark для Minecraft 1.12.2 с асинхронным профилированием CPU/памяти и новым загрузочным профилированием.
Spark Unforged - мощный профилировщик для Minecraft 1.12.2
Если ты играешь на старой доброй версии Майнкрафт 1.12.2 (а таких до сих пор много - стабильная платформа с кучей модов), то наверняка знаешь проблему: лаги, тормоза, непонятные просадки FPS или TPS на сервере. Определить источник бед без нормальных инструментов - как гадать на кофейной гуще.
Оригинальный Spark для 1.12.2 давно заброшен и не получал обновлений - в нём нет асинхронного профилирования и многих полезных фич из новых версий Minecraft.
Spark Unforged решает эту проблему: это форк Spark под лицензией GNU GPLv3, который переносит все современные возможности обратно на 1.12.2.
Что умеет Spark Unforged?
- CPU-профилирование - показывает какие процессы жрут процессор и сколько времени на них тратится.
- Инспекция памяти - помогает найти утечки RAM и понять какие объекты занимают больше всего памяти.
- Отчёт о здоровье сервера - тики TPS нагрузка всё в удобном виде.
- Асинхронный профилировщик (Async Profiler) - одна из самых полезных штук для поиска узких мест производительности.
- Загрузочное профилирование (Load Profiling) - новая фича именно от Spark Unforged которой нет даже в современном Spark.
Загрузочное профилирование - что это?
Обычный Spark начинает работать уже после запуска игры или сервера. А Load Profiling позволяет профилировать прямо во время загрузки: отдельно этапы coremod preinit init postinit и загрузку мира/сервера. Это помогает выявить проблемы ещё до того как игра запустится.
По умолчанию функция отключена - её нужно включить в конфиге config/spark/config.json. Файл создаётся после первого запуска мода. Результаты профилирования сохраняются локально в config/spark/data/ (автозагрузка на сайт Spark отключена чтобы не спамить). Потом их можно вручную загрузить через сайт Spark для просмотра.
Чем отличается от современного Spark?
Spark Unforged почти полностью повторяет функционал актуальной версии Spark (те же команды тот же формат вывода) но есть пара отличий:
- Добавлено загрузочное профилирование с тонкой настройкой этапов.
- Конфиг стал удобнее - при обращении к опциям они сразу записываются в файл.
- Отключено отображение датапаков в метаданных сервера (в 1.12.2 их нет).
- Не работает просмотр живого профиля (Open/Live Profile Viewing) из-за Java 8.
Требования
Начиная с версии 1.11.1 мод требует Mixin. В большинстве сборок он уже есть (его тащит какой-нибудь другой мод). Если нет - придётся добавить отдельно (например MixinBootstrap или Mixin 0.7-0.8 Compatibility).
Как пользоваться?
Команды те же самые что и в обычном Spark: /spark, /spark profiler, /spark health и т.д. Полный список можно найти в документации оригинального Spark (она есть на официальном сайте проекта). Принцип работы не отличается.
Зачем это нужно?
Если вы играете на Minecraft 1.12.2 с десятками или сотнями модов - без профилировщика никуда. Лаги могут быть вызваны конфликтами модов плохим кодом или просто перегрузкой мира. Spark Unforged даёт те же возможности диагностики что есть на новых версиях Майнкрафта.
Скачайте мод Spark Unforged для Forge 1.12.2 и забудьте про слепой поиск причин тормозов.
Как поиграть с друзьями с модом Spark Unforged?
Мод Spark Unforged куда интереснее в компании: поднимите сервер Майнкрафт с уже установленным модом, позовите друзей и играйте по своим правилам. Хостинг Майнкрафт для мода Spark Unforged будет готов за пару минут - BungeeHost сделает всё за вас.
