The previous hash function was heavily biased towards the hash buckets 64-79, making those buckets overflow faster, which results in snapshot CRC errors and lags.
Using the djb2 hash yields an almost even distribution over the entire range of values.
Source for djb2:
http://www.cse.yorku.ca/~oz/hash.html
(we incidentally use the same implementation for
str_quickhash
)
Sample which compares the usage of hash buckets in the test map from
https://github.com/ddnet/ddnet/issues/5454 wit...