Expandable Minecraft server plugin for island-type games like SkyBlock or AcidIsland.
Go to file
tastybento 180b88544a Database transition (#662)
- JSON is now the default database type
- JSON database files are now pretty-printed
- It is now possible to migrate from a database type to another through the use of a command and specific transition database types
- It is recommended to move from YAML to JSON.

= Commits breakdown =

* Proposal to make JSON the default database and retire YAML.

* Make JSON file format easier to read.

* Fix tests.

* Adds a hybrid Yaml2Json database type.

This database always tries to use JSON if it is available. If a YAML
file is found, it will be loaded and replaced with a JSON file.

* Move to generic database transition code

* Better comments

* Adds transitional database options so admins can choose.

Adds Yaml2MySQL option and changes config.yml to add instructions.

* Enables full database migration between databases.

Adds /bbox migrate command.

Adds a number of transition databases. DB starts transition  when the
server boots up and will migrate organically. The admin can force an
immediate update using the bbox migrate command.

This operation requires an API breaking change: Addons that use the
Config API must now implement ConfigObject in their config class instead
of DataObject. This is to differentiate YAML config classes from YAML
database classes. If a class is already implements WorldSettings
(GameModeAddons), then no change is required because WorldSettings
implements ConfigObject now. If an old addon is used that does not
implement ConfigObject, BentoBox will not load.

* Added null check to YAML deletion

* Removed the 2YAML transition dbs because YAML is deprecated.

YAML does not support some data structures so conversion could corrupt
data.

* Fixed some javadoc and added missing DatabaseType#JSON2MARIADB

* Renamed package database/transitiondb to database/transition
2019-05-08 21:15:22 +02:00
.github Added an issue template for placeholders 2019-04-10 15:59:13 +02:00
src Database transition (#662) 2019-05-08 21:15:22 +02:00
.gitignore Added command rank settings and extra ranks. 2018-08-11 21:08:04 -07:00
.travis.yml taking SonarCube offline due to build bugs. 2019-05-04 23:33:31 -07:00
LICENSE Change license 2018-02-10 11:25:32 +01:00
pom.xml Updated PlaceholderAPI dependency to 2.10.1 2019-05-08 14:32:35 +02:00
README.md Added links to Sonarcloud's metrics on Sonarcloud's badges 2019-02-02 10:35:44 +01:00
REFERENCES.md Renamed general.errors.not-leader to general.errors.not-owner 2018-12-09 13:18:24 +01:00

BentoBox

Discord Build Status Lines Of Code Maintainability Rating Reliability Rating Security Rating Bugs

BentoBox is an expandable Minecraft 1.13+ Spigot plugin for island-type games like SkyBlock or AcidIsland.

About BentoBox

History

ASkyBlock and AcidIsland were originally created by tastybento. These two plugins were sharing the same codebase, which grew fastly but ultimately became hard to maintain. Poslovitch was running a Skyblock server before starting to contribute regularly on ASkyBlock's codebase.

Then came the idea of completely rewriting ASkyBlock. A turning point that would be called BSkyBlock. In May 2017, tastybento agreed to the idea, and Poslovitch and him spent more time developing the code of the plugin which would become BentoBox. During summer 2018, ASkyBlock's support got dropped and development was focused on the now called plugin BentoBox, which would then take over ASkyBlock and AcidIsland for 1.13+ servers.

Description

BentoBox introduces a unique Addon system and a powerful API which allows for a technically unlimited customization of the gamemodes. Therefore, BentoBox does nothing on its own: addons and gamemodes are bringing the features.

BentoBox being totally free and open-sourced, we are confident in seeing this platform grow and become even more powerful in the future.

Start now to create the server you've dreamed of!

Addons

These include some popular Gamemodes:

  • BSkyBlock: the successor to the popular ASkyBlock.
  • AcidIsland: you are marooned in a sea of acid!

And these include Addons that are bringing incredible new features, such as:

  • Level: calculate your island level and show a top ten.
  • Challenges: gives you challenges to accomplish.
  • WarpSigns: enables players to plant a warp sign and visit other player's islands.

And there are plenty of other official or community-made Addons you can try and use for your server!

Documentation

Downloads

Webtool

A webtool is currently being developed to allow you to easily setup BentoBox and Addons on your server.

Developers

  • Jenkins (untested and mostly unstable builds)

What about contributing?

BentoBox heavily relies on the community that gets involved in its development. You don't need to know any programming language to start helping us.

However, your contribution must be in agreement with:

Report bugs and suggest features

Bugs and feature requests must be filed on our issue tracker.

Pull requests

We consider Pull Requests from non-collaborators that contain actual code improvements or bug fixes. Do not submit PRs that only address code formatting because they will not be accepted.

API

BentoBox uses Maven, and its Maven repository is kindly provided by CodeMC.

Maven dependency

<repositories>
  <repository>
    <id>codemc-repo</id>
    <url>https://repo.codemc.org/repository/maven-public/</url>
  </repository>
</repositories>

<dependencies>
  <dependency>
    <groupId>world.bentobox</groupId>
    <artifactId>bentobox</artifactId>
    <version>PUT-VERSION-HERE</version>
    <scope>provided</scope>
  </dependency>
</dependencies>