Skip to content

Commands & Permissions ​

The root command is /emakistructure; you can also use the short forms /ems or /estruct. Running it with no subcommand prints the usage hint, and an unknown subcommand points you to /ems help

Command list ​

CommandPermissionDescription
/ems helpnone (everyone)Print the command help list
/ems get <template> [facing]emakistructure.usePreview-generate the template 3 blocks in front of you (no journal, no persistence) to test placement
/ems select pos1 / pos2emakistructure.editSet the first/second selection corner to your current position. Both corners must be in the same world; setting the second corner elsewhere reports a world mismatch
/ems select adjust <add|reduce> <front|back|left|right|up|down> <amount>emakistructure.editGrow or shrink the selection along that direction; shrinking past the limit reports "shrink too far"
/ems select clearemakistructure.editClear the current selection and its highlight
/ems structure export <name> [entities]emakistructure.editExport the current selection as structure template structures/<name>.nbt (a vanilla .nbt structure file, not a multiblock definition); in-selection entities are skipped unless entities is given
/ems structure place <template> <facing>emakistructure.editPlace the structure template at your position; facing values are listed below. For multiblocks use /ems multiblock place
/ems multiblock export <id> [force]emakistructure.editExport the selection as multiblock layout multiblocks/<id>.yml (records only, places nothing). Existing ids require force to overwrite
/ems multiblock place <id> [facing]emakistructure.editPlace the multiblock definition at your position: vanilla blocks, custom blocks, and furniture members are placed by facing, then forming detection runs automatically
/ems multiblock listemakistructure.adminList every loaded multiblock definition with member count, rotation flag, and in-progress/active instance counts
/ems multiblock validate <id>emakistructure.adminValidate that definition against the world shape, reporting members, unresolvable custom blocks, missing furniture sources, and instance counts
/ems reloademakistructure.reloadReload configuration, language, and the template plus spawn/furniture companion file caches, echoing the loaded template count
/ems debug ...emakistructure.adminForwards to the CoreLib debug command (module filter structure) to manage debug modes and diagnostics

Facing argument ​

get, structure place, and multiblock place accept these 8 values:

ValueMeaning
north / east / south / westRotate only, no mirroring
north_mirror / east_mirror / south_mirror / west_mirrorRotate and mirror

When you omit the facing, the plugin picks the nearest of the four cardinal directions from the way you are already facing. An invalid value reports the list of allowed values

Permission nodes ​

Declared in paper-plugin.yml:

PermissionDefaultDescription
emakistructure.usetrue (all players)Preview generation with get
emakistructure.editopSelection, structure export/place, multiblock export/place
emakistructure.reloadopReload configuration
emakistructure.adminopAdministration and diagnostics: multiblock list / validate, debug; implies the sub-permissions above

Tab completion filters subcommands by your permissions, then completes template names, multiblock ids, facing values, and the adjust operation/direction names; subcommands you lack the permission for are hidden

Examples ​

# Select a 12x8x12 region
/ems select pos1
/ems select pos2
/ems select adjust add up 3

# Export as a structure template and preview it
/ems structure export village_hub_a
/ems get village_hub_a north

# Place facing south
/ems structure place village_hub_a south

# Record a multiblock structure (from the selection)
/ems multiblock export teleporter
/ems multiblock place teleporter east

# Inspect loaded multiblocks
/ems multiblock list
/ems multiblock validate teleporter

# Reload
/ems reload

CAUTION

structure export writes a vanilla .nbt structure file (in structures/), while multiblock export writes a multiblock layout definition (in multiblocks/). These are two different file types: they cannot replace each other, and you must not mix the commands when placing