All versions
1.0.6
Release
Protectcord 1.0.6 - Forge Release8 months ago 13
Compatibility
Minecraft: Java Edition
1.20.1
Platform
Forge
Supported environments
Changes
[v1.0.6] - 2025-10-30
Version: 1.0.6 Release Type: Major Feature Update
Major Features - IP Tracking & Banning System
This release introduces a comprehensive IP tracking and banning system to prevent ban evasion through alternate accounts.
New Features:
- IP History Tracking - All player IP addresses are now logged and tracked automatically
- Automatic IP Banning - When a player is banned (via warnings or manual ban), all their associated IPs are automatically banned
- IP Ban Checking - Banned IPs are blocked from connecting, even with different accounts
- Enhanced Unban System - Unbanning a player now also unbans all their associated IP addresses
- Automatic Hourly Update Checker - Checks for new versions every hour using ScheduledExecutorService
Security Improvements:
- Prevents ban evasion through alt accounts
- Network-wide IP blocking for banned players
- Persistent IP ban storage across server restarts
- Comprehensive IP history tracking for investigations
Technical Details:
- Storage: TOML format in
protectcord-ip-tracking.tomlandprotectcord-ip-bans.toml - Data structure:
players.{uuid}.ipsfor tracking - Data structure:
ips.{ip}for bans - IP addresses in config keys use underscores (e.g.,
192_168_1_1) - Uses NightConfig for TOML storage
- Update checker: ScheduledExecutorService with 1-hour interval
Admin Features:
/protectcord ban <player> <reason>- Now bans player + all their IPs (OP level 2 required)/protectcord unban <player>- Now unbans player + all their IPs (shows count)/protectcord warn <player> <reason>- After 3 warnings, auto-bans with IPs
Compatibility:
- Fully backward compatible with v1.0.5 warning data
- Existing bans automatically work with new IP banning
- No configuration changes required
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:y05wfnBZ:5QjcQI38"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:y05wfnBZ:5QjcQI38"
}

