
This is a larger big fix release, with a few changes under the hood, and a few new features to boot.
I also want to thank a first time contributor Barnus30 for some work he did for this release.
Features:
- Configurable item slots for lobby, spectator, and game items (Barnus30)
Fixes:
- Block placements are now canceled for players in game (Barnus30)
- Fixed player role overlap and memory leaks (Barnus30)
- Improved support concurrent server threads which also improves plugin stability
- Updated dependencies
- Fixed an issue where players were teleported into a world before it was loaded, crashing the server
- Fixed an issue with loading bukkit materials, causing errors during tab completion
- Cached minecraft materials, items, and effects for improved speed
- Properly reset team list on game reset
- Inventories and scoreboards are now also saved for spectators
- Removed non required libraries from the jar to make it smaller (slightly)
Fixes:
- Debug menu options now work when a spectator
- Newly added seekers after being found in block hunt are no longer invisible
- Spectators can no longer take damage and/or die
- Spectators can no longer interact with the world/players
- When making a player no longer invisible, their skin toggles will be restored instead of all being off
- Menus will now check for permissions on click, not just on open
Features:
- 26.1 support
- PlaceholderAPI support ported from 1.x version of the plugin
- Scoreboards set prior to joining the game can now be restored upon leaving the game
- Major refactoring under the hood
Fixes:
- Block hunt collission now uses ray casinting for better hit reg
- Block hunt solidification should now trigger consistently
- Block hunt will now make "hit" noises for all players, not just the disguised
- Block hunt disguises should no longer disappear
- Block hunt players can no longer see a transparent copy of other disguised players
- Block hunt damage is now computed properly
- Block hunt disguised players are now given knock back when hitten to show where they are
- Map saves now use the map name in hs_
- Fixed a bug where config deserialization could not load in newly added config values from new plugin versions
fixes a bug where disguises cannot be removed
- fix exceptions being thrown on teleport and damange handler for blockhunt
- added some sanity checks during shutdown
- fix blocked command handler
- fix start command (w/ custom seeker pool)
- changed seeker weight algorithm to better spread weight
The rewrite of the plugin and testing has been complete! Please refer to the plugin description for how this pertains to you.
Changes since 2.0.0-alpha3:
- only allow glow on 1.9+
- fix item conversion on older versions
- properly remove armor on older versions
- fix end game delay always ending without delay
- allow last hider to be retaunted
- fix border immediately shrinking
- Fix the database legacy migration sql statements
- Fix setting all worlds to be autoSave false ;-;
- Added command /hs map blockhunt disguise
- Auto complete block names in blockhunt commands
- Fixed void generating chunks in non map save worlds
- Fixed onDamage having no attacker
- Fixed onDamage not respawning seeker properly
- Fixed config deserialize not handeling nulls
- Fixed config deserialize looking at more properties then it should
The entire plugin has been rewritten in kotlin from java, but still supports all versions since 1.8.x!
In terms of whats different for you? Not much! The goal of this rewrite was to make the plugin more stable, and make it easier to expand on in the future! So for yall, the commands and the permissions from the 1.x series are the same.
I also want to warn that your old configs are INCOMPATIABLE from the 1.x series of plugins, Though your database files will still work. Also this is an alpha build, I'm still working on testing and making sure everything works.
Bug Fixes
- Fixed NoClassDefError with java.util.Random.nextInt
- Check for null item in InventoryClickEvent
Updates
- Allow for multiple initial starting seekers
- /hs start now accepts multiple names for multiple
- Added startingSeekerCount config setting (default to 1)
- Allow for hiders to respawn as a spectator instead of a seeker
- respawnAsSpectator config setting
- Added config setting, waitTillNoneLeft. If disabled the last hider left will win and the game will end then instead of waiting till the timer runs out or all hiders are found
- Added hidingTimer config option, allowing how long hiders have to hide and is no longer locked to 30 seconds
- Added endGameDelay config option, allowing how long the delay after the game ends lasts
- Added gameOverTitle config option, which toggles if the gameover message is also shown in a title
- Added dontRewardQuit config option, to now toggle for when the last seeker or hider quits instead of a proper gameover, if the game should count the game in the database
- For the items in items.yml, the number indexes now reflect the inventory index, and now the indexes 'helmet', 'chestplate', 'leggings', and 'boots' can be used to auto apply armor
- Added PlaceholderAPI placeholders %hs_seekers% and %hs_hiders% to reflect how many of each team is left in the current match
- Changed command
/hs map set borderto now only be able to enable the border, and added a new commands/hs map unset borderto disable the border
Bug Fixes
- Added pages to spectator teleport menu, so that if there are more than 54 hiders, it doesn't crash
- Allow for multiple initial starting seekers
Changes
Support Minecraft Version 1.20 Change confusing /hs join commandUpdate XSeries to 9.3.1 for 1.19.4 material support Update ProtocolLib bindings to 5.0.0 Change WrappedDataWatcher check tocheck if the server versiosn is 1.19.3 or up directly instead of check if java class not found Change DisguiseHandler to check with EntityUseAction instead of WrappedEnumEntityUseAction Update /hs map status command to error if blockhunt is enabled and no blocks are passed Update UUID Decoder to call the java.nio.Buffer flip method directly instead of the extended ByteBuffer version on Java 9+Bugfixes
Seekers can no longer hold right click to easily find blockhunt hiders Blockhunt hiders are no longer forced to look up to drink potionsMulti Map Support Added
Maps are now stored in the maps.yml file /hs map add <name>, to add a map /hs map remove <name>, to remove a map /hs map set <command> <name> <data?>, to modify map /hs send <map> to switch maps, maps are also auto switched Blockhunt can be toggled per map Blockhunt blocks can be set per map and much morePermission changes
All permissions are now hs.<group>.<command> For example /hs map set spawn, is now hs.map.set.spawn Many permission plugins will auto fill this for youTechnical Changes
Major refactor when iterating with the spigot api Plugin should be more stable now :)Bug Fixes
Seekers can now talk Fixed 1.19.3 crashing on loadingMulti Map Support Added
Maps are now stored in the maps.yml file /hs map add <name>, to add a map /hs map remove <name>, to remove a map /hs map set <command> <name> <data?>, to modify map /hs send <map> to switch maps, maps are also auto switched Blockhunt can be toggled per map Blockhunt blocks can be set per map and much morePermission changes
All permissions are now hs.<group>.<command> For example /hs map set spawn, is now hs.map.set.spawn Many permission plugins will auto fill this for youTechnical Changes
Major refactor when iterating with the spigot api Plugin should be more stable now :)Bug Fixes
Seekers can now talk Fixed 1.19.3 crashing on loadingBug Fixes
Stop Game Items From Dropping Fix 1.8 Void Generation Fix SEEKER_SPAWN is not in localization Shorten Collision Group Team name for compatibility reasons Fix respawn timer not showing Update XSeries to work with 1.19 Materials for BlockhuntAdditions
Added a Seeker Lobby where seekers wait during the hiding phase When seekers or hiders are killed and become seekers, they can also be set to wait a delayed respawn here The delayed respawn is toggable and the time to wait is also customizable You can now set how long it takes blocks to solidify Bug Fixes 1.8 Board fixes 1.8 Failed to Select Seeker fixChanges
Adds blockhunt into the game Please enable blockhunt in the config.yml file Fixes sqlite on 1.8 servers from plugin version 1.5.xSadly blockhunt does currently not work on 1.8.x, but hopefully that will be changed in the future. Normal hide and seek still functions as intended.
Inventory can now be restored upon leaving the game.
When any player joins a game their inventory is cleared If you enable Inventory saving, that cleared inventory is restored upon leave