SRL Archive - News and General

Making a bot...


**BANNED The Man

2010-12-31 12:33:43

Hey guys :D
Ok, so I was talking to and friend an thought it would be cool to make a runescape bot.
Inb4DerBeL0ads!
1. For the educational ride
2. Maybe something new?
I would rather not make the same old Java bot.
I don't want to make a colour bot, SRL/SIMBA are awesome and I wouldn't want to go against them :D <3
I was thinking maybe research OpenGL, Packets?

If anyone is interested in learning about this, and maybe in the process create a bot with me, I would love anyone to join me :)

-Boom

Frement

2010-12-31 12:39:26

About the OpenGL, (I wonder who you talked with), its not as easy as you might think, you need to know how to use OpenGL before you can code the wrapper to intercept the models and interfaces you want to intercept. There is much that needs to be learned and researched before it is even close to usable. Packets are no use, as someone stated that they are encrypted and every time there is an update, the encryption changes (Correct me if I'm wrong, but I read this somewhere).

**BANNED The Man

2010-12-31 12:42:29

From: Frement
About the OpenGL, (I wonder who you talked with), its not as easy as you might think, you need to know how to use OpenGL before you can code the wrapper to intercept the models and interfaces you want to intercept. There is much that needs to be learned and researched before it is even close to usable. Packets are no use, as someone stated that they are encrypted and every time there is an update, the encryption changes (Correct me if I'm wrong, but I read this somewhere).


Packets - Hmm, well ok, if that is the case maybe I need to rethink :P
OpenGL - Yes, I do understand that there is a lot of research needed, as with a lot of this stuff. I am willing to put in that research.

-Boom

Method

2010-12-31 12:44:35

From: Frement
Packets are no use, as someone stated that they are encrypted and every time there is an update, the encryption changes (Correct me if I'm wrong, but I read this somewhere).


No, they're not encrypted. Packet opcodes, however, are encrypted using the ISAAC stream cipher, but that wouldn't be a problem for the bot. The packet opcodes do change every client build, though, and the data within the packets can be reordered or modified as well.

**BANNED The Man

2010-12-31 12:49:51

From: Method
No, they're not encrypted. Packet opcodes, however, are encrypted using the ISAAC stream cipher, but that wouldn't be a problem for the bot. The packet opcodes do change every client build, though, and the data with the packets can be reordered or modified as well.


So you are saying that it would kind of be like the situation with reflection as of getting hooks? If so, that wouldn't be so bad as there must be a way to grab the packet opcodes.

Method

2010-12-31 12:52:55

From: Dynamite
So you are saying that it would kind of be like the situation with reflection as of getting hooks? If so, that wouldn't be so bad as there must be a way to grab the packet opcodes.


It'd be much more tedious to keep it updated, but it'd be doable, yes.

MylesMadness

2010-12-31 12:59:36

Everything you do sends a packet, so you would need to make a bot that can exactly replicate the packets for, say, moving a mouse.(I think this true, someone told this is why packet bots are dead)

Frement

2010-12-31 13:05:50

You wouldn't need to use packets to send data, you could just receive data and then process it, and click on the specified coordinates you need to click.

From: Dynamite
OpenGL - Yes, I do understand that there is a lot of research needed, as with a lot of this stuff. I am willing to put in that research.


I don't think you truly understand what it takes to do what you want to do.

**BANNED The Man

2010-12-31 13:15:54

From: Frement
You wouldn't need to use packets to send data, you could just receive data and then process it, and click on the specified coordinates you need to click.



I don't think you truly understand what it takes to do what you want to do.


Well care to explain?

i luffs yeww

2010-12-31 13:17:38

From: Frement
You wouldn't need to use packets to send data, you could just receive data and then process it, and click on the specified coordinates you need to click.


But it would be a legit packet bot if it sent packets as well. ^^

From: Frement
I don't think you truly understand what it takes to do what you want to do.


However, if you're into cheating in other games (FPS games, for example), OGL would be a good thing to learn. I know that all (I think) bots for Wolfenstein: Enemy Territory (<3 :D) are OGL, and they're cool. :p

I'm sure it could be used for a lot of other stuff, as well.

Frement

2010-12-31 13:24:40

Well, yes, but making a wallhack in FPS games is 1 line code really:
glDisable(GL_DEPTH_TEST);

MylesMadness

2010-12-31 15:39:32

From: Frement
You wouldn't need to use packets to send data, you could just receive data and then process it, and click on the specified coordinates you need to click.
But that requires the client to still be loaded and that kinda ruins the point of a packet bot, to be able to run tons of them.

**BANNED The Man

2010-12-31 16:28:43

Ok, so I have decided to look a lot more into OGL.
I have read and looked at what SilentWolf did and also what Frement did.
I am going to read everything I can on C++ / OpenGL.
So if anyone has any good reads, it would be greatly appreciated.
I have already come up with some ideas, now I just need to learn the needed stuff :)
If anyone would like to work on an OpenGL bot with me, feel free, you only need the basics, as we can learn together.

-Boom

i luffs yeww

2010-12-31 18:14:39

Frement, aimbot <> wallhack. :3

NCDS

2010-12-31 19:21:32

From: Dynamite
Ok, so I have decided to look a lot more into OGL.
I have read and looked at what SilentWolf did and also what Frement did.
I am going to read everything I can on C++ / OpenGL.
So if anyone has any good reads, it would be greatly appreciated.
I have already come up with some ideas, now I just need to learn the needed stuff :)
If anyone would like to work on an OpenGL bot with me, feel free, you only need the basics, as we can learn together.

-Boom


I read some stuff on www.cprogramming.com a while back about it. Don't remember too much about it, but it's something to start with. :)

