Hello, can someone please offer documentation on the server browser protocol for DAYZ as has been done here for ARMA2?
I have a lot of it figured out, but there are some parts that I am still unable to decipher.
For instance, I am decoding the 3rd mod of a server and get back "\xEA\xF6\xD6\x3A\x04\xB8\x01\x02\x67\x6F\x13\x5B\x43\x72\x53\x6B\x5D\x20\x42\x4D\x57\x20\x35\x32\x35\x69\x20\x45\x33\x34".
The breakdown I have so far that is in question:
Mod Hash: \xEA\xF6\xD6\x3A
Steam ID Length: \x04
Steam ID: \xB8\x01\x02\x67 <--- But this is incorrect!
???: \x6F <--- Seems to be an extra byte not on other mods.
Mod Name Length: \x13
Mod Name: \x5B\x43\x72\x53\x6B\x5D\x20\x42\x4D\x57\x20\x35\x32\x35\x69\x20\x45\x33\x34
For the starting sequence "\x45\x19\x00\x01\x11\x00\x01\x01\x01\x02\x01\x02\x01\x02":
Header: \x45
Number of Rules: \x19
Terminator?: \x00
x of n??: \x01\x11
Magic Sequence?: \x00\x01\x01\x01\x02\x01\x02\x01\x02
I have not made time to look further, but if someone could help by providing a clear explanation or some docs, that would be super useful thanks!
Also, what sort of hashing is used? I have tried all variants of 32 bit hashing I can think of with and without the hash block. Below is a list I have tried minus the ones that dont produce a 32bit hash.
md5, sha1, sha224, sha256, sha384, sha512, ripemd128, ripemd160, ripemd256, ripemd320, whirlpool, tiger128,3, tiger160,3, tiger192,3, tiger128,4, tiger160,4, tiger192,4, snefru, snefru256, gost, gost-crypto, adler32, crc32, crc32b, fnv132, fnv1a32, fnv164, fnv1a64, joaat, haval128,3, haval160,3, haval192,3, haval224,3, haval256,3, haval128,4, haval160,4, haval192,4, haval224,4, haval256,4, haval128,5, haval160,5, haval192,5, haval224,5, haval256,5.