
A Minecraft Blockhunt and Hide and Seek Plugin
- Fully configurable
- Customizable scoreboards
- Database to store wins/losses/kills/deaths
- Block hunt with custom disguises
- Multiple maps per server
Supported Versions: 1.8.x - 26.3.x
Resources
Reporting Bugs
Instead of leaving a review with the error message, please report issues here.
Contributing
Please send PRs here and make sure to read the CONTRIBUTING.md file in the repository.
Features
- This plugin supports both Blockhunt and regular Hide and Seek game-modes, which can be toggled in the config.yml
- A Glow power-up for Hiders to view where nearby Seekers are located. Can be disabled and configured.
- A border that slowly closes in as the game progresses, killing those who are left on the outside. Can be disabled and configured.
- A taunt system that randomly selects hiders and lets seekers know of their presence. Can be disabled and configured.
- Player's wins, losses, kills, deaths, and hider and seeker statics are stored in a SQLite or MySQL/MariaDB database.
- Fully lobby system where players can join, automatic starting, and custom scoreboards.
- Fully custom in game scoreboard that can display teams, power-up information, event information, and game information.
- Total message localization that allows players to change any message in the plugin to whatever they want. English localizations have been premade, but still can be altered if wished.
- Custom items and effects can be given out to either the Hiders and Spectators for when they are in the game.
- A complete spectator mode with player teleporting.
Config Files
- config.yml - The general configuration file which contains most of the plugins configuration options along with help text to help server owners understand the options.
- items.yml - Sets what items and effects each team gets while in the game
- board.yml - Sets what is displayed on the lobby or in game scoreboard
- locale.yml - Sets what text is displayed by the plugin. Can be used to change the wording of the message, or even the language
For futher information, view the wiki!.
All Versions
+ Add Version| Name | Game version | Platforms | Published | Downloads | Actions |
|---|---|---|---|---|---|
| 15h ago | 1 | ||||
| 15h ago | 1 | ||||
|
R
2.2.0
|
15h ago | 1 | |||
|
R
2.1.2
|
15h ago | 1 | |||
|
R
2.1.1
|
15h ago | 1 | |||
|
R
2.1.0
|
15h ago | 1 | |||
|
R
2.0.2
|
15h ago | 1 | |||
|
R
2.0.1
|
15h ago | 1 | |||
|
R
2.0.0
|
15h ago | 1 | |||
|
R
1.7.6
|
15h ago | 1 | |||
|
R
1.7.5
|
15h ago | 1 | |||
|
R
1.7.4
|
15h ago | 1 | |||
|
R
1.7.3
|
15h ago | 1 | |||
|
R
1.7.2
|
15h ago | 1 | |||
|
R
1.7.1
|
15h ago | 1 | |||
|
R
1.7.0
|
15h ago | 1 | |||
|
R
1.6.2
|
15h ago | 1 | |||
|
R
1.6.1
|
15h ago | 1 | |||
|
R
1.6.0
|
15h ago | 1 | |||
|
R
1.5.1
|
15h ago | 1 | |||
|
R
1.5.0
|
15h ago | 1 | |||
|
R
1.4.2
|
15h ago | 1 | |||
|
R
1.4.1
|
15h ago | 1 | |||
|
R
1.4.0
|
15h ago | 1 | |||
|
R
1.3.3
|
15h ago | 1 | |||
|
R
1.3.2
|
15h ago | 1 | |||
|
R
1.3.1
|
15h ago | 1 | |||
|
R
1.3.0
|
15h ago | 1 | |||
|
R
1.2.0
|
15h ago | 1 | |||
|
R
1.1.2
|
15h ago | 1 | |||
|
R
1.1.0
|
15h ago | 1 | |||
|
R
1.0.0
|
15h ago | 1 |
- 26.3 support
- Experiential fabric support
- Added configurable command hooks than can at the start/end of games
- Added tag game mode
- Added commands and placeholders to get win information for the
- Seekers are now notified when they undisguise someone in blockhunt
Fixes:
- Potions now work on 1.8 bukkit
- Save the plugins config on map creation
- World deletion now required confirmation
- World's are now saved before map-saves
- World's now save their world type
- Fix 1.20.6 support
- Multiple locale typo fixes
- Don't disguise seeker on close blockhunt menu
- Disguise states are cleaned-up on game reset
- Fix world validation on purpur 1.21.11
- Allow lobby spawn to be outside map bounds
- Found hiders no longer win at hide and seek
- The game tick is now entirely synchronized
- Plugin configuration is now saved on reload
- Fixed broken player left checks
- Menu prefixes can no longer be left empty
- Permission check added for blockhunt debug menu
- Disguised players in block hunt now have an upwards velocity applied
- 26.3 support
- Experiential fabric support
- Added configurable command hooks than can at the start/end of games
- Added tag game mode
- Added commands and placeholders to get win information for the
- Seekers are now notified when they undisguise someone in blockhunt
Fixes:
- Potions now work on 1.8 bukkit
- Save the plugins config on map creation
- World deletion now required confirmation
- World's are now saved before map-saves
- World's now save their world type
- Fix 1.20.6 support
- Multiple locale typo fixes
- Don't disguise seeker on close blockhunt menu
- Disguise states are cleaned-up on game reset
- Fix world validation on purpur 1.21.11
- Allow lobby spawn to be outside map bounds
- Found hiders no longer win at hide and seek
- The game tick is now entirely synchronized
- Plugin configuration is now saved on reload
- Fixed broken player left checks
- Menu prefixes can no longer be left empty
- Permission check added for blockhunt debug menu
- Disguised players in block hunt now have an upwards velocity applied
- 26.2 support
- bStats integration
- Plugin update checks are now performed
Fixes:
- More sounds created by spectators are supressed
- Fixed loading nested defaults in yaml files
- Build information is now stored within the jar
- Updated dependencies
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)
- Debug menu options now work when a spectator
- Newly added seekers after being found in block hunt are no longer
- 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
- Menus will now check for permissions on click, not just on open
- 26.1 support
- PlaceholderAPI support ported from 1.x version of the plugin
- Scoreboards set prior to joining the game can now be restored
- 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
- Block hunt disguises should no longer disappear
- Block hunt players can no longer see a transparent copy of other
- Block hunt damage is now computed properly
- Block hunt disguised players are now given knock back when hitten
- Map saves now use the map name in hs_<map> instead of the world name.
Thus, map saves will need to be remade.
- Fixed a bug where config deserialization could not load in newly added
- 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
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
- Fixed NoClassDefError with java.util.Random.nextInt
- Check for null item in InventoryClickEvent
- 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
Support Minecraft Version 1.20
Change confusing /hs join command
Update 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 potions
Multi 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 more
Permission 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 you
Technical 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 loading
Multi 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 more
Permission 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 you
Technical 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 loading
Bug 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 Blockhunt
Additions
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 fix
Changes
Adds blockhunt into the game
Please enable blockhunt in the config.yml file
Fixes sqlite on 1.8 servers from plugin version 1.5.x
Sadly 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
Additions
Added new debug menu [Admin]
/hs debug
Allows testing of switching to any team, testing death, leaving, and teleports
Better Spectator
Spectators are no longer in Spectator mode, but in Adventure mode just like big servers such as Hypixel
Spectators are still invisible and cant interact
New spectator compass to teleport to other players
Spectators can toggle flight
Map saves are now optional
Custom placeholders via placeholder api
More info on wiki
leaveOnEnd added to config
Players can now be kicked out at the end of the game instead of going back to the lobby
MySQL database support
Additional leader board states
More info on wiki
Hider countdown can now be displayed in the actionbar or title
Bug Fixes
Map save is no longer broken on windows servers
Hiders no longer win upon all seakers leaving
Special characters are no longer removed from config files
Scoreboard titles now follow leaderboard.yml
Fixed SQL Queries
Improved Damage Event
Added two clickable items in the game lobby
Bed: Leaves the lobby
Clock: Starts the game for those who have the permission
You can change what these items are, and you can also disable them
New configurable leave system (preparing for multi arena support)
If you are running a bungeecord or velocity server, when someone leaves the lobby, you can now send them to a hub server instead of a teleport location.
Added blockedInteracts section to config. Server owners can now block block interactions while people are in game.
Players not in game are no longer affected by plugin's custom EntityDamageEvent
1.8 SUPPORT ADDED
Every Minecraft version from 1.8.x to 1.18.x now works with the plugin.
Glow powerup does not work on 1.8, since the glow effect wasn't added until 1.9.
Seeker ping noise changed to work on all versions, not just 1.14.x and up
Custom Scoreboards
You can now customize what shows up on the scoreboards in the lobby, and while playing the game.
New configuration file, leaderboard.yml.
New configuration settings
Seeker ping (the noise that plays when a seeker gets closer to you), can now be changed on what distance it plays
Can be turned off completely
Bug Fixes
Players no longer get teleported out of the game if they die incorrectly
Config typo fixed from "local" to "locale"
Glow effect no longer randomly terminates mid countdown
Sound packets are now more reliable
/hs savemap will now copy the selection you set, and not a selection 16 times smaller
Wins database now works on servers that don't have newer JDBC drivers
Fixed memory leaks with storing persistent player data
Other
Non persistent player data is now index by UUID and not player names. Persistent data was already index by UUID.
Gameplay changes
Spectators can no longer talk in game. Now there is spectator chat.
Game bounds are now enforced and players cannot leave them
Spectator title now shows if you join as a spectator
/hs wins <player> will tell the players total wins, hider wins, seeker wins, and total games played
/hs top <page> will show global leaderboard
Bug Fixes
Seekers can no longer be taunted (oops)
Bows and Arrows should actually work now
Fixed possible NULL POINTER EXCEPTION on taunts
Players should no longer be teleported back to main map after dying on plugin fault. It is now caught in an exception.
Permissions
hideandseek.leavebounds - Allows players to leave the bounds set by /hs setbounds while a game is in session.
Technical Information
UUIDs are now fetched from the Mojang API and Cached
SQLite Database is stored in plugin folder called database.db
Lots of refactoring
Copyright and License now shown in java file headers
Tab completion for commands now filters out commands that are that whats being typed.
Fixed FILE NOT FOUND EXCEPTION from being thrown
Added 1.14+ support 🥳 (1.13 doesn't work due to missing api calls)
Gameplay Changes
Added /hs bounds command. Specify the bound of the hide and seek map to make map saves faster, and generate void outside the duplicated game map world.
Scoreboard can now be toggled to show the taunt timer. Scoreboard now also shows if a glow powerup is active.
You can now choose if you want to kill to "find hiders", or if seekers only have to tag them.
Items.yml config file added. You can now set what items seekers and hiders get if kill to "find" is enabled. You can also specify what potion effects players get.
Technical Changes
Config files now will auto format them selves, and fix any invalid inputs. An incorrectly formatted yml file will still cause errors.
Fixed Null Pointer Exceptions being thrown when trying to set the game to a separate world without restarting the server.
Added german language support.
Many bug fixes
Code refactoring and optimization
- Map Saves
- Map is now rolled back after every game
- /hs savemap
- Lobby System
- Players must now join the lobby to play.
- /hs join - to join
- /hs leave - to leave
- /hs start - to start once in a lobby
- Players are no longer affected by the plugin, at all, if not in lobby or in game.
- Fixed PVP Mechanics
- Issues with multiverse and pvp fixed (hopefully)
- Friendly fire can no longer be spoofed or tricked.
- Scoreboards
- Lobby scoreboard telling:
- Amount of players
- Seekers and Hider % change
- Game scoreboard telling:
- What team you are on
- Time left
- Number of players in each team
- Spectating
- You can now run /hs join when a game is active to spectate.
- Localization
- You can now change the plugin into different languages, or just change what it says.
- You can style the messages to!
- New Configuration
- NEW CONFIG FILE, DELETE OLD ONE IF UPGRADING FROM 1.2.0 OR PRIOR
- added announceMessagesToNonPlayers
- added gameLength
- added nametagsVisible
- added prefix
- You can now modify message prefixes (not localization.yml)
- config can now be reloaded without restarting server (not localization.yml)
- Permissions
- The plugin can now be setup to work with permission plugins such as LuckPerms.
- Tab Completion
- Now tab complete options to help run plugin commands.
- Lots and lots of bug fixes
Glow powerup is now only visible to hiders.
Set seeker command merged in to start command.
Both world border commands merged into one.
Added tab autocomplete for plugin commands