-
-
Notifications
You must be signed in to change notification settings - Fork 78
Vote Broadcast System
The Vote Broadcast System controls how vote messages are announced to players.
It replaces the legacy broadcast behavior with a flexible system supporting:
- Per-vote broadcasts
- Cooldowns
- Vote batching
- First-vote-of-day messages
- Global interval summaries
- Proxy-wide broadcast routing
Configured in:
-
Config.yml(Backend servers) -
bungeeconfig.yml/ proxy config (Proxy-side)
VoteBroadcast:
Type: EVERY_VOTE
Duration: 2m
MaxSitesListed: 0
Format:
BroadcastMsg: '&6[&4Vote&6] &aThanks &e%player% &afor voting on &e%site%&a!'
Header: '&6[&4Vote&6] &a%player% voted on &e%sites_count% &asites:'
ListLine: '&7 - &e%site%'Disables vote broadcasts entirely.
Broadcast every vote (including offline processed votes).
Broadcast only if the voting player is online.
Broadcast at most once per Duration per player.
Collect votes during Duration and broadcast once.
- 1 vote → BroadcastMsg
- 2+ votes → Header + ListLine
Broadcast only the first vote per calendar day per player.
Every Duration, broadcast a global vote summary.
Supported units:
- s (seconds)
- m (minutes)
- h (hours)
- d (days)
- w (weeks)
Example:
30s
5m
1h
1d
Months are NOT supported.
Common:
- %player%
- %site%
- %sites_count%
- %sites%
- %reason%
Interval-only:
- %players%
- %numberofplayers%
- %numberofsites%
Proxy broadcasts are controlled separately.
ProxyBroadcast:
Enabled: true
Scope:
Mode: ALL_SERVERS
Servers: []
OfflineMode: FORWARD
OfflineForward:
Servers:
- lobby- PLAYER_SERVER → Only the server the player is on
- ALL_SERVERS → All backend servers
- SERVERS → Only specific listed servers
- ALL_EXCEPT → All except listed servers
Controls what happens if the voting player is offline:
- NONE → Drop broadcast
- QUEUE → Send when player logs in
- FORWARD → Immediately forward to a backend server
Used only when OfflineMode = FORWARD.
Example:
OfflineForward:
Servers:
- lobbyBackend VoteBroadcast: - Controls message formatting and timing logic - Runs per-server
ProxyBroadcast: - Controls where broadcasts are routed across the network - Determines which backend server(s) receive the broadcast
Recommended setup for networks:
- Use MySQL shared storage
- Enable ProxyBroadcast
- Use ALL_SERVERS scope
- Use BATCH_WINDOW_PER_PLAYER or COOLDOWN_PER_PLAYER on backend
Type: EVERY_VOTEType: COOLDOWN_PER_PLAYER
Duration: 5mBackend:
Type: BATCH_WINDOW_PER_PLAYER
Duration: 30sProxy:
ProxyBroadcast:
Enabled: true
Scope:
Mode: ALL_SERVERSThe new Vote Broadcast system provides:
- Spam protection
- Vote batching
- First vote announcements
- Global summaries
- Proxy routing control
- Offline handling options
- Network-wide broadcast scope control
It is designed for both standalone servers and large proxy networks.
- Commands & Permissions
- API
- PlaceHolderAPI placeholders
- Minecraft Server Lists
- Bedrock Player Support
- Performance Settings
- Signs
- Special Rewards
- Time Changes
- Vote Reminding
- VoteMilestones
- VoteReminders
- Month Date Totals
- Transferring data storage within plugin