Modular Structure Workspace

An in-game workspace for browsing, editing, measuring and assembling Minecraft structures, with undo/redo, shape tools, multi-part workspaces and direct editing of mod and datapack structure files.

🏗️ Modular Structure Workspace

Modular Structure Workspace Versions

Download on CurseForge CurseForge Downloads

Download on Modrinth Modrinth Downloads

Modular Structure Workspace is an in-game structure editor for browsing, editing, measuring and working with Minecraft structures.

Structures are opened in a separate editor dimension and can be edited with normal Minecraft building mechanics. No structure block or external schematic editor is needed while working on them.

The mod is mainly built around the workflow I use myself when creating and implementing larger structures.

✨ Features

  • In-game structure library
  • Separate editor dimension
  • Normal block placement and breaking
  • Undo and redo
  • Quick save and Save As
  • Bounding box, grid, ruler and anchor overlays
  • Measuring tools
  • Shape tools
  • Multi-part workspaces
  • Automatic seam detection
  • Connectors between structure parts
  • Reference images
  • Entity editing
  • World, datapack, external and mod resource structures
  • Snapshots and crash recovery
  • Configurable multiplayer permissions

🔨 Basic Workflow

Open the structure library with L or:

/mstructure library

Pick a structure and open it for editing.

Writable structures can be opened directly with Edit. Read-only structures can be opened with View or duplicated first.

Inside the editor dimension, blocks can be placed and removed normally.

Some of the main controls are:

  • F6 — Save
  • F7 — Undo
  • F8 — Redo
  • F10 — Close the current session
  • L — Structure Library
  • M — Editor Menu

When closing a session with unsaved changes, the mod asks whether they should be saved or discarded.

Use:

/mstructure exit

to return to the position where the editing session was started.

📚 Structure Library

The structure library collects structures from several sources in one place.

Supported sources are:

  • World
  • External
  • Datapack
  • Mod Resource

Structures can be searched, filtered by source and sorted by name, size or last change.

Writable structures are saved back to the source they came from.

Structures provided by mods or vanilla data packs are read-only. They can still be viewed and copied with Save As.

📂 External Structure Editing

An external structure directory can be configured for working directly on files from another project.

This is the setup I mainly use when working on structures for my own mods.

For example:

{
  "externalStructureDirectory": "D:/GitHub/MyMod/src/main/resources/data",
  "externalStructureNamespace": "external"
}

Both loose .nbt files and normal datapack layouts are supported.

For example:

arcade/structures/street/lamp.nbt

is available as:

arcade:street/lamp

Changes are written back to the original file.

This makes it possible to point the editor directly at the resources/data directory of a mod project instead of copying structure files between Minecraft and the project.

Loose files can also be used:

houses/small_house.nbt

becomes:

external:houses/small_house

The default external directory is:

<game directory>/modular_structure_workspace/structures

📐 Measuring & Overlays

The editor contains several overlays for working with structure dimensions and positions.

Available overlays include:

  • Structure bounds
  • Grid
  • Rulers
  • Height ruler
  • Anchor marker
  • Layer planes
  • Floor markers

Measuring Tape

The measuring tape can be used inside the editor dimension to measure between two blocks.

It shows:

  • Size on each axis
  • Straight distance
  • Travelled block distance

Press N to pin the current measurement so it remains visible while building.

Floor markers can also be used to permanently mark specific heights inside a structure.

🔷 Shape Tools

The mod includes several tools for creating basic shapes.

Currently available shapes include:

  • Line
  • Rectangle
  • Box
  • Box Frame
  • Circle
  • Cylinder
  • Tube
  • Sphere
  • Dome
  • Cone
  • Pyramid
  • Hollow variants

Shapes are placed as a single undo step.

Right-click a block to set the origin, aim to adjust the size and right-click again to continue or confirm the shape.

The block in the off-hand is used as the material. If the off-hand is empty, the previously selected material is used.

The HUD shows the current stage, dimensions and block count while placing a shape.

Shape generation happens on the server and is limited by the configured maximum radius and block count.

🧩 Workspaces

Workspaces are used when a larger structure is split into several smaller structure files.

Several structures can be opened next to each other and edited as parts of the same build.

/mstructure workspace new <workspaceId> <assetId> <assetId> ...
/mstructure workspace open <workspaceId>

Only one part is active for editing at a time.

Walking into another part changes the active structure automatically. Page Up and Page Down can also be used to switch between parts.

F6 saves the active part. The editor menu can save all changed parts at once.

Workspace Tool

