![]() This would then be able to be queried and interacted with by scripts via an API that the client exposed. Later, clients would be developed that used decompilation and reflection of the Java game client to directly read game state in the form of Java objects. Jagex would likewise respond with bot mitigation that was intended to fool the color detection system, for example by making flax have the same color whether it could actually be picked or not. So for example a flax picking bot might be coded to click on specific colors of cyan on the screen. Or your bot could just control the mouse in a somewhat realistic way and avoid needing to do extra work.įor reading game state, many bots in this time used color detection. The game client gathered metrics on mouse movement though, so if you used direct packet injection you still had to fake the mouse movement to some extent so you could escape this rudimentary detection. AutoRune was a popular client that sent direct packets. > Would they move your mouse based on the GUI, or directly send packets?ĭepends on the client that was used. It was incredibly rude, and after a while I just stopped using the autominer since it wasn't saving me any time or effort, and was turning me into an antisocial jerk. When enemies came to grief us during mining, my character would just ignore them and keep mining. The worst part is that I was in the vicinity of actual miners who were all talking to each other, and sharing stories, and I was just this dumb mute. This resulted in me having to keep an eye on it whilst it "automines", which was frustratingly boring, and probably is similar to what certain drivers feel in their autopilot cars. At one point I came back to the machine after dinner and found myself running in the wilderness. I had no other inputs beyond that, and I remember that the script would work well for about an hour or two and then I'd accidentally try to attack something else that had the nerve to sparkle at me, which would send me on a wild goose chase. If a mineral was ready to be mined it would sparkle with a distinct and small white star. I wrote my own auto miner for RS3 (though it would have worked for RS2 too), and it was my first foray into the OpenCV and blob detection. I wrote some OpenCL code for my GPU in the very early days when "GPGPU" was a new idea, but was never able to get it fully working because mIRC used 64-bit floating point arithmetic and the least significant digits were relevant to the outcome of the RNG, and my GPU was only 32 bit. Turns out it was a linear congruential generator which was in principle brute forceable given a few consecutive rolls. I took an educated guess that the channel operators were running bots with mIRC, and reverse engineered the random number generator in the mIRC client (which was fun, because it was written in C++). ![]() Later on there was also a gambling culture of "dicing" where you'd join an IRC channel, type a command to a bot like '/roll', and get paid in-game if the 'dice roll' came out in a certain way. Joke's on me though, because that game consumed several years of my life and I spent a lot of money buying several years worth of "members". I was also not hit by any of the big banning waves, since I didn't rely on reflection in Java or use any of the popular "frameworks" for macroing. I never got hit with random events (in-game captchas), because I never stayed logged in for more than a minute or so. I'd then sell them in bulk for several times more. The bot basically world hopped constantly, 24 hours a day, and bought cheap items until the general store was depleted. This defeated a lot of the randomisation that Jagex applied to stop bots, since the text was always in the same place, a consistent colour, etc whereas everything else was pretty well randomised.įrom there, it could "read" enough to find the right places to click to buy things. I wrote a cool function to count the number of letters in the text, as a kind of rudimentary OCR. To find the store operator NPC, the script would move the mouse randomly over the game window and detect the yellow text in the top left. I made a sizeable sum of GP in the early RS2 days by writing a bot that automatically bought items from underpriced general stores.
0 Comments
Leave a Reply. |