[Ajuda] sistema de anti cheat
#1

bom, esse sistema й do Ips

eu dei umas 'modificadas' com um amigo, coloquei ele na gm (era um fs)

bom, mas oque acontece й que, ele sу acusa o aimbot se o aim for admin 5 ou maior.
e a mensagem aparece pro kra que й aimbot.

eu quero colocar que sу avise pros admin que estao trabalhando.

Code:
switch(weaponid){ case 0..18, 39..54: return 1;}//invalid weapons

		        if(hittype == BULLET_HIT_TYPE_PLAYER && IsPlayerConnected(hitid) && !IsPlayerNPC(hitid))
		        {
		                new Float:Shot[3], Float:Hit[3];
		                GetPlayerLastShotVectors(playerid, Shot[0], Shot[1], Shot[2], Hit[0], Hit[1], Hit[2]);

		                new playersurf = GetPlayerSurfingVehicleID(playerid);
		                new hitsurf = GetPlayerSurfingVehicleID(hitid);
		                new Float:targetpackets = NetStats_PacketLossPercent(hitid);
		                new Float:playerpackets = NetStats_PacketLossPercent(playerid);

		                if(~(playersurf) && ~(hitsurf) && !IsPlayerInAnyVehicle(playerid) && !IsPlayerInAnyVehicle(hitid))
		                {
		                        if(!IsPlayerAimingAtPlayer(playerid, hitid) && !IsPlayerInRangeOfPoint(hitid, 5.0, Hit[0], Hit[1], Hit[2]))
		                        {
		                                new string[128], issuer[24];
		                                GetPlayerName(playerid, issuer, 24);
		                                AimbotWarnings[playerid] ++;

		                                format(string, sizeof(string), "{FF00FF}[Anti-Cheat] %s ID:%d Pode estar de AimBot - [Target PL: %f | Shooter PL:%f]!", issuer, targetpackets, playerpackets);

		                                for(new p; p < MAX_PLAYERS;p++)
		                                    if (PlayerInfo[playerid][pAdmin] >= 5 || admtrampando[playerid] == 1)
		                                         SendClientMessage(p, -1, string);

		                                if(AimbotWarnings[playerid] > 10)
		                                {
		                                        if(targetpackets < 1.2 && playerpackets < 1.2) return Kick(playerid);
		                                        else
		                                        {
		                                                format(string, sizeof(string), "{FF00FF}[Anti-Cheat] %s ID:%d Probablidade de 100 por cento de AimBot - [Target PL: %f | Shooter PL:%f]!", issuer, targetpackets, playerpackets);
		                                                for(new p; p < MAX_PLAYERS;p++)
															if (PlayerInfo[playerid][pAdmin] >= 5 || admtrampando[playerid] == 1)
																SendClientMessage(p, -1, string);
		                                        }
		                                }
		                                return 0;
		                        }
		                        else return 1;
		                }
		                else return 1;
		        }
Code:
admtrampando[playerid] == 1 (й o admin trabalhando
Reply
#2

PHP Code:
switch(weaponid){ case 0..1839..54: return 1;}//invalid weapons

                
if(hittype == BULLET_HIT_TYPE_PLAYER && IsPlayerConnected(hitid) && !IsPlayerNPC(hitid))
                {
                        new 
Float:Shot[3], Float:Hit[3];
                        
GetPlayerLastShotVectors(playeridShot[0], Shot[1], Shot[2], Hit[0], Hit[1], Hit[2]);

                        new 
playersurf GetPlayerSurfingVehicleID(playerid);
                        new 
hitsurf GetPlayerSurfingVehicleID(hitid);
                        new 
Float:targetpackets NetStats_PacketLossPercent(hitid);
                        new 
Float:playerpackets NetStats_PacketLossPercent(playerid);

                        if(~(
playersurf) && ~(hitsurf) && !IsPlayerInAnyVehicle(playerid) && !IsPlayerInAnyVehicle(hitid))
                        {
                                if(!
IsPlayerAimingAtPlayer(playeridhitid) && !IsPlayerInRangeOfPoint(hitid5.0Hit[0], Hit[1], Hit[2]))
                                {
                                        new 
string[128], issuer[24];
                                        
GetPlayerName(playeridissuer24);
                                        
AimbotWarnings[playerid] ++;

                                        
format(stringsizeof(string), "{FF00FF}[Anti-Cheat] %s ID:%d Pode estar de AimBot - [Target PL: %f | Shooter PL:%f]!"issuertargetpacketsplayerpackets);

                                        for(new 
pMAX_PLAYERS;p++)
                                            if (
PlayerInfo[p][pAdmin] >= || admtrampando[p] == 1)
                                                 
SendClientMessage(p, -1string);

                                        if(
AimbotWarnings[playerid] > 10)
                                        {
                                                if(
targetpackets 1.2 && playerpackets 1.2) return Kick(playerid);
                                                else
                                                {
                                                        
format(stringsizeof(string), "{FF00FF}[Anti-Cheat] %s ID:%d Probablidade de 100 por cento de AimBot - [Target PL: %f | Shooter PL:%f]!"issuertargetpacketsplayerpackets);
                                                        for(new 
pMAX_PLAYERS;p++)
                                                            if (
PlayerInfo[p][pAdmin] >= || admtrampando[p] == 1)
                                                                
SendClientMessage(p, -1string);
                                                }
                                        }
                                        return 
0;
                                }
                                else return 
1;
                        }
                        else return 
1;
                } 
Reply
#3

fiz isso PT, mas ele sу acusa o aimbot, se ele for admin 5 ou maior.
gostaria de que ele acusasse qualquer player e enviasse a mensagem para o admin.



#edit - agora esta resolvido.
obrigado PT
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)