PDA

View Full Version : [FS/INC]ELC_ANTI-CHEAT[V3.2](Arme,Argent,AirBreak,...)(BEST ANTI-CHEAT)


Eloctro
04/08/2012, 02:47 PM
ELC_ANTI-CHEAT(By Eloctro)

http://i.creativecommons.org/l/by-nc-sa/3.0/88x31.png
ELC_Anti-Cheat de Eloctro est mis à disposition selon les termes de la licence Creative Commons Paternité - Pas d'Utilisation Commerciale - Partage à l'Identique 3.0 non transcrit.
Basé(e) sur une oeuvre à www.gtaonline.fr (http://www.gtaonline.fr).

1.Présentation :
Vidéo réaliser sur la version 2.2 et testé avec so*****(Désolé pour les bugs images j'avais que CamStudio sous la main ...)

http://www.youtube.com/watch?v=X1kgH7hZbgU
Actuellement l'Anti-Cheat parfait n’existe pas mais je considérerais ELC_AC comme l'un des meilleurs Anti-Cheat .
Certains cheats permettent de donner des Armes et de l'argent(jusqu’à lors facile à détecter)
mais ELC_AC va approfondir ce système en détectant si des munitions on été rajoutées ou encore mieux si le joueur bloque les munitions cette à dire que les munitions ne s'épuisent pas .Soit des munitions infinis et des armes inépuisables(BUG très utilisé au niveau RPG et DM) .
Quant au système d'argent il est simple mais efficace il permet d'acheter dans les armuries,fast-food et transfander sans avoir de problème .
Les seules difficulté sont au niveau des gains(Casino,Stunt) .


2.Protections :
Anti Money Hack(100% fiable dans la V3.1)
Anti Weapon Hack(100% fiable dans la V3.1)
Anti Ammo Hack(Spawn & Block)(100% Fiable dans la V3.1)
Anti SpeedHack(100% fiable dans la V3.1)
Anti AirBreak(100% Fiable dans la V4)
Anti Teleportion(100% Fiable dans la V4)
Anti Health Hack(pas encore totalement fiable)
Anti Armour Hack(pas encore totalement fiable)
Anti Véhicule Téléportation(100% Fiable dans la V4)
(Tout ces type de cheat on été testé dans la version V3.1 & V4 ;) )

3.Instalation :
_Placer les includes dans pawno/includes

Pour faire tourner le script 2 possibilités se présente ,tout aussi efficace .
Si vous n'utilisez pas de filtrescript je vous conseille la première possibilité .

1.MODE_INCLUDE_BASE(faire fonctionner le script au coeur du Gamemode)
_Ajouter l'include "ELC_AC_BASE" en haut de votre Gamemode .
include <ELC_AC_BASE>

_(ATTENTION!)Si vous avez des FilterScripts vous devrez obligatoirement mettre l'include "ELC_AC_CONNECTOR" afin que les fonctions de sécurités soit opérationnel .
include <ELC_AC_CONNECTOR>

2.MODE_FS(faire fonctionner indépendamment le script dans un Filtrescript)
_Placer le Script ELC_AC.amx dans le dossier "FilterScript"
_Ajouter "ELC_AC" dans server.cfg .
filterscripts ELC_AC

_(ATTENTION!)Vous devrez obligatoirement mettre l'include "ELC_AC_CONNECTOR" dans tout vos scripts,cette a dire FS et GM afin que les fonctions de sécurités soit opérationnel .

include <ELC_AC_CONNECTOR>

Fonction/CallBack :
Les Fonctions et CallBack sont automatiquement remplacé lors de la compileation grâce au système ALS .
Il n'y auras aucun changement appart que les joueurs ne pourront pas cheater .
Vous aurez juste à utiliser GivePlayerWeapon et GivePlayerMoney normalement et ajouter le callback :
ATTENTION : Après avoir détecter les cheats suivant : argent,armes,vie et armure ils retourneront à leurs anciens statuts
public OnPlayerCheat(playerid, cheatid)//Si un joueur cheat
{
if(cheatid==1)
{
SendClientMessage(playerid,COL_RED,"[ELC_AC]Vous avez tenté de cheater .(CHEAT ARGENT).");
}
else if(cheatid==2)
{
SendClientMessage(playerid,COL_RED,"[ELC_AC]Vous avez tenté de cheater .(CHEAT ARME)");
}
else if(cheatid==3)
{
SendClientMessage(playerid,COL_RED,"[ELC_AC]Vous avez tenté de cheater .(CHEAT MUNITION)");
}
else if(cheatid==4)
{
SendClientMessage(playerid,COL_RED,"[ELC_AC]Vous avez tenté de cheater .(CHEAT BLOCK MUNITION)");
}
else if(cheatid==5)
{
SendClientMessage(playerid,COL_RED,"[ELC_AC]Vous avez tenté de cheater .(CHEAT VITESSE)");
}
else if(cheatid==6)
{
SendClientMessage(playerid,COL_RED,"[ELC_AC]Vous avez tenté de cheater .(CHEAT AIBREAK/TELEPORTATION)");
}
else if(cheatid==7)
{
SendClientMessage(playerid,COL_RED,"[ELC_AC]Vous avez tenté de cheater .(CHEAT VIE)");
}
else if(cheatid==8)
{
SendClientMessage(playerid,COL_RED,"[ELC_AC]Vous avez tenté de cheater .(CHEAT ARMURE)");
}
else if(cheatid==9)
{
SendClientMessage(playerid,COL_RED,"[ELC_AC]Vous avez tenté de cheater .(CHEAT VÉHICULE TÉLÉPORATION)");
}
return 1;
}

_playerid = ID du joueur concerné
_cheat = Type de Cheat(1=Monney,2=Spawn Arme,3=Spawn Muntions,4=Block Muntions,5=Airbreak,6=Vie,7=Armure)

4.Configuration :
_Sous linux il est conseillé de décommenter la ligne : //#define NO_TICK_COUNT

5.Mises à jours :

V1B1 :
_Système de Detection munition bloque désactivé(encore quelques finitions a faire)

V1B1x :
_Ajout du GetTickCount de Sim(SuperStream)

V1.0(FINAL):
_Correction des bugs


V1B2 :
_OnPlayerUpdate changé par un Timer exécuté toute les 2 secondes(paramétrable)
_Optimisation du Script

V1.1 :
_Ajout ANTI-TELEPORT
_Activation ANTI-BLOQUE-MUNITION
_Meilleur Configuration

V1.2 :
_Meilleur Configuration
_Correction des derniers bugs

V1.3 :
_ANTI BLOQUE MUNITION encore plus efficace et travaillé sur toutes les armes !
_Ajout de la fonction EnablePlayerCheatID(playerid,cheatid,enable);
_Suppression du système SpeedHack à pied(l'Anti Airbreak suffit .)
_Revue et optimisation du code de vérification de Cheat .

V2.0b :
_Ajout de défines pour désactiver/activer la détection de cheat par défaut
_Amélioration et désactivation par defaut de l'Anti Bloque Munition car il bug si le joueur veut tirer face à un mure et si le personnage ne tire pas(Je vais tenter de régler ça avec le plugin MapAndreas)
_Correction de l'include ELC_CONNECTOR(Changement de la fonction CallLocal à CallRemote)
_Amélioration de l'Anti Weapon et Ammo Hack(Enlève seulement l'arme et les munitions cheaté)
_Correction de la réactivation de l'anti AirBreak/Teleport et SpeedHack après la mort(Seulement si on les désactivaient avec la fonction EnablePlayerCheatID)
_Ajout d'une sécurité pour pas que la vérification de cheat se lance au moment ou vous recevez de l'argent ,arme ou vous vous téléportez(Très peut de chance que ça arrive mais on sait jamais)

V2.1 :
_Ajout Anti Hack Vie(ID 7)
_Ajout Anti Hack Armure(ID 8)
_Application de l'AntiCheat sur la fonction SetPlayerAmmo,SetPlayerHealth et SetPlayerArmour
_Correction de la define NO_TICK_COUNT
_Amélioration pour détecter les paiements de soda

V2.2 :
_Finition de l'Anti Munition Block
_Redéfini vie et armu à leurs anciens statuts après utilisation de cheat .

V3.0 :
_Optimisation du script
_Correction de Bug
_Ajout de Health et Armur dans EnablePlayerCheatID
_Ajout d'un système consistant à faire attendre un délay après l'utilisation d'une fonction(Exemple : Utilisation GivePlayerMoney -> Obligation d'attendre 3.5 secondes pour vérifier si cheat,utile si y a un gros lag et les performances de détection sont toujours aussi efficace)

