config.yml
config.yml contains global behavior shared by every Snake arena. Messages and sounds now have dedicated files, while per-arena locations, blocks, speed, and win conditions belong in arenas.yml.
Storage and Saving
Section titled “Storage and Saving”| Key | Default | Purpose |
|---|---|---|
database | flat | Selects flat-file storage or the connection defined in mysql.yml. |
statistic-saving-period | 300 | Seconds between asynchronous arena and statistic saves and leaderboard refreshes. Values below 1 are treated as one second. |
leaderboard-size | 10 | Maximum number of ranked entries cached for leaderboard placeholders. |
The database selector accepts flat, flatfile, or default for data/stats.yml, and mysql or sql for MySQL. Data migration between storage types is not automatic.
Commands During Games
Section titled “Commands During Games”When command blocking is enabled, a player in an arena can only execute entries from the allowlist:
command-settings: disable-commands-while-playing: true allowed-commands: - "snake leave"Entries are case-insensitive and may include or omit the leading slash. A root such as msg allows all of its arguments, while snake leave allows that subcommand and any arguments below it. Namespaced roots such as minecraft:msg are normalized before matching.
Placeholder Fallbacks
Section titled “Placeholder Fallbacks”| Key | Used by |
|---|---|
placeholders.no-player | Arena player placeholders when the arena is empty. |
placeholders.not-in-arena | %snake_player_arena% outside a game. |
placeholders.no-name | Empty leaderboard name or UUID positions. |
placeholders.no-value | Empty leaderboard value positions. |
placeholders.states.* | Friendly waiting, in-game, ending, restarting, and inactive state labels. |
Updates and Diagnostics
Section titled “Updates and Diagnostics”| Key | Default | Purpose |
|---|---|---|
update-notifier | true | Checks for newer SpigotMC releases during startup. |
debug | false | Registers advanced debug commands and their tab completion. |
event-profiling.enabled | false | Measures execution time spent inside listeners for The Snake custom events. |
event-profiling.verbose | false | Logs every profiled event call with timing details. |
/snake reload applies cached options, command rules, messages, sounds, and event-profiling switches without a full server restart. Changing the database implementation still requires careful restart and migration planning.