SA-MP Forums Archive
[AJUDA]Anti-Cheater - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Português/Portuguese (https://sampforum.blast.hk/forumdisplay.php?fid=34)
+---- Thread: [AJUDA]Anti-Cheater (/showthread.php?tid=260379)



[AJUDA]Anti-Cheater - FreeGellsTSSA - 08.06.2011

bom, estou criando um anti-cheater para meu servidor e tenho 3 duvidas:
1 - Como mandar uma mensagem para o administrador de como o player foi banido; ex: jetpack, vida, etc.
2 - Como Banir Por Exemplo, JetPack;
3 - Banir por vida..

Aqui vai um exemplo, sу sei fazer com armas

pawn Код:
if(GetPlayerWeapon(playerid) == 38)
    {
        if(!IsPlayerAdmin(playerid))
        {
            SendClientMessage(playerid, AMARELO, "~~~~~~~~~~~~~~~~~~~~~~~~ BANIDO ~~~~~~~~~~~~~~~~~~~~~~~~");
            SendClientMessage(playerid, BRANCO, "{30DDE7}•{FFFFFF} Vocк Foi Banido Por Estar Usando Uma Minigum!");
            SendClientMessage(playerid, BRANCO, "{30DDE7}•{FFFFFF} Tire Um Print Screen (F8) Se Acha que Foi Banido Injustamente!");
            SendClientMessage(playerid, BRANCO, "{30DDE7}•{FFFFFF} E Poste em Nossa Comunidade!");
            SendClientMessage(playerid, BRANCO, "{30DDE7}•{FFFFFF} http://www.orkut.com.br/Main#Community?cmm=-----------!");
            SendClientMessage(playerid, AMARELO, "~~~~~~~~~~~~~~~~~~~~~~~~ BANIDO ~~~~~~~~~~~~~~~~~~~~~~~~");
            Ban(playerid);
            return 1;
    }
}



Re: [AJUDA]Anti-Cheater - TheGarfield - 08.06.2011

1: Mandar mensagens ao admins: http://forum.sa-mp.com/showpost.php?...9&postcount=10


pawn Код:
if(GetPlayerSpecialAction(playerid) == SPECIAL_ACTION_USEJETPACK)
{
       SendClientMessage(playerid, -1,"[INFO]: Vocк foi banido saaabiiiiaaa ?????, Motivo: Uso de Jetpack!");
       BanEx(playerid,"JetPack");
       return 0;
}

pawn Код:
// toopo:
new Float:Vidap[MAX_PLAYERS][2];
public OnPlayerUpdate(playerid)
{
      if(Vidap[playerid][0] == 0) return GetPlayerHealth(playerid, Vidap[playerid][1]),1;
      if(Vidap[playerid][0] > Vidap[playerid][1])
      {
             SendClientMessage(playerid, -1,"Banido por vida");
             Ban(playerid);
      }
      return 1;
}

/\ tudo isto, by: iGarfield


Re: [AJUDA]Anti-Cheater - [S]trong - 08.06.2011

GetPlayerSpecialAction, ex:
pawn Код:
if(GetPlayerSpecialAction(playerid) == SPECIAL_ACTION_USEJETPACK)
{
    Ban(playerid);
}
no caso da vida

pawn Код:
new Float:Health;
GetPlayerHealth(playerid,Health);
if(Health > 100) {
    Ban(playerid);
}



Re: [AJUDA]Anti-Cheater - FreeGellsTSSA - 08.06.2011

Valeu


Re: [AJUDA]Anti-Cheater - Shadoww5 - 08.06.2011

PHP код:
#define LIFE 150 
//TROQUE O DEFINE PELO MAXIMO DE VIDA PERMITIDO
forward Check(playerid);
public 
OnGameModeInit()
{
    
SetTimer("Check"1000true);
    return 
1;
}
public 
Check(playerid)
{
    for( new 
0MAX_PLAYERS++)
    {
        if(
GetPlayerSpecialAction(i) == 2)
        {
            
SendClientMessage(i, -1"Vocк foi banido por usar Jet Pack.");
            
SetPVarInt(i"JetPack"1);
            
Ban(i);
        }
        new 
Float:Vida;
        
GetPlayerHealth(iVida);
        if(
Vida LIFE && !IsPlayerAdmin(i))
        {
            
SendClientMessage(i, -1"Vocк foi banido por estar com Health Hack.");
            
SetPVarInt(i"Vida"1);
            
Ban(i);
            return 
1;
        }
    }
    return 
1;
}
public 
OnPlayerDisconnect(playeridreason)
{
    new 
str[128], n[24];
    
GetPlayerName(playerid,n,MAX_PLAYER_NAME);
    if(
GetPVarInt(playerid"Vida") == 1) return format(string,sizeof string,"%s foi banido do servidor por uso de Health Hack.",n);
    if(
GetPVarInt(playerid"JetPack") == 1)  return format(string,sizeof string,"%s foi banido do servidor por uso de Jet Pack.",n); }
    for( new 
0MAX_PLAYERS++)
    {
        if(
IsPlayerAdmin(i))
        {
            
SendClientMessage(x, -1str);
            return 
1;
        }
    }
    return 
1;




Re: [AJUDA]Anti-Cheater - FreeGellsTSSA - 08.06.2011

Shadoww nгo entendi muito bem, tem como mandar sу a parte de mandar a mensagem ao administrador?, para mim colocar aonde jб estб o anti-cheater..


Re: [AJUDA]Anti-Cheater - Shadoww5 - 08.06.2011

Olha sу, basta sу vocк fazer isto:



Re: [AJUDA]Anti-Cheater - FreeGellsTSSA - 08.06.2011

Shadoww eu gostaria apenas de adaptar o meu que ja ta pronto para por exemplo :
pawn Код:
if(GetPlayerWeapon(playerid) == 42)
    {
        if(!IsPlayerAdmin(playerid))
        {
            SendClientMessage(playerid, AMARELO, "~~~~~~~~~~~~~~~~~~~~~~~~ BANIDO ~~~~~~~~~~~~~~~~~~~~~~~~");
            SendClientMessage(playerid, BRANCO, "{30DDE7}•{FFFFFF} Vocк Foi Banido Por Estar Usando Um Extintor!");
            SendClientMessage(playerid, BRANCO, "{30DDE7}•{FFFFFF} Tire Um Print Screen (F8) Se Acha que Foi Banido Injustamente!");
            SendClientMessage(playerid, BRANCO, "{30DDE7}•{FFFFFF} E Poste em Nossa Comunidade!");
            SendClientMessage(playerid, BRANCO, "{30DDE7}•{FFFFFF} http://www.orkut.com.br/Main#Community?cmm=lalalalalala!");
            SendClientMessage(playerid, AMARELO, "~~~~~~~~~~~~~~~~~~~~~~~~ BANIDO ~~~~~~~~~~~~~~~~~~~~~~~~");
            Ban(playerid);
            return 1;
        }
    }
e assim em cada dessas, mandar a mensagem para o administrador.


Re: [AJUDA]Anti-Cheater - Shadoww5 - 08.06.2011

Para o caso do jet pack e da vida, use as que eu falei.

Caso nгo queira, adapte ao seu GM, pois isto eu nгo irei fazer.

Quanto ao ANTI Weapon-Hack:

PHP код:
if(GetPlayerWeapon(playerid) == 42)
{
    if(!
IsPlayerAdmin(playerid))
    {
        
SendClientMessage(playeridAMARELO"~~~~~~~~~~~~~~~~~~~~~~~~ BANIDO ~~~~~~~~~~~~~~~~~~~~~~~~");
        
SendClientMessage(playeridBRANCO"{30DDE7}•{FFFFFF} Vocк Foi Banido Por Estar Usando Um Extintor!");
        
SendClientMessage(playeridBRANCO"{30DDE7}•{FFFFFF} Tire Um Print Screen (F8) Se Acha que Foi Banido Injustamente!");
        
SendClientMessage(playeridBRANCO"{30DDE7}•{FFFFFF} E Poste em Nossa Comunidade!");
        
SendClientMessage(playeridBRANCO"{30DDE7}•{FFFFFF} http://www.orkut.com.br/Main#Community?cmm=lalalalalala!");
        
SendClientMessage(playeridAMARELO"~~~~~~~~~~~~~~~~~~~~~~~~ BANIDO ~~~~~~~~~~~~~~~~~~~~~~~~");
        
SetPVarInt(playerid"WH"1);
        
Ban(playerid);
        return 
1;
    }
    return 
1;
}
public 
OnPlayerDisconnect(playeridreason)
{
    new 
str[128], n[24];
    
GetPlayerName(playerid,n,MAX_PLAYER_NAME);
    if(
GetPVarInt(playerid"WH") == 1) return format(string,sizeof string,"%s foi banido do servidor por uso de Weapon Hack.",n);
    for( new 
0MAX_PLAYERS++)
    {
        if(
IsPlayerAdmin(i))
        {
            
SendClientMessage(i, -1str);
            return 
1;
        }
    }
    return 
1;




Re: [AJUDA]Anti-Cheater - FreeGellsTSSA - 08.06.2011

Era isto mesmo que eu queria saber, mas tenho um pequeno problema!

Quote:

C:\Users\Renan\Desktop\pawno\gamemodes\CGU123.pwn( 155) : error 017: undefined symbol "x"
Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase


1 Error.

linha:
pawn Код:
SendClientMessage(x, -1, str);