⚔️ SimpleCombatLog
The modern, high-performance solution to stop combat loggers.
SimpleCombatLog is a robust Paper/Spigot plugin designed to ensure fair PvP on modern servers. It utilizes the latest Minecraft 1.21 features (Text Displays, Boss Bars) to provide a premium experience without lag.
⚠️ Compatibility Note:
- Minecraft 1.21+: Use the latest version (v2.0+).
- Minecraft 1.12 - 1.20: Please download Version 1.4 from the "Versions" tab.
✨ Key Features
💀 Punishment & Kill Attribution
- Instant Kill: Combat loggers die immediately and drop their loot.
- True Kill Credit: The plugin ensures the attacker gets credit for the kill.
- Compatible with: Ranked SMP, AuraSkills, Stats plugins, and Economy kill rewards.
📊 Visual Timers (New!)
- Action Bar: A clean countdown above the hotbar.
- Boss Bar: A highly visible progress bar at the top of the screen.
- Customizable: Configure colors, styles, and text. Use one or both!
🏰 Safezone Protection (3 Methods)
- Native Radius: Configurable protection radius around the World Spawn (No dependencies required!).
- Region List: Block specific WorldGuard regions via
config.yml. - Custom Flag: Use
/rg flag <region> combat-entry denyto easily mark any region as a safezone.
- Effect: Players are physically pushed back if they try to enter these areas while tagged.
🛑 Movement & Item Control
- Elytra Anti-Takeoff: Tagged players cannot jump-start their Elytra. (Players already flying can land safely).
- Pearl Limiter: Restrict how far players can teleport with Ender Pearls (default 32 blocks).
- Smart Cooldowns: Apply visual cooldowns to items on combat start (does not reset on every hit).
- Hard Block: Totally ban specific items (e.g., Rockets) during combat.
🏆 Holographic Leaderboards
- Public Shaming: Display a floating "Top 10 Combat Loggers" leaderboard in your lobby.
- Modern Tech: Uses Text Displays (1.20+) for crisp text and zero entity lag.
- Stats Tracking: Keep a permanent record of how many times a player has combat logged (
/scl stats <player>).
🛠️ Configuration
The config.yml is fully commented and easy to edit.
Click to view Default Configuration
```yaml # ========================================== # SimpleCombatLog Configuration # ==========================================--- General Settings ---
cooldown-seconds: 15 kill-on-quit: true
--- Display Settings ---
display:
Show the timer above the hotbar
action-bar: true
Show a Boss Bar at the top of the screen
boss-bar: enabled: true title: "&cCombat Mode: &e%time%s" color: RED style: SOLID
--- Safezone Protection ---
denied-regions:
- "spawn"
- "safezone"
spawn-protection: enabled: true radius: 16
--- Combat Restrictions ---
1. Pearl Range Limit
max-pearl-range: 32
2. Elytra Control (Block takeoff)
block-elytra-activation: true
3. Command Blocking
blocked-commands:
- "/spawn"
- "/tpa"
- "/home"
4. Item Blocking (Total Prevention)
blocked-items:
- "ELYTRA"
- "FIREWORK_ROCKET"
5. Item Cooldowns (Visual Timer)
Applies a cooldown when combat starts.
item-combat-cooldowns:
- "ENDER_PEARL:15"
- "CHORUS_FRUIT:10"
- "GOLDEN_APPLE:5"
--- Leaderboard & Stats ---
leaderboard-loc: null leaderboard-uuid: null
--- Sounds ---
sounds: tagged: "ENTITY_EXPERIENCE_ORB_PICKUP" untagged: "ENTITY_EXPERIENCE_ORB_PICKUP"
--- Messages ---
messages: tagged: "&c&lCOMBAT! &7You are now in combat! Do not log out!" untagged: "&a&lSAFE! &7You are no longer in combat." broadcast-log: "&c%player% combat logged and was killed!" actionbar: "&cCombat: &e%time%s" region-denied: "&c&lSTOP! &7You cannot enter this region during combat!" ´´´
📜 Commands & Permissions
| Command | Permission | Description |
|---|---|---|
/scl reload |
simplecombatlog.admin |
Reloads config and stats. |
/scl setleaderboard |
simplecombatlog.admin |
Spawns the "Top Loggers" hologram at your location. |
/scl stats <player> |
(none) |
Check how many times a player has combat logged. |
🚀 Installation
- Download the
.jarfile. - Drop it into your server's
pluginsfolder. - (Optional) Install WorldGuard for advanced region management.
- Restart your server.
Requirements:
- Java 21
- Minecraft 1.21+ (For older versions, use v1.4)
All Versions
+ Add Version- ✅ Compatibility:** Now supports **Minecraft 1.13 - 1.21+**!
- (Previously 1.21+ only)*
### ✨ Changes & Features
- 🌍 Universal Support:**
- The plugin has been updated to run on all modern Minecraft versions (1.13+).
- Holograms:** Automatically disabled on versions older than 1.19.4 (requires Text Displays).
- Boss Bars:** Fully supported on all versions (1.13+).
- 💎 Core Features (All Versions):**
- Death Reset:** Timers clear instantly on death.
- Pearl Limiter:** Range checks work on all versions.
- Elytra Checks:** Boosting prevention works on 1.13+.
- Safezones:** WorldGuard and Radius checks are compatible across versions.
### 🛠️ Technical
- Switched to Reflection for 1.20+ features to ensure the plugin loads safely on older servers.
- Java 8+ Runtime supported.
- ⚠️ IMPORTANT:** This version ONLY supports **Minecraft 1.21+** (Java 21).
### ✨ New Features
- 🩸 Death Reset:**
- If a player dies while in combat (killed by player, mob, or fall damage), their combat timer and Boss Bar are now **immediately removed**.
- They will respawn fresh, without being stuck in a combat loop.
- ⚠️ IMPORTANT:** This version ONLY supports **Minecraft 1.21+** (Java 21).
### ✨ New Features
- boss-bar Support:**
- You can now display the combat timer using a **Boss Bar** at the top of the screen!
- Fully configurable: Change color, style, and title in
config.yml. - You can use the Boss Bar, the Action Bar, or **both** at the same time.
- 🧠 Smart Item Cooldowns:**
- Improved Logic:** Visual item cooldowns (e.g., on Ender Pearls) now only apply when you *enter* combat.
- If you get hit again while already tagged, the item cooldown **does not reset**, allowing players to use their items naturally once the initial delay passes.
- 🪽 Elytra Balancing:**
- Block Takeoff:** Tagged players cannot double-jump to start gliding.
- Safe Landing:** Players who are *already* flying when tagged are allowed to land safely (no forced drop), but cannot use rockets to boost away.
- 🧶 Pearl Range Limiter:**
- Added
max-pearl-range. Pearls thrown further than this distance (default 32) are cancelled and refunded.
### 🛠️ Technical Changes
- bStats:** Integrated locally (no external dependencies or shading required).
- Config:** Added
displaysection for Boss Bar settings.
- ⚠️ IMPORTANT:** This version ONLY supports **Minecraft 1.21+** (Java 21).
### ✨ New Features
- 🪽 Elytra Balancing:**
- Block Takeoff:** Added
block-elytra-activationconfig. Tagged players cannot double-jump to start gliding.
- Safe Landing:** Players who are *already* flying when tagged are **not** forced to drop out of the sky (preventing cheap fall damage kills), but they cannot use Firework Rockets to boost away if blocked.
- 🧶 Pearl Range Limiter:**
- Prevent players from teleporting across the map while fighting.
- Configurable
max-pearl-range(default: 32 blocks).
- Automatically refunds the item if the teleport is cancelled.
- 🛡️ Native Spawn Protection:**
- Define a protection radius around the world spawn point without needing WorldGuard.
### 🛠️ Improvements
- Kill Attribution:** Fixed logic to ensure RankedSMP and Stats plugins correctly credit the attacker when a player combat logs.
- Holograms:** Fixed an issue where leaderboards could stack on top of each other after server reloads.
- Metrics:** Added bStats and Update Checking.
- ⚠️ IMPORTANT:** This version ONLY supports **Minecraft 1.21+** (Java 21).
### ✨ New Features
- 🧶 Pearl Range Limiter:**
- Prevent players from teleporting too far away while in combat!
- Configurable range limit (default: 32 blocks).
- Pearls are refunded if the throw is cancelled.
- ⚔️ Enhanced Kill Attribution:**
- Improved compatibility with plugins like **Ranked SMP**, **AuraSkills**, and **Economy** plugins.
- When a player combat logs, the plugin forces them to take fatal damage *from the attacker*, ensuring the kill counts properly.
- 📊 Metrics & Updates:**
- Added **bStats** integration to track plugin usage.
- Added an **Update Checker** to notify admins of new releases.
### 🛠️ Config Changes
- Added
max-pearl-rangesetting.
- ⚠️ IMPORTANT:** This version ONLY supports **Minecraft 1.21+** (Java 21).
This update focuses on making SimpleCombatLog play nicely with other plugins that track kills, stats, or ELO (like Ranked SMP).
### ✨ New Features
- ⚔️ True Kill Attribution:**
- Previously, combat loggers just died (suicide).
- Now:** If a player logs out while tagged, the plugin forces them to take fatal damage *from the attacker*.
- Benefit:** Plugins like **Ranked SMP**, **AuraSkills**, or **Economy** plugins will now correctly credit the kill to the attacker!
- 🔔 Update Checker:**
- The plugin now checks Modrinth automatically on startup.
- OPs will get a notification on join if a new version is available.
### 🛠️ Fixes
- Improved attacker tracking logic to ensure the correct player gets the kill credit on disconnect.
- ⚠️ IMPORTANT:** This version ONLY supports **Minecraft 1.21+** (Java 21).
- If you need support for versions 1.12 - 1.20, please download **Version 1.4** from the versions tab.*
### ✨ New Features
- 🌍 Native Spawn Protection (No Dependencies):**
- You can now define a **radius** around the world spawn point in
config.yml.
- Tagged players are physically prevented from entering this radius, even if you don't use WorldGuard.
- 🚩 Custom WorldGuard Flag:**
- Added the
combat-entryflag!
- Instead of listing regions in the config, you can now simply run
/rg flag <region> combat-entry denyto create safezones.
- 🛡️ Hologram Stabilization:**
- Fix:** Added a de-duplication check to prevent "stacked" holograms if the server reloads multiple times.
- Fix:** The plugin now checks if chunks are loaded before trying to update the leaderboard to prevent "ghost" entities.
### 🛠️ Config Changes
- Added
spawn-protectionsection (Enabled by default, 16 blocks).
- ⚠️ IMPORTANT:** This version ONLY supports **Minecraft 1.21+** (Java 21).
- If you need support for versions 1.12 - 1.20, please download **Version 1.4** from the versions tab.*
This update rewrites the engine to utilize modern Minecraft features, removing legacy code for better performance.
### ✨ New Features
- 🏆 Holographic Leaderboards:**
- Create a floating "Top 10 Combat Loggers" display in your lobby.
- Uses modern **Text Displays** for high performance (no laggy Armor Stands).
- Setup: Stand at location and run
/scl setleaderboard.
- 🏰 WorldGuard Safezones:**
- define
denied-regionsin config.
- Players are physically pushed back if they try to enter these regions while tagged.
- ⏳ Visual Item Cooldowns:**
- Apply visual cooldown timers to items (e.g., Ender Pearls) instead of just blocking them.
- 📊 Stats System:**
- Tracks log-out counts in
stats.yml.
- View player history with
/scl stats <player>.
### 🛠️ Technical Changes
- Target API updated to **1.21**.
- Built on **Java 21**.
- Optimized event handling for modern Paper servers.
We are excited to release the first version of SimpleCombatLog! This is a lightweight, high-performance plugin designed to stop PvP loggers on servers ranging from 1.12.2 all the way to 1.21+.
🚀 Features in v1.4:
Universal Support: Works natively on Minecraft versions 1.12.2 through 1.21+.
Kill on Quit: Instantly kills players who disconnect while in combat, ensuring they drop their inventory.
Action Bar Timer: Displays a live countdown above the hotbar (no chat spam!).
Command Blocking: Whitelist or blacklist commands (e.g., /spawn, /tpa) during combat.
Item Blocking: Prevent usage of items like Ender Pearls, Chorus Fruit, or Elytra fireworks while tagged.
Fully Configurable:
Edit all chat messages and Action Bar text (supports color codes).
Configure sound effects for entering/leaving combat.
Customize the combat cooldown duration.
📦 Installation
Download the JAR.
Place it in your plugins folder.
Restart your server.
Check config.yml to customize your settings!