Epic 6, botting over?

05/24/2009 12:45 cheetah420#1
Hi dear Rappelz cheaters!

I read most of the active Bot Threads here, but found nothing.
No working bots in here. 2 good Scripters said goodbye to rappelz and
I'm just curious if there is anything new to get, which i havent heard off.

Thanks for replys

cheetah420
05/24/2009 14:05 Haetataki#2
There is no bot right now. But it seems that ppl are working on it, even though I would also appreciate a thread about how the work is progressing...
05/24/2009 14:07 cheetah420#3
yeah, maybe we could use this one :X
05/25/2009 19:01 gabriel_cucick#4
so... someone can help me to try... develop one? ^^
05/25/2009 20:30 Night Dragon#5
OK guys since I am getting alot of PM's about the bot's status, I will post here.

Right now the hold up is working with timers in C#. I am still very new to the C# language and am learning on the go. The keysends have been working perfectly, now its just a matter of timing them out to make them usable. I have a few commands to try tonight when I get home and if all goes well I expect to have a working 'rude' bot by the end of the week. I will keep you all posted on the updates as they come.

Cheers.

FYI the bot is being done strictly code style, there is no GUI for it yet, but that will be implemented later.
05/26/2009 16:45 Haetataki#6
Wow nice Night Dragon :D
Maybe you should work together with Doom? Haven't u been talking about it?
05/26/2009 16:58 Night Dragon#7
Quote:
Originally Posted by Haetataki View Post
Wow nice Night Dragon :D
Maybe you should work together with Doom? Haven't u been talking about it?
No for the most part people in this forum that are serious about botting have decided to program their own bot with their own methods. I think that is a great idea, this way we have diversity which is helpful for when these get patched.
05/26/2009 17:16 Haetataki#8
That's right, but cooperating about methods helps the progression speed. You don't have to share all work, but you could share code samples, timings, etc.
This could also raise the quality of all bots.
You could make a farming bot, a dp bot (for the love of god! I hate dps -_-) etc. :)
05/26/2009 17:17 Haetataki#9
That's right, but cooperating about methods helps the progression speed. You don't have to share all work, but you could share code samples, timings, etc.
This could also raise the quality of all bots.
You could make a farming bot, a dp bot (for the love of god! I hate dps -_-) etc. :)
05/26/2009 17:55 Night Dragon#10
Quote:
Originally Posted by Haetataki View Post
That's right, but cooperating about methods helps the progression speed. You don't have to share all work, but you could share code samples, timings, etc.
This could also raise the quality of all bots.
You could make a farming bot, a dp bot (for the love of god! I hate dps -_-) etc. :)
Well another issue is programming languages. I am coding everything in C#, I am not sure what Doom and the others are using. Also, I am using custom keyboard device drivers to make this method work, and I have heard of others using a bypassed PostMessage method. I am willing to offer any help with anyone's bot and my script will be available soon enough. I will keep the code open source so that people can modify it as needed. From there I hope to see some good custom bots out.
05/26/2009 18:53 Haetataki#11
Hm, Doom is using C++, should be somewhat similar ;D
I'm not sure tho if it's a great idea to keep it open source, unless you want them to make a method to bypass your bypass ^^
Tho the keyboard device driver thingy seems save to me. Don't know how they could possibly make that stop from working. But, you need to get HP/MP and stuff from the game interface as well, how are you doing that?
05/26/2009 19:30 Night Dragon#12
Quote:
Originally Posted by Haetataki View Post
Hm, Doom is using C++, should be somewhat similar ;D
I'm not sure tho if it's a great idea to keep it open source, unless you want them to make a method to bypass your bypass ^^
Tho the keyboard device driver thingy seems save to me. Don't know how they could possibly make that stop from working. But, you need to get HP/MP and stuff from the game interface as well, how are you doing that?
Yeah thats what I thought when I started to do my bot in C#.. its gotta be close to the same as C++.. dead wrong lol. Gotta learn everything all over again. As for the HP/MP, thats another matter for another day lol I'm not interested in HP bars and pots, I am just making a macro of sorts to do something like send TAB, wait 1 second, Attack, wait 7 seconds, Loot, wait 2 seconds, Loot again, wait 1 second, do quick self heal/use small pot, wait 1 second, repeat sequence.
And again, my bot will not have a GUI at first so that is why I am releasing the code as open source, so that people can change their hotkeys and timing intervals, and assign more keys as needed.
05/27/2009 00:02 Gertos#13
Quote:
Originally Posted by Night Dragon View Post
Yeah thats what I thought when I started to do my bot in C#.. its gotta be close to the same as C++.. dead wrong lol. Gotta learn everything all over again. As for the HP/MP, thats another matter for another day lol I'm not interested in HP bars and pots, I am just making a macro of sorts to do something like send TAB, wait 1 second, Attack, wait 7 seconds, Loot, wait 2 seconds, Loot again, wait 1 second, do quick self heal/use small pot, wait 1 second, repeat sequence.
And again, my bot will not have a GUI at first so that is why I am releasing the code as open source, so that people can change their hotkeys and timing intervals, and assign more keys as needed.
It is easy to read the info from the screen in C#
Here an example:

Code:
        public static Bitmap GetBitmap(int x, int y, int dx, int dy)
        {
            Bitmap screenCopy = new Bitmap(dx, dy); 
            using (Graphics gdest = Graphics.FromImage(screenCopy)) 

            using (Graphics gsrc = Graphics.FromHwnd(IntPtr.Zero)) 
            { 
                IntPtr hSrcDC = gsrc.GetHdc(); 
                IntPtr hDC = gdest.GetHdc(); 
                int retval = BitBlt(hDC, 0, 0, dx, dy, hSrcDC, x, y, (int)CopyPixelOperation.SourceCopy); 

                gdest.ReleaseHdc(); 
                gsrc.ReleaseHdc(); 
            }

            return screenCopy;

        }
and the result is a bitmap with the part of the screen.
05/27/2009 01:42 Haetataki#14
What would it help to receive an image from the HP bars etc? You need values...
05/27/2009 08:51 Gertos#15
Quote:
Originally Posted by Haetataki View Post
What would it help to receive an image from the HP bars etc? You need values...
lol, sure.
And that is the first step.

Now you can count the green pixel or parse the numbers with the normal functions.

I am not talking about am bmp file on the HD.
This function fills you a bitmap stucture in memory reachable from your own program.

So GG can't block the GetPixel() Function for example.