Jump to content
  • 0

pomoc AntiCheat


Malklar

Dotaz

Ahoj

Mám AntiCheat, když někdo použije cheat na peníze tak se peníze vrátí na původní hodnotu kterou měl.

Problém 

Když se přihlásím už mám peníze na 0 a měl jsem 5000

 

Potřebuji poradit, kde mám hledat chybu aby ta hodnota byla stabilní a neresetovalo se to na 0

Link to comment
Share on other sites

12 odpovědí na tuto otázku

Recommended Posts

  • 0

Nevím jak to udělat aby se nenulovali peníze. Když mám AntiCheat vynulují se peníze a když AntiCheat nemám tak se peníze nenulují.

 

Hledal jsem někde rady , ale moc to nechápu.

 

GivePlayerMoney jsem pokoušel změnit na SetPlayerMoney ale nejde to

 

Prosím někoho kdo je ochotný poradit jak na AntiCheat.

 

 
Link to comment
Share on other sites

  • 0

Duvod je jednoduchy, Anticheat tve prenize proveri driv, nez ke clientu dojdou informace o tom ze ty penize mas. Ja to resim tak ze si do promene ulozim cas kdy jsem penize nastavil a anticheatem hrace proverim az po te, co jsem v OnPlayerUpdate obdrzel infromace ze to k nemu dorazilo.

Link to comment
Share on other sites

  • 0

