Mineuniverse
Mods
Modern Industrialization Multiblock Editor

Modern Industrialization Multiblock Editor

MOD
Customize Modern Industrialization multiblocks with KubeJS
by twshch
Download Claim this project
223 downloads
0 likes
Updated Oct 14, 2026
0 hypes
API and Library Technology Utility & QoL
Advertisement Remove ads with Premium →

MI Multiblock Editor

is a KubeJS-powered tool for modpack developers that allows you to replace and customize the structures of existing Modern Industrialization multiblock machines without creating a separate addon for every change.

Multiblock layouts are defined directly in KubeJS startup scripts. You can assign normal blocks, block tags, exact block states, hatch-compatible positions, and multiple structure variants for machines with different tiers or configurations.

The mod includes dedicated support for more complex Modern Industrialization multiblocks such as the Electric Blast Furnace, Distillation Tower, Large Tank, Nuclear Reactor, Steam Boilers and Fusion Reactor, as well as compatibility with selected machines from Extended Industrialization, Industrialization Overdrive and Yet Another Industrialization!.

MI Multiblock Editor is designed primarily for modpack authors who want full control over machine structures while keeping the original machines, recipes and mechanics intact.

Example

Place the script in:

kubejs/startup_scripts/

For example, this replaces the structure of the Vacuum Freezer:

MIMultiblocks
    .create('example:vacuum_freezer')
    .controller(
        'modern_industrialization:vacuum_freezer'
    )
    .hatchCasing(
        'modern_industrialization:frostproof_machine_casing'
    )

    .layer([
        'ABA',
        'A#A',
        'ACA'
    ])

    .layer([
        'AAA',
        'A A',
        'AAA'
    ])

    .layer([
        'AAA',
        'AAA',
        'AAA'
    ])

    .mappingBlock(
        'A',
        'modern_industrialization:frostproof_machine_casing',
        [
            'modern_industrialization:item_input',
            'modern_industrialization:item_output',
            'modern_industrialization:fluid_input',
            'modern_industrialization:fluid_output',
            'modern_industrialization:energy_input'
        ]
    )

    .mappingTag(
        'B',
        'minecraft:logs',
        'minecraft:oak_log',
        []
    )

    .mappingState(
        'C',
        'minecraft:oak_log[axis=y]',
        []
    )

    .register();

In a structure:

  • # marks the controller.
  • Spaces are ignored positions.
  • .mappingBlock() accepts a block and optionally allows specific hatch types in its place.
  • .mappingTag() accepts any block from a tag and specifies a block used for the structure preview.
  • .mappingState() requires an exact block state.
  • .variant() can be used for machines with multiple structure tiers or configurations.
  • .requiresMod() allows scripts to safely define structures for optional addon mods.

Because the API is registered during the KubeJS startup phase, changes to these scripts require a full game restart.

mi_multiblock_editor-0.1.0.jar
MC Client, 1.21.1, NeoForge, Server
Release 2026-08-08 Get

More from twshch

Advertisement Remove ads with Premium →

You Might Also Like