Jump to content
GIGN Forum

Hpb - High Ping Banner


Recommended Posts

Nu ja jums nepatiik, ka serverii daudzi naak ar lielu pingu, un tad, kad HPK vinju izkiko vinjam nepielec, ka ir augsts pings un vinsjh naak atpakalj, tad izdomaaju, ka vajag vinjus vairaak vest pie praata, taapeec pats aviem speekiem paartaisiiju HPK pluginu taa, ka deelj augsta pinga speeleetaajus uz 5 min izbano!

#include <amxmodx>

new HIGHPING_MAX = 200 // set maximal acceptable ping
new HIGHPING_TIME = 15  // set in seconds frequency of ping checking
new HIGHPING_TESTS = 4  // minimal number of checks before doing anything

new iNumTests[33]

public plugin_init() {
register_plugin("High Ping Banner","1.2.0","DynAstY + tomy91")
if (HIGHPING_TIME < 15) HIGHPING_TIME = 15
if (HIGHPING_TESTS < 4) HIGHPING_TESTS = 4
return PLUGIN_CONTINUE
}

public client_disconnect(id) {
remove_task(id)
return PLUGIN_CONTINUE
}

public client_putinserver(id) {
iNumTests[id] = 0
if (!is_user_bot(id)) {
 new param[1]
 param[0] = id
 set_task(30.0, "showWarn", id, param, 1)
}
return PLUGIN_CONTINUE
}

kickPlayer(id) {
new name[32]
get_user_name(id, name, 31)
new uID = get_user_userid(id)
server_cmd("amx_banip 5 #%d too high ping", uID)
client_cmd(id, "echo ^"[HPB] Sorry but your ping is too high!^"; disconnect")
client_print(0, print_chat, "[HPB] %s has been banned for 5 minutes due to high ping!", name)
return PLUGIN_CONTINUE
} 

public checkPing(param[]) {
new id = param[0]
if ((get_user_flags(id) & ADMIN_IMMUNITY) || (get_user_flags(id) & ADMIN_RESERVATION)) {
 remove_task(id)
 client_print(id, print_chat, "[HPB] Ping checking disabled due to immunity...")
 return PLUGIN_CONTINUE
}
new p, l
get_user_ping(id, p, l)
if (p > HIGHPING_MAX)
 ++iNumTests[id]
else
 if (iNumTests[id] > 0) --iNumTests[id]
if (iNumTests[id] > HIGHPING_TESTS)
 kickPlayer(id)
return PLUGIN_CONTINUE
}

public showWarn(param[]) {
client_print(param[0], print_chat, "[HPB] Players with ping higher than %dms will be banned for 5 minutes!", HIGHPING_MAX)
set_task(float(HIGHPING_TIME), "checkPing", param[0], param, 1, "b")
return PLUGIN_CONTINUE
}

Shis atkal ir domaats prieksh amxbans, bet ja jums nav amxbans, tad vnk samainam sho rindu:

server_cmd("amx_banip 5 #%d too high ping", uID)

pret sho:

server_cmd("amx_banip #%d 5 "too high ping"", uID)

hpb.sma

Edited by x-tomy91-x
Link to comment
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
 Share

×
×
  • Create New...