Jump to content

New format for packet_db?


GreenBox

Recommended Posts


  • Group:  Members
  • Topic Count:  9
  • Topics Per Day:  0.00
  • Content Count:  303
  • Reputation:   101
  • Joined:  11/13/11
  • Last Seen:  

The current format of the packetdb should be reviewed as you can use only the PACKETVER(client date) to choose the packets. Use of packet_ver(version) and the PACKETVER is redundant.

Another thing, a new flag can be added for the packets(CLIENT_TYPE?) to choose between two parallel client types(eg.: kRO and iRO or kRO and bRO), so far we only have kRO clients but this will help if someone wants to add another client type.

I sugest a format like this:

// client: date type
//	 packet id, packet size, function, positions
//	 [...]
//

client: 20111005 0
0x0364,5,walktoxy,2
0x0817,6,ticksend,2
0x0366,5,changedir,2:4
0x0815,6,takeitem,2
[...]

The packet type would be 0 for kRO clients, this is needed when the packets from clients with the same date from two official servers are different(eg.: bRO & kRO).

Even if rAthena never add support for another clients types this will be usefull for someone that wants to add.

  • Upvote 6
Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  146
  • Topics Per Day:  0.03
  • Content Count:  1195
  • Reputation:   467
  • Joined:  11/15/11
  • Last Seen:  

+1

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  12
  • Topics Per Day:  0.00
  • Content Count:  117
  • Reputation:   167
  • Joined:  11/10/11
  • Last Seen:  

You have my vote.

And on a related note, I do not envy whoever has to convert the packet database.

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  9
  • Topics Per Day:  0.00
  • Content Count:  303
  • Reputation:   101
  • Joined:  11/13/11
  • Last Seen:  

i have a program that reads the packetdb and guess the client version by the comments, just need to adjust the output format

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  47
  • Topics Per Day:  0.01
  • Content Count:  633
  • Reputation:   78
  • Joined:  11/14/11
  • Last Seen:  

+1 for this

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  11
  • Topics Per Day:  0.00
  • Content Count:  427
  • Reputation:   123
  • Joined:  11/17/11
  • Last Seen:  

+1

Eliminate the hardcoded table!

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  3
  • Topics Per Day:  0.00
  • Content Count:  8
  • Reputation:   9
  • Joined:  12/12/11
  • Last Seen:  

+1

Ohh, i talked about this with GreenBox yesterday, our C++ emulator implements a very similar packet system, wich can be easily converted to rA standards. Should i brought this up to discussion again?

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  2
  • Topics Per Day:  0.00
  • Content Count:  28
  • Reputation:   20
  • Joined:  01/22/12
  • Last Seen:  

I've added a TODO in the wiki a while ago. I'm currently not in a position to do this myself anytime soon though. My 50 cents on this are that it should probably be done in a seperate branch and torture tested with lots and lots of clients to avoid breakage. Probably also relevant for exact(?) dates when packets were changed/introduced: packet deltas.

  • Upvote 1
Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  9
  • Topics Per Day:  0.00
  • Content Count:  303
  • Reputation:   101
  • Joined:  11/13/11
  • Last Seen:  

Yesterday I implemented this packetdb format, some clients(like the default one 2011-11-16) are with missing packets, 2011-11-02 worked perfectly.

newpacketdb.patch

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...