Добавлена функция:
Добавлена функциональность войн за яйца: Пользовательские кровати, определенные как "яйцо дракона", теперь не телепортируются при нажатии на них
Улучшения:
Зрители теперь видят себя в режиме приключений, когда они присоединяются с 1.17+
Выбрасывать предупреждение при загрузке, если для "dateformat" был задан неверный шаблон, вместо того, чтобы выплевывать ошибки во время выполнения
Голограммы/торговцы теперь могут быть легче уничтожены, если атаковать их спам-кликами
Заглушены все InterruptedException при остановке плагина (ошибки выбрасывались специально по техническим причинам)
Дополнения к API:
ConfigFile#TEAMS (Спасибо @MetallicGoat )
Message#done(locale)
Message#done(locale, freeInstance)
Team.VALUES
QuitPlayerMemory#getGameStats()
Исправлены ошибки:
Исправлен хотбар, не появляющийся после респауна на 1.16 и старше, если для параметра anticheat-enabled было установлено значение true
Исправлена невозможность полета в качестве зрителя, когда значение anticheat-enabled было установлено на true
Исправлена невозможность сломать пользовательские блоки кровати, кроме материала кровати
Исправлено отключение зрительского контроля при смерти, из-за чего предметы не очищались после респауна
Исправлены проблемы, связанные с тем, что MBedwars не проверял предметы курсора. Позволяет игрокам покупать предметы бесплатно, а также предметы не зачаровываются при обновлении команды (спасибо @MetallicGoat)
Исправлено, что апгрейды не отображаются, если нет ловушек с "гипиксельной" раскладкой апгрейдов (Спасибо @MetallicGoat )
Исправлена невозможность открыть магазин деревенского жителя при одновременной атаке на него
Исправлен потенциальный NPE при принудительной остановке регенератора региона в тот момент, когда он готовил чанки
Исправлено исключение NoSuchMethodException при выходе игрока из ярости
Исправлено потенциальное "NoSuchFileException" с LOCAL-хранилищем, когда несколько сложных операций чтения/записи происходят с одним и тем же компонентом данных одновременно
Исправлено, что Team.getByName не учитывал другие языки
Исправлена ошибка сброса игровой статистики (только визуально) после повторного вступления в игру
Изменения в конфигурации:
- Добавлен файл teams.yml
- В нем вы теперь можете переписать имя без файла сообщений, переопределить сгенерированные по умолчанию инициалы, задать пользовательский чат и цвет краски
- Добавлено в config.yml
- invisibility-hides-armor-remove-particles
- parties-member-follow-enabled
- Удалены ненужные конфиги в config.yml (функции остались, они просто включены навсегда; спасибо
- hex-support
- death-skipscreen-advanced
- placeholderapi-enabled
- Добавлен конфиг "restriction" на страницы магазинов
Улучшения:
- Проверка совместимости теперь выводит все проблемы в одном компактном предупреждении из-за чистки кода, касающегося этих компонентов
- Немного улучшена производительность за счет отсутствия регенерации инициалов при каждом обращении
- Теперь попытка повторного присоединения к игроку, если он непосредственно присоединяется к арене, вместо добавления его в качестве зрителя
- Немного улучшена производительность за счет того, что планировщик главного потока вообще не запускается, если нет ни одной активной арены
- Обновлены цены в магазине и апгрейде по умолчанию в шаблоне "hypixel"
- Теперь при нажатии на предмет магазина цены обновляются немедленно. Это было проблемой до 1.12.2 из-за того, что Minecraft плохо обрабатывает внутренние обновления инвентаря
Изменения в API:
- Дополнения
- Team#setEnforcedInitials(initials)
- Team#getEnforcedInitials()
- Team#setConfigName(name)
- Team#getConfigName()
- VarParticle: Будьте более строги при разборе частиц 1.9+ без данных (даже если они требуются), чтобы избежать ошибок при спавне
Исправлены ошибки:
- Исправлена блокировка блоков мира, которая не освобождалась при регенерации, из-за чего последующие блоки застревали на неопределенное время
- Исправлены очень редкие случаи возникновения условий гонки для голограмм, вызывающие странные проблемы при оптимизации времени выполнения
- Исправлена несовместимость с различными частицами с устаревшей конфигурацией в 1.21 из-за того, что новые частицы предпочитали данные вместо дополнительных
- Исправлены частицы из "invisibility-hides-armor-extra-particles-count", которые были немного неправильно выровнены
- Исправлены частицы из "invisibility-hides-armor-extra-particles-count", имевшие неправильный цвет для 1.21+
- Исправлена возможность зрителей влиять на матчи (например, подбирать спавнеры) на 1.14+, вызванная асинхронной телепортацией
- Исправлена ошибка, вызванная удалением конструктора в 1.21
- Исправлена совместимость с бумагой 1.21
- Исправлено потенциальное NoSuchElementException при остановке ProxySync
Добавлен API:Исправлены ошибки:
- Helper#getEnchantmentByName(String)
- Исправлен NPE при удалении некоторых типов табло
- Исправлена ошибка "Cannot find null enchantment"
Добавлена поддержка:
- MC1.21 (спасибо MetallicGoat )
Разное:
- Удалены различные неиспользуемые сообщения из файла сообщений
- Уменьшена задержка при выдаче предметов при респауне и для зрителей
- Изменения API:
- Исправлена асинхронность Arena#saveNow() и Arena#saveAsync()
- Добавлено
- MessageAPI#getLocaleFetcher()
- MessageAPI#setLocaleFetcher(fetcher)
- MessageAPI#getDefaultLocaleFetcher()
- Helper#formatDuration(Duration)
- Helper#formatDuration(long)
- PlayerStatSet#formatValue(Number)
Исправлены ошибки:
- Исправлено нарушение автоматического клонирования с предыдущим обновлением
- Исправлено отсутствие запуска с бумагой 1.20.5+
- Исправлен файл сообщений по умолчанию Отсутствие PlayerPrivateInventory_Title (Спасибо MetallicGoat )
- Исправлено, что игроки не восстанавливали свой инвентарь при выходе с арены на 1.20.5+
- Исправлена возможная ошибка при составлении предмета без компонентов в 1.20.5+
- Исправлены проблемы с переименованием арен (после перезапуска ранее переименованные арены появлялись снова) (Спасибо MetallicGoat )
- Исправлена ошибка быстрой покупки "гипикселя", конфликтующая со скинами из косметического дерева
Добавлена поддержка:
- 1.20.5 и 1.20.6 (спасибо @MetallicGoat за помощь)
- Перемещены банки CraftBukkit (Спасибо @MetallicGoat )
- Обновлена поддержка CloudNetV4 с их новыми релизами
Добавлен язык:
- Люксембургский
- Добавлена статистика:
- Final K/D (Коэффициент между финальными убийствами и финальными смертями) (Спасибо @MetallicGoat )
Добавлены конфиги:
- block-purchases-outside-running-arenas: Отключает возможность покупать предметы вне магазина (Спасибо @MetallicGoat )
- Полезно в случае, если вы хотите позволить игрокам изменять настройки быстрой покупки в хабе
- teamchest-enabled (Спасибо @MetallicGoat )
Улучшения:
- Быть более агрессивным при отображении табло, и отправлять предупреждения, если табло постоянно переприменяется, чтобы отменить другой плагин (Спасибо @MetallicGoat )
- Теперь игроки с правами mbedwars.admin могут преодолевать большие расстояния на арене, не получая пинков (в случае, если включен kick-outofarena) (Спасибо @MetallicGoat )
- Связано с включением лобби-брейка: (Спасибо @MetallicGoat )
- Блоки за пределами игровой арены теперь не ломаются в качестве меры безопасности
- Теперь выводится предупреждение, если лобби полностью находится за пределами арены, для улучшения QoL
- Добавлена информация о состоянии покупки для групп покупок в магазине «HypixelV2» (например, MAXED & UNLOCKED) (Спасибо @MetallicGoat )
- Уделили Localazy (платформа для перевода) больше внимания
- Избавились от путаницы с прошлым импортом
- Просмотрел все изменения, запрошенные пользователями, и впредь будет делать это чаще
- Объединил латиноамериканский испанский с испанским (теперь 100% завершено)
- Обновлена система блокировки файлов: Теперь она лучше интегрируется с ОС и исправлены некоторые проблемы, которые могли возникнуть
Улучшена производительность:
- Ускорена загрузка/генерация мира в некоторых ситуациях за счет исключения автозагрузки спавна
- Значительно улучшена производительность генерации мира пустоты на 1.18+ за счет использования нового API (спасибо @MetallicGoat)
- Сделана более эффективная миграция хранилища
- Значительно улучшена производительность индексов для локальных хранилищ
Добавлен API:
- RemoteServerDisconnectEvent.Cause.SELF_TIMEOUT
- RemoteServer#getMinecraftVersion()
- RemoteServer#getMinecraftVersionPatch()
- RemoteArena#syncProperties(Property... properties)
- Arena#getEnderChestInventory(Player) (Спасибо @MetallicGoat )
События:
- PlayerOpenArenaChestEvent (Спасибо @MetallicGoat )
Исправлены ошибки:
- Исправлено событие ArenaIssueCheckEvent не работало так, как было задумано, поскольку в большинстве мест использовались только значения по умолчанию
- Исправлено ConfigurationAPI работал только с точными именами полей (Спасибо @MetallicGoat )
Исправлены ошибки:
- Исправлена ошибка с поддержкой планов
- Исправлено, что продукты спавнера не складывались с дропом спавнера (Спасибо @MetallicGoat )
- Исправлена невозможность использования пользовательских звуков с 1.19R2+
- Исправление PaF Bungee: Не получал ответа, если игрок еще не был зарегистрирован на тарзанке
- Исправлена проблема с автоматической ресинхронизацией в setup gui для удаленных арен
- Исправлено двойное открытие setup gui, когда в команде был указан параметр арены
- Исправлена ошибка отправки сообщения в чат (с префиксом), даже если оно было настроено как пустое в файле конфигурации сообщений
- Исправлены иконки BergwerkLabs ShopLayouts, которые становились красящими после первого рендера (Спасибо @MetallicGoat )
- Исправлен NPE, который мог произойти, если включено обнаружение выхода из ярости (Спасибо @MetallicGoat )
- Убраны лишние телепорты, когда игрок входит в spectate on death, и вместе с этим исправлена ошибка «death-spectate-at-death-location», которая не всегда соблюдалась (Спасибо @MetallicGoat )
- Исправлены факелы из красного камня, не отображающиеся в некоторых ги на устаревших версиях. Они могут выдавать ошибки, если вы используете NBT с ними (Спасибо @MetallicGoat )
- Исправлена ошибка угадывания прогресса перевода в гуи настроек
Добавлена функция:
Теперь обнаружение выхода из ярости и соответствующее вознаграждение дамагера / уничтожения кроватиИзменения в конфигурации:
Добавлено:
вознаграждение за смерть на кровати разрушителя
rage-quit-auto-detect
rage-quit-auto-detect-max-time
Удалено, так как вызывало нежелательное поведение:
fireball-jumping-enabledДобавлен API:
HookAPI#getCloudSystemHooks()
HookAPI#registerCloudSystemHook(CloudSystemHook)
Исправлены ошибки:
Исправлено отключение API призов в обратном направлении
Исправлена невозможность изменить направление огненного шара, например, ударив по нему
Исправлено падение сервера при одновременном выполнении двух проверок обновлений в очень медленной сети
[API] Исправлено "Рекурсивное обновление" при установке статов во время прослушивания события PlayerStatChangeEvent
[API] Исправлен вызов onReady до загрузки всех хуков
Добавлена функция:
Разработчики теперь могут отключить получение призов за матчиДобавлены конфигурации:
- border-efficent-alternative: Альтернативный, менее красивый рендерер границ для меньшего использования сети
Улучшения производительности:
- Значительно снижена вероятность микролагов для 1.8 - 1.13 за счет использования асинхронной обработки чанков (только для бумаги)
Улучшения:
- Теперь можно использовать \n в строках сообщений, предназначенных для макета магазина HyPixelV2
- Разрешение "mbedwars.admin" теперь также разрешает "mbedwars.arenatp" и "mbedwars.arenabuild"
- Консоль теперь может заставить игроков открывать магазины с помощью команд "/bw tools openshop" и "openupgradeshop"
Добавлено API:
- Arena#isPrizeForMatchEnabled()
- Arena#addPrizeForMatchDisabledTicket(ticketId)
- Arena#removePrizeForMatchDisabledTicket(ticketId)
- Arena#getPrizeForMatchDisabledTickets()
Исправлены ошибки:
- Исправлена возможность видеть статы голо других игроков
- Исправлена ошибка, из-за которой VarParticle не работала async
- Исправлен регенератор регионов, который мог застрять на 1.13 и старше
- Исправлена невозможность породить что-либо, связанное с блоками (например, joinarenasign)
- Исправлена невозможность покупки апгрейдов с помощью нового шаблона
- Исправлена поломка зеркала EntityItem#itemStack в шине PlayerPickupItemEvent на 1.15 и старше
- Исправлено некорректное обновление пула арены на странице конфигурации для голосования
- Исправлена ошибка, при которой взрывчатка не наносила урон игрокам из одной команды
- Исправлено выкидывание с арены при падении в пустоту во время endlobby
Исправлены ошибки:
- Исправлена потенциальная ошибка "Невозможно найти кодек для CodecCacheKey" при массовом сохранении статистики с помощью MongoDB
- Исправлена ошибка загрузки графических интерфейсов арен
- Исправлены ошибки при использовании обычной, не спавнерской цены в магазине
- Исправлена невозможность получить достижение "Получить все достижения", если некоторые из них были отключены
- Исправлена невозможность использования пользовательских переменных пикера в "player-picker-placeholder"
Добавлена поддержка для:
- Hao's Nick API (включает в себя HaoNick и т.д.) (Спасибо MetallicGoat )
- Plan
Добавлена функция:
Изменения в конфиге:
- Добавлена функция, позволяющая избежать использования игроками статистики
- Поставляется с различными новыми конфигами
- Добавлено
- lobby-exbar-animation
- spectator-permit-other-player-view
- "commands-as-console" в lobby-hotbar.yml и spectator-hotbar.yml
- fireball-max-knockback-y
- fireball-max-knockback-xz
- explosive-max-knockback-y
- explosive-max-knockback-xz
- fireball-fly-speed-constant
- itemspawner-auto-center (Спасибо @MetallicGoat )
- stats-antiabuse-enabled
- stats-antiabuse-count-round-min-duration
- stats-antiabuse-count-wins-count
- Добавлено специальное условие для специального имени типа дропа "%VANILLA%", чтобы не применять пользовательское имя
- Теперь возможно применить "DisplayName" (с помощью NBT) для предметов типа drop
- Добавлены заполнители {missing-name} и {missing-amount} в сообщения "TooFew_Materials" и "UpgradeShop_TooFew_Materials"
- Удален конфиг arenavoting-enabled
- regeneration-region-efficient теперь включен по умолчанию и вышел из бета-версии
- Изменения в звуках
- Удалены звуки из давно удаленных функций
- Добавлены звуки в гуи настроек
- Дополнительный звук клика в ArenasGUI (спасибо @MetallicGoat )
Улучшения производительности:
- Уменьшено количество создаваемых кратковременных потоков
- Переписаны часто используемые алгоритмы для повышения эффективности
- Исправлена перегрузка синхронизатора (уменьшает вероятность микролагов)
- Теперь для разбора выражений используется javaluator вместо Nashorn для уменьшения занимаемой памяти
Улучшения:
- Перекрашивание синего, светло-голубого и голубого цветов командного чата в более подходящие цвета
- Обновлен шаблон "hypixel"
- Автоматическое преобразование пространств имен (для зачарований) в нижний регистр во избежание ошибок
- Добавлена подсказка с командой при появлении предупреждения о том, что сначала нужно отключить/включить арену
- Отключение арены с запущенным матчем теперь "изящно" останавливает матч (он регенерируется)
- Удалено предупреждение "old-fishing-knockback" для совместимости с OldCombatMechanics при использовании 2.0 или более новой версии
- Убрана регенерация мира в режиме параллелизма, чтобы избежать зависания сервера (теперь только для регионов)
- Теперь скрываются атрибуты предметов для иконок арены (везде, где они отображаются) и предметов в графическом интерфейсе настроек
- Система голосования на арене была полностью переписана
- Устранены проблемы с ареной: MUST_JOIN_VOTING и VOTING_MUST_JOIN_NORMAL
- Добавлена возможность голосования на арене: ГОЛОСОВАНИЕ_УЧАСТИЕ
- Различные изменения API и конфигурации
- Добавлено новое предупреждение о повторном присоединении в случае, если вы еще не присоединились ни к одному матчу. Ранее оно показывало, что предыдущий матч больше не активен
- Немедленное завершение раундов, если в онлайне осталась только одна команда (даже если включена функция solo-rejoin) (Спасибо @MetallicGoat )
- Улучшения в прыжках с фаерболом и TNT
- Различные новые конфиги
- Расчет скорости более точно использует местоположение взрывчатки и игрока
- Изменены конфиги по умолчанию для улучшения ощущений
- Оптимизировано время создания клонированных арен
Изменения в API:
- Включение источников API для интеграции javadoc в IDE
- Добавлены события
- PlayerUseSpecialItemFireballEvent
- PlayerShopProductGivingDetermineEvent
- Событие PlayerArenaVoteEvent
- ArenaVotingPoolUpdateEvent
- Добавлены различные функции
- ShopPrice#getMissingAmount(player, inv)
- ShopPrice#getMissingAmount(player)
- Класс BukkitEntitySkin для API голограмм
- Класс BukkitEntitySkin для API голограммы
- GameAPI#useSpecialItem(предмет, игрок, арена, holdingItem)
- Helper#playSound(location, sound, volume, pitch)
- Helper#playSound(player, location, sound, volume, pitch)
- Helper#playCustomSound(location, sound, volume, pitch)
- Helper#playCustomSound(player, location, sound, volume, pitch)
- KickReason#ARENA_STOP
- WorldStorage#getNearbyHolograms(location, radius)
- PlayerDataAPI#getStatSet(id)
- RejoinedPlayerIssue#NOT_PARTICIPATING
- HolographicHologramSkin$PlayerSpecificLinesSupplier.of(Message)
- HolographicHologramSkin$PlayerSpecificLinesSupplier.of(List<Message>)
- Helper#evaluateString(string)
- PlayerBuyInShopEvent#getClonedItem()
- PlayerDataAPI#getAchievementTypeById(String)
- PlayerDataAPI#getRegisteredAchievementTypes()
- PlayerDataAPI#getRegisteredAchievementTypes()
- LobbyItem#isCommandsAsConsole()
- LobbyItem#setCommandsAsConsole(boolean)
- SpectatorItem#isCommandsAsConsole()
- SpectatorItem#setCommandsAsConsole(boolean)
- Класс VarSound
- ShopOpenCause#isInitial()
- UpgradeShopOpenCause#isInitial()
- Arena#getVoting()
- Arena#getParticipatingVotingPool()
- Изменения
- Удалена NMSHelper#showTitle(player, text, subText, stayTime)
- Переименованы параметры в методе NMSHelper#showTitle
- Изменен порядок параметров fadeIn и stayTime в методе NMSHelper#showTitle (для большего соответствия API Bukkit)
- HolographicHologramSkin$PlayerSpecificLinesSupplier#getLines(...) теперь ожидает список вместо коллекции
- DropType#getSpawnSound() теперь возвращает новый класс VarSound вместо звука из Bukkit
- DropType#setSpawnSound(sound) теперь ожидает новый класс VarSound вместо звука Bukkit
- DamageableSkin #getDamageSound() и #getDeathSound() теперь возвращают новый класс VarSound вместо звука Bukkit
- Исправлена невозможность изменения страницы в ShopOpenEvent
Исправлены ошибки:
- Исправлены неработающие некоторые обновления или ловушки (из-за неспособности найти близлежащие сущности async) (Спасибо @MetallicGoat )
- Исправлен потенциальный ConcurrentModificationException с BungeecordManager
- Исправлена опечатка в CrashMessage_LowerCornerOutOfBounds
- Исправлена потенциальная ошибка с отсутствующими hub pos и auto join
- Исправлена неработающая MongoDB
- Исправлена возможность взаимодействия со знаками в игре, даже если это было отключено в config.yml (Спасибо @MetallicGoat )
- Исправлено отсутствие запуска на 1.17.1
- Исправлены проблемы, вызванные удалением конструктора Paper у EntityDamageEvent (Спасибо @MetallicGoat )
- Исправлено неполучение обратной связи при регенерации арены, когда на ней был матч
- Исправлена невозможность модифицировать блоки на краю арены региона
- Исправлено, что сторожевые псы иногда нацеливались на зрителей (Спасибо @MetallicGoat )
- Исправлено то, что атрибуты предметов не скрывались, как предполагалось, на 1.14+
- Исправлено не обновление графического интерфейса настройки (проблема не исчезала) при настройке лобби или обновлении игровой области
- Исправлен предмет "следующая страница", который оставался на странице настройки арены для голосования, даже если это уже последняя страница
- Исправлено сохранение цвета игрока при выходе с арены
- Исправлена ошибка "Объект не поддерживается" в новых версиях ASWM
- Исправлена ошибка UnknownWorldException в SWM
- Исправлены проблемы, связанные с проверкой существования мира лобби
- Исправлена ошибка "/bw arena spaвнер give", не возвращающая точный дроп
- Исправлен конфликт с CarbonSpigot
- Исправлено несколько звуков, которые не работали так, как было задумано
- Исправлены потенциальные ошибки с телепортацией волков, чей владелец не является игроком
- Исправлено автоматическое клонирование, создающее новый мир для каждой региональной арены
- Исправлено автоматическое клонирование, иногда не очищающее папки со старыми мирами
- Исправлена проблема с автоматическим клонированием: Некоторые региональные арены не генерировались должным образом, если была включена функция regeneration-region-efficient
Исправлены ошибки:
- Исправлены ошибки со звуками на paper 1.20.3+
- Исправлена возможность спамить лобби форсстарта
- Исправлена ошибка очистки старых клонированных миров при использовании региональных арен
- Исправлено неправильное применение цветов вкладок игроков
- Исправлено "ArrayIndexOutOfBoundsException", связанное с получением информации о таблице лидеров с помощью SQL (возникало только с определенными версиями SQL)
- Исправлено потенциальное "Неожиданное завершение входного потока ZLIB" в новых версиях ASWM