Packet Length Extractor

From OpenKore Wiki
Revision as of 17:17, 5 March 2013 by 4epT (talk | contribs) (edit link)
Jump to navigation Jump to search

If you're having server problems, such as:

  • Packet Tokenizer: Unknown switch: xxxx
  • Getting disconnected after a few seconds
  • NPCs, players and monsters are not recognized by Kore (shown as Unknown)

Then generating a new recvpackets.txt might solve the problem. It's advisable to always extract the recvpackets before running Openkore. The file must be on tables folder.

The network data that the server sends to Kore, is a byte stream. Kore must be able to recognize messages inside that byte stream to be able to do something with it. But the size of the messages can vary from to server to server. Recvpackets.txt contains information about the size of each message, so Kore can correctly split the byte stream into messages.

RO Tools

It's better to use JCV's RO Tools as it is more up to date and have some fixes for newer clients. Also it's much easier to maintain, but it has undesirable and outdated options in addition to the Openkore packet extractor.

Usage

  1. Open RO Tools.
  2. Click in the button with ... beside the box. Search for your's server executable (not server patcher) and open it.
    File:button.PNG
  3. On Extractor Type, check Full Disarm box.
    File:full.PNG
  4. Click on Start button and wait it to finish.
    File:start.PNG
  5. After it finishes, it will ask for you to save the file. Save it on tables folder, inside your Openkore's root folder. Override current file if needed.

Packet Extractor

Packet Extractor v3

Packet extractor branch to work with new insert server list here clients.

Usage

  1. Run packet_extract.pl with your ragexe file name as an argument. It will generate extractor.exe.
  2. Run extractor.exe (works with wine on non-Windows) which will output recvpackets contents to STDOUT.

Notes

  • Recvpackets file can be renamed as long as recvpackets option on servers.txt is set accordingly. (See Connectivity Guide)
  • There may be problems extracting the recvpackets if your server's client has some kind of protection. You should deal with it (like unpack if binary is packed) before using packet extractor, if it fails to find anything.