
Deep Alts
The ultimate alternate account checking solution.
- Загрузки
- 331
- Подписчики
- 5
- Обновлён
- 2 августа 2025 г.
- Лицензия
- MIT
Опубликован 18 июня 2025 г.
DeepAlts
A Paper plugin for detecting alternate accounts based on IP history, with both shallow and deep scanning modes.
What It Does
DeepAlts helps server staff find potential alternate accounts (alts) by checking which players have logged in from the same IP address, even indirectly through a shared chain of connections.
/alts <player|UUID> [uuid]: Lists accounts that have used the same last known IP as the target./deepalts <player|UUID> [uuid]: Finds all players connected through any shared IPs across login history using a BFS search./deepaltsconfig <subcommand>: Manage plugin state, cache, and graph configuration.
Add
uuidas the second argument to force UUID output instead of usernames.
Features
- Async lookups — won't lag your server
- Caches proxy/host detection results for faster rebuilds
- Excludes proxy and hosting IPs from connection logic
- Supports both player names and UUIDs
- Optional UUID-only output for logging
- Tab completion for player names and admin commands
- Gracefully handles players who have never joined
- Permission-based usage (
deepalts.lookup,deepalts.admin)
🔧 Commands
| Command | Description |
|---|---|
/alts <player or uuid> [uuid] |
Shows players with the same last IP |
/deepalts <player or uuid> [uuid] |
Finds players with any shared IP connections |
/deepaltsconfig status |
View plugin and cache status |
/deepaltsconfig rebuild |
Rebuild graph (checks uncached IPs for proxy/hosting) |
/deepaltsconfig save |
Save all data manually |
/deepaltsconfig reload |
Reload IP data, graph, and proxy cache from disk |
/deepaltsconfig info |
Detailed plugin statistics |
Permissions
| Node | Description |
|---|---|
deepalts.* |
Grants all DeepAlts permissions |
deepalts.lookup |
Allows use of /alts and /deepalts |
deepalts.admin |
Allows use of all /deepaltsconfig admin commands |
By default:
deepalts.lookupanddeepalts.adminare granted to server operators (op).
Requirements
- PaperMC 1.20+
- Java 17+
Installation
- Download the
.jarfrom Modrinth or GitHub. - Drop it into your
plugins/folder. - Restart or reload your server.
Ченджлог
1.3Релиз1.21.6, 1.21.7, 1.21.8 · 2 августа 2025 г.
Added
- IP hashing using SHA-256 - all IPs now stored as hashes instead of plain text
- Automatic migration from plain IP data to hashed format
- Privacy-focused logging showing only hash prefixes
Changed
- Data storage format:
ips→hashed_ips,latest→latest_hashed ProxyCache.isProxy()→ProxyCache.checkProxy()returningProxyResult- Admin command messages updated for hashed IP terminology
Removed
/deepaltsconfig clearcachecommandProxyCache.clearCache()andremoveCachedIp()methods
Security
- Original IPs only used for proxy API calls then immediately discarded
- All stored data now uses irreversible SHA-256 hashes
- Protection against IP exposure in data breaches
Migration
- Automatic conversion of existing IP data on first load
- Both main data file and proxy cache migrated
- No manual intervention required
1.2.2Релиз1.21.4, 1.21.5, 1.21.6 · 30 июня 2025 г.
- Added online/offline player colors
1.2.1Релиз1.21.4, 1.21.5, 1.21.6 · 30 июня 2025 г.
- Fixed bug with backwards compatibility
1.2Релиз1.21.4, 1.21.5, 1.21.6 · 29 июня 2025 г.
New Features
- Added compatibility for all Minecraft versions 1.20+
- Refactored package names to fit with java conventions
1.1Релиз1.21.3 · 28 июня 2025 г.
New Features
/deepaltsconfigAdmin CommandAdded full support for
/deepaltsconfigwith the following subcommands:/deepaltsconfig status– View plugin state and cache size/deepaltsconfig rebuild– Rebuild the alt graph from IPs (excluding proxy IPs)/deepaltsconfig clearcache– Clear the proxy detection cache/deepaltsconfig save– Force save all plugin data/deepaltsconfig reload– Reload data from disk/deepaltsconfig info– Show detailed statistics and graph metrics
Proxy Detection & Filtering
Integrated IP-API to detect proxy and hosting IPs:
- IPs marked as proxy or hosting are excluded from graph connections
- Responses are cached for performance and to reduce API calls
- API rate limits (
X-Rl,X-Ttl) are respected to avoid bans
Structural Refactoring
Graph logic extracted into its own class (
DeepAltsGraph)- Improves maintainability and future extensibility
- Easier to add new connection logic (e.g. shared usernames, hardware IDs, etc.)
1.0Релиз1.21.3 · 18 июня 2025 г.
First feature complete release
Комментарии
Загружаем…