E-Utils
EverlastingUtils is a robust utility library for Hytale mod development and all of Hysocs mods.
Описание
EverlastingUtils (альбом)
Примечание: Если вы рассматриваете это как зависимость или требование Для другого мода вы можете просто установить его и проигнорировать эту документацию.
EverlastingUtils - это надежная библиотека утилит для разработки серверов Hytale. Он абстрагирует сложный код, позволяя разработчикам сосредоточиться на функциях геймплея, а не на инфраструктуре.
Особенности
Advanced Config Management
Прямой порт надежной системы конфигурации JSONC.
- СОНК Поддержка: Полностью поддерживает комментарии ()
//и/**) в конфигурационных файлах. - Горячая перезагрузка: Автоматически обнаруживает изменения файлов и перезагружает конфигурации во время выполнения без перезагрузки сервера.
- Автосохранение и резервирование: Встроенная автосберегающая и автоматическая резервная генерация перед миграцией.
- Версия: Обрабатывает обновления конфигурационной версии автоматически.
Расписание и расписание
Безопасная обертка для управления задачами в среде Hytale.
- Безопасность: Предотвращает распространенные ошибки параллелизма, четко определяя выполнение Async vs Sync.
- Уборка: Автоматически отслеживает и отменяет задачи при отключении плагина.
- Унифицированный API: Простые статические методы для выполнения разовых или повторяющихся задач.
Цветовой парсинг
Преодоление разрыва между устаревшими рабочими процессами и компонентной системой Hytale.
- Поддержка наследия: Классический парс
и,ил,&fКоды в HytaleПосланиеобъекты. - Поддержка Hex: Автоматически отображает стандартные цветовые коды на конкретные значения Hex.
Примеры использования
1. Управление конфигурацией
Создайте свой класс конфигураций, реализовав ConfigManager.ConfigData:
Публичный класс MyConfig Конфигуратор. ConfigData {
// Необходимые методы
@Override public String getVersion() { Return "1.0.0; }
@Override public String getConfigId() { Return "my_plugin"; }
// Ваши настройки
Public boolean debugMode = ложный
Публичное приветствие StringMessage = «Hello World»;
?
Инициируйте его в своем классе:
// Настройка метаданных (комментарии руководителя и т.д.)
ConfigMetadata meta = ConfigMetadata.createDefault («my_plugin»)
Инициировать менеджера
ConfigManager<MyConfig> ConfigManager = новый ConfigManager<>
MyConfig.class,
MyConfig(),
метать
);
Ценности доступа в любом месте
boolean isDebug = configManager.getConfig().debugMode;
2. Расписание задач
Инициируйте планировщик в запуске вашего плагина (чтобы подключиться к основной игровой нити):
@Override
Публичная пустота наServerStarted()
// Погрузитесь в основной поток исполнителя Hytale
SchedulerManager.init (runnable)
HytaleServer.getInstance().getScheduler().execute(runnable)
);
?
Задачи расписания легко:
// Запустите задание через 5 секунд на главной нити (синхронизация)
SchedulerManager.schedule("my_task_id", 5, TimeUnit.SECONDS, false, () ->{
player.sendMessage(Message.raw("Отложенное сообщение!"));
}
// Немедленно выполняйте общую асинхронную задачу
SchedulerManager.schedule("async_calc", 0, TimeUnit.SECONDS, true, () -> {
// Тяжелый расчет здесь...
}
3. Цветовой парсинг
Легко отправлять отформатированные сообщения с использованием устаревших кодов:
String rawText = "&aSuccess! &7Вы получили &e100 Coins&7.
Сообщение = ColorParser.parse (rawText);
Player.sendMessage (сообщение);
Установка для разработчиков
Добавьте библиотеку в свой build.gradle.kts.
1. Добавить банку в папку libs
C:\Users\Administrator\Desktop\Mods\EventAntiXray\libs\everlastingutils-1.0.0.jar
2. Добавьте зависимость: С тех пор, как вечность Utils - это автономный мод, использование составлять Только Чтобы она не была заложена в банку:
зависимости {
compileOnly («com.hysocs:everlastingutils:1.0.0»)
// ИЛИ при использовании местной банки в libs/
// compileOnly(files("libs/everlastingutils-1.0.0.jar")
?
Оригинальное название: Ensure the Everlasting Utils jar присутствует на вашем сервере мод папка во время выполнения.
Показать оригинальное описание (English)
EverlastingUtils (Hytale)
Note: If you're seeing this as a dependency or requirement for another mod, you can simply install it and ignore this documentation.
EverlastingUtils is a robust utility library for Hytale server development. It abstracts away complex boilerplate code, allowing developers to focus on gameplay features rather than infrastructure.
Features
Advanced Config Management
A direct port of a robust JSONC configuration system.
- JSONC Support: Fully supports comments (
//and/* */) in configuration files. - Hot-Reloading: Automatically detects file changes and reloads configs at runtime without restarting the server.
- Auto-Save & Backup: Built-in auto-saving and automatic backup generation before migrations.
- Versioning: Handles config version updates automatically.
Threading & Scheduling
A safe wrapper for managing tasks in the Hytale environment.
- Safety: Prevents common concurrency errors by explicitly defining Async vs Sync execution.
- Cleanup: Automatically tracks and cancels tasks on plugin shutdown.
- Unified API: Simple static methods to run one-time or repeating tasks.
Color Parsing
Bridging the gap between legacy workflows and Hytale's component system.
- Legacy Support: Parse classic
&a,&l,&fcodes into HytaleMessageobjects. - Hex Support: Automatically maps standard color codes to specific Hex values.
Usage Examples
1. Config Management
Create your config class by implementing ConfigManager.ConfigData:
public class MyConfig implements ConfigManager.ConfigData {
// Required methods
@Override public String getVersion() { return "1.0.0"; }
@Override public String getConfigId() { return "my_plugin"; }
// Your Settings
public boolean debugMode = false;
public String welcomeMessage = "Hello World";
}
Initialize it in your main class:
// Setup Metadata (Header comments, etc)
ConfigMetadata meta = ConfigMetadata.createDefault("my_plugin");
// Initialize Manager
ConfigManager<MyConfig> configManager = new ConfigManager<>(
MyConfig.class,
new MyConfig(),
meta
);
// Access values anywhere
boolean isDebug = configManager.getConfig().debugMode;
2. Task Scheduling
Initialize the scheduler in your plugin's startup (to hook into the main game thread):
@Override
public void onServerStarted() {
// Hook into Hytale's main thread executor
SchedulerManager.init(runnable ->
HytaleServer.getInstance().getScheduler().execute(runnable)
);
}
Schedule tasks easily:
// Run a task 5 seconds later on the Main Thread (Sync)
SchedulerManager.schedule("my_task_id", 5, TimeUnit.SECONDS, false, () -> {
player.sendMessage(Message.raw("Delayed message!"));
});
// Run a generic async task immediately
SchedulerManager.schedule("async_calc", 0, TimeUnit.SECONDS, true, () -> {
// Heavy calculation here...
});
3. Color Parsing
Easily send formatted messages using legacy codes:
String rawText = "&aSuccess! &7You have received &e100 Coins&7.";
Message message = ColorParser.parse(rawText);
player.sendMessage(message);
Installation for Developers
Add the library to your build.gradle.kts.
1. Add the jar to a libs folder
C:\Users\Administrator\Desktop\Mods\EventAntiXray\libs\everlastingutils-1.0.0.jar
2. Add the Dependency: Since EverlastingUtils is a standalone mod, use compileOnly so it isn't bundled inside your jar:
dependencies {
compileOnly("com.hysocs:everlastingutils:1.0.0")
// OR if using a local jar in libs/
// compileOnly(files("libs/everlastingutils-1.0.0.jar"))
}
Note: Ensure the EverlastingUtils jar is present in your server's mods folder during runtime.
Последние версии
everlastingutils-1.0.0.jar
Информация
Авторы:
Категории:
Версии игры:
Создан: 21.01.2026