**BANNED The Man

2010-12-31 20:11:17

From: NCDS
I read some stuff on www.cprogramming.com a while back about it. Don't remember too much about it, but it's something to start with. :)


Hey NCDS,
Thank you very much, I am reading it at the moment, you are right, it is a good starting place :)

-Boom

Frement

2010-12-31 21:00:21

donhwload glinterocept and resrheacht the log.ss

i luffs yeww

2010-12-31 21:20:25

Oh, Frement. :3

Silly drunk people on SRL are great.

mastaraymond

2011-01-01 07:48:15

From: i luffs yeww
But it would be a legit packet bot if it sent packets as well. ^^



However, if you're into cheating in other games (FPS games, for example), OGL would be a good thing to learn. I know that all (I think) bots for Wolfenstein: Enemy Territory (<3 :D) are OGL, and they're cool. :p

I'm sure it could be used for a lot of other stuff, as well.

Don't tell me you're a cheating dick on ET!?

Markus

2011-01-01 08:25:35

From: Method
It'd be much more tedious to keep it updated, but it'd be doable, yes.


This is 100% hypothetical and my client knowledge is near zero, but can I assume there is one class/part of the code responsible for all the client/server communication? If so, can't we just rip that part out of the client every update and abuse it so it generates packets for us? Just call the functions we want to call etc.
And I doubt they change the protocol manually every update and just change it automatically. If so, there must be patterns and if there are patterns we should be able to see those.

If this is 100% nonsense ignore me :)

Frement

2011-01-01 09:29:19

From: Frement
donhwload glinterocept and resrheacht the log.ss


I believe I was trying to say "Download GLIntercept and research the logs.".

Anyway, its not easy, takes a lot of patience and knowledge in C++ too.

Method

2011-01-01 11:30:35

From: Markus
This is 100% hypothetical and my client knowledge is near zero, but can I assume there is one class/part of the code responsible for all the client/server communication? If so, can't we just rip that part out of the client every update and abuse it so it generates packets for us? Just call the functions we want to call etc.


There is essentially one method that parses packets sent from the server to the client, so you could (and probably would have to) use that to identify the different packets. Not all of the protocol is in there, though (in fact, code to send packets to the server is in numerous places in the client).

From: Markus
And I doubt they change the protocol manually every update and just change it automatically. If so, there must be patterns and if there are patterns we should be able to see those.


Yes, it's probably automatically changed. Identifying the methods that read data from the buffer wouldn't be too challenging, either. The challenging part about doing something like this would be automating the updating process entirely, or as much as possible. You'd need quite a bit of knowledge of the game protocol to do so.