Skip to content

Releases: BentoBoxWorld/BentoBox

Alpha 8 - Provision of patches

11 Nov 13:52
Compare
Choose a tag to compare
Pre-release

Description

This pre-release is intended to fix bugs. A few new features were also added. And there is not a single API breaking change 🙂.

You won't need to update your addons alongside this release.

Placeholders

Although Placeholders integration is implemented in BentoBox, Addons are currently not registering their own placeholders. This is due to a few incoming changes, which is keeping us from adding them.

Changelog

How to read it

Each change/tweak/bug fix is listed in the corresponding category.
If a change is likely to do something that needs the user to keep a close eye on, then it is labelled with an icon.

  • 🔠 - locale files may need to be regenerated or updated.
  • ⚙️ - config options have been removed, renamed or added.

Contents

  • API
  1. Improved Javadoc.
  2. Slight optimizations in PlaceholdersManager.
  3. Added MultiverseCoreHook.
  4. Added CycleClick(String, int, int) constructor (#332).
  • Features
  1. ⚙️ 🔠 Added COARSE_DIRT_TILLING in WORLD_SETTING flags. This helps avoid players tilling coarse dirt using a hoe to obtain dirt (#337).
  • Tweaks
  1. LOCK flag can now only be applied to the MEMBER rank at maximum. This means that island owners can no longer lock their island to the island members or island sub-owners: they can still do so for trusted, cooped and visitors (#332).
  2. Player file is now preventively saved in the database after they create an island.
  • Bug fixes
  1. Fixed obsidian scooping replacing the whole bucket stack with lava buckets (#338).
  2. Fixed errors that could occur when adding island to the grid (#326). Also introduced some defensive code there.
  3. Fixed errors spamming console when teleporting to non-BentoBox worlds (#310).
  4. Fixed protection checks not correctly taking into account standard Nether and End (#331).
  5. Fixed teleporting back from standard Nether to island.
  6. Fixed island members dying when joining an island locked to members (#332).
  7. Fixed a few bugs with protection (#336):
  • Placing boats is now prevented by PLACE_BLOCKS;
  • Using bone meal is now prevented by PLACE_BLOCKS;
  • Fixed interaction with Shulker Boxes (CHEST);
  • Flower pots interaction is now prevented by CHEST;
  • Using name tags is now prevented by PLACE_BLOCKS;
  • Hurting pufferfish is now prevented by HURT_MONSTERS;
  • Hurting other types of fish is now prevented by HURT_ANIMALS;
  1. Fixed the ENDER_CHEST flag not using the Notifier.

Alpha 7 - The very small super tiny update that fixes (a) huge bad bug(s)

04 Nov 19:56
Compare
Choose a tag to compare

Description

This pre-release fixes a major bug with Placeholders implementation (you basically couldn't run BentoBox if you didn't have PlaceholderAPI in the plugins folder).
There is no need to update your addons alongside this release.

Changelog

How to read it

Each change/tweak/bug fix is listed in the corresponding category.
If a change is likely to do something that needs the user to keep a close eye on, then it is labelled with an icon.

Here is a list of the labels:

  • ⚠️ - the change is breaking the API and/or deprecate some parts of it.

Contents

  • API
  1. ⚠️ Renamed AbstractFlagListener to FlagListener.
  2. ⚠️ Moved all PlaceholderAPIHook's inner classes to their own classes in the \api\placeholders\placeholderapi folder.
  • Bug fixes
  1. Fixed BentoBox not launching when PlaceholderAPI wasn't installed on the server.
  2. Fixed double chests pasting in certain orientations that could cause an ArrayOutOfBoundsException (#326).

Alpha 6 - The protection killer

03 Nov 10:45
Compare
Choose a tag to compare
Pre-release

Description

This pre-release fixes a major bug with protection and also implements PlaceholderAPI integration. Addons now have to register their own placeholders. If you've got any idea of placeholders you'd like us to add, feel free to post them here : #322.
There is no need to update your addons alongside this release.

The Challenges addon still didn't receive an update, is it safe to keep it?

Yes, it is. Some of its minor features may no longer work, but the addon is globally working fine.

Changelog

How to read it

Each change/tweak/bug fix is listed in the corresponding category.
If a change is likely to do something that needs the user to keep a close eye on, then it is labelled with an icon.

Here is a list of the labels:

  • ⚠️ - the change is breaking the API and/or deprecate some parts of it. It theorically should only concern addons, so make sure to update them as well!

Contents

  • API
  1. Added PlaceholdersManager. You can get it using BentoBox#getPlaceholdersManager().
  2. ⚠️ Removed AbstractFlagListener#getWhy() - it was internally not used and was most likely not used by addons.
  • Features
  1. Implemented PlaceholderAPI integration (#322).
  • Bug fixes
  1. Fixed protection listeners not being registered in Bukkit as the plugin was no longer considered as "loaded" at the time the registration was taking place.

Alpha 5 - The (not so) Spooky update!

01 Nov 11:07
Compare
Choose a tag to compare
Pre-release

Description

This pre-release fixes a few bugs and brings us the ability to hook into plugins, such as Vault and soon PlaceholderAPI! This version also introduces a lot of API breaking changes. They are necessary to provide you the nicest API when we will release 1.0 (before 2019).

Update very carefully !

A lot of config options changed, but please take a closer look to the database type:

  • If you were using FLATFILE, please change it to YAML.
  • If you were using MONGO, please change it to MONGODB.

"The Flattening", part 2

Level and WelcomeWarpSigns got updated and received their "Flattening update". They are now both available on CodeMC's Maven repository.
⚠️ There is a minor data loss risk for these two addons. If this occurs, just ask your players to recalculate their island level (if you're using Level) or to re-create their warp (if you're using WWS).
⚠️ Config & locales for both addons will be regenerated, as their name changed. Make sure to update carefully !

1.13.2

There was no significant change to Spigot's API between 1.13.1 and 1.13.2, so it's now safe to say that BentoBox officially supports 1.13.2 !

Update your addons !

Each addon you're using must be updated, otherwise they just won't launch (yes, I made it so that it won't spam your console with a huge load of errors ❤️).

Where is the Challenges addon ?

Ahum... Well, I didn't have the time to update this one yet. So, as we said in 2016, keep calm and wait for Poslovitch to fix that.

Changelog

How to read it

Each change/tweak/bug fix is listed in the corresponding category.
If a change is likely to do something that needs the user to keep a close eye on, then it is labelled with an icon.

Here is a list of the labels:

  • ⚠️ - the change is breaking the API and/or deprecate some parts of it. It theorically should only concern addons, so make sure to update them as well!
  • 🔠 - locale files may need to be regenerated or updated.
  • ⚙️ - config options have been removed, renamed or added.

Contents

  • API
  1. Added/fixed some Javadoc in a few classes.
  2. ⚠️ IslandsManager: renamed #getCount() to #getIslandCount(); renamed #makeLeader(...) methods to #setOwner(...).
  3. Added Addon#getPermissionPrefix(): it is a method that returns the permission prefix automagically generated from the addon's name.
  4. ⚠️ Removed CompositeCommand#setPermissionPrefix(String): it is now inherited from the Addon's.
  5. ⚠️ Renamed AdminTeamMakeLeaderCommand to AdminTeamSetownerCommand.
  6. ⚠️ Renamed TeamEvent.TeamMakeLeaderEvent to TeamEvent.TeamSetownerEvent.
  7. ⚠️ Lowercased some command class names to better fit how they are actually working in game : AdminClearresetsallCommand, AdminClearresetsCommand, AdminGetrankCommand, AdminSetrankCommand.
  8. ⚠️ Replaced Addon#setEnabled(boolean) by Addon#setState(Addon.State).
  9. Removed YmlConfiguration and YmlCommentParser as they weren't used.
  10. AddonsManager: removed #loadAddonsFromFile(), renamed #setLoader(...) to #setLoaders(...).
  11. ⚠️ ⚙️ DatabaseSetup.DatabaseType: renamed MONGO to MONGODB.
  12. ⚠️ DatabaseConnector: removed #loadYamlFile(...) and #saveYamlFile(...) as they weren't generic to all database connectors.
  13. Added AbstractJSONDatabaseHandler<T>.
  14. ⚠️ Made all DatabaseHandlers' and DatabaseConnectors' constructors package-private: these shouldn't have been used by any external plugin/addon.
  15. ⚠️ Moved TypeAdapters in database/json/adapters package.
  16. ⚠️ Moved DATABASE_FOLDER_NAME to AbstractDatabaseHandler<T>.
  17. ⚠️ ⚙️ Renamed FLATFILE database type (and related files) to YAML.
  18. Fixed some code smells.
  19. Implemented the Hooks API: Hook and HooksManager.
  20. Implemented Vault integration: VaultHook.
  21. ⚠️ Removed AddonInterface and put its methods in Addon.
  • Features
  1. Implemented Vault integration: money reset on island join/leave should now be working.
  • Tweaks
  1. Changed the command /is team setleader <player> to /is team setowner <player>.
  2. ⚙️ general.database.type: renamed FLATFILE to YAML, added JSON and renamed MONGO to MONGODB.
  3. ⚙️ Renamed island.customranks to island.custom-ranks and made it experimental (Spooky!).
  4. Added some safety checks to the config loading: some options will now be using their default value if the one in the configuration is invalid, instead of throwing ugly stacktraces.
  • Bug fixes
  1. 🔠 Fixed some entries in the en-US locale being invalid.
  2. Fixed island protection range not being updated after a login if there was a permission change (#256).
  3. Fixed outdated addons causing errors in console when loading (#281).
  4. Fixed the AddonsManager disabling not-enabled addons.
  5. Fixed the [label] text variable being replaced by "invite" in the invite notification (#315).
  6. Fixed island members sometimes not being recognized and therefore considered as visitors on their own island (#318).
  7. Fixed [version] text variable in config comments always being replaced by BentoBox's version instead of the addon's (#312).

Alpha 4 - "The Flattening"

25 Oct 09:38
Compare
Choose a tag to compare
Pre-release

Description

This pre-release fixes a few bugs and adds some nice new features!

About the "Flattening"

We're close to a first Beta release. Therefore, we're trying to make sure everything we did up to nowadays is following our code guidelines. This phase will be splited on a few Alpha releases and will consist in the final API breaking changes on both addons and BentoBox. Alongside the flattening, addons will progressively be made available on CodeMC's Maven repository so that you can start to mess around with them. It's starting with AcidIsland and BSkyblock !

1.13.2

BentoBox is currently not officially supporting 1.13.2. However, given that Spigot updated fastly, it should be safe to say that BentoBox won't run into weird issues. Don't forget to submit a bug report if you get to be extremely unlucky !

Update your addons !

BSkyBlock and AcidIsland both received an update to support Alpha 4 and must be updated.
Other addons may not need to be updated.

Changelog

How to read it

Each change/tweak/bug fix is listed in the corresponding category.
If a change is likely to do something that needs the user to keep a close eye on, then it is labelled with an icon.

Here is a list of the labels:

  • ⚠️ - the change is breaking the API and/or deprecate some parts of it. It theorically should only concern addons, so make sure to update them as well!
  • 🔠 - locale files may need to be regenerated or updated.
  • ⚙️ - config options have been removed, renamed or added.

Contents

  • API
  1. Added WorldSettings#isDeathsCounted.
  2. Added User#spawnParticle(Particle, Particle.DustOptions, double, double, double).
  3. ⚠️ Removed Util#getPermValue(Player, String, int).
  4. Added User#getPermissionValue(String, int).
  5. Fixed a mistake in IslandWorldManager's javadoc.
  • Tweaks
  1. 🔠 Added the addon name to the version's world list (#285).
  • Bug fixes
  1. Fixed teleporting to an island by using a member's name causing an exception (#300).
  2. 🔠 Added English locale text for schem commands (#305).
  3. Fixed tons of code smells (as usual).
  4. Fixed island.maxhomes permission being sometimes not correctly appended to the addon's permission prefix.
  • Features
  1. ⚙️ Deaths are now only counted if this is enabled in the gamemode world (#164 ; check the gamemode's config file).
  2. 🔠 Added the admin why command (/bsb why on BSkyBlock ; /acid why on AcidIsland). It will reveal why a player can do something on an island. Extract of the commit message: I want admins to be able to understand this better so that they can give us better bug reports or fix it themselves. When the player did something, it would be reported in the console.
  3. Added schem clipboard selection display using particles. Here is how it looks.
  4. 🔠 ⚙️ Request confirmation when /is sethome is used while being in the Nether/End (#237). Options were also added to disallow setting an home in the Nether or in the End.

Alpha 3

06 Oct 08:48
Compare
Choose a tag to compare
Alpha 3 Pre-release
Pre-release

Description

This pre-release fixes a few bugs and potentially contains a few API breaking changes.

Don't forget to update your addons as well.

How to read the changelog

Each change/tweak/bug fix is listed in the corresponding category.
If a change is likely to do something that needs the user to keep a close eye on, then it is labelled with an icon.

Here is a list of the labels:

  • ⚠️ - the change is breaking the API and/or deprecate some parts of it. It theorically should only concern addons, so make sure to update them as well!
  • 🔠 - locale files may need to be regenerated or updated.
  • ⚙️ - config options have been removed, renamed or added.

Changelog

  • API
  1. ⚠️🔠 Splited AdminSchemCommand into proper subcommands: see world.bentobox.bentobox.api.commands.admin.schem package for more details.
  2. Added ConfirmableCommand#askConfirmation(User, String, Runnable).
  3. Added User#spawnParticle(Particle, Particle.DustOptions, int, int, int).
  4. ⚠️ Moved AddonState to Addon.State.
  5. ⚠️ Moved YmlCommentParser and YmlConfiguration in world.bentobox.bentobox.util.yaml package.
  6. ⚠️ Moved HeadGetter and HeadRequester in world.bentobox.bentobox.util.heads package.
  7. ⚠️ Moved SafeTeleportBuilder to SafeSpotTeleport.Builder.
  8. ⚠️ Modified SafeSpotTeleport to add a boolean overrideGamemode parameter.
  9. Added IslandWorldManager#inWorld(World).
  • Tweaks
  1. ⚙️ Added island.cooldown.coop and island.cooldown.trust to avoid using invite's cooldown for these commands.
  2. Made PVPListener use Notifier: it is now less ''spammy''.
  3. 🔠 Removed general.errors.unknown-player-name from locales.
  4. 🔠 Added a [name] variable in general.errors.unknown-player (#263).
  5. 🔠 Implemented protection for standard Nether and End (BentoBoxWorld/BSkyBlock#9).
  6. 🔠 Display BentoBox version in /bentobox version (#284).
  • Bug fixes
  1. Panels size could be higher than 54.
  2. Fixed the Settings panel that was using outdated logic.
  3. Fixed players considered "unknown" until they created/joined an island.
  4. Fixed typo in SchemsManager.
  5. Fixed trusted and coop members being protected like visitors (#258).
  6. Fixed closing vanilla inventories when clicking outside of them.
  7. Fixed a bunch of code smells.
  8. Fixed AdminTeleportCommand overriding the player's gamemode when teleporting (#262).
  9. Fixed island protection being applied to standard Nether and End (BentoBoxWorld/BSkyBlock#9).
  10. Fixed handling of the Nether portal when standard Nether is enabled.
  11. Partially fixed critical exceptions when loading outdated addons (#280).
  12. Fixed dying outside of an island's space causing spectator mode (#286).
  13. Fixed error when saving schems containing a Shulker (#293).

Alpha 2

01 Sep 13:15
Compare
Choose a tag to compare
Alpha 2 Pre-release
Pre-release

⚠️ This version has some issues with Panels. They will be fixed in the next Alpha release, as we will be implementing a better API to manage them.

Description

This pre-release fixes a few bugs and potentially contains a few API breaking changes.

Java support

This pre-release introduces a better Java 10 support. While BentoBox is still not fully updated to this version (we are waiting for Java 11, which is the next LTS), it should be able to run.

Spigot 1.13.1

Alpha 2 is using Spigot 1.13.1. We highly recommend you to update from 1.13, not to mention that a lot of bugs have been fixed in both Minecraft and Spigot.

Official addons

There should be no need to update the official addons alongside this pre-release.

How to read the changelog

Each change/tweak/bug fix is listed in the corresponding category.
If a change is likely to do something that needs the user to keep a close eye on, then it is labelled with an icon.

Here is a list of the labels:

  • ⚠️ - the change is breaking the API and/or deprecate some parts of it. It theorically should only concern addons, so make sure to update them as well!
  • 🔠 - locale files may need to be regenerated or updated.
  • ⚙️ - config options have been removed, renamed or added.
  • 🔺 - the original build contained a major bug or an exploit that has been fixed. Redownload BentoBox as soon as possible.

Changelog

  • API
  1. PanelBuilder#nextSlot() was not returning the expected value.
  2. ⚠️ Made Notifier.Notification nested class private. Note: addons or external plugins shouldn't have been able to use this.
  • Tweaks
  1. ⚙️ Removed general.check-updates : it is unused.
  2. Changed island distance particles (/<admincommand> range display) to be gray REDSTONE instead of TOWN_AURA.
  3. ⚙️ Removed purge-related settings.
  4. ⚠️ ⚙️ Renamed all database-related settings and methods to replace db with database.
  5. ⚙️ Moved confirmation-time to island.confirmation.time.
  6. ⚠️ ⚙️ Removed kick-wait and leave-wait. The confirmation time is now generic across all of the commands.
  7. ⚙️ Renamed and moved invite-wait, ban-wait and reset-wait to island.cooldown.<x>.
  8. ⚙️ Moved island.require-confirmation.<command> to island.confirmation.commands.<command>.
  9. WORLD_SETTING flag type is now using a GRASS_BLOCK block as an icon instead of a GRASS item.
  • Bug fixes
  1. Panel size was incorrectly set.
  2. Last login timestamp in Island information was sometimes 0 due to how OfflinePlayer works in Bukkit.
  3. Metrics were loaded even though it was set to false in config. Note: Metrics are still not yet fully implemented.
  4. Fixed BentoBox not loading addons due to Java 10 restrictions.
  5. 🔠 Fixed color formatting in general.errors.no-permission in the en-US locale.
  6. Fixed NPE when an invite gets rejected.
  7. Fixed Enter/Exit messages not being sent when the player teleports to an island.
  8. Fixed Invincible Visitors settings panel still using general.errors.you-need.

Trial of Java 10 version

31 Aug 04:54
Compare
Choose a tag to compare
Pre-release

Do not use it unless you're told to do so, as there are potentially some bugs.

Java 10 version just for preliminary testing.

Alpha 1

25 Aug 19:58
Compare
Choose a tag to compare
Alpha 1 Pre-release
Pre-release

About this alpha pre-release

This pre-release, Alpha 1, fixes a few bugs that caused unexpected behaviours on various addons. It does not add any new features nor it brings API breaking changes.

Alpha 1 has not been built using Spigot 1.13.1 API, however it works fine on both 1.13 and 1.13.1.

Bug Fixes

  • [Major] Entities in schems were not being pasted
  • [Major] Deaths were not being counted
  • [Major] Recognition of e.g. bskyblock.settings.* was not happening
  • [Major] Protected items, e.g., chests, could be broken, thereby bypassing protection
  • [Minor] Falling players starting an island could die from fall damage
  • [Minor] API addRank or removeRank could remove trust, coop and sub_owner ranks
  • [Minor] Endermen were dropping two blocks when killed if they held them

100% Feature Complete (Updated Aug 19 - hotfix)

18 Aug 21:51
Compare
Choose a tag to compare

About this release

100% feature complete pre-release version. This version will have bugs so be careful if you use it on a server. Major structural pieces are in place and are not expected to be redone, therefore the API will be quite stable.
However please keep in mind that this version can still contain bugs that might require some refactoring on the API. If you don't feel confident in using this pre-release, then don't use it and wait for 1.0 which should come out in a few weeks.

We will also follow a compliant semantic versioning, as stated on this page, for further versions :

  • 0.9.0-SNAPSHOT: dev builds. They should not be used.
  • 0.9.0-alpha: alpha builds. They will mainly be focused on new features and improvements to the current API.
  • 0.9.0-beta: beta builds. They will be focused on bugs fixes.
  • 1.0.0-rc: final pre-release(s).
  • 1.0.0: release.

Warnings

  • BentoBox and its addons are 1.13 only.
  • Some bugs are known to be caused by Minecraft. They will likely be fixed in the upcoming 1.13.1 release.
  • Make sure to take backups, to update carefully and to keep your Spigot updated as much as possible.
  • BentoBox and its addons do not contain all the features that ASkyBlock/AcidIsland used to have, that's a fact. Be patient while we progressively add them back.

How to read the changelog

Each change/tweak/bug fix is listed in the corresponding category.
If a change is likely to do something that needs the user to keep a close eye on, then it is labelled with a big bold label like this one: LABEL:

Here is a list of the labels:

  • BREAKING: - the change is breaking the API and/or deprecate some parts of it. It theorically should only concern addons, so make sure to update them as well!
  • LOCALE: - locale files may need to be regenerated or updated.
  • HOTFIX: - the original build contained a major bug or an exploit that has been fixed. Update BentoBox as soon as possible.

Changelog

  • API
  1. Added CompositeCommand(Addon, CompositeCommand, String, String...) constructor.
  2. Changed the main package declaration restriction to be world.bentobox.bentobox. This will allow us to create our addons using a "conventional" package naming.
  3. BREAKING: Removed deprecated CompositeCommand#setParameters(String).
  4. More Javadoc!
  5. Created a sub-class of CompositeCommand called ConfirmableCommand.
  6. All the "wait" settings have been switched to int instead of long.
  7. BREAKING: Made DatabaseSetup an interface. Note: addons usually don't implement their own database handlers, they use BentoBox built-in ones. However, let's take good habits and label this change as breaking!
  8. Removed FlyingMobEvents protection listener. It was basically a (very old) duplicate of the GEO_LIMIT_MOBS' flag listener.
  9. Removed unused InventorySave and InventoryStore classes.
  10. IslandEnterEvent and IslandExitEvent are now properly fired.
  11. Shaded bStats in BentoBox and replacing Metrics class by BStats class. It will later be used to allow addons to register their own metrics through BentoBox.
  12. BREAKING: Removed IslandsManager#metrics_getCreatedCount() and IslandsManager#metrics_setCreatedCount(int). Note: these methods were not used by the official addons, however it's labelled as breaking because custom addons could have used them.
  13. BREAKING: Removed the current Placeholders support (world.bentobox.bentobox.api.placeholders package + world.bentobox.bentobox.lists.Placeholders.java). It was unused. Note: it will be re-implemented when we'll find a good API design for them.
  14. BREAKING: Removed entity and tile limit settings from WorldSettings (#getEntityLimits(), #getTileEntityLimits()). Note: the functionality of limiting certain entities or tile entities can be
    provided by an addon instead.
  15. Added support for depend and softdepend in addon.yml. Note: an addon cannot (soft-)depend from a plugin. An API will be provided soon for that.
  • New features
  1. Commands can require the player to have a specific minimum rank on the island to be able to execute it. See general.rank-command in the config.
  2. Added coop, uncoop, trust and untrust commands.
  3. Added /bentobox reload - it only reload locales for now.
  • Tweaks
  1. Removed Herobrine.
  2. LOCALE: removed general.errors.you-need > the [permission] variable is now handled in general.errors.no-permission.
  3. LOCALE: moved all confirmation-related references to commands.confirmation.xxx.
  4. LOCALE: renamed protection.panel.flag-item.xxx_rank to use a dash (-) instead of an underscore (_).
  5. Minor code cleanup.
  6. Made the reset command use the command cooldown API.
  7. Adjusted event listeners priority to stop spamming the console with island lock and ban.
  8. Changed enter/exit messages to be notifications (messages that are only sent once within 5 seconds).
  9. LOCALE: added colors in en-US.
  10. LOCALE: added jp-JP locale.
  11. LOCALE: fixed typos in en-US.
  12. Removed custom metrics for now (was not used).
  13. Improved admin delete command to properly delete the player's island.
  • Bug fixes
  1. Fixed locale references in /bentobox version.
  2. Fixed UUID lookup telling that players are "known" although they never connected to the server (#232).
  3. Fixed some issues depending on the OS's locale.
  4. Fixed tons of code smells.
  5. Fixed locale files being saved from BentoBox into addon locales.
  6. Fixed error when loading add-on with no locale files.
  7. Fixed resetname command making the island enter/exit messages disappear.
  8. Fixed config files saving on Windows.
  9. Fixed a few bugs when copying files using the FLATFILE database.
  10. Fixed "Unknown player!" error occuring even if the player was connected on the server when the server is using MYSQL database.
  11. Fixed FLATFILE database not saving files properly on the 1st time.
  12. HOTFIX: for bug where players cannot issue commands after relogging in.