Skip to content

Releases: BentoBoxWorld/BentoBox

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.

92% Feature Complete - FC-0.9 HOTFIX

11 Aug 13:26
Compare
Choose a tag to compare
Pre-release

WARNING: Use the build 334 from CodeMC CI because locale references in BentoBoxVersionCommand weren't updated. https://ci.codemc.org/job/BentoBoxWorld/job/bentobox/334/

92% feature complete and not bug-free pre-release version. This version is a hot-fix for FC-0.9.

WARNING: BentoBox and its addons are 1.13 only.

NOTE: There should be no need to update your addons for this update.

NOTE: Some bugs are known to be caused by Minecraft. They will likely be resolved with Minecraft's 1.13.1.
NOTE: Make sure to take backups, to update carefully and to keep your Spigot updated as much as possible.


Changelog :

  • API
  1. AdminDeleteCommand is nearly finished.
  2. Updated some Javadoc.
  3. Deprecated setParameters(String) in favor of setParametersHelp(String) in CompositeCommand.
  4. Removed purge-related events (they were unused).
  5. Actually removed Constants class.
  6. Fixed default parameters and description in CompositeCommand.
  • New features
    • No new features.
  • Tweaks
  1. Updated en-US locale to FC-0.92.
  • Bug fixes
  1. Fixed help commands not working properly.

90% Feature Complete

08 Aug 12:15
aaaf88f
Compare
Choose a tag to compare
90% Feature Complete Pre-release
Pre-release

90% feature complete and not bug-free pre-release version.

WARNING: BentoBox and its addons are 1.13 only.
WARNING: This update contains API breaking changes, make sure to update your addons as well.

NOTE: Some bugs are known to be caused by Minecraft. They will likely be resolved with Minecraft's 1.13.1.
NOTE: We know some early adopters are already using BentoBox on their "production" server. Make sure to take backups, to update carefully and to keep your Spigot updated as much as possible (there is nearly 5 new builds every day)!


Changelog :

  • API
  1. BREAKING: Ready-to-use island and admin commands have been moved to the world.bentobox.bentobox.api.commands package. Feel free to use them in your Gamemode addons !
  2. Removed Constants class. It was useless.
  3. Added generic commands cooldown handling in CompositeCommand : #setCooldown(UUID, UUID, int) and #checkCooldown(User, UUID).
  4. BREAKING: Renamed following classes :

BSBDatabase -> Database
BSBDbSetup -> DatabaseSetup
BSBConfig -> Config
DatabaseConnecter -> DatabaseConnector
FlatFileDatabaseConnecter -> FlatFileDatabaseConnector
MongoDBDatabaseConnecter -> MongoDBDatabaseConnector
MySQLDatabaseConnecter -> MySQLDatabaseConnector

  1. Updated some javadoc and made it display everything.
  2. Removed IslandSpawnCommand. It was an empty class.
  3. Updated ItemParser to use the new BANNER material names.
  4. Added authors and obsolete variables to BentoBoxLocale. They are currently not used.
  5. Created a new "format" for locales meta information :
meta:
  authors:
  - tastybento
  - Poslovitch
  banner: "WHITE_BANNER:1:STRIPE_SMALL:RED:SQUARE_TOP_RIGHT:CYAN:SQUARE_TOP_RIGHT:BLUE"
  version: "FC-0.81"
  1. Added #getNewOwner() and #getOldOwner() in TeamMakeLeaderEvent.
  2. Added AdminDeleteCommand. Note: this is a WIP and it hasn't been tested properly.
  • New features
  1. Added /bentobox command. It has currently no technical use, it has mainly been implemented as a placeholder for commands to come.
  2. Bypass protection permissions are now differenciated for each flag (e.g: BREAK_BLOCKS) and where they apply (everywhere or island). As an example, bskyblock.mod.bypass.BREAK_BLOCKS.island will only allow the player to break blocks inside an island's protection range. bskyblock.mod.bypass.PLACE_BLOCKS.everywhere will allow it to place blocks everywhere (inside and outside an island's protection range). Note: this is a long-awaited feature and we would be really pleased to get some feedback about it!
  • Tweaks
  1. Brought back automated #setDescription(String) and #setParameters(String) for CompositeCommand. It has been previously removed due to an infinite loop.
  2. Updated some of the commands to use the confirmation API.
  3. Updated some of the commands to use the cooldown API. Note: some commands are known to not be using it at the moment.
  4. Removed following unused settings from Settings : recoverSuperFlat and muteDeathMessages.
  5. Made fakePlayers an experimental config setting. Note: this has currently no effect over BentoBox, however the experimental value will later be used to explicitely tell that this setting might be dangerous to use.
  6. Updated locales to use the new banner format.
  7. Updated locales to use the new "meta" format.
  • Bug fixes
  1. Fixed EndermanListener to use BlockData instead of MaterialData.
  2. Added missing protection.flags.PVP_OVERWORLD.active in en-US locale.
  3. Fixed schems not being pasted correctly. They now use BlockData as well.
  4. Fixed commands tab-completer not working on 1.13.
  5. Fixed spawners being incorrectly handled in schems.
  6. Fixed /island team kick <player> not kicking the player (even though it was said he was).
  7. Fixed tons of code smells.

