Ideas para un anticheat de armas..
#1

AntiCheat de Armas
Buenas tardes.. bueno habнa creado un "Anti-Cheat" de armas, con el uso de PVars, pero al parecer no funciona del todo bien, hoy con devilcome lo testeamos y no lo detectaba.

Ejemplo de mi anticheat actual:
Dandole armas a un jugador.
pawn Код:
stock DarArma(playerid, arma, cantidad)
{
    new str[10];
    format(str,sizeof(str),"arma%d",arma);
    SetPVarInt(playerid,str,1);
    format(str,sizeof(str),"armaslot%d",GetWeaponSlot(arma));
    SetPVarInt(playerid,str,cantidad);
    GivePlayerWeapon(playerid,arma,cantidad);
}
Bбsicamente, lo que hace, es detectar el ID del arma que tiene, y si tiene o no su variable correspondiente.

pawn Код:
if(GetPlayerWeapon(playerid) == 1 && GetPVarInt(playerid, "arma1") == 0)
    {
        format(string, sizeof(string), "[DR.NEGRO ESTEBAN]: {FFFFFF}Ha baneado a %s | Hack de armas", PlayerName(playerid));
        SendClientMessageToAll(AMARILLO, string);
        BanRetrasado(playerid);
    }
    if(GetPlayerWeapon(playerid) == 2 && GetPVarInt(playerid, "arma2") == 0)
        // AND SO ON :D
Bueno, creo que tiene algunos defectos, me gustarнa recopilar algun par de ideas para mejorarlo. Gracias
Reply
#2

Yo hice algo mucho mбs simple lol.

Lo hice en OnPlayerUpdate con timers y detecta bastante bien.

Hace su 'pega'.
Reply
#3

Quote:
Originally Posted by Matthias134
Посмотреть сообщение
Yo hice algo mucho mбs simple lol.

Lo hice en OnPlayerUpdate con timers y detecta bastante bien.

Hace su 'pega'.
..............? Y que hiciste en OnPlayerUpdate. Eso es lo que quiero saber, y por cierto, es mejor un timer que se repita, OnPlayerUpdate se llama muchas veces en 1 solo segundo.
Reply
#4

Quote:
Originally Posted by CrossOv3r
Посмотреть сообщение
..............? Y que hiciste en OnPlayerUpdate. Eso es lo que quiero saber, y por cierto, es mejor un timer que se repita, OnPlayerUpdate se llama muchas veces en 1 solo segundo.
Onplayerupdate se llama cada 200 ms creo.
Usa GetPlayerWeaponData

Porque vos estбs chequeando el arma armada, si yo tengo un arma armada por ejemplo la tec9 y la tec9 estб en la variable arma3 y vos la estбs chequeando en arma1.
Reply
#5

Quote:
Originally Posted by GROVE22
Посмотреть сообщение
Onplayerupdate se llama cada 200 ms creo.
Usa GetPlayerWeaponData

Porque vos estбs chequeando el arma armada, si yo tengo un arma armada por ejemplo la tec9 y la tec9 estб en la variable arma3 y vos la estбs chequeando en arma1.
No, jijiji, Ahi puse un comentario

pawn Код:
//AND SO ON
Es decir, tengo un chekeo para cada tipo de arma. їO puede errarse igual?. En todo caso, Tu dices "la tec9 estб en la variable arma3", no puede ser, puesto que el stock de DarArma, te da la variable correspondiente a cada ID del arma
Reply
#6

Quote:
Originally Posted by CrossOv3r
Посмотреть сообщение
No, jijiji, Ahi puse un comentario

pawn Код:
//AND SO ON
Es decir, tengo un chekeo para cada tipo de arma. їO puede errarse igual?. En todo caso, Tu dices "la tec9 estб en la variable arma3", no puede ser, puesto que el stock de DarArma, te da la variable correspondiente a cada ID del arma
Tienes razуn, haces eso con las 40 armas? LOL

tienes que usar lo que te dije, para saber en que lugar tiene el arma y chequear solo con 5 variables (un array con 5 lugares y un bucle).
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)