RFBot project

06/05/2008 12:27 dxtr12#1
Hello I'am trying to create a RFonline bot similar to openkore of ragnarok, I need people who can help me develop this program, I need people who are good in analyzing packet, good at documenting your research and some network programming skills.:cool:
06/05/2008 12:40 killemall#2
if its similar... if you have patience i can join... coz making a bot like openkore nids more time coz its 3d..haha count me in
06/05/2008 12:46 Marveh#3
Interesting, i'm pretty damn good with C++, code injection/api hooking, network analysis (Wireshark etc) so if this project gets off the ground and there is solid evidence of progress look me up.
06/05/2008 13:21 dxtr12#4
ok ill start on a simple auto loot bot, which you can specify which item the bot will only pick by analyzing the item ID. since im having a hard time on decrypting the login packet. Ill just post the updates.
06/05/2008 14:25 warpain30#5
wow cool..sorry cant help you with this one im so dumb at this things xD
hmm try to PM yowy777 maybe he can help..
06/05/2008 15:44 Marveh#6
Are you attempting a complete standalone bot, or something to work alongside the client. I imagine as we're working at packet level we're talking standalone.
06/05/2008 16:22 dxtr12#7
both the bot can be standalone and can run client sided,but for now its client sided since im trying to figure out the packet encryption when sending the login information to the server. if the bot works perfectly client sided, ill try running it without the client.
06/06/2008 18:14 Marveh#8
I've had a look at the login packets specifically the login packets sent by the launcher. The packets are not encrypted as such, the username and password seem to be xor'd with some scheme.

If you look in a login packet that i tried, in which i used the username testuser, and password testpass

1F 00 15 03 11 00 12 11 10 12 00 13 65 65 65 65 65 11 00 12 11 15 04 12 12 65 65 65 65 65 00


The red bytes are the username and the blue bytes are the password (both upto 13 chars)

The username i entered was only 8 bytes, so the other bytes that are all 65 in this case are null bytes (00) that have been xor'd, obviously if you xor 00 with 65, you get 65, therfore the xor key mostly likely used with the other bytes is also 65.

Using the above example lets xor each value in the username with 65

11 00 12 11 15 04 12 12 65 65 65 65 65
74 65 77 74 70 61 77 77 00 00 00 00 00

Above, the blue bytes are the origional bytes in the username, in red are the same bytes xor'd with 65.

If you convert the red bytes to there ascii value, you get a username of 'tewtpaww', some characters are converted ok, however some are not, so there is another step that needs finding, i belive the key is in the packet recv'd before the username/password is sent.
06/24/2008 16:02 dxtr12#9
I'am back I have so much things to do thats why i don't have enough time to do the project. but i think now i can focus on it. well i almost complete the auto loot bot, but I dont have enough information about the RF packet, but it seems to be working fine it Loot only items i want him to loot and it loots 2x faster than normal looting it can even loot item while fighting a monster, here's a screen shot of the program.

[Only registered and activated users can see links. Click Here To Register...]

the program is created using dev c++ and VB6, by injecting a dll into rf client it intercept the network traffic in rf client and redirect it to the bot server I created. the only problem in this program is, it tries to pick up the item even it is very far, this happens because I dont know the packet for item location and player location.

here's another screen shot where i set the bot to loot only the item BEAM

[Only registered and activated users can see links. Click Here To Register...]
06/25/2008 08:07 WingZero[Custom]#10
Wow very nice. I can help you analyze the packet, but I'm not good at documenting (lazy guy). Just drop me a PM if you need some help with the packet.

That autoloot is "Not a powerfull but very usefull" program.
(It's my own term :) )

Most of the time, i only need specific items.
I have a suggestion, can you add a Wildcard on the item name ???
Like when I play in PoA, I only need to loot the Excelsior. But instead of listing all of the name of the Excelsiors, we use a wildcard, something like *Excelsior or %Excelsior or something like that.
And if we only need to find some purple weapon with specific abilities we can use Wind* or Sharp* or something like that.