Dimension Separator

Minecraft Forge mod (1.20.1) for modpack makers — restrict which mods can interact with which dimensions. Block mob spawning, loot tables, world generation and item usage per dimension via a simple JSON config.

Dimension Separator

This mod is created to separate what can appear in wich dimension. Tested on Minecraft 1.20.1 with Forge 47.1.3+.

What does it do?

I wanted to make a RP server where all the "magic" was forbiden in the overworld for lore purposes but I struggled to prevent some structures to appear in the overworld while still be in my custom dimension.

So I tried to create a mod to help me just do that.

It's still in testing but you can use a simple json config to tell the mod what exactly you want to let appear in wich dimension.

For each dimension, you can blacklist or whitelist mod namespaces to block:

  • World generation features (ores, plants, structures...)
  • Mob spawning
  • Loot tables (chests, mob drops...)
  • Item usage (right-click on blocks, in the air, or on entities)
  • Structure generation

Configuration

The config file is located at config/dimensionseparator.json.~~~~ Here is an example :

{
    "dimensions": {
        "minecraft:overworld": {
            "mode": "blacklist",
            "bypassLevel": 2,
            "namespaces": ["ars_nouveau", "iceandfire"],
            "blacklistedIds": ["minecraft:zombie"],
            "whitelistedIds": ["ars_nouveau:bookwyrm_familiar"],
            "features": true,
            "mobs": true,
            "loot": true,
            "items": true,
            "structures": true
        }
    }
}

Fields

Field Type Description
mode string "blacklist" to block listed mods, "whitelist" to allow only listed mods
bypassLevel int Minimum operator level allowed to /summon blocked entities (-1 or absent = no bypass)
namespaces string array Mod IDs to block or allow depending on mode
blacklistedIds string array Specific IDs always blocked, regardless of mode (e.g. "minecraft:zombie")
whitelistedIds string array Specific IDs always allowed, regardless of mode (e.g. "ars_nouveau:bookwyrm_familiar")
features boolean Block world generation features (ores, plants...) from listed mods
mobs boolean Block mob spawning from listed mods
loot boolean Block loot tables from listed mods (chests, mob drops...)
items boolean Block item usage (right-click) from listed mods
structures boolean Block structure generation from listed mods

Setting a category to false disables blocking for that category, even if the namespace is listed.

Known Limitations

  • /locate on a blocked structure will search indefinitely without result. This is vanilla Minecraft behavior when no matching structure exists in the dimension.
  • Client-side keybinds (e.g. opening a mod's GUI with a custom key) are not blocked — only right-click interactions are covered. In practice, opening an interface without being able to interact with the dimension is harmless.
  • Item usage via custom keybinds is client-side and cannot be intercepted server-side.

Compatibility

This mod uses Mixins and event handlers and should be compatible with most Forge mods. If you encounter a conflict, please open an issue.

Issues & Contributions

Found a bug or have a suggestion? Open an issue on GitHub.

The Dimension Separator Team

profile avatar
  • 1
    Projects
  • 193
    Downloads