View Full Version : MapleStory Botting
Pradu
21st February 2006, 23:49
Hi all,
This is my first post here and hopefully it can be somewhat useful.
I have started writing a botting program using Windows system hooks. It has both recording and playback of keyboard/mouse events using these hooks. My program is written in both Java and C. Apparently Java by itself isn't capable of installing system hooks so I had to write a C program that installed the hook and communicated with the Java program through a pipe. I use the C program to install the hooks and use the java.awt.Robot class to playback recordings.
Now here's the problem.
The WH_JOURNALRECORD hook won't work with Maple Story (Global) because gameguard/nprotect seems to block this type of hook. But there is a way around this using low level hooks like WH_KEYBOARD_LL and WH_MOUSE_LL which reads directly from the respective device driver. Now my program can record input from inside maple.
The playback also works fine, except when Maple Story currently in context. Now that I have figured out how to get past input problems, I'm a little stuck on how to playback what I've recorded. Do I have to write playback code in assembler or does anyone here know of a simpler way of playing back recorded input with MapleStory in context.
I have attached my current application (run the .jar file not the .exe file). If you get a main class not found error run the jar file with arguments specifing that MainFrame is the main class.
jeffy_jai
22nd February 2006, 01:14
hey if you can get a bot to work does it mean you understand how to bypass the nProtect/gamegaurd of ms?
`EDITS:: whups read a bit fast. nvm
fool_walker
22nd February 2006, 03:05
Yeah, ur project work fine except Maple in context. Just like Auto-It macro, in desktop it's work fine even GG running, but no effect when switch to Maple.
Ur project is fine while playing, but when Press F12 to Stop, it's hangs a while and so on.
Im not a programmer, so I cant help u in coding. But I suggest 1 method. Using method like OnScreen Keyboard of Windows. When u play Maple, u press a key in OnScreen Keyboard, it's perfectly input in to maple, like we press a button on keyboard.
Btw, hope u success in this project. I like all marco program.
eternal_dream
22nd February 2006, 04:22
U got the way, keep on it for mpc :)
Pradu
22nd February 2006, 04:25
I finally figured out why it dosen't work when Maple Story is in context and it dosen't have to do with gameguard either. It seems Maple Story uses DirectX's DirectInput. SendInput inserts the events in the Windows event queue, but DirectInput bypasses it and hooks directly into the keyboard/mouse driver and ignores whatever PURBot sends. The only way I know to get past this is writing a virtual device drivier that inserts keyboard /mouse input directly into the keyboard/mouse buffer. I guess I have to do this assembler...
Btw, hope u success in this project. I like all marco program.
U got the way, keep on it for mpc
Thanks for the encouragement. I plan to implement pixel/image recognition and logical instructions as soon as I fix this DirectX problem. Hopefully it all works out.
eternal_dream
22nd February 2006, 04:35
U learn Dev C from?
Pradu
22nd February 2006, 04:44
U learn Dev C from?
I actually learnt programming in Java first and expiremented with the C programming language while writing a chess program (http://witz.sf.net/). It was easy to teach myself C because it is very similar and simpler compared to Java.
eternal_dream
22nd February 2006, 04:52
Oh, u learn from the tutorial. I thk u got teacher for learning it. Just asking.
Pradu
22nd February 2006, 04:56
Yeah I don't think this discussion is on topic with the first post. I had no teacher for learning C, but I did for Java. If you want to learn C you can PM me and I'll give you my MSN name and can teach you C. I am unable to PM because I don't have the minimum 10 posts required to PM...
eternal_dream
22nd February 2006, 05:00
Nah, i knw abt programming. I have learn it from my brother. But, i need to ask my brother if i want programming bcoz i dnt untd so much.
duhkid
22nd February 2006, 14:28
where is the recorded file saves to? and how to use it?
andrewlim
22nd February 2006, 14:31
can u teach me the basic steps to use this? thx
fool_walker
22nd February 2006, 14:58
This is havent done yet. So u guyz pls wait for sometimes. I belive he can make it.
ts29e
22nd February 2006, 15:05
Just use Hot Keyboard Pro..Problem solved.
Pradu
22nd February 2006, 18:14
Just use Hot Keyboard Pro..Problem solved.
Hot Keyboard Pro only does Keyboard input/output. If there was another free botting utility that does mouse and keyboard io and gets past gameguard/DirectX and allows AI Botting, I wouldn't be making this application.
This is havent done yet. So u guyz pls wait for sometimes. I belive he can make it.
I will make it :). I hardly have free time right now so mabe I can make a simple release here in a couple weeks or earlier.
duhkid
23rd February 2006, 10:58
pradu so how do i use the recorded file?
Flop
23rd February 2006, 12:36
purbot gets caught by maple story as a hacking thread
Pradu
23rd February 2006, 19:48
pradu so how do i use the recorded file?
Tools-->Run Displayed Bot
purbot gets caught by maple story as a hacking thread
I think I've already stated this in my first post, but I will fix this soon. By doing input output directly from device drivers instead of injecting hooks into processes.
mamma
23rd February 2006, 20:24
I used to use Macro in Tibia (www.tibia.com), and i never uninstalled my macro when i started playing ms. now, when i accidently hitting my button for macro in tibia, my mouse starting to move(inside maple). i guess Iolo macro magic works for maplestory?
Fortunity
23rd February 2006, 20:31
Nice bot. :)
I hope i dont get banned like with the last one i used...
vBulletin® v3.8.4, Copyright ©2000-2009, Jelsoft Enterprises Ltd.