Tags
Creators
Details
1.7.0
Compatibility
Required content
Changes
Combat Persistence ๐ก๏ธ
Combat Persistence is a professional-grade, 100% server-side Fabric mod for competitive Minecraft servers. It kills combat logging by spawning a vulnerable NPC whenever a player disconnects mid-fight โ so closing the game is never an escape. It also ships a hardened, built-in authentication system to lock down offline-mode and cracked servers.
No client install required. Your players just connect and play.
โ๏ธ Combat Logging Protection
- Smart Combat Tagging โ Players are tagged only on genuine PvP damage. Configurable duration with live action-bar feedback.
- Persistent NPCs โ Disconnecting while tagged spawns a
MannequinNPC at your exact location that mirrors your skin, armor, and held items. - Survives Anything โ NPCs are backed by NBT data, so they persist through chunk unloads and full server restarts.
- Reliable Offline Deaths โ If your NPC is slain while you're away, you rejoin straight to the death screen. No ghost items, no survival glitches.
- Advanced Dupe Protection โ Clears both the inventory and the cursor stack the instant you disconnect, closing the duplication exploits that plague other combat-log mods.
- Command Blocking โ Stop players escaping a fight with
/tp,/home,/spawn,/warp,/back, and any custom commands you add.
๐ Built-in Secure Authentication
- BCrypt password hashing โ Passwords are never stored in plaintext.
- Inventory & coordinate hiding โ Until a player logs in, their inventory and location are concealed, so nobody joining under their name (a real risk in offline mode) can peek at their items or position.
- Brute-force lockout โ Accounts lock after too many failed
/loginattempts for a configurable cooldown. - Operator account reset โ
/authreset <player>lets staff wipe a forgotten/compromised account so the player can re-register. - Conservative IP auto-login โ Optional and off by default (IP auto-login is weak behind shared NAT / BungeeCord / Velocity proxies). Enable only on trusted direct-connect servers.
- Safe limbo โ Unauthenticated players are held in a lobby with hidden coordinates to prevent world-leaking.
๐ช Arena / SMP Extras
- Ender chest toggle โ Optionally disable ender chests server-wide (reliably blocked via mixin) so players can't stash loot mid-fight on arena/SMP setups.
๐ What's New in 1.7.0
- โ Updated for Minecraft 26.2 (Java 25).
- ๐ Patched offline-mode identity exploits (premium-name bypass, inventory exposure, login-fall).
- ๐ Added operator account reset (
/authreset) and hardened IP auto-login. - ๐ช Added a toggle to disable ender chests for arena/SMP servers, now reliably blocked via mixin.
- ๐ก๏ธ Combat tags now trigger only on real player damage; skin identifiers are validated and Mojang fetches isolated from the common thread pool.
- ๐ Added brute-force login lockout.
โจ๏ธ Commands
| Command | Description |
|---|---|
/register <password> <confirm> |
Register your account. |
/login <password> |
Log in to your account. |
/skin <name> |
Apply a skin from a Mojang account name. |
/authreset <player> |
(Operator) Reset a player's account so they must register again. |
๐ง Configuration
Everything lives in config/combatpersistence.json and generates on first launch. Highlights:
| Setting | Default | What it does |
|---|---|---|
combatTagDurationSeconds |
15 |
Length of the combat tag. |
blockedCommands |
/spawn, /home, /tp, /tpa, /warp, /back |
Commands disabled while tagged. |
disableEnderChests |
false |
Block ender chests server-wide (arena/SMP). |
enableAuth |
true |
Toggle the whole authentication system. |
forceAuthInOfflineMode |
true |
Require auth even in offline mode. |
enableIpAutoLogin |
false |
Optional IP-based auto-login (use only on trusted servers). |
maxLoginAttempts / loginLockoutSeconds |
5 / 300 |
Brute-force lockout threshold and cooldown. |
sessionDurationHours |
24 |
How long an auto-login session lasts. |
hideInventoryBeforeAuth |
true |
Conceal inventory until login. |
hideCoordinatesBeforeAuth |
true |
Conceal coordinates until login. |
All in-game messages are fully customizable (color codes supported).
๐ฆ Requirements
- Fabric Loader + Fabric API
- Minecraft 26.2
- Java 25+
๐ Why Combat Persistence?
Built with an exploit-first mindset. We've manually patched duplication glitches (cursor stacks, inventory ghosting), offline-mode identity spoofing, and authentication bypasses that affect other similar mods. It uses ReentrantLock and background saving to stay thread-safe and lag-free under load.
โค๏ธ Support
If this mod helps your server, you can support development here: ko-fi.com/pottersgame
Projects on Modrinth are automatically available through a Maven repository for use with JVM build tools such as Gradle. To learn more about the Modrinth Maven API, click here.
Note: When available, you should use the creator's maven repo instead as it will have transitive dependency information that the Modrinth Maven API does not. You may also end up with duplicate dependencies if you use a mix of Modrinth and non-Modrinth Maven repositories for your dependencies, because the group identifier will be different when served through the Modrinth Maven API.
Maven coordinates:
Version ID:
build.gradle:
repositories {
exclusiveContent {
forRepository {
maven {
name = "Modrinth"
url = "https://api.modrinth.com/maven"
}
}
// forRepositories(fg.repository) // Uncomment when using ForgeGradle
filter {
includeGroup "maven.modrinth"
}
}
}
// Standard Gradle dependency
dependencies {
implementation "maven.modrinth:Q56AIoib:SibMj57g"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:Q56AIoib:SibMj57g"
}

