PacketRateLimiter — simple Anti-Dupe & Anti-Lag for your server. It blocks common dupe tricks and reduces lag by limiting spammy inventory packets at the network level, before the server even processes them.
Why servers use it
Actions limited
Default config
limiter.refill_per_sec: 12.0
limiter.burst_capacity: 20.0
costs.click: 1.0
costs.drag_base: 1.0
costs.drag_per_4_slots: 1.0
costs.drop: 1.0
costs.swap: 1.5
messages.enabled: true
messages.deny: &cSlow down—inventory actions limited.
messages.cooldown_ms: 1500
bypass_permission: packetratelimiter.bypass
Commands & perms
/prlreload — reload config (admin permission in plugin.yml)
Bypass: packetratelimiter.bypass
Under the hood
Uses PacketEvents to intercept packets on the Netty I/O thread before they reach the server, eliminating the client-side desync (phantom item moves) that occurs when cancelling Bukkit events after the fact. Per-player token buckets in a concurrent map; cleanup on PlayerQuit; cooldown messages debounced to avoid spam.
PacketRateLimiter • Fair play, zero fuss — built for Anti-Dupe & Anti-Lag.