GivePlayerMoney(..

StopAC[playerid] = GetTickCount();

 

public OnPlayerUpdate

{

Aktualizace[playerid] = GetTickCount();

}

 

public AntiCheat()

{

if(Aktualizace > StopAC)

}

Link to comment
Share on other sites

  • 0

Tento anticheat mě zabanuje když mám víc než $2000  

Zaměstnám se a vydělám nějakou částku například 5000, vše je v pořádku, ale jak se odhlásím ze serveru  a vrátím se tak mě tu čásku vynuluje a zabanuje mě to. 

Já už nevím jak na to

 

 

#define FILTERSCRIPT
 
#include <a_samp>
 
#if defined FILTERSCRIPT
public OnFilterScriptInit()
{
print("\n--------------------------------------");
print(" Aero's Anticheat Filterscript");
print("--------------------------------------\n");
return 1;
}
#endif
 
//Defines
#define COLOR_WHITE 0xFFFFFFFF
#define COLOR_RED 0xAA0000FF
#define COLOR_GOLD 0xDCB700FF
#define COLOR_GREEN 0x00AA00FF
#define COLOR_BLUE 0x0000AAFF
 
#define SCM SendClientMessage
#define SCMA SendClientMessageToAll
#define SCMX SendClientMessageEx
 
//Settings and Variables
new BanWeap[] = { 35, 36, 37, 38, 44, 45};
new Max_Cash = 9999999;
new Cash_Increment = 1000;
new bool:BanPlayers = false;
 
new Tag[6] = "[AAC]";
new NewCash[MAX_PLAYERS];
new OldCash[MAX_PLAYERS];
new TIMER_Kick[MAX_PLAYERS];
new TIMER_Spawn[MAX_PLAYERS];
new bool:Damaged[MAX_PLAYERS] = false;
new bool:Spawned[MAX_PLAYERS] = false;
new Float:GodHealth, Float: GodArmour;
forward OneSecTimer();
forward KickTimer(playerid);
forward SpawnTimer(playerid);
 
//Stocks
stock SendClientMessageEx(playerid, color, message[128])
{
new str[128];
format(str,sizeof(str),"%s: %s", Tag, message);
SCM(playerid,color,str);
return 1;
}
stock KickMessages(playerid, reason[128])
{
    new str[128];
format(str,sizeof(str),"%s: Jsi vyhozen ze serveru %s.", Tag, reason);
SCM(playerid,COLOR_RED,str);
    new str2[128];
format(str2,sizeof(str2),"%s: %s byl vyhozen ze serveru %s.", Tag, GetName(playerid), reason);
SCMA(COLOR_GREEN,str2);
return 1;
}
stock GetName(playerid)
{
new name[48];
GetPlayerName(playerid,name,sizeof(name));
return name;
}
stock BanKick(playerid)
{
if(BanPlayers == true){Ban(playerid);}
else{Kick(playerid);}
return 1;
}
 
//Timers
public OneSecTimer()
{
for (new playerid=0;playerid<MAX_PLAYERS;playerid++)
{
   if(Spawned[playerid] == false) continue;
   new Gun = 0;
   GunLoop:
   if(GetPlayerWeapon(playerid) == BanWeap[Gun])
{
   KickMessages(playerid,"Weapon Hacking");
TIMER_Kick[playerid] = SetTimerEx("KickTimer",1000,false,"i",playerid);
}
Gun++;
if(Gun < sizeof(BanWeap))goto GunLoop;
NewCash[playerid] = GetPlayerMoney(playerid);
if(NewCash[playerid] > Max_Cash || OldCash[playerid] + Cash_Increment < NewCash[playerid])
{
   KickMessages(playerid,"Money Hacking");
TIMER_Kick[playerid] = SetTimerEx("KickTimer",1000,false,"i",playerid);
ResetPlayerMoney(playerid);
GivePlayerMoney(playerid, OldCash[playerid]);
}
OldCash[playerid] = GetPlayerMoney(playerid);
new Float:Health, Float:Armour;
GetPlayerHealth(playerid, Health);
GetPlayerArmour(playerid, Armour);
if (Health > 100 || Armour > 100)
{
   KickMessages(playerid,"Health/Armour Hacking");
TIMER_Kick[playerid] = SetTimerEx("KickTimer",1000,false,"i",playerid);
}
GodHealth = Health;
GodArmour = Armour;
if(IsPlayerInAnyVehicle(playerid))
{
   new vehicleid = GetPlayerVehicleID(playerid), Float: vHealth;
   if(GetVehicleHealth(vehicleid, vHealth) > 1000)
   {
       KickMessages(playerid,"Vehicle Health Hacking");
TIMER_Kick[playerid] = SetTimerEx("KickTimer",1000,false,"i",playerid);
   }
}
new Float:Pos_x,Float:Pos_y,Float:Pos_z;
new anim = GetPlayerAnimationIndex(playerid);
GetPlayerVelocity(playerid,Pos_x,Pos_y,Pos_z);
if((Pos_x <= -0.800000  || Pos_y <= -0.800000 || Pos_z <= -0.800000) && (anim == 1008 || anim == 1539))
{
   KickMessages(playerid,"Fly Hacking");
TIMER_Kick[playerid] = SetTimerEx("KickTimer",1000,false,"i",playerid);
}
}
return 1;
}
 
public KickTimer(playerid)
{
BanKick(playerid);
KillTimer(TIMER_Kick[playerid]);
return 1;
}
 
public SpawnTimer(playerid)
{
    OldCash[playerid] = GetPlayerMoney(playerid);
Spawned[playerid] = true;
KillTimer(TIMER_Spawn[playerid]);
return 1;
}
 
//General Script
public OnGameModeInit()
{
  SetTimer("OneSecTimer",1000,true);
return 1;
}
 
public OnGameModeExit()
{
return 1;
}
 
public OnPlayerConnect(playerid)
{
SCMX(playerid, COLOR_GOLD, "Tento server je chráněn's Anti-Cheat.");
Damaged[playerid] = false;
return 1;
}
 
public OnPlayerDisconnect(playerid, reason)
{
    Spawned[playerid] = false;
    Damaged[playerid] = false;
return 1;
}
 
public OnPlayerSpawn(playerid)
{
TIMER_Spawn[playerid] = SetTimerEx("SpawnTimer",3000,true,"i",playerid);
return 1;
}
 
public OnPlayerDeath(playerid, killerid, reason)
{
    Spawned[playerid] = false;
    Damaged[playerid] = false;
return 1;
}
 
public OnPlayerTakeDamage(playerid, issuerid, Float:amount, weaponid, bodypart)
{
if(issuerid != INVALID_PLAYER_ID)
{
new Float:Health,Float:Armour;
if(GetPlayerHealth(playerid, Health) == GodHealth || GetPlayerArmour(playerid, Armour) == GodArmour)
{
   KickMessages(playerid,"God Mode");
TIMER_Kick[playerid] = SetTimerEx("KickTimer",1000,false,"i",playerid);
   return 1;
}
}
return 1;
}
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...