При каждой обнове как плагину удаётся обмануть меня и я зыбываю вырезать проверку на выключение.
Оптимизировал плагин. Спасибо пользователю @consers
- Добавлена поддержка HEX-цветов для кликабельных сообщений
- Добавлена опция auto-give-first-edited-kit (автоматически выдавать первый отредактированный комплект; см. новый config.yml)
- Добавлены дополнительные переводимые сообщения для команд /events
- Исправлена утечка памяти при включённых тегах и отключённом scoreboard
- Исправлен сброс FAWE BestOf, который приводил к нерабочему состоянию
- Исправлено срабатывание killregen при нанесении урона/убийстве самого себя
- Исправлены проблемы killregen с отредактированными комплектами
- Исправлены дефолтные предметы кастомных комплектов (например, зелья), которые не отображались
- Исправлена некорректная работа фаербола при наличии рядом зрителей
- Исправлен расчёт времени диапазонов ELO для рангов (теперь считается в секундах)
- Исправлены проблемы с плейсхолдерами own_wins и другими
- Исправлены ошибки на админ-табло (admin scoreboard)
- Исправлены различные проблемы с кликабельными сообщениями и командами
- Повышена стабильность интеграции с Vault
- Исправена проверка экономики при создании группы (party)
- Исправлена валидация арен FFA и типы комплектов
- Повышена точность плейсхолдера CPS
- Реализовано улучшенное отслеживание сущностей арен и их очистка
- Переработана логика health bar для лучшей стабильности
- Небольшие оптимизации проверок разрешений
- Переработаны кулдауны для enderpearl для повышения производительности и стабильности на некоторых форках Spigot (больше не используется metadata API)
- Удалена неиспользуемая опция keep-chunks-loaded (не работала в современных версиях и вводила в заблуждение). Используйте keep-arenas-loaded вместо неё.
- Проведён рефакторинг кода с удалением устаревшего собственного API SP
Исправления:
– api#sendDuelRequest теперь корректно принимает null в параметре арены
– При получении нового набора больше не сохраняется предыдущий выбранный набор (исключение багов)
– Арены FFA теперь поддерживают наборы /battlekit types <kit> none
– Исправлен сброс арены FFA при использовании FAWE (неправильное удаление из кэша)
– Исправлена команда /arena ffa (сломалась в версии 3.12.0)
– Исправлена работа кликабельных сообщений в новых версиях Minecraft
Улучшения:
– Добавлен дебаг-лог для случайных наборов
– Кликабельные сообщения теперь частично поддерживают hex-цвета
– Опция enable-colored-names: false теперь полностью отключает соответствующий код (в основном для отладки)
– Кулдаун жемчуга эндера перенесён с Bukkit metadata на потокобезопасную ConcurrentHashMap
Новое:
- Добавлена опция восстановления здоровья и инвентаря при убийстве — /battlekit killregen
- Добавлена поддержка случайных наборов — если в названии набора есть randomkit, будет выдан случайный из разрешённых
- Добавлена поддержка префикса plain_ для PlaceholderAPI-плейсхолдеров (plain-placeholderapi-placeholders: true)
- Добавлена защита от запуска /arena ffa в некорректных аренах
- Добавлена интеграция с FAWE (FastAsyncWorldEdit) для сброса арен (use-fawe-reset: true)
Исправления:
- Исправлена обработка отката перлов при отключённой опции change-item-name — полоска опыта теперь работает корректно
- Исправлены вылеты системы реплеев на новых версиях Minecraft из-за отсутствующего класса Potion
- Исправлен баг с регенерацией при убийстве — теперь проверяются тотемы
- Исправлены проверки на null у иконок наборов и упрощён API
- Исправлен флаг отображения метаданных иконки сложности бота
- Удалены лишние ошибки/логи в режиме отладки
- Исправлена команда исчезновения блоков
Оптимизация:
- Небольшие улучшения в старом механизме сброса арены
- Улучшена производительность системы сброса арен за счёт оптимизации памяти
- Снижен объём лишних логов в SoundManager
- Интеграция с FAWE ускоряет процесс сброса
Прочее:
- Рефакторинг системы сброса арен для расширяемости
- Улучшена сборка и рабочий процесс разработки
- Улучшена обработка ошибок и отладка
- Мелкие улучшения и рефакторинг
Новое:
– Добавлен выбор набора (kit selector) для FFA-арен с несколькими наборами, добавляется через /arena kits
– Поддержка указания названия набора в команде входа на арену: /<ffa арена> [kit] или /ffaarena <арена> [kit]
– (BETA) Поддержка FastAsyncWorldEdit (FAWE) для сброса арен — значительное улучшение производительности
– Добавлен плейсхолдер <ffa_players_arenaname> для отображения количества игроков на FFA-аренах
– Подключение через HikariCP для базы данных — лучше производительность
– Добавлена статистика побед и соответствующие плейсхолдеры — см. /sprac placeholders
– Опция enderpearl-cooldown.change-item-name — запрет на изменение названия предмета во время кд
– Новая опция tnt.source-damage-multiplier для режима /battlekit fireball (по умолчанию 0)
– Улучшены Discord webhooks — теперь команда /duel тоже входит в webhook "duel"
– Спектаторы больше не видят не-NPC StrikePractice в меню наблюдения
Исправления:
– Фикс плейсхолдеров FFA-арен и отображения игроков при использовании скопированных арен
– Попытка исправить застревание игроков в блоках при сбросе FFA-арен
– Мгновенная смерть в бездне теперь только после старта боя, а не в отсчёт
– Поддержка hex-цветов для предметов при спавне
– Сообщения "ожидание дуэли" и "старт" теперь отправляются в правильном порядке
– Фикс кеша топ-статистики
– Исправлены звуки в версиях 1.20.3+ (через XSound)
– Исправления отката арен (см. поддержку FAWE)
– Фикс команды /surrender
– Фиксы раундов BedWars
– Исправлены ошибки при взрывах снарядов
Оптимизация:
– Улучшения системы наблюдения, оптимизация проверок в аренах
– Значительное ускорение проверок возможности строить
– Улучшена очистка предметов и сущностей
– Автоматическое удаление снарядов и падающих блоков при сбросе арен
– Оптимизация ItemMeta-проверок
– Упрощены плейсхолдеры для повышения производительности
– Улучшена система сброса арен
Прочее:
– Удалена поддержка Minecraft 1.7.10
– Улучшена система сборки и CI
– Среда разработки обновлена до Java 21 (плагин всё ещё работает с Java 8)
– Улучшен лог ошибок
– Рефакторинг системы сброса арен для расширяемости
Это обновление может содержать некоторые изменения в некоторых игровых режимах:
- Взрывы теперь следуют за /battlekit extramaterials. Это означает, что арены не будут взрываться, если игроки не могут сломать их вручную (для этого необходимо добавить блоки в /battlekit extramaterials).
- «/battlekit bedwars» теперь работает иначе, чем «/battlekit bridge|mlgrush». Убедитесь, что эти игровые режимы по-прежнему работают (см. /battlekit info и убедитесь, что «deathcooldown» включен для режимов, где должен быть cooldown, а «bestofreset» включен, если арена должна сбрасываться между раундами).
Вы можете подождать некоторое время перед обновлением, если хотите убедиться, что оно ничего не сломает.Новые вещи:
- - Сделать так, чтобы взрывы блоков следовали за экстраматериалами (ВОЗМОЖНОЕ КРУПНОЕ ИЗМЕНЕНИЕ!!! Добавьте блоки, которые вы хотите разрушать взрывами)
- - Добавлена команда /battlekit shootfireballs <kit> (разрешить стрельбу огненными шарами, см. «fireball» в config.yml)
- - Добавлена команда /battlekit autotnt <kit> для автоматического воспламенения TNT
- - Добавлена команда /battlekit nofalldamage <kit> (отключить урон от падения)
- - Реальные постельные войны, убивать после разбивания кровати (/battlekit bedwars)
- - Изменена команда /battlekit mlrush|bridge (и информация о помощи), потому что она больше не работает как /battlekit bedwars
- - Добавлены команды-алиасы: /duel requests и /duel settings
- - Добавлены заполнители <win_streak>, <win_streak_kit> (только с базой данных SQL) и <opponent_rank>
- - Добавлен метод botfight#getBots в API для разработчиков
- - Добавлена конфигурация enderpearl-cooldown.modify-exp-level
- - Добавлено событие RoundEndEvent для победителей/проигравших в API разработчика
- - Добавлены события PartyJoinEvent, PartyLeaveEvent и PartyInviteEvent в API разработчика
- - Добавлена функция respawn-countdown-time для отдельного отсчета времени смерти
- - Добавлена поддержка async-teleport (была в некоторых старых версиях, но была удалена)
- - Добавлена команда /surrender (практически то же самое, что и в аддоне StrikeSurrender)
- - Добавлен снежок при разрушении снежного блока в spleef (snowball-on-snow-break в конфиге)
- - Добавлены копируемые арены для FFA (use-copied-arena-for-ffa в конфиге)
- - Разрешить взрыв ветрового заряда в нестроительных наборах
- - Улучшен опыт использования TNT и функциональность Fireball
- - Сделать /battlekit extramaterial поддерживающим новые предметы
- - Сделать сообщения в виде списка (проще добавлять многострочные сообщения)
- - Улучшена поддержка новых версий Minecraft (1.21.1)
Исправления:
- - Исправлена команда «/battlekit extramaterials <kit> all».
- - Исправление: сделать блок под водой не разрушаемым, если он является частью карты
- - Исправлена проблема со сбросом кроватей, размещенных игроками
- - Исправлена ошибка с заполнением <wlr> при загрузке
- - Исправлено переименование новых предметов в руке
- - Исправлен редактор комплектов, не использующий правильное местоположение для обратного отсчета.
- - Исправлена ошибка перерождения моста и инста-пустоты в режиме моста
- - Исправлена дополнительная проверка bedwars на наличие игрока в сети и статус боя
- - Исправлена ошибка с цветными предметами bedwars
- - Исправлено двойное начисление очков в режиме моста
- - Исправлена некорректная обработка разрушения блоков
- - Исправлены проблемы со взрывом снарядов и взрывом ветряных зарядов
Прочее:
- - Удален неиспользуемый код и т.д.
- - Небольшие общие оптимизации и рефакторинг
- - Мелкие исправления (например, опечатки) и чистка
- - Исправление ремаппинга paper 1.20.6
- - Улучшение совместимости с бумагой 1.20.5+
- - Начальная поддержка 1.20.5 и 1.20.6 (1_20_R4)
- - Исправлена поддержка цветов для плейсхолдеров
- - Неисправность ила при установке инвентаря в 1.8
- - Очистка предмета ремесла/курсора при очистке инвентаря
- - Улучшен способ сохранения данных NPC (ботов)
- - Другие мелкие улучшения для ботов/NPC
- - Улучшена производительность за счет изменения способа удаления полосок здоровья
- - Исправлена ошибка, из-за которой арена скобок иногда не была доступна при начале раунда
- - Добавлена отдельная опция «disable-lobby-teleport», чтобы полностью запретить SP телепортироваться на респаун
- - Исправлена ошибка, вызванная тем, что проверки обновлений не имели таймаута
- - Исправлена ошибка, из-за которой плагин не включался, если граждане не работают
- - Исправлены блоки под водой, которые можно было сломать, даже если блок был частью карты
- - Исправлена ошибка SP API#forcewin при игре партия против партии
- - Исправлены ошибки, связанные с подсчетом очков на табло и некоторыми версиями патрубков
- - Исправлен дружественный огонь в партии, когда игрок наносил себе урон
- - Улучшено, как /battlekit stickspawn проверяет изменения координаты y
- - Была проведена куча внутренних рефакторингов и прочей работы