Main setup
Setting world type on single player as default
See Default World Type. Use skyblockbuilder:skyblock
as config value.
Setting world type on server as default
If you want to provide a custom server.properties
file, set the level-type
to skyblockbuilder:skyblock
.
Otherwise, it's the same as in single player.
Creating a custom skyblock island
- Build an island.
- Use the custom item
Structure Saver
from the vanilla Tools tab in creative inventory. The output directory for this is<minecraft>/skyblock_exports/<name>.nbt
. Alternatively, you can also use the vanilla Structure Block. Keep in mind that this can only save islands up to 48x48x48 blocks and the output is in<minecraft>/saves/<world>/generated/minecraft/structures/<name>.nbt
. - Copy the generated file from its directory (see previous step) to
config/skyblockbuilder/templates/<name>.nbt
. - Configure the template with a better readable name and spawns in
config/skyblockbuilder/templates.json5
. There can be multiple spawns, each one is an array with[x, y, z]
relative to the 0, 0, 0 from the template structure. You can also modify existing spawns and export them with/skyblock spawns EXPORT
. IMPORTANT: You need to be in a world with world-typeSkyblock
to use the commands. - To view your current spawns, you need to run
/skyblock spawns debug
to view all possible spawn points. - To apply the new spawn points to your template, copy the exported spawn points (you need to open the file) into the
file
config/skyblockbuilder/templates.json5
where needed.
Setting a default spawn island
You can set a default spawn island for new worlds by setting spawn
. If it's set to null
, it will use the default
template used for new teams. For more information about the value for spawn
, look at
Configuring templates.
Setting multiple templates
You can set multiple schematics by putting them into config/skyblockbuilder/templates/
. These schematics can the user
use by pressing the Customize
button in world options screen or changing the schematic with command
/skyblock manage islandShape <template>
where <template>
is the name specified in
next chapter.
Configuring templates
As described in Creating a custom skyblock island, you can improve the readability
of templates and set the spawn points for each template in the config here: config/skyblockbuilder/templates.json5
.
There you have multiple options. First the spawns
:
{
"spawns": {
"default": [
[ 6, 3, 5 ]
]
}
}
default
) is important for the templates
option in a next step.
You can have multiple entries, but keep in mind that no key can be used twice! The content of each object is an
array. This array contains the spawn positions. The spawn positions are formatted this way:
[ x, y, z ]
Second, the surroundingBlocks
:
{
"surroundingBlocks": {
"default": [
"minecraft:stone",
"minecraft:bedrock"
]
}
}
default
) is important for the templates
option in the next step.
You can have multiple entries, but keep in mind that no key can be used twice! The content of each object is an
array of resource locations for blocks. These blocks will be used to surround the template with these blocks, randomly
selected. Look at the surroundingMargin
in the next step for thickness.
Now the templates
:
{
"templates": [
{
"name": "default",
"desc": "Default template",
"file": "default.nbt",
"spawns": "default",
"direction": "south",
"offset": [ 0, 0 ],
"offsetY": 0,
"surroundingBlocks": "default",
"surroundingMargin": 0
}
]
}
- The
name
is the name displayed in theCustomize
screen when selecting the world-preset. - The
desc
(optional - default "") is the description displayed in theCustomize
screen when selecting the world-type. - The
file
is the name of the file for that template. - The
spawns
is the spawn configuration name from thespawns
option. - The
direction
(optional - default "south") is the direction the user should look at for this template. If not provided, it'll besouth
. - The
offset
(optional - default [ 0, 0 ]) is the offset for this specific template. Read here more about the offset. This specific offset can also be set for x (first number) and z (second number) separately. - The
offsetY
(optional - default 0) is the offset for this specific Y orientation. Will be merged intooffset
in 1.20 onwards. - The
surroundingBlocks
(optional - default "") is the surrounding blocks configuration name from thesurroundingBlocks
option. - The
surroundingMargin
(optional - default 0) is the thickness for the border. You can have the same file and the same spawns in multiple configurations. They all are only separated by the name.
You can also set an icon for each template. This is located in config/skyblockbuilder/templates/icon/<name>.png
. The
name needs to be lowercase.
NOTE: If you spawn inside a block, you could add this block to the
block tag 🔗
#skyblockbuilder:additional_valid_spawns
.
Loot chests on island
If you want a loot chest on an island, you need to set the NBT data to the chest with the /data merge block <x y z>
{LootTable: modid:path/to/loot_table}
command to set it as loot chest.
WARNING! Do not open that chest after merging this data into the chest.
Convert existing templates from .nbt
to .snbt
You can convert existing templates from .nbt
to .snbt
files with the command /skyblock templates_to_snbt
. This
will convert all templates in the config/skyblockbuilder/templates/
directory to .snbt
files while keeping the
original .nbt
files.