メインコンテンツまでスキップ

Dungeon Room

Manifest entry representing a dungeon room defined by a polygon footprint. Place at least 1 node (point room, radius 0.5), 2 nodes (line segment room), or 3+ nodes (polygon room). Y bounds are derived automatically from the nodes' Y values (min Y = floor, max Y = ceiling).

Overlapping/nested rooms are fully supported — each room fires its onEnter/onLeave triggers independently. Use priority to control enter-order when multiple rooms share the same position.

Room Editing

Use /dungeon room <room> edit to enter the visual room editor. You receive a hotbar toolbar:

SlotItemAction
1Blaze RodAdd a node at target block (click) or at your feet (sneak+click)
2RedstoneRemove the last placed node
8Lime DyeSave and apply the room
9BarrierCancel editing

Colored item displays mark each node:

  • Emerald = node 1, Amethyst = node 2, Diamond = all others

Blue particle lines connect consecutive nodes, and green vertical pillars show the Y extent. Left-click a node marker for its coordinates; shift+left-click to remove it.

Configuration

dungeon_roomMap

Configuration for the dungeon room.

Properties

nodes

"> Ordered nodes defining the room's polygon boundary. Each node has X, Y, Z coordinates — Y values define the room's vertical extent automatically.

Position

x

X coordinate. yDouble

Y coordinate. zDouble

Z coordinate.

priorityInt

Higher-priority rooms fire onEnter first when the player is in multiple rooms simultaneously. criteria

"> Conditions required to enter the room. If criteria don't match, the room is excluded for that player. modifiers

"> Modifiers applied to players while inside the room. onEnter

"> Triggers executed when a player enters the room. onLeave

"> Triggers executed when a player leaves the room. enterOnceBoolean

If true, onEnter triggers run only once per dungeon instance. leaveOnceBoolean

If true, onLeave triggers run only once per dungeon instance.

Polygon Detection

The extension supports three room shapes based on node count:

NodesShapeDetection
1PointPlayer is within 0.5 blocks of the node
2Line segmentPlayer is within 0.5 blocks of the segment
3+PolygonRay-casting point-in-polygon on the XZ plane

Example

dungeon_room:
id: "boss_arena"
name: "Boss Arena"
nodes:
- {x: 10.0, y: 64.0, z: 10.0}
- {x: 20.0, y: 64.0, z: 10.0}
- {x: 20.0, y: 64.0, z: 20.0}
- {x: 10.0, y: 64.0, z: 20.0}
priority: 2
criteria:
- type: permission
permission: "dungeon.boss_arena"
onEnter:
- "boss_spawn_trigger"
enterOnce: true