The workspace tool can pick up and move complete structure parts.

While holding the tool, normal building is disabled.

Right-click a part to pick it up and aim at another structure to place it next to it.

The editor can compare the edges of structure parts and detect matching seams. Parts with a good match can also be assembled automatically.

Available workspace commands include validation and automatic assembly:

/mstructure workspace autoassemble
/mstructure workspace validate

Validation reports missing, locked or overlapping parts.

🔗 Connectors

Automatic seam detection works by comparing blocks, but sometimes the connection between two parts should be defined explicitly.

Connectors are used for that.

There are sixteen connector colors. Two connectors with the same color and matching direction belong together.

When connectors are available, the workspace tool uses them for snapping instead of relying on seam detection.

Connector channels can also be given names:

/mstructure connection channel <colour> label <name>

Connectors are stored using prepared vanilla jigsaw blocks.

This means the saved .nbt files can still be read without Modular Structure Workspace installed. Existing jigsaw blocks are left untouched and keep their normal name → target information.

Connectors can also restore the block they replaced when they are removed.

Before using a structure with a normal vanilla structure block, connectors can be stripped with:

/mstructure connection strip

🖼️ Reference Images

PNG images can be displayed inside the editor as reference planes.

Put the images into:

<game directory>/modular_structure_workspace/reference-images/

They can then be added from the editor menu or with:

/mstructure reference add <name> <file> <FLOOR|FRONT|SIDE>

Reference images can be adjusted by:

  • Position
  • Size
  • Opacity
  • Rotation
  • Mirroring

Only the file name is sent over the network.

If several people are working on the same server, each client needs its own copy of the PNG.

🐾 Entities

Entities stored inside a structure are spawned when the structure is opened.

This includes mobs, item frames, paintings, armor stands and other entities.

They can be moved, added or removed normally while editing.

When the structure is saved, entities inside the structure bounds are captured back into the structure file.

⌨️ Controls

Key Action
F6 Quick Save
F7 / F8 Undo / Redo
F10 Close Session
I Inspect targeted block
N Pin measurement
L Structure Library
M Editor Menu
P Block Palette
B Toggle Bounds
G Toggle Grid
R Toggle Rulers
T Toggle Height Ruler
Page Up / Page Down Previous / Next workspace part

All keys can be changed in the normal Minecraft controls screen.

Less frequently used functions are available from the editor menu.

💻 Commands

Both command names work:

/modular_structure_workspace
/mstructure

Some of the commonly used commands are:

/mstructure edit <assetId>
/mstructure view <assetId>
/mstructure library

/mstructure save
/mstructure save-as <assetId>
/mstructure revert
/mstructure exit

/mstructure undo
/mstructure redo

/mstructure checkpoint
/mstructure history
/mstructure restore <snapshotId>

There are also commands for:

  • Workspaces
  • Bounds
  • Anchors
  • Shapes
  • Reference images
  • Floor markers
  • Overlays
  • Connectors
  • Structure management

Most normal editing does not require using commands.

🌐 Multiplayer & Permissions

By default, editing is available to operators with permission level 2 and players in creative mode.

The permission policy can be changed in:

config/modular_structure_workspace/workspace.json

Available values are:

  • OPERATOR_OR_CREATIVE
  • OPERATOR_ONLY
  • EVERYONE

Workspaces are shared server-side and do not belong to the player who created them.

Anyone allowed by the configured permission policy can open and modify them.

🛠️ About This Project

I have been using this structure editor and several related helper tools privately for quite a while, mainly when working on larger structures and implementing them into my mods.

For the Echoes of the Past ModJam 2026, I decided to clean up part of that tooling and make it publicly available. Since it has been useful for my own work, it might also be useful for other people working with larger structures, mods or datapacks.

This public version does not contain everything from my private version yet.

I will move more of those features over step by step as I clean them up and make them suitable for the public version.

⚠️ Known Limitations

  • Structures with multiple block palettes are opened read-only.
  • A structure can span at most 256 blocks per axis.
  • The client mod is required.
  • Client and server need compatible protocol versions.

Structures with several block palettes are kept read-only because saving only one palette would otherwise remove the other variants.

Editing itself happens inside the separate editor dimension. The world the player came from is not modified while working on the structure.

Modular Structure Workspace Team

profile avatar
Owner
Grand Artisan tier icon
  • 234
    Followers
  • 51
    Projects
  • 74.4M
    Downloads

Old-school pixel heart, modern mod code. Inspired by retro tech, built for fun, and relentlessly tested by my family.

More from KaworruView all