[Tool] Extract Protocol Message Definitions 0.2

08/21/2012 14:21 bossfong#1
Here is a quick rewrite of my client<->server messages extractor.
It uses the output of as3sorcerer as input and outputs the messages in json. This json file you can then further parse to do whatever you like with it.

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

Advantages of new version:
- easier to read, because of python
- better output
- will support automatic id updating on changed id's in the future (for rev. 0.3)

edit: example output: [Only registered and activated users can see links. Click Here To Register...]
08/21/2012 14:34 somalia_#2
Uh in python! That's quite sexy. :)
08/21/2012 14:42 bossfong#3
Added an example output
08/21/2012 14:42 linksus#4
What do you can make with it ? :o
08/21/2012 14:46 bossfong#5
Quote:
Originally Posted by somalia_ View Post
Uh in python! That's quite sexy. :)
Indeed ;)
Quote:
Originally Posted by linksus View Post
What do you can make with it ? :o
see the example output. If the example output means nothing to you, you won't need it ;) It's for programmers.
08/21/2012 16:06 TheMiszczu#6
So how to build packet from it?
08/21/2012 16:14 destroyer of worlds#7
what dose it do?
08/21/2012 16:15 bossfong#8
This is one thing you can do with the output:

Darkorbit traffic parser: It will show the traffic between server and client in a more human readable way than eg. wireshark.

(see attachment)

edit: run this, then join a server. you can also run this while in a server
08/21/2012 16:22 TheMiszczu#9
Quote:
Originally Posted by bossfong View Post
This is one thing you can do with the output:

Darkorbit traffic parser: It will show the traffic between server and client in a more human readable way than eg. wireshark.

(see attachment)

edit: run this, then join a server. you can also run this while in a server
Code:
  ICaptureDevice device = null;
    foreach (ICaptureDevice dev in CaptureDeviceList.Instance)
    {
        if (dev.Description.Contains("Microsoft"))
        {
            device = dev;
        }
    }
    if (device == null)
    {
        Console.WriteLine("Couldnt find device!");
        Console.ReadLine();
    }
it doesn't find device on my pc.
08/21/2012 16:38 bossfong#10
Quote:
Originally Posted by TheMiszczu View Post
it doesn't find device on my pc.
I'll fix it. Check back in 1h.
08/21/2012 16:50 ßΙЍȺƦƴßȰȾ#11
hello , i am creating a bot for DO , but i dont really understand this , all i do is find hex from packets , get for what that hex is , and save it
how i should use this info for it , creating packets?
08/21/2012 17:24 somalia_#12
This paket ids are changed on every bigger do client update since version change to 5.0 from bigpoints side.
So you need to fix the pakets ids every 7 days when they are updating.
The source code in the first topic will help you to do it more "automatic", so it's less downtime for your bot.

For exampel:
Code:
int Logout = 20952;                      // 6.5.1
int CollectBox = 0x525c;                // 6.5.1 code(string)
has changed from 6.5.1 to 6.6.1 ->
Code:
int Logout = 30066;                      // 6.6.1
int CollectBox = 0x3778;                // 6.6.1 code(string)
So it's not really helping you creating the pakets.
To do so you'll have to sniff network traffic between official client <-> server
and digg deep into the main.swf where the pakethandler is for client/server commands,
from there you use the paket ids usages to the actual methods where the paket ids are used.

hope it helped.


byebye
08/21/2012 17:25 bossfong#13
Quote:
Originally Posted by bossfong View Post
I'll fix it. Check back in 1h.
It's fixed now. Redownload this attachment!

Quote:
Originally Posted by ßΙЍȺƦƴßȰȾ View Post
hello , i am creating a bot for DO , but i dont really understand this , all i do is find hex from packets , get for what that hex is , and save it
how i should use this info for it , creating packets?
See the source in the second attachment.
08/21/2012 17:50 bossfong#14
Quote:
Originally Posted by somalia_ View Post
So it's not really helping you creating the pakets.
The structure of the packets (meaning data types) can be gotten from this. So, in a way, it does. You have to find out what the data means though, by yourself. And to ease that process, I wrote the tool I just posted.