В HuskSync 3.5.1 добавлена поддержка Minecraft 1.20.5 и 1.20.6. Спасибо за ваше терпение, пока я готовил это обновление - я ждал исправления Spigot, связанного с атрибутами, чтобы быть слитым с Paper, среди прочего, прежде чем выпустить это обновление.Чтобы обновиться, просто перетащите мышью - никаких изменений в конфигурации не будет, если вы обновляетесь с версии 3.5. Пожалуйста, ознакомьтесь с примечаниями к изменениям для v3.5, если вы обновляетесь с более старой версии
- Добавлена поддержка Minecraft 1.20.5 и 1.20.6
- В этом выпуске произошли значительные изменения в NBT. Понижение рейтинга определенно невозможно, даже если вы будете делать такие хакерские вещи, как обновление версий данных.
- HuskSync будет использовать DataFixerUpper (DFU) от Mojang через Item-NBT-API для миграции данных предметов в новый формат на основе компонентов «на лету».
- Исправлено, что у пользователей с установленным PacketEvents иногда не обновлялись скины и настройки расстояния рендеринга для клиентов при присоединении (#287)
- Исправлена проблема, связанная с выполнением async-операций над NBT предметов игрока при сериализации заблокированных данных карты на предметах
- Изменен способ отключения сообщений о грантах на продвижение при синхронизации данных
- Ранее это временно корректировало работу геймерула. Теперь этого не происходит; вместо этого гранты на продвижение для заблокированных пользователей будут отменяться через событие Paper
- Теперь корректно работает на Folia, но больше не работает на Spigot (из-за того, что в Spigot отсутствует параметр события для этого)
- Добавлены французские (fr-fr) локали, любезно предоставленные @IbanEtchep (#293)
- API: Добавлен опционально переопределяемый метод десериализации в Serializer, который принимает версию Minecraft, если вам нужно выполнять операции по обновлению данных контекстно для Minecraft-версии данных снапшота при десериализации
HuskSync 3.5 - это большое обновление, добавляющее поддержку Folia, синхронизацию данных об атрибутах и отдельном статусе рейса, хранение данных в PostgreSQL, поддержку Mongo Atlas, поддержку ProtocolLib и многое другое.Чтобы обновиться, просто перетащите мышью. Вам следует перегенерировать файл messages-xx-xx.yml и подумать о перегенерации файла config.yml, особенно если вы используете MongoDB (так как были добавлены новые опции для поддержки Atlas)
- Добавлена поддержка Folia (#280)
- Добавлен новый тип данных: Атрибуты (#276)
- Добавлена поддержка синхронизации атрибутов, применяемых к игрокам, включая модификаторы и инстансы, а также исправлены проблемы, связанные с синхронизацией здоровья и максимального здоровья.
- Следующие значения данных, которые могут быть приписаны игроку, теперь будут правильно синхронизированы: Скорость полета, Скорость передвижения, Удача, Сопротивление отдаче, Дальность следования мобов, Отдача, Скорость атаки, Максимальное поглощение (1.20.2+)
- Это означает, что плагины/команды, напрямую изменяющие атрибуты игрока, теперь будут корректно синхронизироваться между серверами. Эта система теперь также лучше учитывает модификаторы от экипировки и эффектов зелий.
- Это также обеспечивает поддержку синхронизации этих новых настраиваемых значений, которые появятся в 1.20.5/1.21: скорость разрушения блоков, дальность добычи существ/блоков ("досягаемость"), высота шага, сила прыжка, расстояние, на которое вы можете упасть, не получив урона от падения, множитель расчета урона от падения, гравитационное притяжение.
- Конфиг для синхронизации максимального здоровья был удален и заменен на конфиг, позволяющий пропустить синхронизацию определенных атрибутов
- Добавлен новый тип данных: Flight Status, который был перемещен из типа данных игрового режима (#273)
- Добавлена поддержка PostgreSQL в качестве хранилища баз данных, любезно предоставленная @ProdPreva1l (#255)
- Улучшена поддержка хранилища данных MongoDB, любезно предоставленная @ProdPreva1l (#255)
- Добавлена поддержка MongoDB Atlas
- Добавлена поддержка наборов реплик Mongo
- Добавлена поддержка хука в ProtocolLib для игнорирования входящих заблокированных пользовательских пакетов для отмены на нижнем уровне (#274)
- Улучшена проверка данных; теперь она происходит при распаковке, а не при десериализации (#279)
- Теперь можно удалять недействительные или поврежденные снимки
- Немного скорректирована работа с предметами курсора при выходе из системы
- Формат системной локали теперь будет использоваться для форматирования даты/времени
- Исправлены проблемы с меню /userdata при просмотре данных для пользователей с именами, окруженными двойными подчеркиваниями (#270)
- Исправлена возможность манипулировать стойками брони при блокировке (даже если вы не используете ProtocolLib)
- Исправлено нарушение IntegrityConstraintViolation при попытке изменить данные инвентаря оффлайн-игрока через API (#275)
- Обновлены упрощенные китайские (zh-cn) локали, любезно предоставленные @jhqwqmc (#281)
- API: Внесено несколько изменений в API:
- Добавлены типы данных husksync:attributes и husksync:flight_status.
- husksync:health - Методы для получения/установки максимального здоровья были устаревшими и удалены. Методы-помощники для легкого доступа к этому были добавлены в новые husksync:attributes
- husksync:game_mode - методы, позволяющие получить/установить, летает ли игрок/может ли он летать, были устаревшими и удалены. Вместо них используйте новые атрибуты husksync:flight_status
- Причины сохранения данных теперь могут содержать флаг, указывающий, должны ли они вызывать событие DataSaveEvent (по умолчанию все, кроме выключения/наследной миграции, делают это)
- Внутренние сериализаторы, которые расширяли BukkitSerializer.Json, были удалены и теперь просто используют BukkitSerializer.Json<Type> в качестве своего сериализатора. Поскольку эти сериализаторы были внутренними, это не должно внести никаких изменений, но, тем не менее, это отмечено здесь.
HuskSync 3.2.1 - Исправление ошибок, команда /husksync status
Обновление HuskSync 3.2.1 вносит исправления ошибок, добавляет команду для отладки /husksync status и обновляет локализации плагина.
- Добавлена команда /husksync status (право доступа: husksync.command.status), отображающая информацию о состоянии системы в целях отладки.
- Обновлены локализации на упрощенном китайском (zh-cn), благодаря @jhqwqmc (#220).
- Исправлена ошибка, которая могла возникнуть на Minecraft 1.20.4, когда статистика GRASS некорректно обновлялась из устаревших (v2) версий снимка, вызывая сбой синхронизации.
- Для обновления с версии v3.1.x просто перетащите файл. Для более ранних версий обратитесь к предыдущим заметкам о выпуске.
HuskSync 3.2 - Исправление ошибок и улучшения
Обновление HuskSync 3.2 устраняет ошибки, устанавливает режим синхронизации LOCKSTEP по умолчанию и вносит несколько внутренних изменений (отсюда и небольшой скачок версии).
- Добавлена поддержка для Redis Sentinels, благодаря @romanalexander (#216).
- Установлен режим синхронизации LOCKSTEP по умолчанию в файле конфигурации.
- HuskSync теперь использует нативную реализацию приключенческой платформы на серверах Paper с версией 1.19.4+ (это исправляет проблему с некорректной работой кликабельных меню на 1.20.4).
- Улучшена синхронизация максимального здоровья игрока / масштаба здоровья, чтобы, возможно, лучше учитывать атрибуты предметов (#148).
- Исправлена синхронизация полета, иногда вызывающая сбой и исключение IllegalArgumentException в консоли сервера (#206).
- Исправлена редкая проблема, при которой данные иногда могли расходиться, если пользователи перемещались между серверами, на которых HuskSync не был установлен определенным образом.
В этом обновлении HuskSync 3.1.2 добавлена поддержка Minecraft 1.20.4. Следует отметить, что из-за того, что библиотека adventure-platform-bukkit пока не обновлена, интерактивный чат и уведомления в строке действий пока не будут работать на клиентах 1.20.3+. Мы выпустим дополнительное обновление, когда эта проблема будет решена.
Теперь плагин поддерживает Minecraft 1.20.3 и 1.20.4. В этом обновлении также добавлена поддержка перевода причин сохранения данных, благодаря участию @nartsisss. Также представлены русские локализации (ru-ru), созданные @nartsisss, и турецкие локализации (tr-tr), предоставленные @WinTone01. Немецкие локализации (de-de) также обновлены благодаря усилиям @Ceddix и @Joo200.
Чтобы обновиться с версии 3.1.1, просто перетащите файлы. Для более ранних версий ознакомьтесь с предыдущими заметками о выпуске для инструкций.
Обновление HuskSync 3.1.1 - Исправление мелких ошибок
HuskSync 3.1.1 исправляет небольшую ошибку, связанную с сохранением заблокированных карт и обновляет некоторые локализации.Для обновления просто перетащите файл.
- Обновлены локализации на китайском языке (zn-cn), благодаря @Q2297045667 (#183, #184).
- Исправлено добавление баннеров на заблокированные карты, когда они отображаются слишком много раз, что могло вызвать лаги на стороне клиента.
- В этом релизе были внесены другие незначительные оптимизации при рендеринге заблокированных карт.
HuskSync 3.1 - Синхронизация по шагам, плагин Paper и многое другое
HuskSync 3.1 добавляет новый режим синхронизации для лучшей стабильности на некоторых серверах, новые опции для сохранения предметов игрока после смерти, теперь работает как плагин Paper на серверах Paper, улучшает синхронизацию заблокированных карт и многое другое.
- Добавлен новый режим синхронизации: LOCKSTEP в дополнение к стандартной системе DELAY (#178).
- Данный режим обеспечивает лучшую стабильность для более плавного опыта на серверах с переменной частотой тиков или сетевой задержкой.
- Добавлены новые опции конфигурации для настройки поведения системы сохранения предметов игрока после смерти (#179).
- Пользователи, использующие серверы Paper (рекомендуется), теперь сохраняют свои "предметы для сохранения", если они есть, вместо того чтобы они выпадали после смерти.
- Улучшена синхронизация заблокированных карт.
- HuskSync теперь работает как плагин Paper на серверах Paper.
- Добавлено предупреждение о том, что мигратор MySQLPlayerDataBridge поддерживает только миграцию с версий MPDB v4.9.2 и ниже (в будущем будет выпущено обновление для поддержки новых версий).
- Исправлена ошибка, которая могла возникнуть на модифицированных серверах из-за отсутствия модифицированных блоков/предметов, вызванного @GsTio86 (#171).
- Исправлена проблема, при которой интерактивные меню иногда были неактивны на серверах Minecraft 1.20.2.
- Добавлены локализации на нидерландском языке (nl-nl), благодаря @arnokeesman (#176) и обновлены локализации на японском языке (ja-jp), благодаря @NamiUni (#170).
- Для обновления рекомендуется пересоздать файл config.yml.
HuskSync 3.0.2 - Исправление ошибки
HuskSync 3.0.2 - это исправление для проблемы с сохранением заблокированных карт.
- Исправлена ошибка NBT API "Tried returning part of the NBT to outside of the NBT scope", возникающая при применении данных карты на сервере без предварительных данных карты (#169).
- Исправлено исключение при получении статистики блоков игрока на модифицированных серверах (например, Arclight).
- Для обновления просто перетащите файл.
HuskSync 3.0.1 - Исправление ошибок
HuskSync 3.0.1 исправляет несколько ошибок, присутствующих в начальной версии 3.0.
- Теперь синхронизация заблокированных карт включена по умолчанию (persist_locked_maps установлено в true в конфигурации по умолчанию).
- Улучшено обработка исключений, когда элемент данных не удается десериализовать или применить к пользователю.
- Добавлена опция конфигурации для отключения синхронизации максимального здоровья (synchronize_max_health в разделе синхронизации).
- Исправлены некоторые проблемы с синхронизацией здоровья на определенных настройках (например, при экстремальных значениях здоровья).
HuskSync 3.0 - Новый формат данных, API; Улучшенный интерфейс
HuskSync 3.0 - это крупное обновление, вводящее новый, гораздо более универсальный формат данных для разработчиков. Он поддерживает Minecraft 1.16.5—1.20.2 (выпущенный сегодня).
- Введен новый формат данных v4 - более модульный формат, который улучшает возможности API HuskSync.
- Добавлена лучшая поддержка модифицированных предметов и плагинов, внедряющих ItemStacks с пользовательскими метками NBT напрямую, в дополнение к существующей поддержке предметов с контейнером постоянных данных (PDC).
- Теперь HuskSync будет синхронизировать пользовательские теги постоянных данных, примененные к игрокам (#155).
- Баннеры на заблокированных картах теперь будут синхронизироваться, и синхронизация заблокированных карт должна быть более стабильной.
- Приблизительный размер файла снимка данных, в KiB, теперь отображается в меню списка снимков данных и обзорном меню.
- Добавлена новая опция конфигурации для настройки минимального времени создания дополнительных снимков данных (по умолчанию: 4 часа), чтобы сделать набор резервных копий, доступных администраторам, более удобным.
- Исправлена проблема, при которой HuskSync не сохранял данные правильно при выключении сервера (#159).
- Исправлены различные проблемы совместимости с другими плагинами, использующими общий пул потоков CompletableFuture (теперь HuskSync будет выполнять асинхронные операции с использованием API, реализующего соответствующую платформу, такие как система задач Bukkit).
- Предприняты предварительные шаги для поддержки Folia, которую я собираюсь поддерживать в ближайшее время, хотя я хочу тщательно протестировать ее сначала (и могу потребовать корректировки синхронных операций, чтобы они были ориентированы на расположение игрока).
- Обновлены локализации на итальянском языке (it-it), благодаря @iVillager (#163).
- API: HuskSync имеет совершенно новый API (v3), поэтому произошло значительное изменение версии. Это включает разрывающие изменения API, и разработчики плагинов должны будут преобразовать свои дополнения к APIv3.
- Теперь разработчики могут предоставить свои расширения данных и реализации Serializer для предоставления пользовательских данных.
- Новый API пользовательских данных уже используется для синхронизации данных из модов, таких как Pixelmon!
- Более универсальный доступ к получению, установке и редактированию снимков данных и данных, которые они содержат.
- Для обновления перетащите файл .jar в папку /plugins/ и пересоздайте файлы config.yml и messages-xx-xx.yml. Данные автоматически будут преобразованы из формата v2.0. Благодарим @alexdev03 за помощь в тестировании и подготовке этого релиза.
В HuskSync 2.2.8 исправлена еще одна проблема, из-за которой окружения баз данных MariaDB иногда не инициализировались. Извините за все сегодняшние обновления!
- Исправлена ошибка, связанная с тем, что при инициализации не находился класс MariaDB Driver
- Подправлены сообщения подтверждения инициализации базы данных
Для обновления просто перетащите мышью.
В HuskSync 2.2.5 исправлены ошибки и проверена работа с Minecraft 1.20 на Spigot. Что будет дальше с HuskSync, спросите вы? Я работаю над различными улучшениями внутреннего способа обработки асинхронных операций, чтобы улучшить стабильность работы с другими плагинами, использующими CompletableFutures.
Для обновления с версии 2.2.4 вы можете просто перетащить+отпустить.
HuskSync 2.2.4 исправляет ряд ошибок, присутствующих в предыдущем выпуске, и добавляет опцию, удобную для настроек с использованием игрового правила keepInventory или плагинов.Чтобы обновить, вы должны перегенерировать свою конфигурацию, так как была добавлена новая опция и переименован ключ. Обязательно обновите конфиг на всех серверах.
- Added a new config option under the synchronization section: save_empty_drops_on_death
- This option, which is enabled by default, can be set to false to stop user data snapshots from being created when a user dies and has dropped no items
- Requires the save_on_death option to be on to be effective
- This is beneficial for setups using keep inventory (#73)
- Fixed an issue that would prevent servers from saving persistent data container tags correctly on shutdown
- Fixed an issue where the update checker would erroneously report that an update was available
- Renamed the save_dead_player_inventories option to synchronise_dead_players_changing_server to better reflect how it works.
- Updated the German (de-de) locales, courtesy of @Ceddix (#101)
HuskSync 2.2.3 contains more fixes and tweaks to improve your user's experiences.To update, just drag+drop.
- Fixed an issue where players could interact with item frames during the locked synchronization process.
- Fixed an issue where a ConcurrentModificationException could occur when fetching the user's PersistentDataContainer key mappings
- Added a new config option (synchronisation.blacklisted_commands_while_locked)
- This lets you blacklist certain commands to prevent them from being used during the locked synchronization process.
- Useful for certain plugins, like auction house plugins
- Empty by default