Configuration
Tune event worlds, inventories, rewards, tasks, costumes, storage and atmosphere.
Configuration files
The generated config.yml contains the main settings. items.yml controls event and menu items. messages.yml contains player-facing messages, and messages_DE.yml provides German messages.
Back up files before editing. Preserve YAML indentation and reload with /tot reload after normal settings changes. Changing storage backends should be planned with a backup and a server restart; reload keeps the existing database connection.
Main sections
| Section | Purpose |
|---|---|
General |
Enabled worlds, optional inventory caching, prefix and metrics |
Storage |
SQLite or MySQL settings |
World |
Permanent night, night time and random thunder |
Lobby |
Lobby protections, join teleport, costume armor and automatic event items |
GameSettings |
Sweet rewards, door cooldowns, empty houses, thieves, hints and ingredients |
Horror |
Encounter selection, intensity, sound, darkness and particles |
Reward |
Sweet singular/plural names and display icon |
Costumes |
Head choices, hints and required outfit changes |
NPC |
Normal resident and thief skins |
Sounds |
Event sound names, pitch and general volume |
Rewards and repeat visits
The default sweet range is five to fifty per door, depending on costume matching. The default repeat-visit cooldown is five minutes.
GameSettings:
rewards:
min_amount: 5
max_amount: 50
throw_items: true
banned_time:
hours: 0
minutes: 5
seconds: 0
Thrown reward items are visual effects and cannot be picked up. The presentation is bounded to at most eight visual items regardless of the reward amount.
Ingredient hunts
The default assignment chance is 60%, with ten additional sweets for a delivery. The default randomized collection count is one to five, and ingredient locations respawn after 300 seconds.
Set GameSettings.ingredients.enable: false for a simpler event focused on costumes and door visits. Tune force_complete_task and compass to decide how guided the hunt should feel.
World and lobby behavior
World.always_night and World.random_thunder are optional. Both are disabled by default.
Lobby.lobby_listeners protects selected worlds from ordinary building, item dropping/pickup and damage. Administrators bypass the building restrictions. This setting can affect an existing survival world, so use it only when that world is intended to behave as an event lobby.
Lobby.use_armor_slots can replace worn armor with the costume. Keep it disabled when players should retain their own equipped armor.
Optional integrations
PlaceholderAPI and DeluxeShop are optional integrations. Install the dependency before using its associated features. SQLite requires no separate database server; MySQL is configured in Storage.MySQL.
For the Horror settings, see the dedicated encounter reference.