Scoreboard Sync
A plugin that syncs objectives, scores, and teams to a MySQL/MariaDB database so all backend servers in a Velocity or BungeeCord network can share the same scoreboard state. Useful for data packs and cross-server minigames that use vanilla scoreboards.
Scoreboard Sync
ScoreboardSync
A Paper plugin that syncs objectives, scores, and teams to a MySQL/MariaDB database so all backend servers in a Velocity or BungeeCord network share the same scoreboard state. Useful for data packs and cross-server minigames that use vanilla scoreboards.
Installation
1. Drop `ScoreboardSync.jar` into every backend server's `plugins/` folder. 2. Restart each server to generate `plugins/ScoreboardSync/config.yml`. 3. Set up the database (see below). 4. Configure each server — same DB credentials, different `server-name`. 5. Restart again (or use `/sbs reload` for config-only changes).
Database Setup
Create a single database that all servers connect to:
```sql CREATE DATABASE scoreboardsync CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; CREATE USER 'sbs'@'%' IDENTIFIED BY 'yourpassword'; GRANT ALL PRIVILEGES ON scoreboardsync.* TO 'sbs'@'%'; ```
ScoreboardSync creates its own tables on first start.
What Gets Synced
| Type | Synced fields | |---|---| | Objectives | Name, display name, criteria, render type | | Scores | Objective, entry (player/entity name), score value | | Teams | Name, display name, prefix, suffix, color, friendly fire, see-friendly-invisibles, nametag visibility, collision rule | | Team members | Which team each entry belongs to |
Commands
| Command | Permission | Description | |---|---|---| | `/sbs status` | `scoreboardsync.admin` | Show server name, sync interval, and DB connection info | | `/sbs push` | `scoreboardsync.admin` | Immediately push local scoreboard state to DB | | `/sbs pull` | `scoreboardsync.admin` | Immediately pull DB state and apply locally | | `/sbs reload` | `scoreboardsync.admin` | Reload config.yml (does not reconnect to DB) |