[Ajuda] Sistema Anti DDos
#1

Bom, estou com um sistema de anti-ddos mas ta acontecendo o seguinte, toda vez que alguem ataca o servidor em vez de banir apenas o criador dos bots ta banindo todo mundo

Segue abaixo o codigo
pawn Код:
#include a_samp

#if !defined varGet
#define varGet(%0)      getproperty(0,%0)
#endif


#if !defined varSet
#define varSet(%0,%1) setproperty(0, %0, %1)
#endif

stock botGetIP[24];

#define IsPlayerBot(%0)\
            GetPlayerPing(%0) == 65535 && (gettime() - varGet((GetPlayerIp(%0, botGetIP, sizeof botGetIP), botGetIP)) > 5)


public OnPlayerConnect(playerid)
{
    if(IsPlayerNPC(playerid)) return false;

    static
        playerip[24]
    ;

    GetPlayerIp(playerid, playerip, 24);

    if(gettime() - varGet(playerip) < 2) {


        strcat(playerip, "di_S");

        if(gettime() - varGet(playerip) < 3) {
            return false;
        }

        printf("%d Entrou em menos de 2 segundos", playerid);

        GetPlayerIp(playerid, playerip, 20);

        varSet(playerip, gettime());

        strcat(playerip, "x");

        static timers ;
        timers = varGet(playerip);

        varSet(playerip, 1+ timers);

        if(timers > 2) {

            playerip[strlen(playerip) - 2] = 0;

            printf("BOT: ID -> %d IP -> %s", playerid, playerip);
            BanEx(playerid, "Bot Connect");
        }
    }
    return varSet(playerip, gettime());
}


public OnPlayerDisconnect(playerid, reason) {
    if(reason == 2) {

        static
            playerip[20]
        ;


        GetPlayerIp(playerid, playerip, 20);
        strcat(playerip, "di_S");

        varSet(playerip, gettime());
    }
    return false;

}
Se puderem me ajudar agradeceria muito
Reply
#2

que codico esquisito O.o

tenta essa manolo
http://www.4shared.com/rar/D4q5nVpE/Bot.html
Reply
#3

Vou ver aqui, vlw cara
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)