Anti-Cheat System V0.1

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • Naja ich sags mal so es gibt viele anticheats aber dies hier ist wirklich das allterletzte xD Lern besser zu scripten dann mach eins man sieht das du nur C+P ausn wiki machst sry...


    //Edit
    und auserdem das nennt man Anti Bad Weapon... aber das hier hatt fast garnichts mit anticheat zutuhn


    //Edit²


    Und ne MAX_PLAYERS schleife ? Ohne zu überprüfen ob spieler connected ist ? bei Godfather währe es ein server killer ;D allgemein schon aber naja

  • sowas ist kein anticheat! es verbietet dir bestimmte waffen zu haben.. toll.. eher ein nachteil mehr nicht. es buggt, s0beitler lachen darüber..


    Wenn du ein anti weapon hack machen willst, musst du die jede waffe und die munition der 13 slots serverside speichern und abfragen.. wenn sie nicht übereinstimmt ist da was faul..

  • aha? und womit soll das noch erweitert werden?
    außer dem jetpack.
    es gibt wesentlich bessere anti-cheats, die auch mehr können.
    sieh dir z.B. mal meins an:


    12 Sachen können dort verboten werden. unter anderem auch DriveBy und Money
    Außerdem sollte man doch wenigstens einstellen können, was die Strafe ist.
    Ich habs mit defines gemacht


  • also du bist auch kein anänger in scripten wie ich

  • public CheckPing(playerid)
    {
    new pname[20];
    new string[128];
    GetPlayerName(playerid, pname, sizeof(pname));
    format(string, sizeof(string), "(--ANTI-HIGHPING--) %s wurde vom Server gekickt.Grund:Zu hoher Ping", pname);
    SendClientMessageToAll(COLOR_BLUE,string);
    if(GetPlayerPing(playerid) > MAX_PING) Kick(playerid);
    }
    Das ganze GetPlayerName...SendClientMessageToAll sollte mit in das if(){ .. kick(playerid) } sonst werden alle mit dem 'Anti-Highping spieler wurde gekickt' zugespammt. Der Intervall ist, wie ich finde ein wenig zu kurz. Aber das haengt auch davon ab, ob du jeden kicken willst, der ab und zu mal ein lag-spike hat, oder jemanden der dauerhaft einen grossen Ping hat.
    Was ich jetzt erst bemerke ist, dass du ja den Timer in OnPlayerSpawn erstellst. Wenn jemand im Spiel verlauf zweimal spawnt verlierst du den handle zu dem ersten Timer und erstellst gleich einen neuen, ohne den alten zu loeschen.


    Das Anticheat bringt nichts, selbst wenns von script her okay wäre.. außerdem kann ich dann ja garnicht ne minigun per befehl geben..


    mit s0beit kann ich deine funktionen deaktivieren :D


    Soweit ich weiss ist das falsch. GetPlayerWeapon() laesst sich nicht so einfach deaktivieren, da es die player-sync variablen nutzt. Also wenn jemand das umgehen will muss er sich selbst desynced machen und stellt somit auch keine Gefahr fuer andere Spieler da, schliesslich hat er dann keinerlei Kontrolle ueber seinen Server-seitigen Spieler = keine Waffen, selbst wenn er bei sich mit einer Minigun rumlaeuft.


  • public CheckPing(playerid)
    {
    new pname[20];
    new string[100];
    if(GetPlayerPing(playerid) > MAX_PING)
    {

    GetPlayerName(playerid, pname, sizeof(pname));
    format(string, sizeof(string), "(--ANTI-HIGHPING--) %s wurde vom Server gekickt.Grund:Zu hoher Ping", pname);
    SendClientMessageToAll(COLOR_BLUE,string);
    Kick(playerid);
    }
    }

    so währe es richtig! aber das hier gehört solangsam zu spam du hast zuwenig ahnung das hier ist ja schon fast ne scripting frage

  • finds nicht schlecht für den anfang 8/10