SAMP - Anti Cheat Client

  • Hey Breadfish!
    Ich habe mal eine Frage, kann mir einer sagen wie man ein Anti Cheat Client erstellt,
    Tutorial oder Code(Bitte mit Programmiersprache würde mir dann mal Tutorials durchlesen/Ansehen) würde mir reichen.

    Mit freundlichen Grüßen,
    Chriss aka. xDesertx

    Einmal editiert, zuletzt von xDesertx () aus folgendem Grund: Rechtschreib fehler

  • Du brauchst Ahnung von Computern im allgemeinen und ganz speziell von der Funktionsweise von Spielen und Cheats. Am besten von Disassemblies von ein paar Cheats und dann kannst losgehen. Wenn du nur Tutorials im Internet befolgst, dann wird da nicht viel bei rauskommen, da du dir sicher sein kannst, dass Cheatprogrammierer alle Methoden kennen, die man im Internet findet, und sie alle umgehen können.


    Aus deiner Frage lässt sich schließen, dass du die genannten benötigten Kompetenzen nicht besitzt, also rate ich dir dazu, es einfach zu lassen und die Benutzer nicht mit unnötiger Software zu ärgern, die keinem hilft.

  • Er möchte es mit fleiß selber erlernen. Ich denke, dass ihm bewusst ist einfach einen zu engagieren.
    Er kann ja C++ unso selber lernen. Er bittet euch nur um Wichtige Stichworte, falls ihr keine habt müsst ihr euer Senf hier nicht abgeben.


    #handy

    Wenn ich dich sehe, dann muss ich...
    Dann muss ich...
    :peng:

  • Ok, wichtige Stichpunkte für Windows:


    Hashwerte der Spieldateien überprüfen
    Read und WriteProcessMemory überwachen / selbst hooken, um unerlaubt Zugriffe zu finden (aimbot, alle möglichen hacks)
    Alle möglichen benutzen Funktionen auf fremde hooks überprüfen (z.B: Direct3D EndFrame http://msdn.microsoft.com/de-d…d797956%28v=vs.85%29.aspx oder DrawIndexedPrimitve, Wallhacks). Achtung: Hier muss man gut von böse trennen, viele Programme wie Fraps und DxTory machen sowas auch.
    Alles auf Ring0 schreiben und damit das System anfälliger machen. So, wie Benutzer das gerne haben.
    zeitmessende Funktionen überprüfen auf Manipulation (Speedhack)
    Falls was ist, Screenshot und Memory Image an server schicken, wo ein Mensch das überprüfen kann, der dann entscheiden kann, ob gecheatet wird.


    Ich habe selber nicht wirklich viel Ahnung von der Materie (das sind nur Basisdinge, mit denen man semiprofessionelle Cheater abhält), aber wenn ich keinen Schimmer von Programmierung hätte, dann würde ich ganz sicher nicht damit anfangen.

  • Erstmal vielen dank für eure Antworten,
    Wie Helpher bereits geschrieben hat möchte ich mein Wissen erweitern, und probieren einen Anti-Cheat Programm/Tool zuentwickeln
    Dieser soll nicht für Server oder so verwendet werden lediglich für Testzwecke.

    Mit freundlichen Grüßen,
    Chriss aka. xDesertx

  • Dann mach es aber in einer Ordentlichen Sprache ;D


    Zu He3lix Sachen müsste ich noch einen weiteren Punkt hinzufügen.
    Undzwar die Module, welche auf das Spiel GTA SA zugreifen. Daraus lässt sich ebenfalls einiges ermitteln.
    Was er geschrieben hat mit Memory-Adressen(?) kannst du gleich vergessen, da dies eine sehr komplexe Materie ist und du dich mit dem Speicher auseinandersetzen müsstest.

    MFG

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • Was er geschrieben hat mit Memory-Adressen(?) kannst du gleich vergessen, da dies eine sehr komplexe Materie ist und du dich mit dem Speicher auseinandersetzen müsstest.

    Wenn er nichtmal das macht, dann wird das mit dem Anticheat eh nichts und man sollte es ganz sein lassen. Ein Anticheatclient ist nichts, womit man als Programmeirneuling anfängt, weil da nichts ordentliches bei rauskommen kann, wie ich oben auch schon geschrieben habe. In 5 Jahren, wenn der TE das ganze Memoryzeugs sowie die Funktionsweise von hooks verstehst, dann kann er es mal probieren, wobei selbst das nicht wirklich gut funktionieren wird.

  • Ja, aber dann tretet ein neues Problem auf: Wie?

    C++ IDE runterladen, installieren, neues Projekt anlegen.
    windows.h includieren
    sowas hier machen http://msdn.microsoft.com/en-u…a365200%28v=vs.85%29.aspx
    fertig.


    Da bleibt das Problem, dass man das Spiel noch mit CheatEngine manipulieren kann wie man möchte bzw man kann sogar dlls injecten, dann stehen einem alle Möglichkeiten zum Cheaten zur Verfügung. Das kannst du dann also nicht Anticheatclient nennen.


  • Sind ja alles ganz nette Ansätze, aber ich kann dir sagen, dass Hashwerte von Datein nicht ratsam sind.
    Man überlege mal wie viele verschiende ENB Series Varianten es gibt.


    und hier ist auch schon das Problem. Wenn man die von dir oben genannten Varianten nutzt, sperrt man fast immer auch gleich ENB Series mit aus, was man idR ja eigentlich nicht will.


    Die effektivste Methode ist wirklich den RAM zu durchsuchen nach bestimmten Werten zu und das auszuwerten.
    Nach dieser Auswertung kann man die User dann aussortieren.


    Eine Variante dazu hab ich mal geschrieben.
    Und ja - das funktioniert. :thumbup:

    "Bevor ich mir Informationen aus der "Bild" hole,
    werde ich anfangen, Wahlergebnisse danach vorauszusagen,
    neben welchen Busch unsere Katze gepinkelt hat."

    Margarete Stokowski