SulfurLabSulfurLab

config.yml

##Introduction

The config.yml file holds SulfurLab's global settings: the create effects (sound and particles) and the Modrinth update checker.

INFO

Cubes themselves are not stored here — they live in a separate sulfurs.json file managed by the in-game commands. See Cube storage below.

##Breakdown of the config.yml file

# SulfurLab configuration.
#
# Sulfur Cubes are persisted in sulfurs.json (generated in this folder at
# runtime). Edit cubes in-game with /sulfurlab rather than by hand.

# Audio/visual feedback played when a cube is created.
effects:
  sounds: true
  particles: true

# Modrinth update checker (runs once on startup, async).
update-checker:
  enabled: true
  notify-ops: true

##Explanation

###effects

Feedback played at the cube's location when it's created with /sulfurlab new.

  • sounds — when true, plays a note-block "pling" chime on creation.
  • particles — when true, spawns a burst of geyser particles on creation.

Set either to false to silence that part of the effect.

###update-checker

  • enabled — when true, SulfurLab checks Modrinth on startup (once, asynchronously) for a newer version.
  • notify-ops — when true, OPs are told an update is available as they join.
INFO

Run /sulfurlab reload after editing to apply your changes without restarting the server.


##Cube storage (sulfurs.json)

Cubes are persisted in plugins/SulfurLab/sulfurs.json. You normally manage them through commands (/sulfurlab new, set, block, …), but here's the structure for reference:

{
  "bouncy": {
    "bounciness": 1.0,
    "friction": 0.1,
    "airDrag": 0.2,
    "blockId": "minecraft:slime_block",
    "world": "world",
    "x": 128.5,
    "y": 70.0,
    "z": -42.5,
    "uuid": "f7c8b3a0-1234-4abc-9def-0123456789ab"
  }
}
  • The top-level key (bouncy) is the cube name — used in commands and tab-completion.
  • bounciness / friction / airDrag — the cube's physics. Edited with /sulfurlab set / unset.
  • blockId — the block the cube displays. Edited with /sulfurlab block.
  • world / x / y / z — the cube's last known location, used by /sulfurlab tp when the entity isn't loaded.
  • uuid — the entity SulfurLab re-binds to on load.
WARNING

Edit sulfurs.json only while the server is stopped — runtime changes are written by the commands and a manual edit could be overwritten. Prefer the in-game commands.