Jump to content
GIGN Forum

Paliidziiet Saistiibaa Ar Hpk


Recommended Posts

Sveicieni! Man ir suudziibas par savu high ping kicker (hpk) pluginu, kursh itkaa stradaa... tachu nepilniigi un nekvalitatiivi ..

Mans tagadeejais HPK.sma:

/* AMX Mod script
* 
* (c) 2002-2003, DynAstY
* This file is provided as is (no warranties).
*
* Players with immunity won't be checked
*/

#include <amxmodx>

new HIGHPING_MAX = 125 // set maximal acceptable ping
new HIGHPING_TIME = 7  // set in seconds frequency of ping checking
new HIGHPING_TESTS = 8  // minimal number of checks before doing anything

new iNumTests[33]

public plugin_init() {
    register_plugin("High Ping Kicker","1.2.0","DynAstY")
    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("banid 1 #%d", uID)
    client_cmd(id, "echo ^"[BIN] atvaino, bet tev ir paraak liels PING! Megini veelak^"; disconnect")
    client_print(0, print_chat, "[BIN] speletajs %s tika izmests, jo vinam bija parak liels pings ", 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, "[BIN] pinga parbauda beigta, lai daritu imunitati. Veiksmiigu speleshanu! :)")
        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, "[BIN] Speletaji, kam pings buus augstaks par %dms - TIKS IZMESTI!!", HIGHPING_MAX)
    set_task(float(HIGHPING_TIME), "checkPing", param[0], param, 1, "b")
    return PLUGIN_CONTINUE
}

meegjinashu paskaidrot kas mani neapmierina... shis hpk paarbauda speleetaaja pingu tad kad vinjsh ienaak serverii un ja peec paarbaudes viss ir ok.. tad dod immunitaati.. bet veelos lai vinjsh nekaadu immunitaati nedod.. ja piemeram peec 10 minuuutem tam pasham speleetaajam,kam pings itkaa peec ieieshanas serverii bija normaals, paliek liels pings un taads turaas apmeeram 3 sekundes - tiek izkikots.

Luudzu pasakiet kur taadu hpk atrast... amxmodx.org forumaa neko tamlidziigu neatradu vai arii esmu dranjkjiigs mekleetaajs :/

Edited by ljaron
Link to comment
Share on other sites

m so pluginu atceros no kadiem pasa vecajiem serveriem - domaju, ka lieta atrisinama butu, ja novilktu citu, jo vini kaut vai vismaz nedaudz ir dazadi!

P.S. cik atceros, tad imunitate pret pingu bij tikai adminiem? or? :unsure:

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...