Minecraft Game Modes
Skyblock starts every player on a tiny island floating in the void. Everything they ever build comes from that island, a cobblestone generator and whatever they can farm. This guide takes you from an empty server to a launched, well-run Skyblock server: islands sized correctly, your own starter island, challenges and island levels for progression, ore generators, upgrades, shops, ranks, protection, lag control, backups and seasonal resets.
We use BentoBox with its BSkyBlock game mode. BentoBox is free, open source, actively maintained, and split into small addons, so you only run the features you want. The same BentoBox install can also run OneBlock, AcidIsland and other island game modes side by side (see Running it in a network).
Time needed: about 2 hours for a basic server, plus an evening for challenges, shops and your own starter island.
Before you start you need:
- A Minecraft server on Paper, with the version pinned on Startup. Paper setup
- The right Java for that version. Current BentoBox releases need Java 25 and a recent Paper; check the BentoBox release notes for the exact range before you pick a Minecraft version.
- At least 4 GB of memory for a small community, 6 GB or more once you pass 30 players online.
- About an hour to read this through before players join. Several island settings cannot be changed later.
Decide your island rules first
Write these down before you install anything. Three of them are locked in forever once the first island exists.
| Decision | Typical choice | Can change later? |
|---|---|---|
| Distance between islands | 400 (islands 800 blocks apart) |
No. Changing it breaks every island. |
| World name, sea height, start position | Defaults | No. Needs a full wipe. |
| Starting protection range | 50 (a 100 × 100 area) |
Yes, per island, with commands, permissions or Upgrades. |
| Max team size | 4 | Yes. |
| Nether and End islands | On | Turning them on later is fine; off later loses those islands. |
| Island resets allowed | 3 | Yes. |
| Economy | Vault + EssentialsX | Yes, but plan prices before launch. |
| Season length | None, or 3–6 months | Yes. |
Distance vs protection range. BentoBox lays islands out on a grid. distance-between-islands is a radius: the distance from an island's centre to the edge of its grid cell. With 400, island centres are 800 blocks apart. protection-range is also a radius: the part of that cell the owner can build in. It can grow up to the distance but never past it. Choose a generous distance now (it costs nothing; empty void is not saved to disk) and a small starting protection range that players expand by progressing.
Install BentoBox and BSkyBlock
Install BentoBox
- Make a backup first: Backups → Create Backup.
- Open Minecraft Plugins, search
BentoBoxand choose the download icon on its row. Install plugins - Start the server, wait until the console says
Done, then Stop it. BentoBox createsplugins/BentoBox/with itsconfig.ymland an emptyaddonsfolder.
Install the BSkyBlock addon
BentoBox addons are not normal plugins. They go in plugins/BentoBox/addons/, never in plugins/.
- Go to download.bentobox.world on your computer. It lists every official game mode and addon with a matching version. (The same jars are published on Modrinth by the BentoBox team.)
- Download BSkyBlock, and the feature addons you picked from the table below.
- In the panel open Files →
plugins→BentoBox→addons. - Choose Upload and select the jars. Or copy a jar's download link and use Pull from URL.
- Do not start yet. Set up the island options in the next step first.
/bbox catalog in game shows the official addon catalog with download links, which is handy for spotting addons you have not installed yet. It does not install them for you.
Choose your addons
| Addon | Adds | Recommendation |
|---|---|---|
| Level | Island level from block values, /island top leaderboard. |
Essential. Many other addons use the level. |
| Challenges | Goals with rewards, grouped into levels. | Essential: the main progression. |
| MagicCobblestoneGenerator | Ore generators: cobblestone generators also produce ores, unlocked by tier. | Strongly recommended. |
| Upgrades | Players buy bigger islands, higher limits, crop growth and more. | Recommended once you have an economy. |
| Limits | Caps hoppers, pistons, mobs and other laggy things per island. | Essential for performance. |
| Warps | Players place a sign so others can visit their shop or farm. | Recommended. |
| Visit | Visiting islands from a menu instead of signs, optionally for a fee. | Optional, alternative to Warps. |
| Biomes | Players change their island's biome. | Optional. |
| Border | Shows a visible border at the edge of each island's protection. | Recommended; reduces "why can't I build here" questions. |
| IslandFly | /island fly on your own island. |
Optional, good rank perk. |
| Greenhouses | Glass structures that simulate a biome. | Optional. |
| InvSwitcher | Separate inventories per game mode. | Required only when one server runs several game modes. |
Every addon page states which BentoBox version it needs. Keep BentoBox and all addons on matching versions; when you update BentoBox, update the addons in the same go.
Configure BSkyBlock before the first start
- Start the server once with BSkyBlock in the addons folder, wait for
Done, then Stop it. This createsplugins/BentoBox/addons/BSkyBlock/config.ymland the worldsbskyblock_world,bskyblock_world_netherandbskyblock_world_the_end. - Open
plugins/BentoBox/addons/BSkyBlock/config.ymlin Files and change the settings below. - If you changed anything in the
world:section, delete the threebskyblock_worldfolders in Files before starting again, so they are regenerated with your settings. Nobody has an island yet, so nothing is lost. - Start the server.
The settings that matter
bskyblock:
command:
island: island is skyblock sb
admin: bsbadmin bsb skyblockadmin sbadmin sba
new-player-action: create
default-action: go
world:
friendly-name: BSkyBlock
world-name: bskyblock_world
difficulty: NORMAL
distance-between-islands: 400
protection-range: 50
start-x: 0
start-z: 0
island-height: 80
sea-height: 0
max-islands: 0
default-game-mode: SURVIVAL
nether:
generate: true
islands: true
roof: true
spawn-radius: 25
end:
generate: true
islands: true
dragon-spawn: false
island:
max-team-size: 4
max-coop-size: 4
max-trusted-size: 4
max-homes: 1
reset:
reset-limit: 3
leavers-lose-reset: true
kicked-keep-inventory: false
on-join:
money: false
inventory: true
health: true
hunger: true
exp: true
ender-chest: true
on-leave:
money: false
inventory: false
| Setting | Value | Why |
|---|---|---|
distance-between-islands |
400 |
Radius of each grid cell. Plenty of room to grow; can never change. |
protection-range |
50 |
Starting buildable radius (100 × 100). Let Upgrades or ranks raise it. |
island-height |
80 |
Y level of the island's centre bedrock. |
sea-height |
0 |
No sea: classic Skyblock. Never change mid-game. |
nether.islands / end.islands |
true |
Every player also gets Nether and End islands. Set false for a normal vanilla Nether. |
max-team-size |
4 |
Default team size; ranks can raise it with a permission (step 9). |
max-homes |
1 |
Default number of /island sethome homes; ranks raise it. |
reset-limit |
3 |
Lifetime resets. -1 is unlimited, 0 is hardcore (none). |
leavers-lose-reset |
true |
Stops players leaving and rejoining teams to farm fresh islands. |
on-join.inventory etc. |
true |
Clears inventory, XP and Ender Chest when a player creates or joins an island, so nobody carries items from an old island into a new one. |
on-join.money |
false |
Leave off unless you want resets to wipe balances. |
Below island: you'll also find create-island-on-first-login. Leave it off if you have a spawn or lobby that explains the server first; turn it on for "join and play straight away" servers.
Check it worked
- Join the server and run
/island. You should be asked to pick an island (or get the default one) and be teleported onto it. - Run
/island infoto see your island's protection range and centre. - Run
/bentobox versionin the console: BentoBox, BSkyBlock and each addon should be listed with versions.
Build a spawn and a custom starter island
The spawn island
New players and visitors need somewhere to land.
- Fly to an empty spot in
bskyblock_worldfar from0,0, or use the default island you just created. - Build your spawn: rules signs, a tutorial path, NPC shops later.
- Stand where players should appear and run
/bsbadmin setspawn. This turns that island into the protected spawn island./island spawnnow takes players there.
Make your own starter island
The default island works, but a custom one makes your server feel like yours. BentoBox saves islands as blueprints and groups them into bundles that players choose from.
- Build the island somewhere empty in
bskyblock_world. Put one bedrock block at the centre: BentoBox centres the island on it. Include a chest with starter items (lava bucket, ice, sapling, bone meal, some food), and a sign explaining/island help. - Stand at one corner and run
/bsbadmin blueprint pos1(short form/bsb bp pos1). - Stand at the opposite corner, diagonally across and higher up, and run
/bsbadmin blueprint pos2. - Stand where players should spawn on the island and run
/bsbadmin blueprint origin. - Run
/bsbadmin blueprint copy. Use/bsbadmin blueprint copy aironly if the island will be pasted into water or rock. - Test it: fly somewhere empty and run
/bsbadmin blueprint paste. Check it looks right, then remove the test copy. - Run
/bsbadmin blueprint save island. Saving asislandreplaces the default island after you confirm; any other name creates a new blueprint. Repeat fornether-islandandend-islandif you built those too.
Blueprints are saved as .blueprint files in plugins/BentoBox/addons/BSkyBlock/blueprints/. Rename blueprints and bundles only in the game, never by renaming files.
Offer several islands (bundles)
- Run
/bsbadmin blueprintwith no arguments to open the Blueprint Manager. - Click the green banner (bottom left) and type a bundle name in chat, e.g.
desert. - Click a blueprint below the grey panes so it glows, then click the green pane to set the Overworld island. The red pane is the Nether island and the yellow pane the End island; both are optional.
- Right-click the bundle icon to add a description; click an item in your inventory to set its icon.
- Click the picture icon to make the bundle require a permission. The permission is
bskyblock.island.create.<bundle name>, e.g.bskyblock.island.create.desert. Give it to a rank in step 9.
The default bundle cannot be deleted. Every bundle needs an Overworld blueprint.
Set up island levels and block values
The Level addon counts every block on an island and turns the total into a level. Players use it to compete, and other addons use it as a requirement.
- Restart once after installing Level so it creates
plugins/BentoBox/addons/Level/config.ymlandblockconfig.yml. - In
config.yml, check these:
levelcost: 100
level-calc: blocks / level_cost
levelwait: 60
zero-new-island-levels: true
nether: false
end: false
deathpenalty: 100
underwater: 1.0
| Key | Meaning | Advice |
|---|---|---|
levelcost |
Points per level. | 100 is fine. Raise it to slow levels down. |
level-calc |
Formula. | Leave the default unless you know you want a curve. |
levelwait |
Seconds between /island level requests. |
60 or more; a calculation scans the whole island. |
zero-new-island-levels |
Starter-island blocks don't count. | Keep true. |
nether, end |
Count Nether/End islands too. | Decide before launch: switching on later jumps everyone's level. |
deathpenalty |
Points lost per death. | Lower it or set 0 for a casual server. |
- In
blockconfig.yml,blocks:sets what each block is worth (whole numbers; unlisted blocks are 0), andlimits:caps how many of a block count:
limits:
cobblestone: 10000
netherrack: 1000
blocks:
diamond_block: 300
emerald_block: 300
iron_block: 15
beacon: 300
cobblestone: 1
hopper: 0
Set farm blocks (hoppers, observers) low or zero so players aren't rewarded for building lag. Values only change future calculations: tell players to run /island level again.
Commands: players use /island level, /island top and /island value (hold a block to see its worth). Admins use /bsbadmin level <player> and /bsbadmin top remove <player> to remove a cheater from the top ten.
Set up challenges
Challenges are the backbone of Skyblock progression: "collect 64 cobblestone", "build a farm", "reach level 50".
- Restart after installing Challenges. It starts with no challenges at all.
- Run
/bsbadmin challengesto open the admin menu. - Choose the option to load the default challenges: 5 levels and 57 challenges, a solid base to edit. Or use Import Template for a template file, or the Web Library icon to download a community set.
- Edit any challenge in the menu: its requirements, rewards (items, money, XP, commands), whether it's repeatable and how many times, and whether it's deployed (visible).
- Players open them with
/island challenges.
| Challenge type | Requires | Good for |
|---|---|---|
| Inventory | Items in the player's inventory (taken on completion). | Early game: "bring 32 wheat". Make these repeatable with a cooldown for an item sink. |
| Island | Blocks or mobs on the island, or a biome. | "Build a 5 × 5 cobblestone generator room". |
| Other | XP, money or island level. | Level milestones. |
| Statistic | A player statistic (mobs killed, blocks mined). | Long-term goals. |
Reward commands have no leading /, and [player] is replaced with the player's name, e.g. lp user [player] permission set bskyblock.island.maxhomes.2 true. This is how you give permanent perks for finishing a challenge level.
store-island-data in Challenges' config.yml decides whether challenges are shared by the whole island team (true) or tracked per player (false). Decide before launch.
After editing challenge files by hand, run /bsbadmin challenges reload.
Ore generators (MagicCobblestoneGenerator)
Vanilla cobblestone generators make only cobblestone. MagicCobblestoneGenerator replaces that output with a weighted mix of blocks, in tiers that players unlock: a starting generator, then coal, iron, gold, diamond and so on.
- Restart after installing. The addon reads
plugins/BentoBox/addons/MagicCobblestoneGenerator/generatorTemplate.yml. - Edit the template. Each tier lists its blocks with weights, and its requirements:
tiers:
coal_generator:
name: "&r&lCoal Generator"
icon: "COAL_ORE:1"
type: COBBLESTONE_OR_STONE
priority: 1
requirements:
island-level: 20
purchase-cost: 500.0
activation-cost: 0.0
blocks:
COBBLESTONE: 65
STONE: 15
GRAVEL: 5
COAL_ORE: 15
- Template edits don't apply by themselves: run
/bsbadmin generator import(or Import Template in the/bsbadmin generatormenu). - Players open
/island generatorto see, buy and switch generators.
requirements can include an island level, a purchase cost (needs Vault), a permission or biomes. The number of generators a player can have active at once comes from the permission bskyblock.stone-generator.active-generators.<number>.
Balancing: ores are the main source of money. Start ore weights low (diamond ore 1–2%) and check what a busy island earns per hour before raising them.
Economy, shops, upgrades, warps and limits
Economy
- Install VaultUnlocked (the maintained Vault fork) or Vault, and EssentialsX, from Minecraft Plugins. EssentialsX provides the economy; Vault connects plugins to it.
- In
plugins/Essentials/config.ymlsetstarting-balance(e.g.100) and thecurrency-symbol. - Restart and run
/balanceto check.
BentoBox uses the economy automatically while use-economy: true is set in plugins/BentoBox/config.yml.
An admin shop
Players need somewhere to sell farm output and buy things they can't make (sand, dirt, saplings).
- EconomyShopGUI is free (a paid Premium edition adds a GUI editor and stock limits). ShopGUI+ is paid.
- Price ores and farm items so a mid-game island earns enough to buy upgrades in days, not minutes. Sell prices should be well below buy prices, or players buy and resell for profit.
- Watch
/baltopin the first week. If one player is far ahead, a price is wrong.
Player-run shops: QuickShop-Hikari or ChestShop, found through warp signs.
Upgrades
The Upgrades addon lets players spend money, island levels or items on rewards: a bigger protection range, higher block and entity limits (from the Limits addon), commands (for example, adding a team slot permission), spawner boosts and crop growth boosts.
- Restart after installing, then open
/bsbadmin upgradeto create upgrades and their tiers. Prices and rewards are set in this menu, not inconfig.yml. - Players open
/island upgrade. - If an upgrade raises a Limits limit, list that block or entity under
block-limits-upgradeorentity-limits-upgradein Upgrades'config.yml(only the names matter) so Limits' own permission limits don't fight with it.
A sensible first set: range 50 → 75 → 100 → 150, hopper limit 16 → 32 → 64, team size via a command reward.
Warps
Players put [Welcome] on the top line of a sign on their island; the lines below become the description. Everyone finds it with /island warps or /island warp <player>. By default an island must reach level 10 before its owner can make a warp sign (change it in Warps' config.yml).
Limits
Limits caps how many of a block or mob an island can have. Set it up before launch; adding limits later means players already over the limit keep what they have.
plugins/BentoBox/addons/Limits/config.yml:
gamemodes:
- BSkyBlock
blocklimits:
HOPPER: 32
OBSERVER: 32
PISTON: 32
STICKY_PISTON: 32
SPAWNER: 10
COMPARATOR: 32
entitylimits:
ARMOR_STAND: 20
CHICKEN: 30
COW: 30
PIG: 30
SHEEP: 30
VILLAGER: 20
ITEM_FRAME: 64
entitygrouplimits:
Monsters:
icon: ROTTEN_FLESH
limit: 150
entities:
- ZOMBIE
- SKELETON
- CREEPER
- SPIDER
- ENDERMAN
- WITCH
Limits apply separately in each dimension: a hopper limit of 32 allows 32 in the Overworld, 32 in the Nether and 32 in the End. Use blocklimits-nether: and blocklimits-end: to set those lower.
Players see their limits with /island limits and fix a wrong count with /island limits recount. Admins recount an island with /bsbadmin limits calc <player>.
Ranks and permissions with LuckPerms
Install LuckPerms from Minecraft Plugins and restart. Run these in the console (no /). BentoBox reads permission numbers from the end of a node; the highest number a player has wins. Number-based permissions are read when the island owner is online.
The default group
Most BSkyBlock player permissions are on by default. Add the few that are not, and decide what normal players may do:
lp group default permission set bskyblock.island.home true
lp group default permission set bskyblock.island.warp true
lp group default permission set bskyblock.island.addwarp true
lp group default permission set bskyblock.challenges true
lp group default permission set bskyblock.stone-generator true
lp group default permission set bskyblock.stone-generator.active-generators.1 true
lp group default permission set bskyblock.island.fly false
lp group default permission set bskyblock.island.deletehome true
Paid or earned ranks
lp creategroup vip
lp group vip parent add default
lp group vip permission set bskyblock.island.maxhomes.3 true
lp group vip permission set bskyblock.team.maxsize.6 true
lp group vip permission set bskyblock.coop.maxsize.6 true
lp group vip permission set bskyblock.island.range.75 true
lp group vip permission set bskyblock.island.fly true
lp group vip permission set bskyblock.island.limit.hopper.48 true
lp group vip permission set bskyblock.stone-generator.active-generators.2 true
lp group vip permission set bskyblock.island.create.desert true
lp creategroup mvp
lp group mvp parent add vip
lp group mvp permission set bskyblock.island.maxhomes.5 true
lp group mvp permission set bskyblock.team.maxsize.8 true
lp group mvp permission set bskyblock.island.range.100 true
Give a player a rank with lp user <name> parent add vip. Check what they have with lp user <name> permission check bskyblock.team.maxsize.6.
| Node | Effect |
|---|---|
bskyblock.island.maxhomes.<n> |
Number of homes. |
bskyblock.team.maxsize.<n> |
Team members. Can't be lower than max-team-size. |
bskyblock.coop.maxsize.<n> / bskyblock.trust.maxsize.<n> |
Coop / trusted slots. |
bskyblock.island.range.<n> |
Protection range radius. Never above distance-between-islands. |
bskyblock.island.limit.<block>.<n> |
Limits addon override, e.g. hopper. |
bskyblock.island.create.<bundle> |
Use a permission-only island bundle. |
bskyblock.island.fly |
IslandFly on your own island. |
bskyblock.stone-generator.active-generators.<n> |
Generators active at once. |
Staff
lp creategroup helper
lp group helper parent add default
lp group helper permission set bskyblock.mod.info true
lp group helper permission set bskyblock.mod.tp true
lp creategroup mod
lp group mod parent add helper
lp group mod permission set bskyblock.mod.bypassprotect true
lp group mod permission set bskyblock.mod.bypasslock true
lp group mod permission set bskyblock.mod.bypassban true
lp group mod permission set bskyblock.mod.team true
lp group mod permission set bskyblock.admin.why true
lp creategroup admin
lp group admin parent add mod
lp group admin permission set bskyblock.admin.* true
lp group admin permission set bentobox.admin.* true
bskyblock.admin.* includes deleting islands. Give it only to people you trust with the whole server. /bentobox perms in the console prints every BentoBox permission your installed addons register.
Teams, coop, visitors and protection flags
Team ranks
| Rank | Who | Lasts |
|---|---|---|
| Owner | The island owner. One per island. | Until /island team setowner. |
| Sub-owner | A member with almost owner powers. | Permanent. |
| Member | Normal team member. Shares the island and its level. | Permanent. |
| Trusted | Not in the team, but has set permissions on the island. | Until untrusted. |
| Coop | Temporary helper. | Until the player who invited them logs out, or the server restarts. |
| Visitor | Anyone else. |
Players manage their team with /island team invite <player>, /island team coop <player>, /island team trust <player>, promote, demote and kick, and keep unwanted visitors out with /island ban <player>.
Island settings (what each rank may do)
Each island owner sets, in /island settings, the lowest rank allowed to break blocks, open chests, use doors, hurt animals and so on. The defaults for new islands come from default-island-flags in BSkyBlock's config.yml, where numbers are ranks: 0 visitor, 200 coop, 400 trusted, 500 member, 900 sub-owner, 1000 owner.
Sensible defaults: visitors may use doors, buttons and pressure plates (so they can tour), but not chests, furnaces, hoppers, animals or redstone.
World settings (admins)
/bsbadmin settings opens server-wide switches for the whole Skyblock world, for example whether creepers damage blocks, whether endermen pick up blocks, whether visitors keep their inventory on death, and whether pistons push across island edges. Hide flags players shouldn't touch by Shift + left-clicking them in the settings menu (stored under hidden-flags).
protection.invincible-visitors lists damage types that can't hurt visitors (falling into the void included), so griefers can't trap and kill guests. Keep it.
Performance: keep farms from lagging
Skyblock servers lag from automatic farms, mob grinders and item piles, not from the void. Do all of this before launch.
server.properties
| Setting | Value | Why |
|---|---|---|
view-distance |
8 |
Void costs little to send, but islands near each other still load. |
simulation-distance |
5 or 6 |
Farms outside this range stop ticking. The biggest single saving. |
config/paper-world-defaults.yml
hopper:
cooldown-when-full: true
disable-move-event: false
tick-rates:
mob-spawner: 2
entities:
spawning:
per-player-mob-spawns: true
alt-item-despawn-rate:
enabled: true
items:
cobblestone: 300
netherrack: 300
cobbled_deepslate: 300
chunks:
entity-per-chunk-save-limit:
experience_orb: 16
arrow: 16
snowball: 8
environment:
optimize-explosions: true
misc:
redstone-implementation: ALTERNATE_CURRENT
| Setting | Why |
|---|---|
hopper.cooldown-when-full: true |
Full hoppers stop checking every tick. |
tick-rates.mob-spawner: 2 |
Spawners tick half as often; players rarely notice. |
alt-item-despawn-rate |
Generator cobblestone on the floor despawns after 15 seconds (300 ticks) instead of 5 minutes. |
entity-per-chunk-save-limit |
Stops chunks full of XP orbs and arrows from being saved and reloaded forever. |
redstone-implementation: ALTERNATE_CURRENT |
Much faster redstone with the same behaviour for almost every build. |
disable-move-event: false |
Keep it off: setting it true breaks plugins that watch items moving between containers. |
Limits and Level
- The Limits values in step 8 are your main defence. Raise them as rewards, never remove them.
- Keep
levelwaitat 60 seconds or more andconcurrent-island-calcs: 1in Level's config.
Find the lag
- Run
spark tpsto see whether the server is keeping up (20 TPS, MSPT under 50). - Run
spark profiler start --timeout 300with players online; it gives you a link when it finishes. - In the report, look for entities, hoppers or a specific chunk.
/bsbadmin infowhile standing there tells you whose island it is. - Lower that island's limit with a permission, or ask the owner to fix the farm. Fix lag
Backups that actually restore
BentoBox keeps island data in two places: its database (who owns which island, team, levels, challenges, generators) and the world files (the blocks). They must always be restored together, from the same moment. A world restore with a newer database gives islands to the wrong owners or leaves players with no island.
Which database?
BentoBox's plugins/BentoBox/config.yml → general.database.type defaults to JSON: files in plugins/BentoBox/database/.
| Database | Pros | Cons |
|---|---|---|
JSON (default) |
Lives inside your server files, so a panel backup captures database and worlds at the same moment. Nothing else to manage. | Slower on very large servers (thousands of islands). |
MARIADB |
Faster on big servers. Required if several BentoBox servers must share data. | Panel backups do not include databases. You must back it up separately, at the same time as the worlds. |
For a single Skyblock server, stay on JSON unless you have thousands of islands. If you do move to MariaDB: create the database on Databases (Databases), set type: MARIADB plus host, port, name, username and password in the database: section, and to keep existing data set type: JSON2MARIADB first and run /bbox migrate, then change it to MARIADB.
A backup schedule
- Schedules → Create Schedule, name
Backup every 6 hours, Minute0, Hour*/6, others*. Times are UTC. Schedules - Tasks: Send Command
save-all, then Create Backup with a Time Offset of10seconds. Ignored files:logs,cache,crash-reports. - Run now once and check Backups shows it as successful.
- Lock a backup on launch day and before every big change (addon update, challenge edits, price changes). Backup schedules
Restoring
Restore the whole backup, not just a world folder. Restoring only bskyblock_world from yesterday while the database is today's is how islands end up swapped.
Seasons, resets and long-term upkeep
Clearing out inactive islands
Islands of players who quit still take disk space. /bsbadmin purge <days> deletes region files that hold only islands untouched for longer than that many days (e.g. /bsbadmin purge 90). Protect an island you want to keep with /bsbadmin purge protect while standing on it. /bsbadmin purge unowned deals with ownerless islands. Lock a backup before purging.
Deleting or resetting one island
/bsbadmin delete <player>removes a player's island (they can make a new one)./bsbadmin resets add <player> 1gives a player an extra reset;/bsbadmin range set <player> 75changes one island's protection range./bsbadmin setowner <player>transfers ownership while standing on an island.
A full season wipe
Many Skyblock servers wipe every 3–6 months so the top ten is a race again.
- Announce the date two weeks ahead. Lock a backup the day before; download it if you want an archive.
- Stop the server.
- In Files, delete
bskyblock_world,bskyblock_world_netherandbskyblock_world_the_end. - In
plugins/BentoBox/database/, delete the island and player data:Islands,Players,IslandLevels,ChallengesPlayerDataand the generator and upgrade data folders. KeepChallengeandChallengeLevel, which hold your challenge definitions. (On MariaDB, these are tables with the same names.) - Reset balances if you want a fresh economy (EssentialsX: delete
plugins/Essentials/userdata/or use your economy's reset command). - Start. Players get new islands; your configs, blueprints, challenges and generators stay.
Updates
- Update BentoBox and all addons together, after a locked backup, never on a busy evening.
- Read the release notes for config changes. New config keys are added automatically; renamed ones are listed in the notes.
- Before a Minecraft version update, check BentoBox and every addon list the new version. Change version
Moderation and anti-grief
- CoreProtect logs every block change, including on islands.
/co inspectthen click a block shows who changed it;/co rollback u:<player> t:2d r:#bskyblock_worldundoes a griefer's work. - Island protection stops visitors breaking things, but team members can grief. Encourage owners to use coop and trust before full membership, and to set
/island settingscarefully. - Ban duplication exploits fast: if one player's balance jumps, check CoreProtect and the shop logs before it spreads.
Running it in a network
A Skyblock server works well as one back-end behind Velocity, next to a lobby, OneBlock and Chunklock. Run several game modes as one network
What changes on the Skyblock back-end
| Setting | Value |
|---|---|
server.properties → online-mode |
false (Velocity checks accounts). |
config/paper-global.yml → proxies.velocity |
enabled: true, online-mode: true, and the forwarding secret from Velocity. |
BSkyBlock create-island-on-first-login |
true is fine: players chose Skyblock in the lobby. |
/bsbadmin setspawn |
Still needed: it's where players land and where /island spawn goes. |
| Economy | Usually separate per game mode (see below). |
Shared LuckPerms
Point every server's LuckPerms at the same MariaDB database, and give each a unique server: name in plugins/LuckPerms/config.yml, e.g. server: skyblock. Then give Skyblock-only permissions with a context so they don't leak to other servers:
lp group vip permission set bskyblock.island.range.75 true server=skyblock
lp group vip permission set bskyblock.island.fly true server=skyblock
Ranks themselves (lp user <name> parent add vip) stay global, so a player who buys VIP has it everywhere.
Separate or shared economy?
- Separate (recommended): each game mode keeps its own EssentialsX economy. Skyblock money comes from generators and shops tuned for Skyblock; letting it buy things on Chunklock breaks that game's balance.
- Shared: needs an economy plugin that stores balances in MySQL on every server. Only do this if every game mode's prices are balanced against each other.
One BentoBox server or separate servers?
BentoBox can run several game modes in one install: put BSkyBlock and AOneBlock (or AcidIsland) in the same addons folder and each gets its own worlds, commands (/island, /ob) and permissions.
| One server, several game modes | One server per game mode | |
|---|---|---|
| Cost | One plan, one set of addons. | More servers. |
| Inventories | Need InvSwitcher so items, XP and health don't cross between modes. | Separate by design. |
| Lag | A laggy OneBlock farm slows Skyblock too. | Isolated. |
| Seasons | Wiping one mode is hard: they share the database. | Wipe each whenever you like. |
| Settings | One Limits, Level and Challenges config, with per-game-mode sections. | Fully independent. |
Small communities do well with one server and InvSwitcher. Networks expecting more than about 30 players at once, or wanting different season dates, should give each game mode its own server.
Common problems
| Problem | Cause | Fix |
|---|---|---|
| Addon doesn't load; console says it needs a newer BentoBox | Version mismatch. | Update BentoBox, then restart. Keep all addons on matching versions. |
| Addon jar does nothing | It's in plugins/ instead of plugins/BentoBox/addons/. |
Move it with Files and restart. |
| BentoBox won't enable at all | Java too old. | Startup → pick the Java version BentoBox's release notes ask for. |
| Changed island distance; islands overlap or vanish | Distance can't change once islands exist. | Restore the backup from before the change. |
Config changes to world: ignored |
The worlds were already generated. | Before launch: delete the bskyblock_world folders. After launch: you need a wipe. |
/island creates the default island, not mine |
Blueprint not saved as island, or your bundle needs a permission. |
Re-save with /bsbadmin blueprint save island, or give bskyblock.island.create.<bundle>. |
| Player can't build at the edge of their island | They're past the protection range. | Explain the Border addon, or raise their range with Upgrades or /bsbadmin range set. |
| VIP team size or homes don't apply | Number permissions are read when the owner is online, and the highest number wins. | Have the owner rejoin. Check lp user <name> permission check <node>. |
| Generator still makes only cobblestone | Template not imported, or the player has no bskyblock.stone-generator permission. |
/bsbadmin generator import; check the permission. |
| Challenge says complete but nothing happens | Reward command had a leading /, or a typo. |
Remove the /; test the command in the console with a real name. |
| Island level drops after a death | deathpenalty in Level's config. |
Lower it or set 0. |
| One island lags the server | A farm, mob grinder or item pile. | spark profiler, find the chunk, lower that island's limits. |
| Islands swapped owners after a restore | World and database restored from different times. | Restore one full backup; on MariaDB restore the database dump from the same time. |
| Items carried between Skyblock and OneBlock | Two game modes on one server without InvSwitcher. | Install InvSwitcher and restart. |
Launch checklist
- [ ] Paper, pinned version, correct Java; BentoBox and all addons on matching versions (
/bentobox version). - [ ]
distance-between-islands, sea height and world names final. World folders regenerated after any change. - [ ] Spawn island built and set with
/bsbadmin setspawn. - [ ] Custom starter island saved as
islandand tested with a fresh account. - [ ] Level block values reviewed; farm blocks worth little.
- [ ] Challenges loaded, edited and tested; reward commands work.
- [ ] Generator tiers imported and priced.
- [ ] Limits set for hoppers, pistons, observers, spawners and mobs.
- [ ] Economy and shop working; buy and sell prices sanity-checked.
- [ ] LuckPerms groups: default, ranks, helper, mod, admin. No staff on
op. - [ ]
default-island-flagsreviewed; visitors can't open chests. - [ ] Paper performance settings applied;
spark tpshealthy with test players. - [ ] CoreProtect installed.
- [ ] Backup schedule running every 6 hours; one locked "launch day" backup.
- [ ] Daily restart scheduled a few minutes after a backup.
- [ ] Rules,
/island helpand Discord link visible at spawn.
Going further
- Run several game modes as one network
- OneBlock servers, the other popular BentoBox game mode
- Create a database and connect plugins
- Fix lag
- BentoBox documentation: docs.bentobox.world, with a page for every addon's commands, permissions and config.

