I’m gonna start off by saying I’m aware that UNET is deprecated. I’m not working on a game that uses it. I’m working with an old game that’s already been released which uses it. I’m trying to make a headless server for a game I enjoy, but that requires parsing and understanding the packets that are being sent. I have the decompiled C# as reference, but the confusion arises from how the code does not match the packets I’m receiving.
I’ve looked everywhere and could not find a specification for the binary format that the packets follow. Does anyone, possibly a Unity Developer, have something that could help me?
Unfortunately no specification was ever published for unet. There are two levels to it, the unet transport was built into the C++ engine, so you won’t see what that’s doing within the decompiled C# code. I guess you are looking at the hlapi C# code there, but maybe confusion arises from the unet transport protocol which is in there ahead of the hlapi packet data. You could possibly talk to the game clients with a headless server built with the same unity editor version as the game was built with, thus matching the same unet transport version at least.