Broadcasts OP player actions to all online players. Fully config-driven via config.yml.
- Full command monitoring — any command executed by an OP is broadcast (controlled by
monitored-commands) - Creative inventory tracking — picking items from the creative inventory is broadcast in real-time
- Gamemode change detection — both
/gamemodeand F3+F4 switcher are broadcast - OP kills — broadcasts when an OP kills another player
- Exempt players — players listed in
exempt-playersare silently ignored - Cooldown —
cooldown-mslimits broadcast frequency per player (default 0 = none) - Language support — built-in
en/zh_cn, switch vialanguagein config - History logging (optional) — writes all events to a file when
history.enabled: true
- Download
OPMonitor-1.1.0.jar - Place in your server's
plugins/folder - Restart the server
- Edit
plugins/OPMonitor/config.ymlto your liking - Run
/opmonitor reloadto apply changes
| Command | Description |
|---|---|
/opmonitor |
Show help |
/opmonitor status |
Show plugin status and monitored command count |
/opmonitor reload |
Reload config and apply changes on the fly |
| Permission | Default | Description |
|---|---|---|
opmonitor.admin |
OP | Access to /opmonitor commands |
opmonitor.see |
Everyone | See broadcast messages |
enabled: true # Enable/disable the plugin
language: en # Broadcast language: en or zh_cn
broadcast-prefix: "&6[OP Monitor] &r"
cooldown-ms: 0 # Cooldown per player in ms, 0 = no cooldown
exempt-players: # OP players who won't be monitored
- Tagin_T
history:
enabled: false # Write history log to file
file: "plugins/OPMonitor/history.log"
monitored-commands: # Commands to broadcast (case-insensitive, no leading /)
- gamemode
- tp
- give
- ban
- kick
# ... 88 commands by default, add or remove as needed[OP Monitor] PlayerName executed OP command: "/gamemode creative"
[OP Monitor] PlayerName picked 64 diamond from Creative
[OP Monitor] PlayerName changed gamemode to CREATIVE
[OP Monitor] PlayerName killed VictimName
- Player name: blue
- Items/args/commands: green
- Commands are wrapped in quotes: PlayerName executed OP command:
"/cmd args"
When history.enabled: true, all broadcast events are written to history.file (default: plugins/OPMonitor/history.log).
One event per line:
[yyyy-MM-dd HH:mm:ss] Tagin_T picked 1 diamond_block from Creative
[yyyy-MM-dd HH:mm:ss] Tagin_T runed /gamemode creative
[yyyy-MM-dd HH:mm:ss] Tagin_T changed gamemode to CREATIVE
[yyyy-MM-dd HH:mm:ss] Tagin_T killed Hiverfy
Format: [timestamp] playername action-description
Requires JDK 17+. The project ships with Maven Wrapper — no global Maven install needed:
./mvnw clean package -DskipTestsThe compiled JAR is at target/OPMonitor-1.1.0.jar.
MIT