As with most FTB mods, this mod has been created with the sole purpose of adding, modifying and removing of features in Minecraft based on the requirements of the modpack it was created for. We never recommend using this kind of mod outside of the pack it was created for as it is very likely to create issues with mods it was not tested against.
FTB Team Dimensions allows dimensions to be dynamically created for teams (FTB Teams is a required dependency). Players join the overworld in a prebuilt lobby structure with a portal, and on entering the portal get the option to choose from one or more "island" structures in a new dimension which will be created for their team. The party team will also be auto-created if it does not exist yet. New players can join the team in the usual way, and will be immediately ported to the team's existing dimension upon joining.
Currently, there are two chunk generation types, both for simple void dimensions:
singleBiomeDimension in mod config to true to enforce a single biome for the entire dimension.singleBiomeName config setting (default is minecraft:the_void)More flexibility is planned in terms of types of world-gen in the future.
At least basic familiarity with 1.19.2 data-driven world generation is required here.
Nearly all configuration is done via datapack, in particular the vanilla structure and structure_set to define the
prebuilt "islands" which will be pre-generated in the new dimension (always at the (0,0) chunk). There is also a custom
ftbdim_prebuilt_structures datapack type, which defines which structures are available to the player (when the player
first enters the lobby portal, one entry per known ftbdim_prebuilt_structures will be shown in the GUI).
The default prebuilt structure (data/ftbteamdimensions/ftbdim_prebuilt_structures/island1.json) looks something like (with optional
fields not necessarily included in the actual file):
{
"id": "ftbteamdimensions:island1",
"structure": "ftbteamdimensions:spawn/island1",
"name": "Simple Island",
// optional fields below here
"author": "FTB Team",
"structure_set": "ftbteamdimensions:default",
"height": 64,
"dimension_type": "ftbteamdimensions:default",
"preview_image": "ftbteamdimensions:textures/spawn/island1.png",
"spawn_override": [ 0, 64, 0 ]
}
data/ftbteamdimensions/structures/spawn/island1.nbt for the default island, which is a tiny island of grass and dirtftbteamdimensions:default, which includes only the structure set ftbteamdimensions:startftbteamdimensions:default, an overworld-like dimension type<modname>:<id> is <modname>:textures/spawn/<id>.pngStructure files (both for the overworld lobby and dimension island structures) are standard vanilla NBT structures, as saved
via Structure Blocks.
There is one important requirement: all structures must contain one Structure Block in data mode with the custom data
tag spawn_point. This is used to determine where players will spawn in both the overworld lobby and in team dimensions
that are created.
Structures created will always be positioned with the spawn_point block at (X,Y,Z) = (0,H,0), where H = the "height"
field from the prebuilt structure JSON above. The data structure block is replaced with air when the structure is
actually placed into the world, and the player will spawn with their feet in this block by default (but see the
"spawn_override" field above).
The default overworld lobby structure is at data/ftbteamdimensions/structures/lobby.nbt, but this can be changed
in one of two ways:
lobbyStructure in ftbteamdimensions-common.toml)