Jump to content

Help Needed: Identifying Structure of Packet 0x0D00 After Character Selection (PACKETVER 20230302)


KaingKyungWan

Recommended Posts


  • Group:  Members
  • Topic Count:  3
  • Topics Per Day:  1.50
  • Content Count:  3
  • Reputation:   0
  • Joined:  06/03/25
  • Last Seen:  

Hello rAthena Community,

I'm currently developing a Unity client for an rAthena-based server (PACKETVER 20230302) and I've encountered an unknown packet after character selection.

Here's the sequence of packets I'm successfully parsing from the character server:
1. Login and authentication packets (e.g., 0x0065 response)
2. Character slot info (e.g., 0x082D)
3. Character list data (0x006B) - Parsed successfully, character details are correct.
4. Character list page info (0x09A0) - Parsed successfully.

Immediately after processing the 0x09A0 packet, my client receives a packet with ID `0x0D00`.
My client logs show the following for this `0x0D00` packet:
- Packet ID: `0x0D00`
- Declared total length (from bytes 2-3 of the packet): `29` (0x001D)
- This means the data payload (excluding the 2-byte ID and 2-byte length field) is `25` bytes.

The HEX dump of this 25-byte data payload is:
`0F 00 00 0F 0F 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00`

I've searched through my rAthena server source files (including `char_clif.c`, `mmo.h`, `packets.hpp`, etc.) but I cannot find any explicit definition or usage of a packet with the ID `0x0D00` that would be sent from the character server to the client after character selection with this specific length and payload.

I suspect this `0x0D00` packet contains crucial information for connecting to the map server (e.g., selected Character ID for map server, Map Server IP, Port, and session/auth keys). However, without knowing its structure, I cannot parse it correctly. My current attempts to parse it based on common map server info structures with a 25-byte payload yield unusual values (e.g., Map IP 15.0.0.0, Port 0).

Could anyone please help me identify the structure of this `0x0D00` packet (with a 25-byte payload) that is sent after character selection? Specifically, what do these 25 bytes represent?
Is this a standard rAthena packet for a specific `PACKETVER` (my server is `20230302`), or could it be a custom packet?

Any insights or pointers to relevant source code sections would be greatly appreciated.

Thank you!

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  2
  • Topics Per Day:  0.00
  • Content Count:  107
  • Reputation:   29
  • Joined:  11/08/11
  • Last Seen:  

Are you sure the packets before 0x0D00 are being read correctly? The highest packet number on official clients (last month) are around 0x0C30, so 0x0D00 for a two year old packet version does not seem correct.

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...