-
Notifications
You must be signed in to change notification settings - Fork 0
Anatomy
DarkBladeDev edited this page Jul 23, 2026
·
1 revision
Every multiblock structure in MultiBlockEngine is defined by a YAML configuration file. This file acts as the blueprint, defining everything from the shape of the machine to how it reacts to player interaction.
Here is a high-level overview of the sections you will find in a typical multiblock YAML file:
id: simple_furnace
version: "1.0.0"
display_name: "&6Simple Furnace"
# 1. The Core Block
controller: BLAST_FURNACE
# 2. The Shape
pattern:
- offset: [0, -1, 0]
match: BRICKS
# 3. Custom Data
variables:
energy_stored: 0
# 4. Interactive Logic
actions:
on_interact:
- type: message
value: "&eFurnace clicked!"-
id: The unique identifier for this multiblock. It must be unique across all addons. -
version: Used for tracking updates to your machines. -
display_name: The visual name used in holograms or UI panels.
-
controller: Defines the material of the "Anchor Block". This is the block the player will right-click to form the multiblock. (See Core Concepts for more info).
-
pattern: A list of relative coordinates and rules defining what blocks must surround the controller to form the structure. - Learn more in Pattern & Matchers.
-
variables: Initial custom data values (like mana, energy, progress) attached to every instance of this multiblock. - Learn more in Variables & States.
-
actions: This is where the magic happens. It maps Events (likeon_interact,on_tick,on_break) to a series of Actions that execute conditionally. - Learn more in Events (Triggers), Conditions, and Actions.
Some YAML files might contain additional advanced keys depending on the addons installed:
-
extends: Allows inheriting configuration from another YAML file. (See Inheritance & Templates) -
ports: Used by thembe-wiringaddon to define network I/O points. (See Wiring & Topology) -
assembly: Overrides how the structure is built (e.g., changing the required interaction item).