V3.1(fiabilité garantie) :
_Correction de bug mineur
_Amélioration de l'anti cheat argent
_Amélioration de l'anti-AirBreak/Teleportaion
_Correction du système consistant a retarder une vérification de cheat après l'utilisation de fonction
_Optimisation du script

V3.2 :
_Fixation de bug pour supprimer l'arme cheaté(La mise à jour de la fonction "SetPlayerAmmo" dans la 0.3d ne demande plus le slot de l'arme mais directement son ID)
_Amélioration mineur de la détection

V4 :
_Correction de l'Anti Téléportation
_Ajout l'Anti Téléportation de véhicule(Détecte et replace le véhicule à la position exacte avant sa téléportation)
_Optimisation du script

V4.1 :
_Correction de bugs sur des fonctions




6.Astuces :
Pour les serveurs qui ne sont pas très puissant il est conseillé d'augmenter la define "TIMER_CHEAT_RATE" .(5000 ou plus)

V3.2(BUG : Aucun | Fiabilité :voir plus haut):
Downald(Pack) (http://solidfiles.com/d/892c7a118c/)
Pastebin(BASE) (http://pastebin.com/wCUJGTs0)

V4.1(BUG : Aucun)
Downald(Pack) (http://www.solidfiles.com/d/a2bf80617d/)
Pastebin(BASE) (http://pastebin.com/UngFAD2r)

7.Téléchargements :

ATTENTION : Il est déconseillé d'utiliser la fonction SetPlayerShopName pour les armuries

8.Crédits :
_Eloctro(SCRIPT)
_Sim(GetTickCount compatible linux)
Cordialement ,
Eloctro :cheers

raphy_963
04/08/2012, 02:50 PM
Ahhhh c'est toi le créateur?????

Ahhh je savait pas que c'était un francais qui avait fait sa :O

Merci du partage.

wjulien91
04/08/2012, 04:57 PM
Merci du partage.

'seraphin
04/08/2012, 06:53 PM
Doublon*

raphy_963
04/08/2012, 06:56 PM
Are you kiddin me?

C'est lui gros imbécile!!!!

Ryder'
04/08/2012, 06:59 PM
C'est pas son script il a meme retirer les credits --'... il a juste traduit la description voici le vrai ----> http://forum.sa-mp.com/showthread.php?t=218139
>.<'

http://www.monturelunette.net/wp-content/uploads/2011/12/monture-lunette.jpg

leo3412
04/08/2012, 07:05 PM
Pas mal :) Personnellement je préfèrerais faire mon anti cheat moi même mais après ça peut-être un bon exemple pour d'autres :)

yusei
04/08/2012, 07:06 PM
Merci Du Partage

bousla7e
04/08/2012, 09:29 PM
Je l'essayerai surement plustard peut étre que je pourais améliorer le mien en analysant le tien , merci du partage :D

Sinon est ce que ça block les Nop de Sob ? je pense pas!!

Eloctro
04/08/2012, 09:46 PM
Les nop ?

Si tu parle des munition illimitées ,oui ça détecte et c'est fiable .

Sinon je pense publier très bientôt la V4 qui détecte les téléportations de véhicules.

bousla7e
05/08/2012, 02:44 AM
ça veut dire non :D je pense pas qu'il y'a un moyen pour blocker ça méme si Y_less dit que si, j'ai une idée dans le crane je te l'éxpliquerai plustard sur skyp ce que je veux faire + ce que c'est que les NOP t'a peut étre une idée!!

Eloctro
05/08/2012, 11:41 AM
Mise à jour dans V4 !

Tom_Adams
10/08/2012, 01:00 PM
Téléportation de véhicule à buggé quant j'ai foncé violement dans un mur ;)

Eloctro
10/08/2012, 05:27 PM
Téléportation de véhicule à buggé quant j'ai foncé violement dans un mur

Cette à dire tu était encore conducteur ou tu t'es jetée ?

Eloctro, franchement, ton anti-cheat est Top, je l'utilise d'ailleurs.
Il y a juste un problème: c'est qu'on es détecter cheat Téléportation, alors que c'est le script qui nous téléporte..
Aussi on est détecter comme cheat quant on spawn (cheat airbreak/téléportation)
__________________

Si la téléportation est réalisé par un FS ajoute l'include ELC_AC_CONNECTOR dedans ,et surtout fait attention que le script de base soit incorporé une seul fois ,soit en l'incluant au GM ou en le mettant comme FS dans server.cfg comme FS .

Tom_Adams
11/08/2012, 11:18 AM
Pour le bug téléportation de véhicule, je n'ai pas été ejecter mais le véhicule à exploser

Toutes mes excuses pour le coup de la téléportation, j'ai oublier d'envoyer le script à l'hébergeur ^^

ET pour le spawn qui est détecter comme airbreak, j'ai mis une variable d’immunité de l'anticheat qui s'active quant on spawn et se désactive 3 secondes plus tards ;)

Je l'ai mis en FS poue le moment, tu penses que c'est mieux en include ?

Merci à toi, Tom

[HP]Napola
12/08/2012, 03:40 AM
juridique

Eloctro
13/08/2012, 09:41 PM
Pour le bug téléportation de véhicule, je n'ai pas été ejecter mais le véhicule à exploser

Toutes mes excuses pour le coup de la téléportation, j'ai oublier d'envoyer le script à l'hébergeur ^^

ET pour le spawn qui est détecter comme airbreak, j'ai mis une variable d’immunité de l'anticheat qui s'active quant on spawn et se désactive 3 secondes plus tards ;)

Je l'ai mis en FS poue le moment, tu penses que c'est mieux en include ?

Merci à toi, Tom

Si le le mode fs marche bien,laisse comme ça .Je regarde pour bug de téléportation de véhicule ,merci pour cette grande aide .

Tom_Adams
17/08/2012, 09:22 AM
Autre bug: j'ai mis l'incluse ELAC connector dans mon FS de téléportation pour ne pas être détecter comme cheat, mais quant on fait la commande, on a les phrases et tout mais on n'es pas téléporter

Scol-Ben
12/09/2013, 11:29 AM
Salut, je ne sais pas si c'est toujours d’actualité, mais j'ai un problème.
Lorsque je place les deux includes dans pawno et le #include <ELC_AC_BASE> Lors de la compilation il dit ceci :

error 025: function heading differs from prototype.

Cette ligne est public OnVehicleDeath(vehicleid, killerid).

Donc j'ai essayé de mettre en Fs donc dans mon GM avoir mis juste #include <ELC_AC_CONNECTOR> et la callback qui dit si tu cheats ou non mais Ig sa fonctionne pas.

Une solution s'il vous plait ?