Overview
One YAML per subsystem — what each file does and where to look first.
Unlike most vote plugins, TDX VotePlus splits its configuration across one file per subsystem. Each file is small, focused, and self-contained — you can tune milestones without scrolling past 400 lines of unrelated YAML.
Every bundled file is heavily commented and is the authoritative source. These docs are a high-level map; the YAML comments are the truth. If something here disagrees with a comment in the file you're editing, trust the file.
Where to look
general
Top-level switches in config.yml — locale, debug, bStats.
storage
SQLite vs MySQL, per-server isolation, MySQL credentials.
vote-rewards
The reward pool paid on every vote — items, money, commands, weighted pools.
vote-sites
The list of sites players see in /vote.
milestones
One-shot rewards at TOTAL / MONTHLY / WEEKLY / DAILY / STREAK thresholds.
vote-party
Server-wide vote party — global counter, rewards, network sharing.
leaderboard
Cached top-N per period, refresh interval, GUI size.
monthly-rewards
Per-rank prizes paid out at the end of every month.
reminders
Periodic 'don't forget to vote' nudges.
effects
Sound + particle played on every vote.
discord
Async webhook posts for vote / milestone / party events.
messages
Every player-facing string, MiniMessage-aware.
guis/
One YAML per inventory menu layout.
Auto-migration
Every YAML carries a config-version field. When you upgrade the
plugin, new bundled keys are merged into your file automatically and a
timestamped backup is written next to the original (e.g.
vote-rewards.yml.backup-20260411-1830) before any changes are made.
Your customisations are preserved.
Reload vs restart
- Reload-able with
/voteplus reload: every YAML except thegeneral.storage,mysql.*, andmysql.server-idblocks - Restart-required: switching storage backend, changing the database connection, or changing the per-server isolation key