CombatLogger
Client-side combat analysis and hack detection for Minecraft 1.16.5.
Real-time combat telemetry, accurate reach estimation, threat scoring, packet inspection, and detailed session analysis — all running directly on your client.
**Analyze · Detect · Review**
Overview
CombatLogger is a client-side combat analysis mod designed to give you detailed information about what's happening during PvP.
Instead of relying on simple distance checks or raw client positions, CombatLogger combines server-tick timing, interpolated entity positions, latency data, attack patterns, movement analysis, and packet activity to build a more complete picture of combat.
It provides information in real time through an in-game HUD and keeps detailed logs that can be reviewed after a fight.
[!IMPORTANT] CombatLogger is an analysis tool, not a guaranteed anti-cheat. Detection results should be treated as indicators for investigation rather than definitive proof of cheating.
Features
Real-Time Combat HUD
Get important combat information without leaving the game.
┌─────────────────────────────────────────────┐
│ COMBAT 48ms 3.2m │
│ LOG │
├─────────────────────────────────────────────┤
│ [red dot] PlayerName Diamond S │
│ -4.0hp 12 CPS 3.42 +/-0.35 │
│ ■■■■■■■■■■□□□□□□□□□ │ SUSPICIOUS │ x2 ↑ │
└─────────────────────────────────────────────┘
The HUD can display:
- Target who last hit you
- Damage dealt
- Estimated reach
- Attacker CPS
- Ping
- Threat level
- Detection verdict
- Weapon information
HUD position, scale, width, opacity, and other display options can be customized.
Reach Analysis
CombatLogger doesn't simply calculate the distance between two players' current client-side positions.
When an attack occurs, the mod uses interpolated entity positions and server tick timing to estimate where the players were positioned at the time of the attack.
This allows the reach calculation to account for the difference between:
- Current client position
- Interpolated entity position
- Server tick timing
- Network latency
- Attack timing
The result is a more useful reach estimate than a simple raw-distance check.
Ping-Adjusted Reach
Network latency can introduce uncertainty into combat measurements.
CombatLogger accounts for the attacker's latency when determining the expected reach range.
This helps reduce false positives caused by:
- High ping
- Position updates arriving late
- Client/server synchronization differences
- Normal network jitter
Rather than treating every player identically, the analysis takes network conditions into consideration.
Threat Scoring
Every analyzed hit receives a 0–100 threat score.
The scoring system considers multiple signals instead of relying on a single detection.
Detection Signals
| Signal | Description |
|---|---|
| Reach | How far beyond the expected range the hit appears to be |
| Hit Clustering | Unusually close or repeated attack timings |
| Airborne Attacks | Suspicious attack behavior while airborne |
| Damage Pattern | Unusual or inconsistent damage behavior |
| CPS | Attacker click rate and attack frequency |
| Movement | Abnormal vertical or positional movement |
Threat Levels
| Score | Level | Meaning |
|---|---|---|
0–14 |
LOW | Little or no suspicious activity |
15–39 |
MEDIUM | Some unusual behavior detected |
40–69 |
HIGH | Multiple suspicious signals detected |
70–100 |
CRITICAL | Strong combination of suspicious signals |
The score is intended to help identify patterns — not to automatically declare a player guilty.
CPS Tracking
CombatLogger maintains a rolling CPS measurement for attackers during combat.
It also tracks attack timing to identify unusually tight clusters.
For example:
Attack intervals:
142 ms ── 118 ms ── 105 ms ── 47 ms ── 43 ms ── 49 ms
└──── cluster ────┘
Extremely short intervals, including attacks occurring within approximately 50 ms, can contribute to the overall analysis.
Fly Detection
CombatLogger monitors vertical player movement to identify potentially abnormal movement patterns.
The system can flag unusual vertical movement that may be associated with:
- Fly hacks
- Abnormal movement
- Movement exploits
- Certain feather-fall-related anomalies
Movement analysis is treated as one signal among many rather than a standalone detection.
Packet Inspection
CombatLogger includes a packet monitoring system capable of inspecting client/server traffic relevant to combat analysis.
It can monitor packet rates and identify potential anomalies such as:
Attack packets
│
├── Normal rate
│
├── Unusual burst
│
└── Potential attack spam
Potential packet anomalies include:
- Attack packet spam
- Position packet flooding
- Unusual packet bursts
- Excessive position updates
This can provide additional context when normal combat analysis isn't enough.
Session Logging
CombatLogger keeps a detailed record of combat events throughout a session.
A logged hit can contain information such as:
Timestamp
Attacker
Weapon
Reach
Damage
CPS
Ping
Verdict
Threat Level
Example:
[18:42:31.452] HIT by ExamplePlayer | Weapon: Diamond Sword | Reach: 3.47m +/-0.35m | Damage: -4.0 | CPS: 12 | Ping: 52ms | MaxReach: 3.25m | Verdict: SUSPICIOUS | Threat: HIGH(64) | CLUSTERx2 | SPRINTING
This makes it possible to investigate fights after they happen instead of relying entirely on what was visible in-game.
Session Summary
When you disconnect, CombatLogger can generate a summary of the session.
The summary includes statistics such as:
- Per-attacker threat scores
- Reach consistency
- Reach standard deviation
- Average measurement uncertainty
- Attack statistics
- Detection results
This makes it easier to identify players who repeatedly produce suspicious results rather than focusing on a single hit.
Commands
| Command | Description |
|---|---|
/cl hack |
Toggle hack detection and packet inspection |
/cl reach |
Display the latest reach estimation and verdict |
/cl log |
Display the current session log path |
/cl config |
Open the configuration screen |
/cl hud <x/y> <value> |
Change the HUD X or Y position |
/cl help |
Display all available commands |
Configuration
Open the configuration screen in-game by pressing:
Right Shift
Available Options
| Setting | Description |
|---|---|
| HUD Position | Change the location of the combat HUD |
| HUD Scale | Adjust the size of the HUD |
| HUD Width | Change the HUD's display width |
| Background Opacity | Adjust the HUD background transparency |
| Text Color | Customize text using RGB values |
| Hack Detection Panel | Enable or disable detection information |
| Weapon Display | Show or hide weapon information |
Configuration is stored at:
config/combatlogger.json
Compatibility
| Component | Version |
|---|---|
| Minecraft | 1.16.5 |
| Mod Loader | Fabric |
| Dependency | Fabric API |
| Installation | Client-side |
[!NOTE] CombatLogger does not require a server-side installation.
How It Works
At a high level, CombatLogger processes combat events through several stages:
┌─────────────────┐
│ Combat Event │
└────────┬────────┘
│
▼
┌───────────────────┐
│ Position Analysis │
└─────────┬─────────┘
│
▼
┌───────────────────┐
│ Reach Estimation │
└─────────┬─────────┘
│
┌───────────┼───────────┐
▼ ▼ ▼
┌───────┐ ┌───────┐ ┌────────┐
│ CPS │ │ Ping │ │ Packet │
│ Track │ │Adjust │ │Analysis│
└───┬───┘ └───┬───┘ └───┬────┘
│ │ │
└───────────┼───────────┘
▼
┌─────────────────┐
│ Threat Scoring │
└────────┬────────┘
│
┌────────┴────────┐
▼ ▼
┌───────────┐ ┌───────────┐
│ HUD │ │ Session │
│ Display │ │ Log │
└───────────┘ └───────────┘
The purpose of this approach is to combine multiple pieces of information instead of making decisions from a single measurement.
Detection Disclaimer
[!WARNING] CombatLogger should not be treated as an authoritative anti-cheat system.
Combat analysis can be affected by many factors, including:
- Network latency
- Server tick rate
- Interpolation
- Knockback
- Connection instability
- Server-specific mechanics
- Unusual movement behavior
- Client/server synchronization
A suspicious result does not necessarily mean that a player is cheating.
CombatLogger is intended to provide evidence, statistics, and useful signals that can help with manual investigation.
Project Goals
CombatLogger is built around a few simple goals:
- Accurate — Use server-tick-aware positioning instead of simple client distance.
- Informative — Show useful combat information while you're playing.
- Transparent — Provide the data behind suspicious results.
- Lightweight — Keep analysis client-side without requiring server changes.
- Reviewable — Store enough information to investigate a fight afterward.
Installation
- Install Fabric Loader for Minecraft
1.16.5. - Install the required version of Fabric API.
- Place the CombatLogger
.jarfile into yourmodsfolder. - Launch Minecraft using your Fabric profile.
- Join a server and press Right Shift to configure the mod.
Project Status
CombatLogger is an actively developed project. Detection behavior, scoring, and analysis may change as the system is improved and additional edge cases are handled.
If you find inaccurate detections or unexpected behavior, providing the relevant session logs and circumstances can help improve the analysis.
Summary
CombatLogger turns Minecraft PvP into something you can actually measure and review.
Real-time combat data. Reach analysis. Threat scoring. Packet inspection. Detailed session logs.
Everything runs client-side.