FC 81% Release

03 Aug 04:57
Compare
Choose a tag to compare
FC 81% Release Pre-release
Pre-release

Installation

I recommend a fresh install for this version because a lot has changed. If you plan to use MySQL, you'll need to create a database yourself, e.g., bentobox and set the config settings in config.yml of BentoBox.

  1. BentoBox is the main plugin. Put it in your plugins folder.
  2. Run the server and BentoBox will create some folders, one of them called addons
  3. Stop the server and edit config.yml as you like
  4. Place all the add-ons (or whichever ones you want) into the addons folder
  5. Start the server. The add-ons will make their folders and config files
  6. (Optional) Stop the server and edit the configs how you like, then restart.

We are still in development, so by all means report bugs, but we may need to ignore them if we know about them already. Thanks!

80% Feature Complete - 1.13 update!

01 Aug 10:07
Compare
Choose a tag to compare
Pre-release

80% feature complete and not bug-free pre-release version.

WARNING: We updated BentoBox to fully support 1.13. This means that BSkyBlock & AcidIsland addons can not currently run on BentoBox.

NOTE: BSkyBlock's commands have been removed from BentoBox. In the current state, BentoBox is doing "nothing".


Changelog :

  • API
  1. Better exception handling with locales.
  2. Changed BSBLocale constructor to BSBLocale(Locale, YamlConfiguration).
  3. Changed BSBLocale#merge(File) to BSBLocale#merge(YamlConfiguration).
  4. Removed acid-related events : EntityDamageByAcidEvent, ItemDestroyByAcidEvent, ItemFillWithAcidEvent, PlayerDrinkAcidEvent.
  5. Better addon loading handling.
  6. BREAKING CHANGE: renamed world.bentobox.bbox to world.bentobox.bentobox.
  7. Removed GameType enum in Constants.
  8. Description and parameters references for CompositeCommand are now set automatically, but can still be overridden.
  • New features
  1. Updated to 1.13 (31st July 2018 Spigot version).
  • Tweaks
  1. Removed a few unused references in en-US locale.
  2. Fixed typos in en-US locale.
  3. Made TNT a PROTECTION flag (was previously a SETTING).
  • Bug fixes
  1. Fixed incorrect YAML format in pl-PL locale.
  2. Fixed invalid banner for pl-PL locale.

79% Feature Complete

27 Jul 21:23
Compare
Choose a tag to compare
79% Feature Complete Pre-release
Pre-release

79% feature complete and not bug-free pre-release version.

NOTE: Tastybento and I are currently away from our respective homes. Downloads will be added soon, but you can download the dev builds on CodeMC CI for now.

NOTE: BSB can now work on Spigot 1.13-pre7. However, keep in mind it is not designed to work on 1.13 and that it is currently only officially developped on 1.12.


