- Native Minecraft Version:
- Tested Minecraft Versions:
- Source Code:
Ahoy, matey! Harbor is a Spigot plugin that redefines how sleep works in your server, making it easier for all the online players to get in bed quick and skip through the night!
NOTE: When updating to version 1.6, your previous configuration files WILL NOT work.
Harbor is designed to encourage players to sleep! It works best when installed in a survival SMP server, making it easier for players to skip the night and prevent Phantom attacks! Oh, it also does these things:
- The night can be smoothly skipped if a percentage of players are sleeping (customizable percentage in configuration)
- A counter of currently sleeping players is displayed to encourage other players to sleep.
- Players are notified in the chat or action bar if someone is sleeping.
- Players with the "harbor.bypass" permission can be excluded from the sleep count. Players in creative and spectator gamemodes can also be excluded.
- Sleep can be completely disabled and players won't be able to enter any bed.
- AFK players can be ignored from the sleep count.
- PHANTOMS! Those darn things can be completely disabled!
- A display of sleeping players in the current world can be seen by running "/sleeping"
If you need 1.8-1.13 support, the last version supported is Harbor 1.5.3. Harbor 1.6+ is 1.14+ only.
NOTE: The video only covers features that were available in version 1.0 of the plugin, so there's way more available now!
I believe that all plugins should be totally configurable, and as such, every part of this plugin can be modified in the configuration file! Every message is customizable and has full support for unicode and color codes.
# Harbor - A Sleep Enhancement Plugin!
# An open-source project by Mykyta (TechToolbox)
# Ahoy, matey! You've arrived at the configuration file, where things get a bit scary.
# Every single thing within this plugin is customizable (at least I tried to make it that way),
# so every message and plugin module can be modified here. If you would like to report a bug
# or suggest a feature, make sure to add an issue on the GitHub page for this plugin!
# GitHub URL: https://github.com/nkomarn/Harbor/issues
timer: 2 # How often (in seconds) to run the clock task (used to detect sleep, AFK players, time actionbar, etc.)
percent: 50 # Percent of players that need to sleep to skip night (must be between 0 to 100)
interval: 60 # Time skip interval that is added when the night get accelerated.
skip: true # Toggle night skipping feature. Configure amount of players needed to skip above (percent)
weather: true # Clear weather when skipping night
phantoms: false # Reset the sleep statistic (practically disables phantom spawns - false = no phantoms)
bypass: true # Toggle exclusion of operators/players with permission "harbor.bypass" from sleep count
ignore: true # Toggle exclusion of players in creative and spectator mode
afk: true # Detect AFK players and remove them from the sleep count (Essentials/API used for detection)
notifier: true # Displays a notification when a new update is released
chat: true # Toggle chat messages
skipped: # Night skipped chat messages
- "&eThe night has been skipped."
- "&eAhhh, finally morning."
- "&eArghh, it's so bright outside."
sleeping: "&e[player] is now sleeping ([sleeping]/[needed], [more] more needed to skip)." # Display which player went to bed
left: "&e[player] got out of bed ([sleeping]/[needed], [more] more needed to skip)." # Display when a player left their bed
accelerateNight: # Display when the night is being accelerated.
- "&eAccelerating the night."
- "&eRapidly approaching daytime."
actionbar: true # Enable/disable actionbar messages
sleeping: "&e[sleeping] out of [needed] players are sleeping ([more] more needed to skip)." # Shown when some players are in bed
everyone: "&eEveryone is sleeping. Sweet dreams!" # Shown when all players are in bed
prefix: "&8&l(&6&lHarbor&8&l)&r " # Prefix for Harbor command/miscellaneous messages
permission: "&7Insufficient permissions." # Sent when player doesn't have permissions to run command
unrecognized: "&7Unrecognized command." # Sent when command argument isn't recognized
blacklist: # Blacklist for worlds (Harbor will be disabled in these worlds)
# Spooky controls (don't change)
I am constantly thinking of ways to improve Harbor. As such, updates are usually pretty feature packed, so here's an extensive change log of all the things I've added, changed, or removed from Harbor:
- Fix update notifier join lag!
- Massively improved and simplified code! The whole plugin runs on a timer and uses newer API features
- Improved auto-updater system
- World blacklisting
- Smooth night skip! The night now smoothly accelerates until daytime.
- Removed NMS code, which slimmed down the plugin a lot
- Essentials AFK integration!
- Fixed configuration reloading
- Fixed weird message loop that would occur with 1.5 versions of Harbor
- Fixed permissions issues
- And lots, lots more! Harbor 1.6 is a completely new plugin on the inside!
- More fixes! Fixed the timer, which in turn will fix the night skip logic some and also make the actionbar actually work
- Just plain old fixes. Nothing more nothing less.
- Fixed updater to actually work (Spiget API seems to be broken for Harbor)
- Fixed the night skip on player leave bug
- Added fixes for new Spigot API changes
- Recoded the WHOLE plugin, this time making a nice Util class and a bunch of other stuff to ensure smooth operation!
- Added complete 1.13.2 - 1.14.2 support!
- Added a feature to disable Phantom spawning (those darn things).
- Made it possible to exclude players in creative and spectator mode.
- Added an auto-updater! It'll notify you when a new update it out and allow you to automatically download and install the update!
- Created an AFK player detection system, which will exclude AFK players from the needed count.
- Added title messages in the morning, night, and when going to sleep.
- Added a sleep delay that will make skipping the night less jarring.
- Implemented a "/sleeping" command which will display a GUI with currently sleeping players in your world!
- Finally fixed all math bugs. I think.
- Changed the rounding used for calculating needed players from floor to ceil.
- Made the repeated task less intensive on the server through the use of lambdas.
- Added a configuration version check that will warn you if your configuration is out of date!
- Implemented messages that display when a player leaves their bed.
- And many, many more optimizations!
- Fixed the OP/permission bypass feature!
- Added a feature that allows you to disable sleeping completely (pretty sure it only works on 1.13.2 right now)
- Fixed a Null Pointer Exception when operators would try to sleep!
- Added support for 1.13.2
- Removed the configuration version check as it was totally broken and rather useless
- Recoded and optimized the whole plugin!
- Added multi world support!
- Fixed player bypass, now fully excluding players with permission "harbor.bypass" from counts of all types!
- Made it so that weather clears when night is skipped!
- Added a lot more messages to the configuration.
- Literally remade the WHOLE configuration!
- Added a command allowing for reloading the configuration ("/harbor reload")!
- Implemented a debug option that prints extra messages to console for debugging purposes.
- Added an action bar placeholder that displays the amount of players that are needed for the night to skip.
- Added a feature that knocks players out of bed to prevent plugin glitches.
- Added configuration version checking (old configurations will be incompatible)
- Fixed the negative player count issue
- Fixed some minor math bugs to make the plugin round better.
- Added permission "harbor.bypass" which will allow players with it to skip the night!
- Made it so that putting the messages as blank in config won't print blank lines in chat.
- Prevented night skipping if only one player is online.
- Fixed night skipping on server versions 1.12.2 and below (night would skip no matter what even if one player got into bed)
- You can now change the amount of players that need to be sleeping to skip the night!
- Fixed the action bar player counter (previously would get stuck at 1 player).
- Harbor now supports all versions from 1.8 to 1.13.1!
- The default sleeping check time has been lowered to 1 seconds in the config.
- Fixed a bug where the amount of players sleeping would go below zero if the server was reloaded while players were in bed.
- The night can now be skipped if more than half of the online players are sleeping.
- Added optional chat messages (same as actionbar ones).
- Added a chat message that displays which player went to bed.
- The interval at which the plugin checks for players in bed can now be changed (can be set higher for weaker servers).
- Added more toggles and messages to configuration.
- Fixed bug where action bar messages would not show for a while after reloading the server.
- When players enter a bed, a message is shown in the actionbar to inform other players that it is time to sleep.
Harbor - A Sleep Enhancement Plugin! 1.6.1
Harbor is a plugin that redefines sleep within your Spigot server!