Help me get started (bots!) menu

User Tag List

Results 1 to 12 of 12
  1. #1
    perksplus's Avatar Private
    Reputation
    1
    Join Date
    Nov 2013
    Posts
    4
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    Help me get started (bots!)

    Hello! I'm looking to get started making bots for MMO games. I've got some knowledge about programming in C++, but my projects where always self-contained and never interacted with anything else. Just small simple 2d games. I found that for me the hardest thing was to get started, once I figure out how to write a 'hello world' program I feel like I've got something I can work on for hours and hours and do something interesting with.

    That said bots seem like a completely different animal to me and I'm not sure where to start. I've done some searching around. I'm mostly looking for the 'hello world' version of a bot. Something I can start fiddling around with. My short term goal is to make a program that will say 'hello world' in Runescape, and the same thing in EVE Online.

    So if it's at all possible can someone explain to me, like I'm in elementary school... What tools can i use to do this that could be expanded on into a larger project eventually?

    Edit: Still looking for guidance and I thought I'd update this a little bit with what I'm thinking here. I'm looking at something called Autoit and it seems to be pretty good for the clicking and typing a bot would have to do.

    I'm still not sure how you would go about getting relative information for Autoit to use. For example if I want to type 'hello world' in the runescape client the chat box needs to be selected. How does one get information like where the chat box is and if it's selected or not out of the client to be acted on by Autoit?
    Last edited by perksplus; 11-12-2013 at 06:05 PM.

    Help me get started (bots!)
  2. #2
    karnkore's Avatar Member
    Reputation
    7
    Join Date
    Sep 2012
    Posts
    130
    Thanks G/R
    1/3
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    For mmo games there are normally either pixel bots or key press bots. Pixel bots are easiest, just scan the whole screen with autoit and click if the pixel color is what you want. For key press bots you need to get good at reading the game's memory, ideally you want to be able to parse the entity list which is either stored as continuous memory or pointer to element type data structure, you need to understand basic computer science for this. So you get your players position, health etc, parse the entity list and do a distance check using linear algebra, hooray a mob is near you now you can go attack it, or just use the game's tab key to select closest target. If its a point and click game you can either project the entity world coordinates to screen coordinates and click that location or hook a certain function to do with movement in the game. For a WASD based game the simplest way is to record a path with waypoints and be able to follow that path in a loop, for this you need maths to work out heading angles, rotation and how long a key needs to be pressed. If you want you can also inject code into the game through dll injection and have stuff drawn on the screen or write values like heading directly into the memory, but my advice is to leave dll injection out as its easily detected and can get you banned. The most advanced bots use navmeshes to have perfect 3D pathfinding instead of waypoint method, this is done by parsing the game's maps offline and generating navmeshes which are loaded later into the bot, recast navigation is the preferred method for that.
    Last edited by karnkore; 11-13-2013 at 06:22 AM.

  3. #3
    perksplus's Avatar Private
    Reputation
    1
    Join Date
    Nov 2013
    Posts
    4
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Thanks a bunch for the reply. I've been doing a lot of reading on the subject and I think for my more long-term goals color bots aren't going to cut it. The goal eventually is to have bots that buy and sell things on MMO markets for profit. So I'm also not really concerned about pathfinding and navigating environments, should make things a bit simpler for me. Knowing this, do you think there's a an obvious learning path for me to take? Maybe some example code/tutorials that can pull some usable data out of memory? I'm also assuming if you're not using something like auto-it you need to alter the game's client to make inputs.

    It seems like there is so much to learn and there's so much available I could spend a very long time just figuring out what I need to know. Just need some advice to push me along an efficient path.

    I'm pretty confident that if I can get a set-up where I have all the relevant data about the items and commands to buy them off the market and list them I could handle the logic part. It's just getting to the point where I have something that i can mess around with to do logic based on that information (which I know is a large part of botting) that I'm having a huge problem grasping.
    Last edited by perksplus; 11-13-2013 at 04:22 PM.

  4. #4
    karnkore's Avatar Member
    Reputation
    7
    Join Date
    Sep 2012
    Posts
    130
    Thanks G/R
    1/3
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    There is no easy way to do it, you can buy items through in game clicking, memory writing, function hooking, packet altering (man in the middle attack). The skills you ideally should know are C++, Intel x86 assembly (protected mode), how game engines work, algorithms/data structures, about PE executables, what info they contain, is the exe packed? does it use ASLR? Networking using winsock since most games use it, then reverse engineering, debugging, dissassembling code with ida pro, looking for packet encryption constants, hooking winsock functions to act as a packet logger, hooking function using ida prolog. As a begginer you can look into cheat engine tutorials to get started on memory reading, although without knowing about pointers and data structures it will be almost useless.

  5. #5
    perksplus's Avatar Private
    Reputation
    1
    Join Date
    Nov 2013
    Posts
    4
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Thanks again. May not seem like much, but when you're pretty much clueless about this stuff a few key words can go a long way. I found what I think are some pretty decent tutorials on reverse engineering and I'm having a lot of fun screwing around with ollydbg. Should keep me busy for a few weeks and I think it branches into just about everything you mentioned in your post.

  6. #6
    Tilp's Avatar Private
    Reputation
    1
    Join Date
    Aug 2013
    Posts
    9
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Perksplus,

    Just thought i'd add in here. I personally write my bots in C#, as it is incredibly easy to create the GUI (Visual Studio), and it is fairly straight forward to read/write to process memory.

    Here is a good link for reading the memory of a process: BlackOdd: [C#] Read and write process memory in Windows

    This is a great tutorial for learning C#: C# Tutorial

    So, I would go about it like this:

    1) Download Cheat Engine and do the built-in tutorial. It forces you to learn about pointers (just read wikipedia on it)
    2) Read the C# tutorial. Everything you don't get, look it up and take notes
    3) Try to make your first C# program and expand on it to read process memory (remember how pointers work for when you write this part of the code, as you will have a baseaddress and offsets from Cheat Engine to follow)
    4) Decide on what method of writing in data you want to use: SendMessage (just like typing on keyboard, hard to be detected), hooking in assembly code into memory, creating and sending packets directly to server. I haven't tried the two latter yet, that is my next project.

    Just let me know if you need any guidance.


    M

  7. #7
    perksplus's Avatar Private
    Reputation
    1
    Join Date
    Nov 2013
    Posts
    4
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Thanks bud. Again much appreciated. I think i'm on the right track now, or at least I've given myself a bunch of work to do. Right now I'm going through a bunch of crackme's in these tutorials Tutorials « The Legend Of Random ...eventually it works its way into DLL injection and ways to manipulate an existing application. At worst I'm having some fun going through these and I don't think you can avoid learning about pointers and how memory works in general when you're stepping through assembly code 1 line at a time. Not sure I'm sold on C#, but I'll definitely check out Cheat Engine. Just read a few paragraphs about it and it seems like a much more direct route to get to what I want than what I'm doing.

    Thanks again, cheers! I'm sure I'll be back with some questions once a crunch through a few more tuts and get started on a bot.

  8. #8
    ZenLulz's Avatar Corporal CoreCoins Purchaser
    Reputation
    59
    Join Date
    Jan 2012
    Posts
    20
    Thanks G/R
    1/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Hey there,

    It's clear that you have to understand how the memory works and how to deal with. Pointers, structures and other cool stuff must become your friends !
    To add a hint to the Tilp's post, there are various memory injection libraries on the scene that perform all the dirty work for you when you reading/writing the memory.

    Here is a list with the main existing libraries (C/C++, C# and other languages): http://www.ownedcore.com/forums/worl...rary-list.html (Memory Hacking Library List)

    Good luck !
    ZenLulz, Author of MemorySharp - A C# based memory editing library.

  9. #9
    Niggahigga's Avatar Sergeant CoreCoins Purchaser
    Reputation
    1
    Join Date
    Oct 2013
    Posts
    52
    Thanks G/R
    0/0
    Trade Feedback
    3 (100%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Bookmarked

  10. #10
    Selvyre's Avatar Active Member
    Reputation
    30
    Join Date
    Jul 2013
    Posts
    104
    Thanks G/R
    0/1
    Trade Feedback
    1 (100%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    If the game you are trying to bot is huge and commercial (something like WoW) i would use a pixel color bot, they are ghetto as hell and kinda untrustworthy compared to a memory bot but if it is a smaller scale game without so much anti-hack built in like tera or swtor or something even less (DONT EVER BOT RIFT YOU WILL GET RAPED - JUST A HEADS UP) then use a memory bot (reading/writing memory to process) because its 100% reliable and it is much faster and less cpu intensive believe it or not
    Skype: Argixx
    Coding Experience: Java: 8 years, c++: 4 years, python: lolk, c#: might as well be java, AutoIt: 1 year

  11. #11
    karnkore's Avatar Member
    Reputation
    7
    Join Date
    Sep 2012
    Posts
    130
    Thanks G/R
    1/3
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    You can use memory read bots without any worry in any mmo with any protection just don't use memory writes that can be detected.

  12. #12
    Selvyre's Avatar Active Member
    Reputation
    30
    Join Date
    Jul 2013
    Posts
    104
    Thanks G/R
    0/1
    Trade Feedback
    1 (100%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    ^^Suppose this is true, have fun taking the risk of finding those though if your going for WoW they have a ton covered and Rift is all covered their anti hack system is just ungodly
    Skype: Argixx
    Coding Experience: Java: 8 years, c++: 4 years, python: lolk, c#: might as well be java, AutoIt: 1 year

Similar Threads

  1. Hey I need some help to get started..
    By MrJonesss in forum Programming
    Replies: 2
    Last Post: 11-17-2012, 04:01 AM
  2. Help, Cant even start bot!
    By krurdek in forum WoW Bots Questions & Requests
    Replies: 4
    Last Post: 04-17-2012, 10:05 PM
  3. Resources to help me get started with custom content?
    By SH4D0WS1N in forum WoW EMU Questions & Requests
    Replies: 6
    Last Post: 01-07-2012, 05:50 PM
  4. [Help Request] Getting started to multiboxing
    By andykh in forum World of Warcraft General
    Replies: 2
    Last Post: 06-02-2009, 05:09 PM
All times are GMT -5. The time now is 03:32 PM. Powered by vBulletin® Version 4.2.3
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved. User Alert System provided by Advanced User Tagging (Pro) - vBulletin Mods & Addons Copyright © 2025 DragonByte Technologies Ltd.
Google Authenticator verification provided by Two-Factor Authentication (Free) - vBulletin Mods & Addons Copyright © 2025 DragonByte Technologies Ltd.
Digital Point modules: Sphinx-based search