TrinityCore / WowPacketParser

World of Warcraft Packet Parser
GNU General Public License v3.0
419 stars 354 forks source link

New dump type: UniversalProtoWithSeparateText #673

Closed BAndysc closed 2 years ago

BAndysc commented 2 years ago

TL;DR: UniversalProtoWithSeparateText is a new dump type which dumps both _parsed.txt and _parsed.dat (proto output) and the _parsed.dat contains offsets in _parsed.txt when referencing packet output text.


While protobuf is nice in general, has good support for many programming languages (you can easily parse a sniff in c++ 🕺), it doesn't really work well with large messages. Protobuf always load everything to RAM, so storing raw packet text output in protobuf wasn't a good choice. Hence the idea to dump both .txt and .dat (proto) files, and store file offset reference in proto file.

External tools can now load on demand the packet output text. It works really good now and allow working with much larger sniffs. However, if anyone has another solution, I am open to change the idea ;)