Changelog :

  • API
  1. Removed Island#setSpawnFlagsDefaults() - was not used.
  2. Added BSBReadyEvent which is called when the plugin is fully loaded.
  3. Removed the following variables in Settings (they are now flags) : allowPistonPush, restrictFlyingMobs, allowEndermanGriefing, endermanDeathDrop, allowTNTDamage, allowChestDamage, allowCreeperDamage, allowCreeperGriefing, allowMobDamageToItemFrames.
  • New features
  1. Added CHEST_DAMAGE WORLD_SETTING flag.
  2. Added ENDERMAN_GRIEFING WORLD_SETTING flag.
  3. Added ENDERMAN_DEATH_DROP WORLD_SETTING flag.
  4. Added ITEM_FRAME_DAMAGE WORLD_SETTING flag.
  5. Added GEO_LIMIT_MOBS WORLD_SETTING flag - defaults are flying mobs, but it can be expanded to all existing mobs.
  6. Added pl-PL locale (thanks @RikoDEV).
  7. Added /bsb clearresets.
  8. Added /bsb clearresetsall (and this has been done 30,000 feet above Nevada desert! Woohoo!).
  • Tweaks
  1. /bsb range display now uses the server view-distance to reduce potential lags on both client and server sides.
  2. TNT flag is now a SETTING (it was previously a WORLD_SETTING). That means that it can now be toggled by players! BOOOM!
  3. Updated en-US with better texts for the newest commands.
  4. /bsb range set and /bsb range reset now provide a better feedback.
  • Bug fixes
  1. Removed a debug message that was a bit spammy ("Place blocks MATERIAL").
  2. Fixed CREEPER_DAMAGE flag applying even to non-island worlds.

74% Feature Complete

19 Jul 20:22
Compare
Choose a tag to compare
74% Feature Complete Pre-release
Pre-release

74% feature complete and not bug-free pre-release version.

WARNING: This update contains some API breaking changes. If you're using addons, wait for their updated versions to be attached to this release note (~ 20/07 at 10 AM UTC).

WARNING: BSkyBlock now needs at least Spigot to run properly as it now uses the SpigotAPI.


Changelog :

  • API
  1. Renamed ClickHandlers (IslandToggleClickListener -> IslandToggleClick ; WorldToggleClickListener -> WorldToggleClick).
  2. IslandToggleClick is now used by default for SETTING flags.
  3. WorldToggleClick is now used by default for WORLD_SETTING type flags.
  4. Added the ability to add comments to the top of the config file.
  5. Flag listeners are now registered once the plugin is nearly entirely loaded.
  6. Added isWaterUnsafe() in WorldSettings.
  7. Added convenience methods in CompositeCommand to ignore the help subcommand (if it exists).
  8. Changed BSBCommand#execute(User, List<String>) to BSBCommand#execute(User, String, List<String>).
  9. Added PlayersManager#getUser(UUID).
  10. Rewrote some Javadoc in Island.
  11. Removed #setMinX(int), #setMinZ(int), #setMinProtectedX(int), #setMinProtectedZ(int) in Island as those were legacy methods from ASkyBlock and were actually useless.
  12. Removed Island#getTileEntityCount(Material, World) as it will become useless as of 1.13.
  • New features
  1. Added config option to set the worlds' difficulty.
  2. Added TNT WORLD_SETTING flag.
  3. Added CREEPER_DAMAGE and CREEPER_GRIEFING WORLD_SETTING flags.
  4. Added /bsb range <display/show/hide> to show the limits of an island (not optimized yet).
  5. Added /bsb range set <player> <range>.
  6. Added /bsb range reset <player>.
  • Tweaks
  1. Added more detailed feedback for CleanSuperFlat Flag.
  2. Moved commands/admin/teams package to commands/admin/team.
  3. Moved commands/island/teams package to commands/island/team.
  4. Updated en-US locale so multi-line texts looks nicer
  • Bug fixes
  1. Fixed ANIMAL_SPAWN flag not being toggleable.
  2. Fixed "Unknown command" error due to a case-sensitive handling of the sub-commands (e.g.: HeLP, ABout).
  3. Fixed /is go sending a default-colored error message when having no island .
  4. Fixed damage not applying on entities in case it was also inflicting damage on the player while PVP was off (e.g.: potions).
  5. Fixed OPs not being able to bypass locked islands.
  6. Fixed OPs not being able to bypass islands where they were banned.
  7. Fixed database errors due to an incorrect Location serialization in YAML files.
  8. Fixed edge-case bugs with FIRE_EXTINGUISH flag.
  9. Fixed an NPE when some custom entities where spawning naturally.
  10. Fixed bug where OPs could not see admin help by default.
  11. Fixed bug where boats could not be broken by the island owner.
  12. Fixed /bsb info not displaying the actual protection range.