Releases: BentoBoxWorld/BentoBox
1.14.2 - Particles!
Description
BentoBox 1.14.2 is a "hot fix" release to resolve an infinite loop bug when using the admin Blueprints to display the bounding box using particles. It can cause endless console spam when trying to paste a blueprint or set a blueprint pos1/pos2 bounding box.
Which Minecraft versions are compatible with this release?
Compiled against: Spigot 1.16.1
.
Tested on: 1.16.1
and 1.15.2
.
Support BentoBoxWorld
As a user, you're the one that keeps us thrilled to make continuous updates and improvements to all the BentoBoxWorld products. This is a voluntary and time-consuming yet exciting hobby.
So don't hesitate to join our Discord server and give us a hug, a “Thank You”. And if you feel that extra-generosity rushing in, tip us on PayPal or become a sponsor of tastybento, that's really much appreciated! (Donors get a special rank on our Discord server!) ❤️
1.14.1 - Heads up!
Description
BentoBox 1.14.1 introduces bug fixes and a major performance improvement amid some tweaks.
Thanks to everyone for your awesome support! ❤️
Which Minecraft versions are compatible with this release?
Compiled against: Spigot 1.16.1
.
Tested on: 1.16.1
and 1.15.2
.
Support BentoBoxWorld
As a user, you're the one that keeps us thrilled to make continuous updates and improvements to all the BentoBoxWorld products. This is a voluntary and time-consuming yet exciting hobby.
So don't hesitate to join our Discord server and give us a hug, a “Thank You”. And if you feel that extra-generosity rushing in, tip us on PayPal or become a sponsor of tastybento, that's really much appreciated! (Donors get a special rank on our Discord server!) ❤️
Changelog
Contents
Feature / Tweaks
Localization
- Tweaked colors of the "click-to-switch" message for the mode button in the Settings Panel.
- Added '(Right/Left) Click to open/toggle/cycle' in flags' description layouts.
Fixes
1.14.0 - 2020 Anniversary Update
Description
BentoBox 1.14.0 celebrates BentoBox's third birthday which occurred on May 21st (🎂). This update introduces the Minecraft 1.16.1 support, as well as notable API additions for Addons, various quality of life improvements and lots of little tweaks for those who want to get the most out of BentoBox. And, as usual, we improved performances and fixed some lots of bugs!
We're still in the process of writing these Release Notes. If you'd like to learn more about this update, come back in a few days!
Thanks to everyone for your awesome support! ❤️
Which Minecraft versions are compatible with this release?
Compiled against: Spigot 1.16.1
.
Tested on: 1.16.1
and 1.15.2
.
Upgrading from 1.15.2? See below for edits you'll need to make to config.yml files.
Support BentoBoxWorld
As a user, you're the one that keeps us thrilled to make continuous updates and improvements to all the BentoBoxWorld products. This is a voluntary and time-consuming yet exciting hobby.
So don't hesitate to join our Discord server and give us a hug, a “Thank You”. And if you feel that extra-generosity rushing in, tip us on PayPal or become a sponsor of tastybento, that's really much appreciated! (Donors get a special rank on our Discord server!) ❤️
Overview of the new features
1.16.1 support and upgrading
This release adds support for 1.16.1. Upgrading is very simple and should mostly be automatic. 1.15.2 is still supported.
Most additions from Minecraft 1.16.x are covered by our protection. However, if you find any bug related to 1.16.x, please file it on our bug tracker so that we can squish the bug into oblivion as soon as possible.
Quick makeover to the Settings Panel
In this update, the Settings Panel received some well-deserved attention. As you can see, we have improved the "pagination system" by introducing a footer. Moreover, the "Settings" part of the Settings Panel now uses a Comparator instead of Command Block as its icon, which makes it feel less out-of-place.
We plan to iterate over the footer in the following releases by introducing, among other things, a search bar.
We also introduced a new config option in BentoBox, which allows you to define which Material you want to use as your "filler" item in our GUIs: panel.filler-material
.
In the following image, I modified this config option to LIME_STAINED_GLASS_PANE
:
API Updates
Here you'll find the key points of this update and the things you should do to update your addons to the new standards.
Addons
Database tables @Table
annotation - to enable shorter database table names when using MySQL-like databases, use this annotation to give a specific name to your DataObject
. Make sure it's unique and not something already used! If you are upgrading an addon, don't worry, BentoBox will automatically shift all the data in the old table to the new one.
FlagsManager now has a unregisterFlag(Flag)
method that can be used to remove registered flags if, for example, your addon or plugin wishes to disable itself.
#1344 - item that fills the gap
Gamemodes
getOnRespawnCommand()
Changelog
Legend
⚠️ deprecated/removed API.- 🔺 need special attention.
Contents
API
- Made the setowner commands call a RANK_CHANGE event for the previous owner (#1342, #1349).
- Added
@Table
annotation to let addons choose the database table name for their DataObjects (#1348). - Gamemode addons are now enabled first (#1368).
⚠️ Removed deprecated (as of 1.6.0)SafeSpotTeleport.Builder.overrideGamemode()
.- Added
WorldSettings#getOnRespawnCommands()
(BentoBoxWorld/AOneBlock#27, #1374) - Added stacktrace to addon's onLoad if there's a LinkageError (#1362, #1399).
- Added
FlagsManager#unregisterFlag
. HeadGetter
will replace more than one of the same head if in a panel when it is obtained async.- Added
LocalesManager#isLocaleAvailable(Locale)
(#1411).
Feature / Tweaks
- Fixed code smells.
- Added support for MongoDB URIs to connect to databases (@Cleymax, #1311, #1330).
- Changed the Setting Flags category's icon to
COMPARATOR
. - Added some protection when executing on-join and on-leave commands (BentoBoxWorld/BSkyBlock#315).
- Added output of the top level commands registered under BentoBox in
/bentobox help
. - The
general.database.prefix-character
config option is no longer limited to a single character (#1348). - Added/improved some config comments.
- Added config option to let admins choose the item that fills the gaps in the panels (#1344).
- Added a sound when resetting flags to default by clicking on the TNT in the Island Settings panel.
- Added a new default placeholder for gamemodes:
%[gamemode]_owns_island%
(#1355). - Improved paging layout for panels.
- Improved the default "commands actions" to allow executing other plugins' commands (#1359, #1369).
- Improved asynchronous location loading for home teleporting (#1241, #1381).
- Implemented Minecraft 1.16.1 support (#1416).
- Protected breeding of Hoglins and Striders (#1418, #1419).
- Protected breaking minecarts / boats by their respective flags (#1430).
- Auto-translation of PIG_ZOMBIE to ZOMBIFIED_PIGLIN for 1.16.1 upgrading.
- Added
BREAK_HOPPERS
protection flag (#1331). - Pasting of islands is done using async methods throughout.
- Added ability to replace
[name]
by the island owner's name when pasting an entity from a blueprint. - Improved head caching - heads will be cached only for 3 minutes, then refreshed async if required. Server was garbage collecting them, causing lag when doing things like
/is top
(BentoBoxWorld/Level#159). - Split the animal/monster spawn flags to "natural" and "spawners" (#1351).
- Player is not teleported to their island until all their islands are pasted (world, nether and end).
- Added language selection using
/[player_command] lang [language code]
(as alternative to GUI) (#1411). - Added protection for redstone wires under the
REDSTONE
flag (#1421). - Added protection for breeding Bees.
Localization
- Improved creeper damage and creeper griefing protection explanations.
- Fixed typo in
en-US.yml
. - Tweaked spanish translation to disambiguate "roca de base" into "bedrock".
Fixes
- Fixed NPEs with "fake" players having null UUIDs.
- Fixed race condition with asynchronous SafeSpotTeleport causing issues when creating the island (BentoBoxWorld/BSkyBlock#312).
- Fixed purge not calculating player logins correctly (#1333).
- Fixed duplicate addons loading (#1339).
- Fixed NPEs with worlds having null names (#1336).
- Fixed commands no longer working for players who disconnected from the server while mounted (#1341).
- Fixed player heads not being loaded properly if the player name had color codes in it (#1343).
- Fixed addon api-version compatibility check (#1346).
- Improved handling of formatting errors in localizations (#1290).
- Fixed glass panes in panel headers not having an empty name (#1344).
- Fixed Flags alphabetical sort not working properly due to the text color.
- Fixed missing permission not showing for the multi sethome command (#1367).
- Fixed UTF-8 handling for comments in YAML files (#1372).
- Fixed admin blueprint delete command (#1382).
- Fixed lightning from firing blocks if
FIRE_IGNITE
is not set for visitors (#1383). - Fixed the island ban command sending a no-permission message instead of an insufficient-rank message.
- Fixed Elytra protection - players could still teleport into an island and be able to fly (#1403).
Removed features
- Removed Schem (our BentoBox pre-Blueprint homemade format) to Blueprint conversion.
- Removed fetching credits for non-installed addons from GitHub.
1.13.1 - Reopening the Gates
Description
BentoBox 1.13.1 is a HOTFIX release to fix a non-critical bug which is more annoying than actually harmful. BentoBox would complain about not being able to save objects to database while having actually succeeded to do so.
Which Minecraft versions are compatible with this release?
Compiled against: Spigot 1.15.2
.
Tested on: 1.15.2
.
Support BentoBoxWorld
As a user, you're the one that keeps us thrilled to make continuous updates and improvements to all the BentoBoxWorld products. This is a voluntary and time-consuming yet exciting hobby.
So don't hesitate to join our Discord server and give us a hug, a “Thank You”. And if you feel that extra-generosity rushing in, tip us on PayPal or become a sponsor of tastybento, that's really much appreciated! (Donors get a special rank on our Discord server!) ❤️
Changelog
Contents
Fixes
- Fixed BentoBox spamming "Could not save object to database!" although having succeeded to do so.
1.13.0 - Opening the Gates
Description
BentoBox 1.13.0 gets the ball rolling. It is the first major update of the Future development cycle of 2020 Q2. It brings in a lot of awesome and quality-of-life features for players, admins and addon developers! In these release notes, you will find the usual changelog, but also an overview of the new features as well as a detailed walkthrough of the API improvements for addons.
Alongside this update, you should update your addons to take advantage of all the new features. Updates for official addons will be progressively released over the next few weeks.
We are also officially launching our new documentation website! Basically, the contents of all the Wikis on each of our repositories have been moved to this website so that it can be more easily read and updated.
Which Minecraft versions are compatible with this release?
Compiled against: Spigot 1.15.2
.
Tested on: 1.15.2
.
Support BentoBoxWorld
As a user, you're the one that keeps us thrilled to make continuous updates and improvements to all the BentoBoxWorld products. This is a voluntary and time-consuming yet exciting hobby.
So don't hesitate to join our Discord server and give us a hug, a “Thank You”. And if you feel that extra-generosity rushing in, tip us on PayPal or become a sponsor of tastybento, that's really much appreciated! (Donors get a special rank on our Discord server!) ❤️
Overview of the new features
Keep player's old island when they reset their island
An option is added to the gamemodes' config, allowing admins to decide whether BentoBox should delete the players' islands when they reset theirs. If enabled, whenever a player resets their island, it is going to create a new one and leave the old one unowned. The player won't have access to it, but it will remain in the server's worlds. Those islands can be later definitely removed from the worlds by purging unowned islands. This might come in handy to be able to give players their island back if they accidentally deleted it; or to avoid deletion occurring while the server is running with players.
This feature was implemented by @Poslovitch and was requested in #1188.
Coop and Trust limitations
Prior to this release, players could coop or trust unlimited amount of fellow players to their island.
Specific options to define how many players can be cooped or trusted on an island are added to the gamemodes' config files, and similarly to the team size, you can assign permissions to players to allow them to coop or trust more players. Those permissions are the following: [gamemode].coop.maxsize.<number>
and [gamemode].trust.maxsize.<number>
.
This feature was implemented by @Cleymax in #1267 and was requested in #1065.
Player UUIDs in admin commands
In some cases, depending on the server setup, a player's UUID can change. This leads to some inconvenience when trying to re-register them to their own island. This new feature allows admins to use player UUIDs in most admin commands, such as follows:
This feature was implemented by @tastybento in #1298 and was requested in #1297.
Prefixes in localizations
Admins and addon developers can now define prefixes in the localization files that can be used virtually anywhere throughout the entirety of BentoBox and addons' localization files. As this feature allows for an unlimited amount of prefixes, admins and addon developers can also choose which message uses a specific prefix. Moreover, prefixes can be translated. Currently, only the BentoBox prefix is part of the default locales. That's up to you to add more, if you wish 😉.
A detailed guide about this new feature is being worked on and will be made available on the docs soon.
This feature was implemented by @Poslovitch and was requested in #1086.
An admin command to set an island's spawn point
In case the spawn point on an island is not where you'd like it to be, you will now be able to change it using this new command: /[admin_command] setspawnpoint
. Easy to use!
This feature was implemented by @BONNe in #1295 and was requested in #937.
Change the behavior of the main player command
New options in gamemodes' config allow admins to define the behavior of the main player command. Admins can finally decide which subcommand should be executed when players have or do not have an island on the gamemode!
This feature was implemented by @BONNe in #1293 and was requested in #498.
Addon developers
Here you'll find the key points of this update and the things you should do to update your addons to the new standards.
Addons
Use the placeholder permissions
This feature allows addons to avoid updating their permissions each time there is a new gamemode.
You can use [gamemode]
in their permissions to automatically register the permissions on all available gamemodes.
Example:
BEFORE
permissions:
bskyblock.myperm:
default: true
acidisland.myperm:
default: true
skygrid.myperm:
default: true
AFTER
permissions:
[gamemode].myperm:
default: true
Database management
Database#saveObject()
has been deprecated. Use Database#saveObjectAsync()
instead.
SafeSpotTeleport
SafeSpotTeleport
now requires the use of its Builder in order to be instanciated.
Gamemodes
New provided commands
AdminSetSpawnPointCommand
;AdminPurgeStatusCommand
(already called inAdminPurgeCommand
).
Default commands API
BentoBox now provides two default commands (DefaultAdminCommand
and DefaultPlayerCommand
) that you can both register instead of having to create and update your own implementations of an admin and player commands.
Some gamemode addons are already implementing custom settings in their config to allow users to change the commands' label and aliases. If that's your case, do not forget to properly override getAdminCommandAliases()
and getPlayerCommandAliases()
from WorldSettings
.
New WorldSettings
- The following WorldSettings are to be overriden only if the default commands are used:
getAdminCommandAliases()
;getPlayerCommandAliases()
;getDefaultPlayerAction()
;getDefaultNewPlayerAction()
.
- Put the following WorldSettings close to the "max team size" option in the config. Eventually use a similar comment that explains what those two new settings do and which permission they are associated with.
getMaxCoopSize()
:[gamemode].coop.maxsize.<number>
getMaxTrustSize()
:[gamemode].trust.maxsize.<number>
Changelog
Legend
⚠️ deprecated/removed API.- 🔺 need special attention.
Contents
API
- Added some nullability annotations.
- Added
AdminPurgeStatusCommand
to allow admins to view the current purge's status (#1254). - 🔺
SafeSpotTeleport
now requires the use of its Builder. - Added
IslandEvent.IslandRankChangeEvent
(@Cleymax, #1135, #1260). - Improved error message if BentoBox fails to save an Addon's config.
- Added
CompositeCommand#setHidden(boolean)
to enable commands to be hidden from help and tab-complete (#1300, #1301). - Implemented ability to set an amount for a
PanelItem
: added#getAmount()
and#setAmount(int)
inPanelItemBuilder
(@BONNe, #1299). - Added
AdminSetSpawnPointCommand
to change an island's spawn point (@BONNe, #937, #1295). - 🔺 Made
IslandsManager#getSafeHomeLocation(...)
returnnull
if the world is not an island world (#1306). - Added
Addon#reloadConfig()
(@YellowZaki, #1302). - Added
DefaultPlayerCommand
andDefaultAdminCommand
(@BONNe, #498, #1293). - Added 4 new methods in
WorldSettings
:getAdminCommandAliases()
,getPlayerCommandAliases()
,getDefaultPlayerAction()
,getDefaultNewPlayerAction()
(@BONNe, #498, #1293). ⚠️ Deprecated thesaveObject()
method for databases (#1308).- 🔺 Added
saveObjectAsync()
method for databases (#1308). This new method makes use of aCompletableFuture
, making (async) saves into the database much easier to handle. - Implemented placeholder permissions for addons (#1303, #1305). Addons will no longer need to see their permissions updated each time there is a new gamemode. They can use
[gamemode]
in their permissions to automatically register the permissions on all available gamemodes. - Added 2 new methods in
WorldSettings
:getMaxCoopSize()
andgetMaxTrustSize()
(@Cleymax, #1065, #1267).
Feature / Tweaks
- Added
%[gamemode]_island_members_list%
and%[gamemode]_visited_island_members_list%
placeholders (#1243, #1246). - Improved/Fixed
EXPERIENCE_PICKUP
flag on Paper servers (@kennytv, #1256). - 🔺
IslandResetCommand
now requires the[gamemode].island.reset
permission (#1207). - 🔺 Removed support for MVdWPlaceholderAPI - you can still use our placeholders through PlaceholderAPI.
- Added
%[gamemode]_on_island%
placeholder (@Cleymax, #1168, #1259). - Updated copyright info in about command.
- Added
BREAK_SPAWNERS
(PROTECTION) flag (@N0tMyFaultOG, #1130, #1263). - Added a single character prefix to database tables (#1277, #1278).
- Added a config option to keep islands when pla...
1.12.0 - The Future is Next
Description
BentoBox 1.12.0 polishes existing features and fixes bugs while we are concluding the Addons Initiative 2020 and moving towards our next roadmap for 2020 Q2 : Future. Through performance improvements and API additions, this update leads BentoBox to the path of becoming the sturdiest plugin capable of running island-based gamemodes, which is our dearest wish.
Alongside this update, you should not need to update your gamemode addons.
Which Minecraft versions are compatible with this release?
Compiled against: Spigot 1.15.2
.
Tested on: 1.14.4
(might be unstable), 1.15.2
.
We highly recommend you update to 1.15.2, as this will become our only compatible version by BentoBox 1.13.0.
Psssst! Are you still on 1.13.2? Well, if that is the case, you're missing out tons of 1.15-related features. But worry not, we've (unofficially) got your back covered. Download the BentoBox-1.12.0-1.13.2.jar
file below, which is kindly provided by @BONNe. While we understand some may want to remain on 1.13.2 and are doing it thanks to his build, keep in mind you are at risk of addons becoming incompatible at some point.
What comes next?
We are currently reviewing our roadmap for the following months. We are planning to focus our efforts on polishing BentoBox. The current worldwide situation is leading to an increase of servers using BentoBox. Those are newcomers we want to welcome warmly into the BentoBoxWorld community through the implementation of a more user-friendly experience overall.
Support BentoBoxWorld
As a user, you're the one that keeps us thrilled into making continuous updates and improvements to all the BentoBoxWorld products. This is a voluntary and time-consuming yet exciting hobby.
So don't hesitate to join our Discord server and give us a hug, a “Thank You”. And if you feel that extra-generosity rushing in, tip us on PayPal or become a sponsor of tastybento, that's really much appreciated! (Donors get a special rank on our Discord server!) ❤️
Changelog
Legend
⚠️ deprecated/removed API.- 🔺 need special attention.
Contents
API
- Added nullability annotations in various locations.
- Added
ConfigEntry#needsRestart()
. - Added
#getOldIsland()
in island reset-related events (@Draww, #1178, #1179). - Added
IslandEvent.IslandPreclearEvent
(#1200). - Added
IslandEvent.IslandReservedEvent
.
Feature / Tweaks
- Added
LIMIT_MOBS
flag (WORLD_SETTING) (#1133, #1155). - Added
ver
alias to version commands. - Added
%[gamemode]_deaths%
placeholder (#1197). - Prevent island height to be set outside Minecraft's allowed values (BentoBoxWorld/SkyGrid#39).
- Sped up the "new island spot" search (BentoBoxWorld/CaveBlock#44).
- Added
use-ssl
config option to toggle SSL when connecting to SQL databases (@BONNe, #1206). - Set the spawn island protection range to be the max by default.
- When pasting an island, load each required chunk asynchronously (Paper only).
- Updated bStats integration: removed
metrics
config option, improved the "Players per server" chart (@N0tMyFaultOG, #1225). - Added protection for bee nests and hives (#1237).
Localization
- Updated Italian (
it
) localization (@xion87, #1194). - Updated Turkish (
tr
) localization (@OverBrave, #1196).
Fixes
- Ignored colors when checking panel names (#1202).
- Fixed
ClassCastException
occurring when handling projectiles launched by blocks (#1211). - Fixed
Addon#saveResource()
not overwriting files properly. - Fixed
TeamEvent.TeamKickEvent#getPlayer()
not returning the kicked player (#1216). - Fixed any island member being able to reset the island settings (#1219).
- Fixed automated island creation on joining (#1221).
- Fixed a rare
ConcurrentModificationException
that could occur when unloading addons classes. - Fixed
NullPointerException
that could occur with misnamed default language. - Fixed splash potion PvP handling (@kennytv, #1230).
- Fixed handling of negative perms for value setting (BentoBoxWorld/Limits#73).
1.11.1 - Internationally Unglitched
Description
BentoBox 1.11.1 adds a few features but most notably fixes bugs. We also made sure that some of our long-established features underwent some fine-tuning. In a nutshell, this update is mostly the result of a meticulous work with a resolute attention to details. Beyond becoming feature-rich, we want BentoBox to be a stable, trustworthy tool for you to use on the long-term. Therefore, while this update might not be as exciting as others, we believe it is a necessity to assess the quality of our work from time to time to ensure we are not heading for trouble. Thanks to everyone who help us in that monumental task.
Alongside this update, you should not need to update your gamemode addons. However, we recommend you to reset your locales, if you have not customized them. This can be achieved by deleting the locales
folder.
Which Minecraft versions are compatible with this release?
Compiled against: Spigot 1.14.4
.
Tested on: 1.14.4
, 1.15.1
, 1.15.2
.
We highly recommend you update to 1.15.2, as this will soon become our only compatible version.
Psssst! Are you still on 1.13.2? Well, if that is the case, you're missing out tons of 1.15-related features. But worry not, we've (unofficially) got your back covered. Download the BentoBox-1.11.0-1.13.2.jar
file below, which is kindly provided by @BONNe. While we understand some may want to remain on 1.13.2 and are doing it thanks to his build, keep in mind you are at risk of addons becoming incompatible at some point.
Having some issues with performances?
Using Spigot 1.15.2 for quite some time? Grab yourself a more recent Spigot build as soon as possible as a critical bug has been uncovered and fixed, which caused performance issues when generating chunks.
Using Paper 1.15.2 for quite some time? You might have been exposed to the same bug as Spigot lately, so make sure you update your server as soon as possible. Moreover, you might want to update BentoBox as well because we put in it some Paper-flavor asynchronous improvements.
Support BentoBoxWorld
As a user, you're the one that keeps us thrilled into making continuous updates and improvements to all the BentoBoxWorld products. This is a voluntary and time-consuming yet exciting hobby.
So don't hesitate to join our Discord server and give us a hug, a “Thank You”. And if you feel that extra-generosity rushing in, tip us on PayPal or become a sponsor of tastybento, that's really much appreciated! (Donors get a special rank on our Discord server!) ❤️
Changelog
Legend
⚠️ deprecated/removed API.- 🔺 need special attention.
Contents
API
- Improved and fixed javadocs.
Feature / Tweaks
- Added success messages for
IslandSetnameCommand
andIslandResetnameCommand
(#1164). - Made
AdminWhyCommand
send debug messages to the issuer if it is a player (#1126). - Added a new permission for bypassing delayed commands:
[gamemode].mod.bypassdelays
(#1136). - Significantly improved performances when generating chunks on Paper servers (#1180).
- Added a message sent if scooping obsidian fails due to nearby obsidian blocks.
- Added a message sent to all players on an island when PVP is toggled (#1081).
Localization
- Added Czech (
cs
) translation (@Polda18, #1156). - Updated Latvian (
lv
) translation (@BONNe, #1171). - Updated the
PISTON_PUSH
flag's description to better reflect its actual behavior (#1162). - Updated the
FLINT_AND_STEEL
flag's description to also tell about campfires. - Updated French (
fr
) translation (#1189).
Fixes
- Fixed
AdminTeleportCommand
not allowing to be used in console (#1158). - Fixed End Portal teleportation causing the player to fall under the island if entering the End Portal with a high velocity (#1118).
- Fixed PVP related messages not using their dimension-related counterparts.
- Fixed island center coordinates correction not working properly when using customized
start-x
,start-z
values (#1169). - Fixed a discrepancy in descriptions about the behavior of the
PISTON_PUSH
flag (#1162). - Fixed a NPE caused by external plugins incorrectly interacting with the Bukkit API (#1172).
- Fixed an event concurrency with external plugins overriding the Nether Portal teleportation destination (#1101).
- Fixed the addon API-version checking algorithm (#1176, #1177).
- Fixed critical performance issues when generating chunks (#1180, SPIGOT-5573).
- Fixed
DYE
protection being always called when interacting with Sheep. - Fixed code smells.
- Fixed
BREEDING
protection not catching breeding of newer animals (Pandas, Foxes...) or with some items (Golden Carrots, ...). - Fixed exceptions occurring when using
AddonsManager#getClassByName()
.
1.11.0 - January Update
Description
BentoBox 1.11.0 brings new API features, tweaks and bug fixes!
As we made some changes to permissions, you will need to update your gamemode addons.
Which Minecraft versions are compatible with this release?
This release is compiled against Spigot 1.14.4 and was tested successfully on 1.14.4, 1.15.0, 1.15.1 and 1.15.2.
We highly recommend you update to 1.15.1 or higher, as this will soon become our only compatible version.
Note that we now consider Paper as supported server software.
Having some issues with performances?
Please see the previous releases' changelogs.
Support BentoBoxWorld
As a user, you're the one that keeps us thrilled into making continuous updates and improvements to all the BentoBoxWorld products. This is a voluntary and time-consuming yet exciting hobby.
So don't hesitate to join our Discord server and give us a hug, a “Thank You”. And if you feel that extra-generosity rushing in, tip us on PayPal or become a sponsor of tastybento, that's really much appreciated! (Donors get a special rank on our Discord server!) ❤️
Changelog
Legend
⚠️ deprecated/removed API.- 🔺 need special attention.
Contents
API
- 🔺
AddonEventBuilder#build()
now fires the event (#1111). AddonEvent.AddonEnableEvent
,AddonEvent.AddonDisableEvent
,AddonEvent.AddonLoadEvent
,AddonEvent.AddonGeneralEvent
andAddonEvent.AddonEventBuilder
have been made static (#1111).- Added some nullability annotations.
- Improved Javadocs.
- Added
IslandEvent.IslandProtectionRangeChangeEvent
(@BONNe, #1109). - Added
api-version
field toaddon.yml
to allow addons to specify a minimum required BentoBox version (#1131). Subsequently addedAddonDescription#getApiVersion()
.
Feature / Tweaks
- Made the
%[gamemode]_island_name%
and%[gamemode]_visited_island_name%
use the default island name ("Owner's island") if the island has no custom name (#1108). - Made redstone operate on island if staff members are present, even if the
OFFLINE_REDSTONE
flag is active and no island members are online (#1102). - Prevented loading Blueprint Bundles that have duplicate uniqueIds (#1117).
- Added new messages when the player enters or exits his own island (#1084). E.g. "Entering your island", instead of "Entering [owner]'s island".
- Applied minor tweaks to the Blueprint Bundle Editor panel.
- 🔺 Made changes to the island protection range permission on island ownership changes. If the new owner has no perms (and the previous one did), then the range will not be reset. Previously, it was always resetting to the default range.
- Added minimum required database versions in comments into config for databases (#1149).
- Fixed typos in the
config.yml
file. - Added
1.15.2
to the list of compatible versions (#1150).
Localization
- Added German (
de
) translation (@xXjojojXx, #1123). - Updated Latvian (
lv
) translation (@BONNe, #1124). - Improved colors in English (
en-US
) localization. - Update some admin commands descriptions in English (
en-US
) to better explain their behavior (#1140). - Fixed typos in English (
en-US
) localization. - Updated French (
fr
) translation (@AFGAME, #639).
Commands
- Improved tab completion for
AdminSetrankCommand
(/[admin] setrank (...)
) (#787). - Added an optional
island owner
argument toAdminSetrankCommand
(/[admin] setrank <player> <rank> [island owner]
) to allow admin to trust or coop players on another player's island (#787). - Improved the success message for
AdminSetrankCommand
(/[admin] setrank (...)
) (#787). - Added an optional
island owner
argument toAdminGetrankCommand
(/[admin] getrank <player> [island owner]
) (#1106). - Improved the
/bentobox version
layout to convey a bit more information about worlds. - Added an optional
player to teleport
argument toAdminTeleportCommand
(/[admin] tp <player> [player to teleport]
) to teleport another player to the player's island (#1120). - 🔺 Added explicit permissions to team commands (#1144, #1146):
island.team.accept
:IslandTeamInviteAcceptCommand
.island.team.invite
:IslandTeamInviteCommand
.island.team.reject
:IslandTeamInviteRejectCommand
.island.team.kick
:IslandTeamKickCommand
.island.team.leave
:IslandTeamLeaveCommand
.island.team.setowner
:IslandTeamSetownerCommand
.
Fixes
- Fixed commands not being prevented from being executed if the player falls (#1103).
- Fixed some API events being called twice (#1110, #1111).
- Fixed unregistering island causing trusted players to lose their own islands (#1096).
- Fixed island offset settings in gamemodes' config not working properly (#1105).
- Fixed "duplicate key" error occurring when BentoBox tries to load blueprint bundles that have the same uniqueId (#1117).
- Fixed ConcurrentModificationException when using MySQL (#1128, #1141). Note that the GSON serialization is now made on the main thread.
- Fixed deleted islands' spots not being considered as free spots for new islands (#1147).
- Fixed
POSTGRESQL
database (#1093, #1142). - Fixed gamemode subcommands not inheriting permissions from parent commands (this was the case of most admin commands).
- Fixed the
IslandTeamUntrustCommand
not using the[gamemode].island.team.trust
permission. It was using the[gamemode].island.team.coop
permission instead.
1.10.0 - The Journey continues...
Description
BentoBox 1.10.0 is mostly a bug fix release with some minor additions. Gamemode addons should be updated in order to make use of all the new features.
Exactly one year ago, on January 3rd, 2019, BentoBox 1.0 was released. As you might already know, I tend to pick meaningful names for the releases I publish. The Beginning of a long Journey...
. Here we are a year later, counting 1218 additional commits and innumerous hours of work put into this project.
This is incredible.
Which Minecraft versions are compatible with this release?
This release is compiled against Spigot 1.14.4 and was tested successfully on 1.14.4, 1.15.0 and 1.15.1.
We highly recommend you to update to 1.15.1, as this will soon become our only compatible version.
Note that we now consider Paper as a supported server software.
Psssst! Are you still on 1.13.2? Well, if that is the case, you're missing out tons of 1.14-related features. But worry not, we've (unofficially) got your back covered. Download the BentoBox-1.10.0-1.13.2.jar
file below, which is kindly provided by @BONNe. While we understand some may want to remain on 1.13.2 and are doing it thanks to his build, keep in mind you are at risk of addons becoming incompatible at some point.
Having some issues with performances?
Tweaking config options...
BentoBox 1.6.0 introduced config options that are useful to tweak performance issues on island creation or deletion.
island.paste-speed
should be reduced to64
if you are using the default Blueprints,128
if you are using bigger ones. In accordance with #1051, the impact on performances can be significant, while the extra time required to create the islands is not felt by the player to be inconvenient.island.delete-speed
should be kept as small as possible, yet it has been changed 1.9.0 from being per ticks to per seconds. Take that into account!
Using Paper?
BentoBox 1.9.0 introduced support for PaperLib. Basically, if you're using Paper, nearly all resource-intensive operations will be run asynchronously. This will keep your server's performances high, but might lengthen the time taken by some processes.
Support BentoBoxWorld
As a user, you're the one that keeps us thrilled into making continuous updates and improvements to all the BentoBoxWorld products. This is a voluntary and time-consuming yet exciting hobby.
So don't hesitate to join our Discord server and give us a hug, a “Thank You”. And if you feel that extra-generosity rushing in, tip us on PayPal or become a sponsor of tastybento, that's really much appreciated! (Donors get a special rank on our Discord server!) ❤️
Changelog
Legend
⚠️ deprecated/removed API.- 🔺 need special attention.
Contents
API
- Added
WorldSettings#isPasteMissingIslands()
andIslandWorldManager#isPasteMissingIsland(World)
(#1063). - Added nullability annotations to
IslandsManager
public methods,User#hasPermission(...)
andUser#getSender(...)
. - Improved Javadocs.
- Added
AdminRangeAddCommand
andAdminRangeRemoveCommand
(#1072). - Added
Util#isInteger(...)
. - Added support for floats in config files (BentoBoxWorld/TwerkingForTrees#6).
- 🔺 Made
NewIsland.Builder#reason(Reason)
enforce the reason to be eitherCREATE
orRESET
. - Added
WorldSettings#isTeleportPlayerToIslandUponIslandCreation()
andIslandWorldManager#isTeleportPlayerToIslandUponIslandCreation(World)
(#1032). - Updated
PlaceholderAPI
dependency to2.10.4
. - Added
AdminBlueprintRenameCommand
(#1082).
Feature / Tweaks
- Added
LECTERN
(PROTECTION
) flag (#1094). It prevents players from taking or placing a book on the lecterns while still allowing them to read the book.
Gamemode additions
- 🔺 Added config option to toggle the on-the-fly pasting of nether/end islands. In some cases, this could be exploited by players to get an infinite amount of resources (#1063).
- Added
add
andremove
subcommands for the adminrange
command (#1072). - Added config option to toggle whether the player should be teleported to his island upon its creation (#1032).
- Added
rename
subcommand for the adminblueprint
command (#1082).
Performances and stability
- Reworked how spots for new islands are found (#1057).
- Improved the reliability of some commands requesting an integer as a parameter.
- Tweaked the GitHub download feedback to be less spammy.
Fixes
- Fixed timeout crashes when trying to find a free spot for a new island (#1057).
- Fixed the message being incorrect when trusting a player (#1073).
- Fixed the
accept
command for non-team invites (i.e. trust or coop) (@sgdc3). - Fixed the admin
range set/reset
commands not working if the target is in a team. - Fixed entities being damaged by TNTs or Creepers regardless of the protection (#1075).
- Fixed Chorus being able to grow outside islands even if trees were prevented from growing outside islands' protection range (#1079).
- 🔺 Fixed Chorus Flowers not being protected from breaking if hit by an arrow or a trident (#812). Note it can cause the block to flicker or to turn into a ghost block. The Bukkit API does not provide a way to actually cancel the block breaking, therefore we need to resort to an efficient yet unaesthetic way to prevent this.
- Fixed issue with addons disabling themselves in the onEnable (#1090).
- Fixed code smells.
- Fixed incorrect translation showing up when changing language.
- Fixed players eventually getting stuck in
SPECTATOR
gamemode when accepting an invite.
1.9.2 - Snowy Bees!
Description
BentoBox 1.9.2 is mostly a bug fix release. Unless you are updating from 1.8.0 or older, you will not need to update any of your addons. If you are updating from 1.8.0 or older, please read BentoBox's 1.9.0 changelog.
BentoBox was launched on SpigotMC on Saturday 7th December, after a 21-month-long development. And in less than a week, it reached heights with over 200 hundred downloads there.
Releasing BentoBox on SpigotMC has been the long-term goal so far. And our new one is the following: from December 2019 to March 2020, we will focus on improving and creating addons. Lots of them. This is called the Addons Initiative 2020.
Which Minecraft versions are compatible with this release?
This release is compiled against Spigot 1.14.4 and was tested successfully on 1.14.4 and 1.15.0 (although we do not recommend you to update to 1.15.0 yet).
Using 1.14.4 and having some issues with performances?
Tweaking config options...
BentoBox 1.6.0 introduced config options that are useful to tweak performance issues on island creation or deletion.
island.paste-speed
should be reduced to64
if you are using the default Blueprints,128
if you are using bigger ones. In accordance with #1051, the impact on performances can be significant, while the extra time required to create the islands is not felt by the player to be inconvenient.island.delete-speed
should be kept as small as possible, yet it has been changed 1.9.0 from being per ticks to per seconds. Take that into account!
Using PaperSpigot?
BentoBox 1.9.0 introduced support of PaperLib. Basically, if you're using PaperSpigot, nearly all resource-intensive operations will be run asynchronously. This will keep your server's performances high, but might lengthen the time taken by some processes.
Support BentoBoxWorld
As a user, you're the one that keeps us thrilled into making continuous updates and improvements to all the BentoBoxWorld products. This is a voluntary and time-consuming yet exciting hobby.
So don't hesitate to join our Discord server and give us a hug, a “Thank You”. And if you feel that extra-generosity rushing in, tip us on PayPal or become a sponsor of tastybento, that's really much appreciated! ❤️ (Donors get a special rank on our Discord server!)
Changelog
Legend
⚠️ deprecated/removed API.- 🔺 need special attention.
Contents
API
- Improved Javadocs.
- Added
Island#isOwned()
andIsland#isUnowned()
.
Feature / Tweaks
- Added the Hungarian flag to Hungarian (
hu
) locale (@andris155, #1055). - Implemented 1.15 compatibility.
- Forced UTF-8 encoding in MariaDB databases (@TheGeyik, #1052, #1066).
- Implemented teleportation delay when using
/[gamemode] spawn
(#1069).
Fixes
- Fixed the "you can ban X more players" message showing incorrect number if bans are unlimited (#1060).
- Fixed Ops or players with the
mod.bypasscooldown
permission not being able to bypass the delay before teleportation (#1059). - Fixed "gathering contributors' data" messages at startup not being toggled by the corresponding config option.