HWID Tracker (Notification / Listing / Kick / Ban)
HWID Tracker is a lightweight utility mod for NeoForge that silently tracks the hardware ID (HWID) of players connecting to your server โ enabling reliable HWID-based bans, multi-account detection, and instant operator alerts.
Unlike name or IP bans, a HWID ban is tied to the player's physical hardware, making it significantly harder to evade by simply creating a new account or switching networks.
โ ๏ธ Note: This mod requires installation on both server and client. Add it as a required mod in your modpack. Players without the mod cannot connect.
โจ Features
- ๐ Silent HWID tracking โ hardware data is collected automatically on login, with no prompt or notification shown to the player
- ๐จ HWID + UUID + IP ban in one command โ
/hban covers all three ban layers simultaneously
- ๐ซ Multi-account detection โ detects when two accounts share the same hardware and kicks the second account instantly
- ๐ข Operator alerts โ all online operators (permission level 3+) receive an immediate in-game notification on multi-account attempts
- ๐ Per-player HWID files โ each player gets their own
config/user-hwids/<uuid>.txt with name, UUID, HWID hash, IP, first seen and last seen
- ๐ Ban list file โ all bans are stored in
config/user-hwids/bans.json with reason, banner name, and timestamp
- ๐ Vanilla ban integration โ automatically writes to
banned-players.json and banned-ips.json on ban
- โป๏ธ Full unban support โ
/hunban removes the player from all three ban lists at once
- ๐ HWID lookup command โ
/hwid shows all stored data for any player, online or offline
- โก Lightweight โ no database, no external services, pure file-based storage
๐ Commands
All commands require permission level 3 (Operator).
| Command |
Description |
/hwid <name> |
Show HWID data for a player (online or offline) โ UUID, IP, HWID hash, first/last seen, ban status |
/hban <name> |
Ban a player by HWID + UUID + IP (works for online and offline players) |
/hban <name> <reason> |
Ban with a custom reason |
/hunban <name> |
Remove all bans for a player (HWID, UUID and IP) |
/hbanlist |
List all active HWID bans with name, reason, banner and timestamp |
๐ How It Works
| Step |
What happens |
| 1. Player joins |
Client mod silently reads Mainboard Serial + CPU ID + total RAM |
| 2. Hash |
Values are combined and hashed with SHA-256 โ no raw hardware data ever leaves the client |
| 3. Packet sent |
The hash is sent to the server in a silent custom packet |
| 4. Ban check |
Server checks the hash against bans.json โ if banned, player is disconnected and added to vanilla ban lists |
| 5. Multi-account check |
Server checks if the same HWID hash is already active in the current session โ if so, second account is kicked and operators are alerted |
| 6. File saved |
Player data (name, UUID, HWID, IP, timestamps) is written to config/user-hwids/<uuid>.txt |
๐ฏ Example Use Case
A player gets caught cheating. You run /hban PlayerName Cheating. The mod instantly:
- Kicks them from the server
- Writes their HWID, UUID and IP to
bans.json
- Adds them to vanilla
banned-players.json and banned-ips.json
They create a new account and try to rejoin. The moment their client connects, the HWID hash matches โ they are disconnected before they can even move, and you receive an in-game alert.
๐ฆ Technical Details
|
|
| Minecraft Version |
1.21.1 |
| Mod Loader |
NeoForge 21.1.220+ |
| Java Version |
21 |
| Side |
Client + Server (required on both) |
| Dependencies |
None (OSHI is bundled with NeoForge) |
| Mod ID |
hwidtracker |
| Storage |
config/user-hwids/ |
| HWID Components |
Mainboard Serial ยท CPU Identifier ยท Total RAM |
ยฉ 2area | Discord: 2area | CurseForge: https://www.curseforge.com/members/2area/projects | All rights reserved.