-------------- German version ---------------
Ich möchte hier in dem Forum ein paar meiner Erfahrungen beim erstellen eines funktionierenden Bots für Rappelz berichten, da ich hier doch viele hilfreiche Tipps gefunden habe.
Das wichtigste zuerst : Ich werde hier keine Software posten!
Ich kann euch aber ein paar Hinweise geben wie ich es gemacht habe.
Mein Ansatz beim schreiben war nicht, dass ich versucht habe den GG auszuschalten.
GG ist inzwischen so ausgereift das, dass vermutlich fast unmöglich ist, und man bei jedem Update wieder von vorne anfangen muss, wenn die Machen vom GG Wind von der Methode bekommen haben.
Daher bin ich den Weg gegangen, das mein kleiner Bot sich so gut versteckt, dass er nicht vom GG als Bot erkannt wird.
Ich gehe den Weg, das ich Maus und Tastatur Eingaben genau so erzeuge, wie sie ein Hersteller einer exotischen Hardware erzeugt.
Das geht nur mit einem eigenem Kernel Treiber.
Das Driver Development Kit (DDK) von Microsoft ist hier ein guter Einstieg in die Problematik und liefert gleich diverse Beispiele wie man so was aufbauen kann.
Und GG wird nie unterscheiden können ob der Treiber jetzt zu einer exotischen Hardware gehört oder von einem Cheater erstellt worden ist
Ein erster Test ( z.B. mit vertauschen X und Y Achsen bei der Maus ) zeigt sehr schnell, dass der Weg funktioniert.
Wenn man dann jedoch versucht den Treiber aus die Übliche Methode fernzusteuern.
( e.g. mit DeviceIoControl( ) ) muss man feststellen, dass das nicht geht.
GG kennt diese Methode und hat einen Weg gefunden diesen Weg zu verhindern!
Hier muss man jetzt nur noch eine Lücke finden , um eine Kommunikation zu ermöglichen.
(( Ich sage euch nicht meine Lücke , sonst wird die vom GG in 10 min auch geblockt ))
Nach ein paar Stunden suchen hatte ich einen Weg gefunden, und ich bin mir sicher es gibt hier noch viele andere.
Über diesen Weg kann man Tasten und Maus Informationen an das Spiel schicken.
Das Auswerten von Daten aus dem Spiel geht bei mir über den Bildschirm.
Es gibt mehr Wege den Bildschirm auszulesen als GetPixel( ).
Und so lange wie die Leute kleine Videos vom Spiele drehen können, kann man auch die Daten auslesen!
Achtung: Benutzt nicht CopyFromScreen() Die Funktion hat ein Handle Leak und crashed nach 10.000 Calls.
Für das Erkennen der Mondhasen habe ich mir z:B. einen kleinen Screen Texterkennung geschrieben, die den Namen des Monsters auswertet und in Text umwandelt.
Das klingt auf dem ersten Blick recht wild, ist aber im Endeffekt recht einfach, da die Buchstaben fast immer exakt gleich sind.
Was bei mir noch nicht so gut klappt ist:
Ich weiß nicht wo ich mich befinde. Es gibt zwar den „/position“ Befehl.
Durch den halbtransparenten Hintergrund im Chat Fenster ist hier das erkennen jedoch schwerer.
Ich weiß nicht in welche Richtung ich kucke. Erste Versuche mit einem Erkenne des Weißen Bereichs im Map Fenster sind zwar vielversprechend, aber ich scheue derzeit die Arbeit.
Wenn hier einer schon eine Lösung in der Schublade hat, währe ich dankbar für ein paar Hinweise.
Update
Night Dragon hat diesen Link in einem anderem Thread geposted

Es könnte sehr nützlich sein, wenn du nicht deinen eigenen Treiber entwicken möchtest.
Ich habe es nicht getested, es sieht aber extram vielversprechend aus.
----------------- english version -----------------------
I want to write down a few of my experience with creating of a full working BOT for rappelz, because I have found a lot useful hints inside of this forum.
The important part first: I will not upload my software!
But I can give you useful hints how I have done it.
My way is that I don’t want to attack GG.
GG is so big and strong developed that it is maybe impossible to bypass it and each update will make it stronger, once the developer find out how a working exploit works.
My way is that my tool hide itself so good that GG don’t notice it as a BOT.
So I create the mouse and keyboard input like any creator an an exotic Hardware.
This way works with an own kernal device driver.
The Driver Development Kit (DDK) from Microsoft is here a good way to start and it contains a lot already working examples.
GG can never decide if a Kernal driver is part of a unknown exotic hardware or part of a Bot , because there are to many different drivers in the wild.
A first working test ( e.g. switch x and y direction from the mouse ) shows us very fast that the way is working
But If you want to use one of the common ways to connect to your own kernal driver (e.g. with DeviceIoControl( ) ) will you notice that the technique not works.
GG knows a way to sabotage this.
Here you have to find a way on your own to get the communication working.
(( I don’t want to spread my solution, because I fear GG will block it in a couple of minutes ))
I have found a way after a few hours of searching and I am sure there a plenty others as well.
With this method you can send keyboard and Mouse Info to the game.
The way from the game to your software works via the screen.
And there are more ways than GetPixel( ).
And as long as people are able to make there own ingame video are you sure there is still a working way.
Important: Don’t use t CopyFromScreen(). The Function has a handle leak and works only 10.000 times.
So , I think this are the most important infos from the above german text.
Don’t hesitate to ask
And don’t miss the links below, they contain some useful details, but sadly the most is in German
---------
Update
Night Dragon has posted this link in an other thread

This could be very usefull if you don't want to design your own driver.
I havn't tested it by my own , but it looks very prommising






