Thread: External Tutorials [CS:S|CS:GO] | ||
Join Date: Sep 2012 Posts: 9 |
Hallo OSH:User, ich bin neu hier, habe aber Erfahrung was das Thema Coden angeht. Sowohl Interne Cheats, als auch Externe Cheats. In diesem Tutorial will ich euch zeigen, wie Ihr einen External Triggerbot & Bunnyhop schreibt. Gegebenfalls werde ich noch mehr adden, deswegen auch der Thread Name! Was wir benötigen: • CheatEngine • OllyDBG • Visual Studio / QT (Ich bevorzuge QT) • Eine Programmiersprache (C++ , Visual Basic - eher C++) Schritt 1.0 -Der Umgang mit OllyDbg- : Im Schritt 1 müsst ihr den Spieler (euch) suchen. Den so genannten localplayer. Dazu startet Ihr Counter-Srike Source und erstellt einen Lokalen Server und joint drauf. Dannach öffnet ihr OllyDBG und Attacht den Process. Im Spoiler ist die Schritt - für - Schritt Erklärung für OllyDbg. Schritt 1.1: Ihr startet Counter-Strike: Source und startet OllyDbg. Klickt auf File -> Attach und wählt hl2 aus. Only registered and activated users can see links. Schritt 1.2 Drückt in OllyDbg auf das [E] für Executable modules und klickt dann doppelklick auf "client" Only registered and activated users can see links. Schritt 1.3 Drückt [C] für CPU threads -> rechtsklick ins Feld -> Search for -> All references Text Strings Only registered and activated users can see links. Schritt 1.4 Rechtsklick in das neue Fenster und nach "localplayer" suchen.. da wird es dann mehrere Ergebnisse geben. Das Richtige ist das erste wo nur localplayer steht. Only registered and activated users can see links.Only registered and activated users can see links. Schritt 1.5 Darauf macht ihr Doppelklick und im CPU Fenster scrollt ihr nach oben wo CMP DWORD PTR DS: steht und Notiert euch das was in der Klammer steht.. Only registered and activated users can see links. Schritt 1.6 Scrollt ganz nach oben und in der ersten Spalte links, die Zahl notiert ihr euch auch. So nun rechnet ihr die Zahl die ihr ganz oben Gefunden habt - 1000 und notiert euch die. Dann rechnet ihr LocalplayerZahl - DieNeueZahl = BaseEntity Only registered and activated users can see links. Schritt 1.7 Nun benötigen wir noch die netVars m_lifestate und m_fFlags. Einfach im TextStrings Popup [R] nach oben Scrollen und von oben aus eine neue suche Starten. m_fFlags -> Doppelclick drauf und eine Spalte drüber steht ein Push Wert.. das ist euer offset. Only registered and activated users can see links. Schritt 2.0 -Pointer to Enemy via CheatEngine-: Startet CheatEngine und wählt hl2.exe aus. Macht es nach diesem VideoTutorial. Vorab inforamtion: Wenn der Gegner Sichtbar ist (1) müsst ihr nach 2 suchen. Da die SourceEngine irgendwas hat, das die ID +1 ist.. (falls das YT Video hier nicht zusehen ist: youtu.be/m13X5c3IJ7E ) Schritt 3.0 -Let's begin with the code!- So was das Coden angeht, hoffe ich das ihr schon Erfahrung habt. Denn ich will jetzt hier keine C++ Basic Stunde geben oder so. Ich stelle euch den CProcess.h Header zu verfügung. Angeblich gehört er Excidium, aber wenn man mal googlet findet man da mehrere Ergebnisse Mr.Excidium. Nunja, da ich es eigentlich etwas anders mache, aber es nicht genau erklären will benutze ich jetzt für das Tutorial die CProces Klasse.. CProcess Header: CPP Code:
Ich erstelle mir immer einen Header wo alle Includes reinkoemmen.. Ich nenne ihn allshit.h und er sieht bei mir so aus: Only registered and activated users can see links. CPP Code:
Gut weiter in die main.cpp. Dort schreiben wir erstmal rein: CPP Code:
Und dann erstellen wir unser Player Struct. Es sollte BasEntity, m_fFlags, m_lifestate, TriggerID enthalten. CPP Code:
Dann Fangen wir mal an den ganzen Kram via ReadProcessMemory auszulesen.. Dazu erstellen wir ein neuen Block und ich nenne ihn ReadProcessMemory() CPP Code:
So nun gibt es zwei Möglichkeiten wie ihr es macht.. Entweder mit CreateThread (Bessere Performance) oder ihr schreibt alles in eine While Schleife.. Ich erkläre euch hier beides! CreateThread Methode: Wir erstellen 2 Threads. Einmal der Thread für den Triggerbot: CPP Code:
Und der Thread für den Bunnyhop: CPP Code:
Dann müssen wir nur noch in der Main die beiden Threads Erstellen. Das Geht via CreateThread. CPP Code:
Die andere Methode: Wieder 2 Blöcke erstellen. Der Bunnyhop Block: CPP Code:
Und der Triggerbot Block: CPP Code:
So und in der Main müsst ihr nun eine While True schleife erstellen. CPP Code:
Der Ent-Code sieht bei mir nun so aus: So das ganze nun Compilen und ihr habt einen External Bunnyhop & Triggerbot. Ja mir ist bewusst, dass ich einen kompletten SourceCode Public gemacht hab, inkl. Offsets. Wobei das euch nicht viel bringen wird wenn ein neues Update draußen ist, dann müsst ihr nur noch das Teil hier Updaten. Ich würde es nett Finden, wenn ihr mir Credits geben werdet, wenn ihr das Tutorial irgendwo C&P -> und postet. Bzw was released. Inspiriert hat mich sMp, da er das Ganze in VB.net gemacht hat -> und im Forum jemand es in C++ umsetzten wollte! Falls was ist, einfach hier in Thread schreiben! :> Gruß, sKy. |
|
sKy. is offline |