first of all you should know the purpose of a checksum, at some point you probably have noticed that some important files on websites have usually a md5 or sha1 checksum, for example OSes iso files they do that, then you can do a md5 or sha1 and check for integrity of your download, if you never did on web, at least you have done some git commit, for check the integrity of your patch to the merger, it does a sha1 checksum, otherwise the merger couldn't trust that patch, it could be broken, or even malicious, but, ofc for a game packet this doesn't make much sense, but at some point cipsoft decided to implement this, the way it worked one piece of the packet header were the adler32 checksum of the whole buffer, then when server received the message, it also do a checksum for the whole buffer, then server can guarantee that it is reading the same thing that client sent and vice-versa, according to jo3 posts, now they decided to remove this, because encryption and hashing are expensive operations, and well, network game packet is not that important to spend this computing time, meaning they removed this whole adler32 hashing thing, there is no checksum anymore, instead they don't do that and apparently they support compression of some packets, probably that ones that they thing are most important, probably packets that they want to log, e.g store purchases, then you save storage by compressing it, all this thing needs a rework output/network headers, i can't just tell what changes you need, but later i can look at it.