We were unable to load Disqus. If you are a moderator please see our troubleshooting guide.

klasmicaS7 • 6 years ago

How did you made the clientless part of the bot? I want to make a bot for an MMORPG but i really want it to have clientless, that way i can run a lot of other accounts without raping my CPU and memory. I searched a lot about clientless bots, but almost all the answers i see are talking about having to use sockets and intercepting the connections between the client and the server.
Maybe can you help me with that? I just need a start point, maybe if i know how you managed to implement clientless on your bot, i can get a hint on how to do the rest myself

Eric Carmichael • 6 years ago

Yeah, the main way a "clientless bot" works is by just communicating with packets. The underlying "thing" that makes games multiplayer is this transportation layer, removing the graphical layer on top is what makes a bot "clientless."

It is pretty difficult to completely represent the "state" of a game all on your own, keep up with patches, etc.!

klasmicaS7 • 6 years ago

Thanks Eric, you gave me a huge starting point! Also, what programming language you recommend me to use for this bot? I am thinking of using c++, but since i'm going to use packets and networking programming, i don't know if c++ is good for that.

Eric Carmichael • 6 years ago

Python :)

Beautiful and simple.

Joe • 9 years ago

This looks very interesting, is there any way the source could be shared?

Eric Carmichael • 8 years ago

I think you can find it someplace, "AGBotting" is what it was called -- long gone from my storage :(

Daniel Butler • 5 years ago

Very cool. I loved playing D2 with my brother when we were younger. I wish I would’ve picked up programming back then but got into it later in life.

If you have any suggestions on where to find dev guides on d2 bots I’d love to explore them.

Eric Carmichael • 5 years ago

My son has been getting into Python and he likes Diablo 2... I have been dying to sink a bunch of time into some cool Python pixel based bots. Try to traverse a random map, Catacombs Level 2 or something.

Maybe I should just start doing it and fund it via some Patreon or something... would be such a blast!!

EDIT: To be clear the project would be open source and you could write fun little Python bots yourself :)

Daniel Butler • 5 years ago

That’s is so cool. I’m glad your son is liking the game. It seriously taught me so much about grinding, economics, not selling yourself short, specializing, and of course destroying people in pvp. My step daughter is too much into music (Like her mother) and Minecraft.

I’m a python web developer so your speaking my language there! How would you approach the pixel based bots, using opencv or something much more low level?

Eric Carmichael • 5 years ago

> I’m a python web developer so your speaking my language there! How would you approach the pixel based bots, using opencv or something much more low level?

Nice! Are you a Django guy? That's my gig, my small shop is ckcollab.com :)

I should really write an article about the "OCR" I made for Diablo 2 years and years ago. I was thinking something simple to read text from the screen, train a network to identify certain objects, try to identify/pickout the world map so you can use it to path... lots of fun problems, may actually be worth streaming that..

Bummer your step daughter is a minecraft nerd! Yeah Diablo II taught me a lot about myself, getting scammed and then scamming people myself (trade swapping out uniq shacos for poison shacos and such) -- not my proudest moments.

Daniel Butler • 5 years ago

I’ve made a few Django projects. I would not call myself an expert by any means. I’m leaning towards fastapi lately.

I would be all about learning how to pull some rudimentary “OCR”. I’ve been looking for dev guides on D2 Bots. I mostly automate back office work. Not the most technically challenging.

Ahh yeah the scamming. Meet me at A2 bar, frees for trust :)

thefredelement • 6 years ago

Would you be interested in collaborating on an app/platform for this? I"m thinking Mac OS w/Swift :). @thefredelement on Twitter if you're interested. If not, can you point me in the direction of the packet info?

Eric Carmichael • 6 years ago

I am rather interested in a more general solution, that is less powerful but applies to every game. I did some research, though, and it's against the law to break games ToS agreements :(

Kman • 7 years ago

Now, I have only basic knowledge of csharp and honestly am mostly a copy paster... I probably can't program a bot like this myself. How much would it cost to have you reprogram me the one you had or even a new one for a different type but similar game?

Eric Carmichael • 7 years ago

I've actually been thinking about doing some automation again, please email eric@ckcollab.com with your budget and game plan!

CompeAnansi • 7 years ago

Since you no longer have the source, the part of the system that interests me most is your ability to generate maps from map seeds. Could you maybe walk through some of the logic behind that process if you remember it?

Eric Carmichael • 5 years ago

I, thanks to the reverse engineering work of others, could call the generate map functions given the seed you receive in the game start packet. The generate map functions lived in some dll somewhere and, I believe, you needed MPQs next to it so it could find the map tiles and such. May be wrong on that.