CombatLogger
Log out of a fight and your body stays behind
CombatLogger is a free plugin for Paper and Spigot, from 1.17 to 26.x, that stops players from escaping a fight by logging out. When a fight starts both players are tagged, escape commands stop working and a boss bar counts down. A player who disconnects anyway leaves their body behind, and if it gets killed they pay for it when they come back.
How it works in play
- Tagging: damage from a player or a mob tags both sides for 15 seconds. Arrows, tridents and thrown potions tag the player who fired them.
- Countdown: a boss bar shows the seconds left, and a message tells the player when they're out of combat.
- Blocked commands:
/tp,/tpa,/home,/spawn,/warp,/flyand/gamemodeare denied while tagged. You can edit the list. - The body: a player who disconnects while tagged leaves an NPC with their skin, armour and held items for 30 seconds. Anyone can kill it, and the server announces who did.
- Coming back: if the body was killed, the player is killed on login (their items drop there) or has their inventory cleared, whichever you choose. If they reconnect while the body is still standing, they take its health and stay tagged.
For staff
- Alerts: staff with
combatlogger.notifyare told when someone logs out in combat, with their total count. - History: each player's combat-log count is saved and survives restarts.
/combatlog toplists the worst offenders. - Safe zones: with WorldGuard, players aren't tagged inside regions where PvP is denied.
- Commands:
/combatlog status <player>,/combatlog clear <player>for a stuck tag, and/combatlog reload.
How to use it
- Install: drop the jar into
/plugins, restart once and it's ready. Install Citizens too if you want the body left behind. English is the default; setlanguage: esfor Spanish. - Set the rules in
config.yml: tag length, whether mobs tag (PvE), the blocked commands, how long the body stays and the penalty (killorclear). - Style the HUD: boss bar colour, style and text, and the out-of-combat message. Set
combat-hud.enabled: falseto hide it. - Apply changes with
/combatlog reload.
Commands and permissions
- Operators (
combatlogger.admin):/combatlog status|clear|reload|top. combatlogger.notifyreceives the combat-log alerts (operators by default).combatlogger.bypassis never tagged;combatlogger.bypass.commandscan use blocked commands while tagged.
Placeholders
With PlaceholderAPI installed: %combatlogger_in_combat% and %combatlogger_time_left%.
Requirements
- Paper or Spigot from 1.17 to 26.x, forks like Purpur included, on the Java version your server already uses.
- Optional: Citizens (the body left behind), WorldGuard (no tagging in no-PvP regions), PlaceholderAPI (placeholders) and ParticleForge (an effect when a body is killed).
None of them is required. Without Citizens, tagging, the countdown and blocked commands still work and no body is spawned. The plugin never refuses to start because an optional plugin is missing.
FAQ
Do the items drop when the body is killed?
No, they drop when the player logs back in and is killed (with the kill penalty). That way the inventory can't drop twice.
Can players get stuck in combat at spawn?
Not in WorldGuard regions with PvP denied, where no one is tagged. Staff can also clear a tag with /combatlog clear.
Can mob damage be left out?
Yes. Set pve-enabled: false and only players tag each other.
Can I translate the messages?
Yes. English and Spanish are included in lang/, in MiniMessage, and missing keys fall back to English.
For questions or bug reports, use the discussion tab on this page or our Discord.