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