Skip to content

Commit 02c00a9

Browse files
Copilottastybento
andcommitted
Update Boxed docs: add Flags, Placeholders, structures.yml, config options, and Regionerator sections
Co-authored-by: tastybento <4407265+tastybento@users.noreply.github.com>
1 parent b73d0fc commit 02c00a9

File tree

1 file changed

+114
-13
lines changed

1 file changed

+114
-13
lines changed

README.md

Lines changed: 114 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ A game mode where you are boxed into a tiny space that only expands by completin
99
* Border - shows the box
1010

1111
### Warning!!
12-
Boxed requires **a lot of RAM** and can take up to **10 minutes** to boot up for the first time as it pre-generates the worlds. After the initial start, it will start up much quicker. With 12GB of RAM running on a fast ARM-based system, it takes ~ 8 minutes for the first boot. If you do not have enough RAM then weird things will happen to you server including strange errors about chunks and things like that. To dedicate enough RAM to your JVM, use the correct flags during startup. Here is my `start.sh` for running on Paper 1.19.4:
12+
Boxed requires **a lot of RAM** and can take up to **10 minutes** to boot up for the first time as it pre-generates the worlds. After the initial start, it will start up much quicker. With 12GB of RAM running on a fast ARM-based system, it takes ~ 8 minutes for the first boot. If you do not have enough RAM then weird things will happen to your server including strange errors about chunks and things like that. To dedicate enough RAM to your JVM, use the correct flags during startup. Here is my `start.sh` for running on Paper 1.19.4:
1313
```
1414
#!/bin/sh
1515
java -Xms12G -Xmx12G -XX:+UseG1GC -XX:+ParallelRefProcEnabled -XX:MaxGCPauseMillis=200 -XX:+UnlockExperimentalVMOptions -XX:+DisableExplicitGC -XX:+AlwaysPreTouch -XX:G1HeapWastePercent=5 -XX:G1MixedGCCountTarget=4 -XX:G1MixedGCLiveThresholdPercent=90 -XX:G1RSetUpdatingPauseTimePercent=5 -XX:SurvivorRatio=32 -XX:+PerfDisableSharedMem -XX:MaxTenuringThreshold=1 -XX:G1NewSizePercent=30 -XX:G1MaxNewSizePercent=40 -XX:G1HeapRegionSize=8M -XX:G1ReservePercent=20 -XX:InitiatingHeapOccupancyPercent=15 -Dusing.aikars.flags=https://mcflags.emc.gs -Daikars.new.flags=true -jar paper-1.19.4.jar nogui
@@ -20,14 +20,14 @@ java -Xms12G -Xmx12G -XX:+UseG1GC -XX:+ParallelRefProcEnabled -XX:MaxGCPauseMill
2020
### Quick Start
2121

2222
1. Place Boxed addon into the BentoBox addons folder along with InvSwitcher and Border (use the latest versions!).
23-
2. (Optional) Installed the Datapack for custom advancements - https://github.com/BentoBoxWorld/BoxedDataPack/
24-
4. Restart the server - new worlds will be created. This will take a while!
25-
5. Login
26-
6. Type `/boxed` to start.
27-
7. Turn off advancement announcements `/gamerule announceAdvancements false` otherwise there is a lot of spam from the server when players get advancements.
23+
2. (Optional) Install the Datapack for custom advancements - https://github.com/BentoBoxWorld/BoxedDataPack/
24+
3. Restart the server - new worlds will be created. This will take a while!
25+
4. Login.
26+
5. Type `/boxed` to start.
27+
6. Turn off advancement announcements with `/gamerule announceAdvancements false` to avoid spam, or set `boxed.broadcast-advancements: true` in `config.yml` to have Boxed broadcast them instead.
2828

2929

30-
* You will start by a tree. The is a chest with some handy items in it. (This is the island blueprint)
30+
* You will start next to a tree. There is a chest with some handy items in it. (This is the island blueprint)
3131
* The only area you can operate on is your box that shows as a border.
3232
* To make your box bigger, complete advancements.
3333
* Check your progress with the Advancements screen, (L-key).
@@ -47,20 +47,44 @@ java -Xms12G -Xmx12G -XX:+UseG1GC -XX:+ParallelRefProcEnabled -XX:MaxGCPauseMill
4747
### config.yml
4848
The config is very similar to BSkyBlock, AcidIsland, etc.
4949

50-
Each player will have a land of their own to explore up to the limit of the island distance value. The default is 400, so the land will be 800 x 800 blocks. The land is semi-random, but each player will get roughly the same layout (see the biomes config). Structures such as villages, broken nether gates, shipwrecks, etc. are random and so some players may get them, others not. In a future version, switching off structures will be a config option. Strongholds are switched off and do not exist. Each player's land is surrounded by seas of different temperatures. If the border is not solid, then players can theoretically explore other lands.
50+
Each player will have a land of their own to explore up to the limit of the island distance value. The default is 320, so the land will be 640 x 640 blocks. The land is semi-random, but each player will get roughly the same layout (see the biomes config). Structures such as villages, broken nether gates, shipwrecks, etc. are random and so some players may get them, others not. Strongholds are switched off and do not exist. Each player's land is surrounded by seas of different temperatures. If the border is not solid, then players can theoretically explore other lands.
5151

5252
*World Seed*
53-
The world seed is what it is used to generate the lands. I recommend keeping this value. If you change it the land may be very different.
53+
The world seed is used to generate the lands. It is recommended to keep this value. If you change it the land may be very different. Note that changing the seed mid-game requires a full reset of your databases and worlds.
54+
55+
*Key Boxed-specific settings:*
56+
57+
| Setting | Default | Description |
58+
|---------|---------|-------------|
59+
| `boxed.ignore-advancements` | `false` | If `true`, advancements will not change the size of the box. |
60+
| `boxed.broadcast-advancements` | `false` | If `true`, Boxed will broadcast new advancements. Recommended: set the game rule `/gamerule announceAdvancements false` and use this setting instead. |
61+
| `boxed.deny-visitor-advancements` | `true` | If `true`, visitors cannot earn advancements. Note: visitors will still receive other rewards such as experience. |
62+
| `world.allow-structures` | `false` | Allow vanilla structures to generate in the seed world. |
5463

5564
### Blueprint
5665

5766
There is one blueprint "island" that is used to generate the tree, chest and blocks below down to y = 5. The default height of the surface is about y = 65, so the blueprint has to be about 60 blocks tall. If you make any good blueprints, please share them!
5867

5968
### advancements.yml
60-
This file contains all the advancements and how much your box should grow if you get one. The file can contain custom advancements if you have them. The default is for most recipe advancements to give nothing.
69+
This file contains all the advancements and how much your box should grow if you get one. The file can contain custom advancements if you have them.
70+
71+
There are settings at the top of the file:
72+
73+
| Setting | Default | Description |
74+
|---------|---------|-------------|
75+
| `settings.default-root-increase` | `0` | Score applied when a root (tab-opening) advancement is earned. Typically left at 0 to avoid rewarding players simply for unlocking a new tab. |
76+
| `settings.unknown-advancement-increase` | `1` | Default box increase for any advancement not listed in this file. Useful for custom advancements added via a data pack — you don't need to list every new advancement manually. |
77+
| `settings.unknown-recipe-increase` | `0` | Default box increase for recipe advancements not listed in this file. |
78+
| `settings.automatic-scoring` | `true` | If `true`, uses a proprietary algorithm to automatically score advancements. If `false`, each advancement must be scored manually. |
6179

6280
Example:
63-
```
81+
```yaml
82+
# Lists how many blocks the box will increase when advancement occurs
83+
settings:
84+
default-root-increase: 0
85+
unknown-advancement-increase: 1
86+
unknown-recipe-increase: 0
87+
automatic-scoring: true
6488
advancements:
6589
'minecraft:adventure/adventuring_time': 1
6690
'minecraft:adventure/arbalistic': 1
@@ -69,7 +93,7 @@ advancements:
6993
'minecraft:adventure/honey_block_slide': 1
7094
'minecraft:adventure/kill_a_mob': 1
7195
...
72-
```
96+
```
7397

7498
### biomes.yml
7599
The player's land has biomes and they are defined here. It's not possible to define where the biomes are right now, only what affect they have on the terrain.
@@ -81,8 +105,85 @@ Setting ocean biomes to higher height numbers will result in the ocean floor bei
81105

82106
A lot of these numbers are rough guesses right now and if you come up with better values, please share them!
83107

108+
### structures.yml
109+
This file records which Minecraft structures should be placed in each new player's box when their area is first created. Structures are stored relative to the island center and are placed in overworld (`normal`) and nether sections.
110+
111+
Admins can place structures in-game using the `/boxadmin place` command:
112+
113+
```
114+
/boxadmin place <structure> [x y z] [ROTATION] [MIRROR] [NO_MOBS]
115+
```
116+
117+
| Argument | Description |
118+
|----------|-------------|
119+
| `<structure>` | Minecraft structure name (tab-complete to see available structures) |
120+
| `[x y z]` | Coordinates where the structure should be placed. Use `~` for the current position. |
121+
| `[ROTATION]` | Optional rotation: `NONE`, `CLOCKWISE_90`, `CLOCKWISE_180`, `COUNTERCLOCKWISE_90` |
122+
| `[MIRROR]` | Optional mirror: `NONE`, `LEFT_RIGHT`, `FRONT_BACK` |
123+
| `[NO_MOBS]` | Optional flag to suppress mob spawning from this structure |
124+
125+
To undo the last placed structure: `/boxadmin place undo`
126+
127+
When a structure is placed via this command while standing in a player box, it is automatically saved to `structures.yml` and will be placed in all future boxes.
128+
129+
130+
## Flags
131+
132+
Boxed registers two flags unique to this gamemode.
133+
134+
### ALLOW_MOVE_BOX (World Setting)
135+
Controls whether box-moving via ender pearl is enabled at all in this world. This is a world-level toggle visible in the BentoBox admin settings.
136+
137+
* **Type:** World Setting
138+
* **Default:** Enabled
139+
140+
### MOVE_BOX (Protection Flag)
141+
Controls which rank of island member is allowed to move the box by throwing ender pearls from within it. Only shown and active when `ALLOW_MOVE_BOX` is enabled.
142+
143+
* **Type:** Protection (Island Setting)
144+
* **Default:** Owner only
145+
* **Icon:** Composter
146+
147+
Players can find this setting under `/box settings` (look for the Composter icon).
148+
149+
150+
## Placeholders
151+
152+
The following PlaceholderAPI placeholders are registered by Boxed:
153+
154+
| Placeholder | Description |
155+
|-------------|-------------|
156+
| `%boxed_island_advancements%` | The number of advancements earned by the player's island (based on the player's island membership). |
157+
| `%boxed_visited_island_advancements%` | The number of advancements earned by the island the player is currently standing on. |
158+
84159

85160
## Custom Advancements
86-
To find out how to add custom advacements to your server, watch the tutorial video [here](https://www.youtube.com/watch?v=zNzQvIbweQs)!
161+
To find out how to add custom advancements to your server, watch the tutorial video [here](https://www.youtube.com/watch?v=zNzQvIbweQs)!
162+
163+
Download the official [Boxed DataPack](https://github.com/BentoBoxWorld/BoxedDataPack) for extra custom advancements.
164+
165+
166+
## Using Regionerator
167+
168+
*Note: This plugin is designed to delete unused regions of your world! Make sure you take backups if you use it! Use at your own risk!*
169+
170+
[Regionerator](https://github.com/Jikoo/Regionerator) is a plugin that gradually deletes unused chunks to keep world sizes low. It supports BentoBox and respects box boundaries. It can be used to delete box chunks so that they can be regenerated. As Boxed uses seed worlds to copy from, these can appear to be unused by Regionerator and deleted, which means that startup becomes very slow. To avoid this, set the seed worlds as exempt from its deletions by adding these entries to the `worlds` section of the Regionerator config file:
171+
172+
```yaml
173+
worlds:
174+
boxed_world/seed_base:
175+
days-till-flag-expires: -1
176+
boxed_world/seed:
177+
days-till-flag-expires: -1
178+
default:
179+
days-till-flag-expires: 0
180+
```
181+
182+
To get the most out of Regionerator, change the BentoBox `config.yml` to *not* delete chunks when an island is removed. This leaves deletion up to Regionerator and it will clean up the chunks if the unused area is large enough. Set `keep-previous-island-on-reset: true`:
183+
184+
```yaml
185+
deletion:
186+
keep-previous-island-on-reset: true
187+
```
87188

88189

0 commit comments

Comments
 (0)