File Details
protectcord-forge-1.1.5.jar
- R
- Dec 28, 2025
- 82.45 KB
- 7
- 1.20.1
- Forge
File Name
protectcord-forge-1.1.5-all.jar
Supported Versions
- 1.20.1
Curse Maven Snippet
🚀 ProtectCord v1.1.5 Released
Release Type: Feature Release
Version: 1.1.5
This update introduces a powerful new Account Per IP Limit system alongside a major performance upgrade to the /checkip API, delivering dramatically faster player connection checks and improved abuse prevention.
🧩 Technical Breakdown
First request
- Not cached
- IP history is built
Second request
- Cached via Cloudflare D1 + KV
Cache duration
- Cached for 1 hour
- Automatically refreshed on reuse after expiry
| Request | Expected Response Time |
|---|---|
| 1st | 1,000ms – 2,000ms |
| 2nd+ | 5ms – 50ms |
All other ProtectCord endpoints are already cached via Cloudflare KV and respond almost instantly.
🆕 New Feature: Account Per IP Limit
ProtectCord can now limit the number of Minecraft accounts that may connect from the same IP address at the same time. This helps prevent account stacking, shared-IP abuse, and connection flooding.
🔧 Configuration
account-per-ip-limit:
enabled: false
max-accounts: 3
enforcement: "BLOCK" # "BLOCK" or "KICK_OLDEST"
⚙️ Options
enabled– Enable or disable the feature (default:false)max-accounts– Maximum allowed accounts per IP (default:3)enforcement- BLOCK – Deny new connections when the limit is reached
- KICK_OLDEST – Kick the oldest session to allow a new connection
✨ Feature Highlights
- Thread-safe session tracking using
ConcurrentHashMap - Automatic cleanup when players disconnect
- Whitelisted players bypass the limit
- Local/private IP addresses bypass checks
- Custom kick messages with placeholders (
{max},{current}) - Real-time logging of session additions and removals
- No behavior changes when disabled (default)
💬 Custom Messages
messages:
account-limit-reached: |
&c&lConnection Limit Reached
&7Maximum accounts per IP: &c{max}
&7Current connections from your IP: &c{current}
&7Please disconnect another account before connecting.
account-limit-kicked: |
&c&lYou have been disconnected
&7A new account connected from your IP address.
&7Maximum accounts per IP: &c{max}
🧠 Technical Details
➕ New Classes
SessionInfo– Stores session data (player name, UUID, connection time)SessionManager– Thread-safe IP session trackingPlayerDisconnectListener– Cleans up sessions on disconnect
✏️ Modified Classes
ProtectCordPlugin– Initializes session tracking and listenersConfigManager– Added 5 new configuration gettersPlayerConnectionListener– Account-limit check runs before API validationconfig.yml– New configuration section and messages
🔄 Logic Flow
Player connects →
PreLoginEventFeature enabled & player not whitelisted
SessionManager.canConnect()validates IP usageIf limit exceeded:
- BLOCK → Connection denied
- KICK_OLDEST → Oldest session disconnected
Session added on successful join
Session removed on disconnect
📊 Performance Impact
- ~130 bytes per session
- O(1) lookups
- Thread-safe synchronization
- Automatic cleanup prevents memory leaks
⚡ Massive /checkip API Performance Upgrade
We’ve pushed a major API update that drastically reduces latency for the /checkip endpoint used by ProtectCord across game servers, websites, and platforms.
🌍 Cloudflare-Powered Caching
- 1st request per IP: ~1,000ms – 2,000ms
- Subsequent requests: 5ms – 50ms
- Up to 200× faster after the first check
Once a player’s IP has been screened, ProtectCord can return safety data almost instantly on future connections — a massive improvement for login systems and VPN/proxy detection.
🔐 Why This Matters
- Faster player logins
- Near-instant VPN & proxy detection after first check
- Reduced server-side login delays
- Stable performance during peak traffic
✅ Compatibility
- Fully backward compatible with v1.1.0
- Feature disabled by default
- No breaking changes
💙 Thank you for using ProtectCord This release delivers stronger protection and significantly faster performance across the board.

