This update may contain some breaking changes to some gamemodes:
- Explosions now follow /battlekit extramaterials. Meaning that arena won't explode unless players could also break them by hand (which requires the blocks to be added in /battlekit extramaterials)
- "/battlekit bedwars" now works differently than "/battlekit bridge|mlgrush". Make sure these gamemodes still work (see /battlekit info and make sure "deathcooldown" is enabled for gamemodes where there should be a cooldown and "bestofreset" is enabled if the arena should reset between rounds)
You can wait a while before updating if you want to make sure it does not break anything.
New stuff:
- Make block explosions follow extramaterials (POSSIBLY BREAKING CHANGE!! Add the blocks you want to be breakable by explosions)
- Added command /battlekit shootfireballs <kit> (allow shooting fireballs, see "fireball" in the config.yml)
- Added command /battlekit autotnt <kit> to automatically ignite TNT
- Added command /battlekit nofalldamage <kit> (to disable fall damage)
- Real bedwars, kill after breaking bed (/battlekit bedwars)
- Changed /battlekit mlrush|bridge (and help info) because they no longer work like /battlekit bedwars
- Added alias commands: /duel requests and /duel settings
- Added placeholders <win_streak>, <win_streak_kit> (only with SQL database) and <opponent_rank>
- Added botfight#getBots method in the developer API
- Added enderpearl-cooldown.modify-exp-level configuration
- Added RoundEndEvent for winners/losers in the developer API
- Added PartyJoinEvent, PartyLeaveEvent, and PartyInviteEvent in the developer API
- Added respawn-countdown-time for separate death countdown duration
- Added support for async-teleport (this was in some very old versions but was removed)
- Added /surrender command (pretty much same as StrikeSurrender addon)
- Added snowball on snow block break in spleef (snowball-on-snow-break in the config)
- Added copied arenas for FFA (use-copied-arena-for-ffa in the config)
- Allow windcharge explosion in non-build kits
- Improved TNT experience and Fireball functionality
- Make /battlekit extramaterial support newer items
- Make messages work as a list too (easier to add multiline messages)
- Better support for newer Minecraft versions (1.21.1)
Fixes:
- Fixed command "/battlekit extramaterials <kit> all"
- Fix: make block below water unbreakable if part of the map
- Fixed issue with resetting beds placed by players
- Fixed error with <wlr> placeholder while loading
- Fixed renaming newer items in hand
- Fixed kit editor not using correct location for countdown.
- Fixed bridge and insta void not respawning in the bridge gamemode
- Fixed extra bedwars check for player online and fight status
- Fixed error with bedwars colored items
- Fixed double scoring in bridge gamemodes
- Fixed improper handling of block breaking
- Fixed projectile explosion issues and windcharge explosion
Other:
- Removed unused code etc.
- Small overall optimizations and refactoring
- Minor corrections (e.g., typos) and cleanup
This release has some nice new features, includes many fixes (and many related to the developer API) and some other minor changes.
The complete list of changes can be found below in a less readable format (sorry I was lazy)
Features:
- remove pearls immediately when one dies in a duel (or when the round ends)
- "duel-max-rounds for" /duel (20 default) to customize max rounds for duels
- 'spectator-keep-inside-arena' to force spectators to stay inside arenas
- possibility to decide gamemode for spectators (SURVIVAL by default)
- allow removing broadcast message
- trace debug logging (/sprac trace - not useful for most people unless you want to debug something more complex)
- added api#getLastSelectedEditedKit(Player) in the developer API
- debug log error when cooldown module failed to load
- add api#sendDuelRequest in the developer API
- made some command messages better
- added debug logging to "deleteeditedkits"
- update api (more in fixes section)
- added <is_in_queue> placeholders
- overall better debug logging
Fixes:
- ensure sync when giving spawn items (removed async item giving)
- Use autoReconnect=true by default for SQL databases
- added extra check to make sure the arena is available (for some reason the plugin would sometimes try to start a fight in an arena that was already in use when no other arenas were available - the "hacky" fix is for duels only though)
- fix: add Recordable in the API
- fix: bed break if newer material bed
- fixed blockdisappear in ffa arenas
- fixed lms event duration and arena displayname placeholders
- fix: ignore errors when setting biome
- fix: api#getQueuedKit not returning party queue kit
- fixed BotDuelEndEvent.WinnerType not being included in the API
- fixed RoundStartEvent#getPlayer2 although it was deprecated
- removed use of async inventory close
- fixed error on #forceEnd if reason is null
- check kit type in /queue <kit>
- made ffa fight players thread-safe
- fixed language items not being saved sometimes
- fix: send left-queue before actually left the queue for placeholders to work
- mark CitizensNPC as api class (even though it's kind of a bad decision but may help addon devs
- fixed bedwars materials not always changing
- unobfuscate DefaultCachedBlockChange
- mark multiple fight related things as @APIClass
- do not teleport to duplicate ffa arenas on /ffaarena
- /arena alerts not turning off debug logging
- keep DefaultPlayerStats unobfuscated for legacy reasons
- add short delay when forceEnding a fight due to error
- fixed prevent taking armor off in kit editor
- fixed deleting database keeping data.dat failing
- fixed some errors with kit editor
- error with koth capper 1.20
- made storm-wall-outside-arenas work with performance-mode
- fixed attempting to use long scoreboard lines on 1.13
- offline-player-stats was missing from config.yml, disabled by default
- API: do not obfuscate PlayerStats#CachedStatistic etc
- fix: error with CheckKitItemsHelper.java:54
- possibly fix some data migration, use "unknown" as fallback
Misc:
- refactor: minor refactor
- fix some dependencies and repositories (mainly for development)
- remove old references to /party open
- use HIGHEST priority in bedwars EntityDamageEvent, fixes compatibility with some other plugins
- Improved 1.20 (and other newer version) compatibility