Skip to main content

config.yml reference

Runic writes plugins/Runic/config.yml on first start. Each section below shows the shipped default with its comments. After an edit, run /runic reload to apply it.

require-initiation​

Runic configuration Require players to activate the Initiation rune before they can use magic.

require-initiation: true

near-miss-hints​

When a right-click almost matches a rune pattern (4+ cells, at least 4 of its blocks in place, and one flawed cell, or up to 5% of cells on patterns of 40+), whisper an in-fiction hint and mark up to three flawed blocks with particles. Set false to keep failed clicks completely silent.

near-miss-hints: true

teleport​

teleport:
# Allow teleporter and waypoint links across worlds.
cross-world: true

disabled-worlds​

Worlds where Runic is completely disabled.

disabled-worlds: []

cui​

Client overlay (RunicCUI mod). Sends magic volumes on runic:cui to players wearing Aether Goggles. Harmless when the mod is not installed.

cui:
enabled: true
max-shapes: 48
scan-radius: 80

hooks​

Soft-depend integrations. Set any to false to disable that bridge entirely (useful if an upstream plugin update breaks our hook). Defaults are all true. Plugins that are not installed stay idle either way.

hooks:
worldguard: true
griefprevention: true
lands: true
towny: true
lwc: true
bolt: true
lockette: true
multiverse: true
coreprotect: true
prism: true
logblock: true
venturechat: true
discordsrv: true
runecraft: true
placeholderapi: true
mcmmo: true
# WorldEdit / FastAsyncWorldEdit: /runic build pushes into //undo history.
worldedit: true

runecraft​

Runecraft click priority (only used when hooks.runecraft is true and Runecraft is installed).

runecraft:
# Which plugin claims overlapping rune clicks first.
# runic (default) — Runic matches first and cancels so Runecraft does not also fire.
# runecraft — Runic waits; if Runecraft cancels the click, Runic skips it.
rune-priority: runic

mcmmo​

mcMMO soft hook (hooks.mcmmo). Anvil coexistence always applies when Runic loads before mcMMO. Skill XP awards below are opt-in (defaults off — anti-farm). Origin BlockBreakEvent still grants native mcMMO XP; these only cover paths that never fire BlockBreakEvent (Power Tool extras) or skip FurnaceExtractEvent (Smelter).

mcmmo:
# Award skill XP for Power Tool / Leaf Blower / tree-fell EXTRA blocks.
award-power-tool-extras: false
extra-block-xp: 10
extra-block-xp-multiplier: 0.25
# Award Smelting XP when Smelter successfully replaces drops.
award-smelter: false
smelter-xp: 5
smelter-xp-multiplier: 1.0

block-vanilla-spawner-changing​

Block the vanilla behaviour of right-clicking a monster spawner with a spawn egg to change which mob it spawns. When true, that interaction is cancelled for everyone (unless they have the bypass permission below). The Spawner rune is unaffected — it still binds Ovicaptor eggs via its own pattern.

block-vanilla-spawner-changing: true

spawner-change-bypass-permission​

Bukkit permission node that lets a player ignore block-vanilla-spawner-changing and still change spawners with spawn eggs the vanilla way. Leave blank ('') for no bypass — then nobody can vanilla-change spawners while the option above is true. Example: runic.spawnerchange

spawner-change-bypass-permission: ''

attribution​

Cause attribution for block logging (CoreProtect / Prism / LogBlock). Tracks a player interaction through redstone and related mechanics into sensors/toggles so automated rune edits log as that player, not #runic.

attribution:
# Master switch. false = no stamps; logging falls back as today (#runic / owner).
enabled: true

# How long a stamp lives without refresh (server game ticks). 100 ≈ 5 seconds
# at 20 TPS. Uses Bukkit.getCurrentTick() when available; otherwise wall-clock ÷ 50.
# Expired stamps are dropped on read and by a periodic sweep (~every 5s).
ttl-ticks: 100

# Maximum propagate hops from the root interaction.
max-hops: 64

# Drop all stamps in a chunk when it unloads.
clear-on-chunk-unload: true

# Soft cap on stamped cells per world (0 = unlimited). Oldest stamps evicted first.
max-stamps-per-world: 0

# When a chain stamp is missing at the sensor/toggle:
# owner-then-runic — designation/sensor owner name, else #runic (default)
# owner-only — owner name, else #runic (same as above; reserved for clarity)
# runic — always #runic when no stamp
# stamp-or-runic — never use owner; stamp or #runic only
fallback: owner-then-runic

# Prefer a live chain stamp over the sensor/designation owner when both exist.
prefer-chain-over-owner: true

# Log offline owners by OfflinePlayer name when falling back to owner.
resolve-offline-owner-names: true

# What counts as a root cause (seeds a stamp).
seed:
player-interact: true # levers, buttons, plates, doors, …
block-place: true
block-break: true
bucket-empty: true
pressure-players: true # players on pressure plates / pressure sensors
pressure-non-players: false # mobs/items on plates (usually leave unattributed)
runic-block-changes: true # BlockChanges when actor is a real player name

# Which mechanics copy stamps from cause → effect.
propagate:
redstone: true # wire + components (BlockRedstoneEvent / selective physics)
pistons: true # extend/retract + moved blocks
observers: true
toggle-lock-seals: true # Lock/Loggle/Toggle redstone edges
fluids: true # water/lava BlockFromToEvent
scaffolds: true
sculk: true
runic-wire: true # isolation refresh inherits stamp instead of "runic-wire"