![]() |
|
Portal |
Downloads |
Arcade |
CD-Key Shop |
Register |
FAQ |
|
|
|||||||
| Maple Story Talk here about Maple Story. |
![]() |
|
|
Thread Tools |
|
|
#1 |
|
leet noob
Assassin
Join Date: 22nd Dec 2004
Posts: 155
|
WooHoo, I just got PixelSearch (How to find pixels) tutorial done. It teaches you how to detect monsters. No more basic bots. PROZ BOTS here we come
Im not kidding here, even alot of pro's have trouble doing this kind of stuff. Oh and if you just want to know how to get coordinates and ColorNumbers, skip to the bottom and the last 'CodeTidbit' will have it. Hi all here at MPCforums. Ok, first of all, if you’re a pro-hacker. This aint for you. My guide here is for all you people who beg for “bots” everywhere. AKA Leacher. Now, im doing this so you wont have to leach. In fact you can make your own bot very easily. Now I know many of you leachers probably have lower than average IQ’s or are very busy. I sincerely hope you are the 2nd type, so this is for you. This will probably be faster than analyzing the inner workings of “bots” on this forum or looking through the manual. Those who are too busy to look through and see how bots are made. Also, this is the AutoIT version of my tutorial. AutoIT is a little more advanced than ACTool. You can find the ACTool tutorial here. http://www.mpcforum.com/showthread.p...39#post1019739 The ACTool version is a copy paste version with a few paragraphs changed. It is designed for beginners who never learned any type of computer language. This is for people who kinda kinda got an idea of what computer language is, or people who have a lot of sense into putting word lines into sentences. But first, let me start by telling you how “autoIT” is vastly superior to ACTool, so you won’t want to read that other tutorial. (noob talk here) - Able to compile into an .exe (no more working with .mac files. :-), I seen like 5000 people asking how .mac files work… lol) - Has a more comprehensive set of scripts (you can do more stuff!! Get more exp!!) - Has a GUI (Graphic user interface, in other words, you can just press buttons or customize the whole bot without looking through code. Yay. Also, HOTKEYS!!, I know everyone hates going into windows then starting ACTools then going back to ms) Ok. Here goes nothing. I’ve got the program for you to download http://www.autoitscript.com/autoit3/index.php This is just the compiler and runner of autoit. Here’s the Editor. http://www.autoitscript.com/autoit3/scite/downloads.php It is totally safe. I guarantee it. If you want to even run a bot, use this. But don’t blame me if you get banned. You need some common sense as to not bot in channel 1 perion… Alright, lets start. ONE - basic Code:
Send (“LCTRL”) Send (“RIGHT down”) Sleep (2000) Send (“RIGHT up”) Now for most of us, we would use {insert} {home} {pgdn} {pgup} for the potion hotkeys. Then {CTRL} for ctrl, {SHIFT} for shift, and {ALT} for alt. Now these three are a little different. It requires {L or R~~~} for it to work. So basically {LCTRL} would be left control. And finally {LEFT} {RIGHT} {UP} and stuff for all that movement. ‘DOWN’ is a special code put after all the normal syntax. It tells the computer to keep holding down {blah} until it receives code {~~~UP} which it will lift it’s imaginary finger. ‘Sleep’is always put between ‘senddown and sendup’. It delays the ‘down’ so that the pc will actually hold down the {blah} key for more than a split millisecond. Basically ‘Sleep(2000)’ stops giving the pc commands for 2 seconds. (notice 1 = 1/1000 of a second) Very useful if you actually want to have an interval between attacks, which ms HAVE to have... TWO - basic Those keys we learned above are basic of the basic of the basic. Now we need to have it repeat a crap load of times so it will kill more than 1 monster. We have 2 simple ways of doing it, a few others, but these are the easiest. Code:
While 1=1 (your other code here) WEnd Now for ‘stopping While’ loop Code:
$i = 0
While $i <= 10
$i = $i + 1
WEnd
So this part, we start working with variable “i”. Study the code a little, you will see that the code shows that while ‘i’ “is less than or equal to” 10, the while loop will continue. The ‘i=i+1’ means that ‘i’ will go up by 1 every time the code changes. This will make the while loop, loop 11 times, not 10, because ‘i’ will still be equal to 10 after 10 loops, so it will loop 1 last time after the 10th time. Now the fun part, we get to integrate loop and key. Woohoo. Code:
WinWaitActive (“MapleStory”);
While 1=1
$i = 0
While $i < 30
Send (“{LEFT down}”)
Sleep (500)
Send (“{LCTRL}”)
Sleep (2000)
Send (“{LEFT up}”)
$i = $i + 1
WEnd
$i = 0
While $i < 30
Send (“{RIGHT down}”)
Sleep (500)
Send (“{LCTRL}”)
Sleep (2000)
Send (“{RIGHT up}”)
$i = $i + 1
WEnd
Send (“{HOME}”)
End
The first line ‘WinWaitActive (“MapleStory”); means the bot won’t start until “maplestory” is the window on top. Now heres the beauty of AutoIT compared to ACTool. It would start moving left, then tap left control after half a second, and continue moving left for another 2 seconds. (That’s so amazing, less time wasted = more pot efficiency and more kills :-D) Then Do the same thing but move right after 30 attacks instead of left. This will cause the bot to go to the other side after a while because there is no map in MS where it continuously goes one way forever. Notice that after it has looped 30 ways left and right, it does keys {home} This is useful for either A) Recharging a powerup like “soul arrow” or B) Using a potion. Obviously, this is not the most effective way of potioning as you could get hurt more or less after a single run, besides if it is hurt less, you waste some pot power. The While loop on top ‘while 1=1’ means that the stuff between while and end will loop forever cause when did 1 not equal 1? THREE - intermediate The Ok, now we got all the simple stuff out of the way, here is a few more lines of code to learn. Code:
$move = Random (1, 100, 1)
If $move < 50
Send (“{RIGHT down}”)
Sleep (500)
Send (“{LCTRL}”)
Sleep (2000)
Send (“{RIGHT up}”)
Else
Send (“{LEFT down}”)
Sleep (500)
Send (“{LCTRL}”)
Sleep (2000)
Send (“{LEFT up}”)
EndIf
“Random (min, max, flag)” Min meaning the lowest number we want, and max meaning the maximum number we want. Flag 1 means that we want the numbers in intervals of 1, not 0.0000001 as that is what would happen if we didn’t put a flag there. The ‘If $time <50’ means that if the computer generated a number for ‘time’ that is lower than 50, then we will move to the {right} for 1 second. The ‘else’ statement means that if it is a number over 50, then it will move {LEFT}. And of course we got ‘EndIf’ at the end of the statement. If you do not see the obvious advantage of this compared to the Basic bot, then you are either very impractical or just plain dumb. I’ll say it for you people anyways. The randomizer basically gives the computer a 50% chance of going left and a 50% chance of going right. It causes less people to see that you are botting if you are not going in the same direction for like 30 times then turning. It also stops you from attacking the wall after a while, cause it will randomly go right or left, thus will mostly stay in the same area. FOUR – Advanced Ok, now that you know the basic stuff, here is the stuff that even some pro’s are not very good at. PIXEL DETECTION. DA DAA DAAA DAAAA TADAAAA Code:
$coor = PixelSearch( lt, rt, lb, rb, col, dif, sk ) While @error = 0 (Movement/attack Code) $coor = PixelSearch( tlx, tly, brx, bry, col, dif, sk ) Wend PixelSearch is comprised of 7 numbers that need to be imputed. The first 4 are for coordinates and the last 3 are for color detection settings. The four coordinates define a rectangle for the computer to detect the color of the pixel Btw, you should know some basic algebraic graphing… The legend for the symbols after “pixelsearch” Tlx = the top left pixel’s X coordinate. IE (240) Tly = the top left pixel’s Y coordinate. IE (150) bry = bottom right pixel’s X coordinate. IE (260) (Bigger than the TLX #... duh… its more to the right…) bry = bottom right pixel’s Y coordinate. IE (110) (Less than the TLY #... duh…its down more…) Col = the color you want. (Go down to ‘code tidbits’ to find out how to get color) Dif = the color variation that the pixel search will detect, like if the color is a little different, a high number might detect the pixel as well. 0 = only that color) Sk = the pixels you want to skip. This is good for slower pcs. If you want the detection to go faster, just have it only take every 5 pixels. IE (5) So a sample code would be ‘$coor = PixelSearch( 240, 150, 260, 110, 0x02938, 2, 2 )’ (Btw, if anyones wondering how to get your pixel coordinates and color coordinates, go to ‘code tidbits’ on the bottom.) PixelSearch basically finds a pixel of that color, and tells you where the coordinate of that said pixel is in (X,Y) terms. It is not useful to us, BUT the new variable ‘@error’ that it generates is very useful to us. It will become ‘@error = 1’ IF there is no color that you wanted in that rectangle. So the ‘While @error = 0’ means that if there is a pixel in the rectangle in that area, it will do the (Movement/attack code). The second pixeldetect is inside the while loop, so you can do the process over and check for new monsters. Alright, im done with 4 lessons. Didn’t you learn a lot? XD Now you can make your own detection bots. Don’t use in a crowded area, cause people are bound to see you attacking left and right so regularly. Don’t bitch to me when your account gets banned. That’s just common sense. FIVE – Intermediate Now lets work with functions. Functions are basically code snippets that let you do the same thing over and over without having to rewrite the code again. Read the code, maybe understand better. [CODE] Code:
WinWaitActive (“MapleStory”); While 1=1 $move = Random (1, 100, 1) If $move < 5 AttackMove() Else ChangeChannel() EndIf WEnd Func AttackMove() (Attack & movement commands) EndFunc Func ChangeChannel() (Change channel snippet, found below) EndFunc This is very useful for organizing complicated scripts (like 100+ lines… ZOMG 100…) It also lets you call on the function it whenever you want to, it is very useful when you get into more complicated scripts. How to change to .exe Ok, it seems there’s some confusion as to how to change the AutoIT files into .exe executables. Just go to your start menu, then go to AutoIT folder. Inside there is a program called compile to .exe Compile basically means, change the autoit code into computer exe code. It is that simple. Then double click the exe file just like any other and it will work. Heres a few extras that I think is pretty useful and SIMPLE. Code Tidbits Sins attack Code:
Send (“{LALT}”)
Sleep (85)
Send (“LCTRL”)
Channel Changer Code:
Sleep (2000)
Send (“{ESC}”)
Sleep (750)
Send (“{ENTER}”)
Sleep (750)
Send (“{RIGHT}”)
Sleep (100)
Send (“{ENTER}”)
Sleep (1500)
Send (“{RIGHTdown}”)
Sleep (4000)
Send (“{RIGHTup}”)
Basically that above code means that you press esc, then enter for channel, then right press for next channel, then enter that channel, then move to the right 4 seconds. This is a small snipet I made in a minute for pig beach, cause when you change channel you always end up on that safety ledge on the left side of the screen and you have to move a little to go down to the pigs. Now put that code (with or without the last 2 lines which are exclusively for pigbeach) right before your ‘end’ statement for your while loop. Like this Code:
While ~~~ = ~~~ (ALL other crap) Channel changer snipet WEnd Random movement Code:
$move = Random (200, 1500, 1)
Send (“{RIGHTdown}”)
Sleep (500)
Send (“{LCTRL}”)
Sleep ($move)
Send (“{RIGHTup}”)
How to get color and coordinates Coordinates: Code:
WinWaitActive (“MapleStory”); Sleep (5000) $pos = MouseGetPos() MsgBox(0, "Mouse x,y:", $pos[0] & "," & $pos[1]) Heres the color one Code:
WinWaitActive (“MapleStory”); Sleep (5000) $pos = MouseGetPos() $var = PixelGetColor( $pos[0] , $pos[1] ) MsgBox(0,"The decmial color is", $var) MsgBox(0,"The hex color is", Hex($var, 6)) Ok, if you want to know the color. Run this while maple is on. It will give you 5 seconds to get your mouse onto the monster that you want to bot on. Then it will shoot out the message box, and tell you the decimal and hex of the color your mouse was on. The color, you just put it into pixel detect like this “0x(hex or decimal)” IE (0xFFFFFF) There, you got your own pixel and colors YAY!!! Gimmie props, it took me a while to figure out how to do the coordinate detection and color detection NOTICE: If you just copy and paste these codes into an editor, you might have to delete the (“)’s and rewrite them. For some reason SciTe doesn’t accept some of them Example AutoIT programs These are a few examples of AutoIt programs with GUIs (Graphic User Interface) Very cool, but I need to learn how to make GUIs myself first… lol Heres an AUTO POTTER made by our own gunbound11111 http://www.mpcforum.com/showthread.php?t=101910 LakelisBot is an AutoClicker. It is probably the most refined one i have seen as far. It gives 2 mouse positions, one on the (OK button, after lakelis says theres a party inside) and the other one, you set yourself Instructions: F9 = keep your mouse on lakelis, and press F9, it will lock position on lakelis F10= Start autoclicking F11 = Stop autoclicking (Do not press Esc, it will close the bot itself...) This autoclicker lets you start your AC even when you are near JM from the streetz. It is very useful cause ping is more important than how fast your ac goes, and if theres not like a million people jumping aroudn while you ac, you ac alot faster And I put in an autoLooter I got from gamerzplanet Just press active for always pressing Z or passive for “only press z when walking” Then hold * ingame to start the "ZZZ"ing
__________________
Everyone starts out noob. Some just can't get out of the trend. ![]() I think I'm discriminant against dumb people.
Last edited by MERUxOMG; 27th September 2005 at 06:52.. |
|
|
|
|
#2 |
|
Join Date: 6th Aug 2005
Posts: 129
|
pretty detailed .. thumbs up
__________________
In this world , there's only two type of people ..one with talents and another without it. There's no stupid people but only lazy people .. who wished to be spoonfed everytime
|
|
|
|
|
#3 |
|
leet noob
Assassin
Join Date: 22nd Dec 2004
Posts: 155
|
woo yeah.
Finally got up the functions and Pixel Detection tutorials up. I know alot of people would want those. ![]()
__________________
Everyone starts out noob. Some just can't get out of the trend. ![]() I think I'm discriminant against dumb people.
|
|
|
|
|
#4 |
|
Lord of Destiny
Join Date: 26th Jan 2005
Posts: 74
|
nice.. i was having probs.. thx ^^
|
|
|
|
|
#5 |
|
Overwhelming Ex-GMod
Power Overwhelming
|
Code:
File: autolooter.rar Status: INFECTED/MALWARE (Note: this file has been scanned before. Therefore, this file's scan results will not be stored in the database) MD5: a876bd6fc8aac5bde50e6addc981f786 Packers Detected: UPX, AUTOIT Scanner Results AntiVir: Found Nothing ArcaVir: Found Trojan.Psw.Agent.Bn Avast: Found Nothing AVG Antivirus: Found Nothing BitDefender: Found Trojan.PWS.Agent.BN ClamAV: Found Nothing Dr. Web: Found Nothing F-Prot Antivirus: Found Nothing Fortinet: Found Nothing Kaspersky Anti-Virus: Found Nothing NOD32: Found Nothing Norman Virus Control: Found Nothing UNA: Found Nothing VBA32: Found Nothing Source: Jotti's Virusscan Code:
File: Lakelis_Bot.rar Status: INFECTED/MALWARE MD5: 4afafe2e3bca21487f8cb3d088948c16 Packers Detected: UPX, AUTOIT Scanner Results AntiVir: Found Nothing ArcaVir: Found Trojan.Killapp.I Avast: Found Nothing AVG Antivirus: Found Nothing BitDefender: Found Nothing ClamAV: Found Nothing Dr. Web: Found Nothing F-Prot Antivirus: Found Nothing Fortinet: Found Nothing Kaspersky Anti-Virus: Found Nothing NOD32: Found Nothing Norman Virus Control: Found Nothing UNA: Found Nothing VBA32: Found Nothing Source: Jotti's Virusscan
__________________
Your biological and technological distinctiveness will be added to our own. Resistance is futile. Last edited by Diddle; 26th September 2005 at 18:54.. |
|
|
|
|
#6 |
|
Join Date: 4th Feb 2005
Posts: 20
|
a little note on the direction code... It should be
Send ("{RIGHT down}'), and etc... MERUxOMG...u wouldnt mind i if i point this out right?.....cuz i tried ur code and it didnt work, so i look up the help file and notice that ur code has a little error.....that's all.... |
|
|
|
|
#7 |
|
Apprentice Knight
Join Date: 23rd Jun 2005
Posts: 75
|
lol i think that comment was well written
thats just me..... oh ya & great work its nice for noobs =D Last edited by pooper12321; 27th September 2005 at 02:26.. |
|
|
|
|
#8 | |
|
leet noob
Assassin
Join Date: 22nd Dec 2004
Posts: 155
|
Quote:
lol, jk. ____________________ Yeah im open for reviewing and revising. Thx for pointing it out. If any other problem, tell me, cause i only checked up on half of the code ![]()
__________________
Everyone starts out noob. Some just can't get out of the trend. ![]() I think I'm discriminant against dumb people.
|
|
|
|
|
|
#10 |
|
leet noob
Assassin
Join Date: 22nd Dec 2004
Posts: 155
|
Thx all.
This has been a great experience for me. It took me quite a while to understand pixelSearch, But after that, it was pretty easy to create the "get color Hexes" and "coordinate" scans Next step, time to work on GUI!!! ![]() _______________________________ Shit this could be harder than i thought :smoke: ![]() _______________________________ Ok, after reviewing GUI functions, i see that it is impractical for noobies to learn GUI. Only people who want to help and post GUI's for easier access to the code. For example, it can create a list, and give people variables and where they want to hunt... But for now, i dont think it is needed. It took all of 20 minutes to understand a few of the GUI command codes, so it shouldnt be too hard for those who actually want to help. But im done with this tutorial, maybe add some more "Code Snippets" as i think of them ![]()
__________________
Everyone starts out noob. Some just can't get out of the trend. ![]() I think I'm discriminant against dumb people.
Last edited by MERUxOMG; 27th September 2005 at 06:43.. |
|
|
|
|
#11 |
|
Join Date: 16th Jun 2005
Posts: 4
|
omg it work thank u ,ur great two thum up ,
$coor = PixelSearch( lt, rt, lb, rb, col, dif, sk ) While @error = 0 (Movement/attack Code)<--------------------------------wat i need to put for my char to move to the monster $coor = PixelSearch( tlx, tly, brx, bry, col, dif, sk ) Wend Last edited by shon24; 28th September 2005 at 08:08.. |
|
|
|
|
#12 |
|
Eltit Resu Motsuc
Lord of Destiny
Join Date: 16th Jun 2005
Posts: 67
|
what your telling me is the boy targets certain monsters then kills them ? o.o
|
|
|
|
|
#13 | |
|
leet noob
Assassin
Join Date: 22nd Dec 2004
Posts: 155
|
Quote:
And im not putting this in the tutorial, because it is inpractical Code:
$coord = PixelSearch( 0, 0, 20, 300, 0xFF0000 )
If Not @error Then
MsgBox(0, "X and Y are:", $coord[0] & "," & $coord[1])
EndIf
PixelSearch creates a "@error" variable, for if there is that color or not. It's main purpose for most people is to find the coordinates. If they did $coord = PixelSearch then they get an array back, and does this $coord[0], $coord[1], which gives the x and y coordinates. Then, i guess we can just use the pixels and find where it is, and we do a like this Send ("{LEFT down}") Sleep ("$coord[0]}") or something, so your person will move a little to that monster. But like i said, it will be very time consuming to find out how your person moves when reacted to the coordinate... so impractical. (basically, warriors are not good pixel detection botters)
__________________
Everyone starts out noob. Some just can't get out of the trend. ![]() I think I'm discriminant against dumb people.
|
|
|
|
|
|
#14 |
|
leet noob
Assassin
Join Date: 22nd Dec 2004
Posts: 155
|
its called, screen shot, copy and crop
![]()
__________________
Everyone starts out noob. Some just can't get out of the trend. ![]() I think I'm discriminant against dumb people.
|
|
|
|
|
#15 |
|
Guest
|
can u give tutorials on looter which is uninterrupted in chat boxes?
|
![]() |
| Bookmarks |
| Thread Tools | |
|
|
![]() |
![]() |