Server Crash..
#1

Before some time my server get crashed ... and give's this :

pawn Код:
[09:55:03] [kill] Isaac_Jaramillo killed Jonson_Stetam Golf Club
[09:55:03] [kill] Alex_Capirossi killed Jonson_Stetam Golf Club
[09:55:03] [kill] Emma_Carter killed Jonson_Stetam Golf Club
[09:55:03] [kill] Fecundo_Ramirez killed Jonson_Stetam Golf Club
[09:55:03] [kill] Adrian_Wayne killed Jonson_Stetam Nite Stick
[09:55:03] [kill] Steven_Seagal killed Jonson_Stetam Nite Stick
[09:55:03] [kill] Edward_Howard killed Jonson_Stetam Nite Stick
[09:55:03] [kill] Javier_Malasquez killed Jonson_Stetam Nite Stick
[09:55:03] [kill] Isaac_Jaramillo killed Jonson_Stetam Nite Stick
[09:55:03] [kill] Alex_Capirossi killed Jonson_Stetam Nite Stick
[09:55:03] [kill] Emma_Carter killed Jonson_Stetam Nite Stick
[09:55:03] [kill] Fecundo_Ramirez killed Jonson_Stetam Nite Stick
[09:55:03] [kill] Adrian_Wayne killed Jonson_Stetam Knife
[09:55:03] [kill] Steven_Seagal killed Jonson_Stetam Knife
[09:55:03] [kill] Edward_Howard killed Jonson_Stetam Knife
[09:55:03] [kill] Javier_Malasquez killed Jonson_Stetam Knife
[09:55:03] [kill] Isaac_Jaramillo killed Jonson_Stetam Knife
can not login..
Reply
#2

Must be server Lag. Try restarting ur server
Reply
#3

That's fake killing, there is anti-cheat fix for that. Aka, makes you lag.
Reply
#4

Use anti-fake kill.


Код HTML:
new antifakekill[MAX_PLAYERS];
public OnPlayerDeath(playerid, killerid, reason)
{
    antifakekill[playerid] ++;
    SetTimerEx("antifakekill2", 1000,false,"i",playerid);
return 1;
}
forward antifakekill2(playerid);
public antifakekill2(playerid)
{
    antifakekill[playerid] --;
    if(antifakekill[playerid] > 3)
    {
    new string[64], pName[MAX_PLAYER_NAME];
    GetPlayerName(playerid,pName,MAX_PLAYER_NAME);
    format(string,sizeof string,"* %s was banned reason (Fake kill)",pName);
    SendClientMessageToAll(0xFF0000FF,string);
    BanEx(playerid, "Fake kill");
    }
    return 1;
}
or


http://pastebin.com/td1K0Yws
Reply
#5

Use GetTickCount. Timers aren't fit for this kind of purpose, especially in deathmatch servers where there are lots of kills each second.
Reply
#6

You can use Lorenc_ Anti-Fake kill without a timer.

Код HTML:
public OnPlayerDeath( playerid, killerid, reason )
{
    if( IsPlayerConnected( killerid ) )
    {
        if( IsPlayerConnected( GetPVarInt( playerid, "LastKilled" ) ) && GetPVarInt( playerid, "LastKilled" ) == killerid )
        {
            if( ( GetPVarInt( playerid, "LastKilledTickcount" ) - GetTickCount( ) ) < 500 )
            {
                SetPVarInt( playerid, "LastKilledTick", GetPVarInt( playerid, "LastKilledTick" ) + 1 );
                if( GetPVarInt( playerid, "LastKilledTick" ) > 1 ) Kick( playerid );
            }
            SetPVarInt( playerid, "LastKilledTickcount", GetTickCount( ) );
        }
        SetPVarInt( playerid, "LastKilled", killerid );
    }
    return 1;
}
Thread:
http://forum.sa-mp.com/showpost.php?...&postcount=646
Reply
#7

so , it's usefull Lorenc_Anti-Fake kill ? to resolve the problem ?
Reply
#8

It's usefull this for anti fake-kill?
pawn Код:
public OnPlayerDeath(playerid, killerid, reason) {
        if(killerid == INVALID_PLAYER_ID) return 1;
        if(GetPVarInt(playerid, "Kill") > gettime()) return BanEx(playerid, "Fake Kill");
        if(playerid == killerid) return BanEx(playerid, "Fake Kill");
        if(!IsPlayerStreamedIn(killerid, playerid)) return Kick(playerid);
        if(GetPlayerTeam(playerid) != NO_TEAM)
        if(GetPlayerTeam(playerid) == GetPlayerTeam(killerid))
            return BanEx(playerid, "Fake Kill");
        switch(reason) {
                case 0..46: if(GetPlayerWeapon(killerid) != reason) return Kick(playerid);
        }
        SetPVarInt(playerid, "Kill", gettime() + 2);
        return 1;
}
Reply
#9

UP!!
Reply
#10

It's this OK for anti fake-kill?
Reply


Forum Jump:


Users browsing this thread: 6 Guest(s)