Overview#
Dimensional Control is a powerful utility mod designed for modpack creators and advanced users to take total control over Minecraft's dimension system. Developed by the Blood N Bones Gaming team, it allows for the creation of entirely new dimensions, the modification of existing ones (Overworld, Nether, End), and the fine-tuning of world generation parameters such as sky color, terrain shape, and biome distribution.
Unlike content mods that add new ores or machines, Dimensional Control acts as a framework. It provides a JSON-based configuration and scripting system to override vanilla behavior. To function correctly in version 1.12.2, it requires BNBGamingLib (v2.4.1+) and BNBGamingCore to be installed.
Configuration Structure#
The mod operates primarily through files located in the config/dimensionalcontrol/ directory. Upon first launch, the mod generates a documentation folder within this directory containing template files and explanations for all available options.
Core Configuration Files
| File Name | Purpose |
|---|---|
dimensions.json |
Registers new dimension IDs and links them to providers and generators. |
dimensiontypes.json |
Defines the properties of a dimension type (e.g., suffix, name). |
worldproviders.json |
Controls environmental visuals like sky, fog, and light levels. |
chunkgenerators.json |
Defines the terrain generation algorithm (e.g., Flat, Void, End-style). |
biomes.json |
Customizes biome maps, layers, and specific biome properties. |
scripts/ |
A folder for custom scripts to condense and automate complex configurations. |
Dimension Registration#
To create a new dimension, you must define it in dimensions.json. This file maps a numerical Dimension ID to a specific Dimension Type, World Provider, and Chunk Generator.
Dimension Parameters
- id: The unique numerical ID for the dimension.
- name: The internal name of the dimension.
- keepLoaded: Boolean (true/false) determining if the spawn chunks stay in memory.
- worldProvider: The ID of the provider defined in
worldproviders.json. - chunkGenerator: The ID of the generator defined in
chunkgenerators.json.
Example entry:
{
"id": 10,
"name": "Mining World",
"keepLoaded": false,
"worldProvider": "overworld_provider",
"chunkGenerator": "flat_generator"
}World Providers (Visuals & Environment)#
World Providers define the physical and visual laws of a dimension. This is where you can change the color of the sky or make water evaporate like in the Nether.
Provider Properties
| Property | Description |
|---|---|
skyColor |
An RGB array or hex code for the sky color. |
fogColor |
An RGB array or hex code for the horizon fog. |
cloudColor |
The color of the clouds. |
hasSkyLight |
Whether the dimension has a sun/moon light source. |
isSurfaceWorld |
Determines if the world is considered a "surface" (allows beds, etc.). |
canRespawnHere |
If true, players can set spawn points in this dimension. |
waterVaporize |
If true, water placed in the world will instantly vanish. |
lightBrightnessTable |
A custom array of 16 values defining light levels from 0 to 15. |
Chunk Generators (Terrain)#
Chunk Generators dictate the actual shape of the land. Dimensional Control allows you to use vanilla algorithms or custom presets.
Available Generator Types
- vanilla_overworld: Standard terrain with mountains, caves, and ravines.
- vanilla_nether: Enclosed cavern style with a ceiling.
- vanilla_end: Floating islands in a void.
- flat: Customizable flat layers (similar to Superflat).
- void: No blocks generate at all.
- sky_islands: Large floating islands using Overworld-style terrain.
Customization Options
You can disable specific features within these generators:
generateCaves: true/falsegenerateRavines: true/falsegenerateStructures: true/false (Villages, Strongholds, etc.)seaLevel: Custom Y-level for oceans (default 63).
Biome Customization#
The biomes.json file allows for advanced manipulation of the biome map. You can force a dimension to be a single biome or modify how biomes transition.
Key Functions
- setBiomeProviderSingle: Forces the entire dimension to be one biome (e.g.,
minecraft:desert). - FillWithVanillaBiomes: Automatically populates the dimension with all registered biomes.
- removeHill / removeMutation: Removes specific sub-biomes or variants from the generation layer.
- addDefaultHills: Re-adds standard vanilla hill variants to the generation logic.
Portal System#
Dimensional Control includes a unique mechanic for traveling between dimensions without needing specific portal blocks. Instead, it allows players to convert existing blocks into portals using a "Modifier."
Portal Creation Mechanics
- Frame Block: Any block can be designated as a portal frame in the config.
- Modifier Item: An item (like a stick or a specific tool) used to activate the portal.
- Conversion: By right-clicking a designated block with the modifier, the block can be transformed into a portal that teleports the player to a linked dimension ID.
This system is highly flexible for map makers, allowing for "hidden" portals or lore-based travel methods using standard blocks like Stone or Obsidian.
Mechanics and Logic#
The mod features a scripting engine that allows for conditional logic. This is useful for changing world properties based on the time of day, player location, or other variables.
Block Replacement
You can define global or dimension-specific block replacements. For example, you can replace all minecraft:stone with minecraft:obsidian in a specific dimension to create a "hardcore" mining world. This is handled during the chunk generation phase, ensuring no performance impact after the world is generated.
Entity Control
While not a primary mob mod, Dimensional Control can prevent specific entities from spawning in certain dimensions. This is configured via the dimensions.json or through scripts, allowing you to create "peaceful" dimensions or dimensions where only specific monsters appear.
Commands#
The mod provides several administrative commands to help manage and test dimensions in real-time.
| Command | Description |
|---|---|
/dc reload |
Reloads all configuration files and scripts without restarting the game. |
/dc teleport <dimID> [x] [y] [z] |
Teleports the player to the specified dimension and coordinates. |
/dc list |
Lists all currently registered dimensions and their IDs. |
Presets#
Dimensional Control comes with several built-in presets that can be applied to dimensions to quickly achieve specific world types:
- Forced_Overworld: Overrides any modded changes to ensure a dimension generates exactly like the vanilla Overworld.
- Realistic: Generates terrain similar to the "Realistic" world type found in the Quark mod.
- Single_Desert: A quick preset for a dimension consisting entirely of desert biomes.
- Flat_Bedrock: Ensures the bottom of the world is a single flat layer of bedrock rather than the jagged vanilla pattern.
- Void: A completely empty dimension, ideal for skyblock-style gameplay.