Kicks players whose rolling average ping stays over the limit, with a connect grace period and flag immunity.
| csb_high_ping_kicker.sma main | c0a8f47 | 6.0 KB |
CSB High Ping Kicker samples get_user_ping() every few seconds, keeps the last five samples per player in a ring buffer and compares the average against csb_ping_max. A player only gets kicked after csb_ping_strikes consecutive bad averages — a single lag spike, a map download or a garbage-collect stutter will never kick anyone, which is the failure mode of most naive ping kickers.
Inspired by High Ping Kicker by Nomexous. Independent GPL re-implementation.
Features
- Rolling 5-sample average instead of a single reading.
- Consecutive-strike requirement before any action is taken.
- Warns the player in chat before each strike, so they know why they are about to be dropped.
- Connect grace period (
csb_ping_grace, default 60s) — a client still loading always reports a garbage ping. csb_ping_minplayersso the limit is only enforced when the server is actually busy.- Flag immunity (
csb_ping_immunity, defaulta). say /pingfor players,amx_pinglistfor admins (current ping, average, loss and strikes per player).
Installation
- Compile and copy
csb_high_ping_kicker.amxxintoaddons/amxmodx/plugins/. - Add it to
plugins.ini. - Set
csb_ping_maxinamxx.cfgand change the map.
Notes
Use no modules and no forwards — the whole plugin is a set_task loop, so its cost is a handful of native calls every csb_ping_interval seconds regardless of player count. Set csb_ping_max generously (150–200) unless your player base is entirely local; on a public server a hard 100ms limit will empty your slots.
1. Put csb_high_ping_kicker.amxx in addons/amxmodx/plugins/ 2. Add it to plugins.ini 3. Set csb_ping_max in amxx.cfg 4. Change map No extra modules needed. csb_ping_interval is read once at map start.
| CVAR | Default | Description |
|---|---|---|
csb_ping_enabled |
1 |
Enable or disable ping enforcement. |
csb_ping_max |
150 |
Maximum allowed average ping. |
csb_ping_interval |
5.0 |
Seconds between ping samples (read once, at map start). |
csb_ping_strikes |
3 |
Consecutive bad averages before the player is kicked. |
csb_ping_grace |
60 |
Seconds after connecting during which the ping is ignored. |
csb_ping_immunity |
a |
Access flag that is never kicked. |
csb_ping_minplayers |
0 |
Only enforce the limit above this player count. |
| Command | Access | Description |
|---|---|---|
say /ping |
|
Shows your current ping, your average and the server limit. |
amx_pinglist |
c (ADMIN_KICK) |
Console table of every player's ping, average, loss and strikes. |
1.0.0 - Initial release.Versions →
No ratings yet.
| AMX Mod X | ≥ 1.9 |
| Engine | ReHLDS HLDS |
| ReGameDLL | Not required |
| ReAPI | Not required |
| Metamod | Metamod / Metamod-r |
| Known conflicts | Any other ping-limiting plugin. |









