Configuration Files
Understand every configuration directory, ownership boundary, YAML rule, reload behavior, and legacy migration.
Directory layout
plugins/AeroOneBlock/
├─ config/
│ ├─ general.yml
│ ├─ worlds.yml
│ ├─ island-settings.yml
│ ├─ oneblock.yml
│ ├─ upgrades.yml
│ ├─ generators.yml
│ ├─ upgrade-requirements.yml
│ ├─ bossbar.yml
│ ├─ block-levels.yml
│ ├─ tiers.yml
│ └─ messages.yml
├─ menus/
│ ├─ settings.yml
│ ├─ main.yml
│ └─ pages.yml
├─ lang/
│ ├─ en.yml
│ ├─ tr.yml
│ ├─ de.yml
│ ├─ fr.yml
│ └─ custom.yml
└─ data/
├─ islands.yml
├─ players.yml
└─ player-progress.ymlFile responsibilities
| File | Responsibility |
|---|---|
general.yml | Default language and global feature timing. |
worlds.yml | Managed world names and world settings. |
island-settings.yml | Spacing, platforms, trust, deletion, rescue, and pregeneration. |
oneblock.yml | Center block, support block, and replacement behavior. |
tiers.yml | OneBlock progression, blocks, mobs, crates, and loot. |
upgrades.yml | Upgrade values, shared requirements, costs, and menu cards. |
generators.yml | Lava-water generator levels and weighted pools. |
upgrade-requirements.yml | Player-specific advanced requirements. |
block-levels.yml | Block values, event updates, and periodic audit. |
bossbar.yml | Progress bar appearance and refresh interval. |
messages.yml | Global message overrides and message disabling. |
menus/*.yml | GUI status, slots, items, decoration, and sounds. |
lang/*.yml | Player messages, language names, and menu phrases. |
Editing rules
- Indent YAML with spaces, not tabs.
- Use valid Material and EntityType enum names for Minecraft 1.21.11.
- Use a period for decimal numbers.
- Quote free text containing a colon.
- Keep parallel upgrade arrays aligned with
values. - Never edit live files under
data/while the server is running.
Disabling messages
An exact empty string '' intentionally disables a message. An empty override in config/messages.yml applies to all languages; an empty key in one lang/<locale>.yml affects that language only. Removing a key is different because missing built-in keys may be restored from defaults.
Reload boundaries
/aerooneblock reload reloads configuration, menus, and languages. Invalid YAML or inconsistent values are rejected while the previous working state remains active. World names, island spacing, and center coordinates are physical layout settings; reload does not migrate existing builds.
Legacy migration
Older root files and the former stages: structure are recognized. Missing categorized targets may be populated without deleting the source files. Existing new-format files, custom tiers, intentionally empty block lists, and custom.yml text are preserved.