88 Commits over 393 Days - 0.01cph!
merge main -> rust_relay_server
merged main -> rust_relay_server
merge main -> rust_relay_server
Resolved relay startup issues, added relay.restart convar, tidied thread shutdown/restart
merge rust_relay_server -> main
merge main -> rust_relay_server
merge rust_relay_server -> main
merge main -> rust_relay_server
resolved websocket reconnect spam, added relay convars for managing relay state (shutdown etc)
merge rust_relay_server -> main
merge main -> rust_relay_server
move away from wss (it allocates)
merge rust_relay_server -> main
merge main -> rust_relay_server
Add additional logging for websocket connection
merged rust_relay_server -> main (splash screen + dupe send fix)
merge main -> rust_relay_server
removed dupe packet send 🙈
reverted accidental splash screen setting tweak
main -> rust_relay_server
rust_relay_server -> main
main -> rust_relay_server merge
offset packetType by lowestUserPacket
merge rust_relay_server -> main
reduced packet spam, send stringPool as dict
merged main -> rust_relay_server
merged /main/rust_relay_server -> /main
merged main -> rust_relay_server
brought back tuple param for UploadStringPoolToRelayAsync lol
Upload JSON instead of pair array in UploadStringPoolToRelayAsync
Reduced timeout on HttpClient, added enabled checking to upload paths
don't failover on map upload fail
Added failover, various optimizations
moved packet AddReference
Updated WebSocketSharp to not mutate packet data
merged main -> rust_relay_server
pre merge (resolved packet sending issue)
merge main -> rust_server_relay
Various tweaks to Rust Relay config and transport
Removed UniTask (it's bad), moved time cache to Network thread AGAIN (thanks multithreading), removed frameNo ref (no thread safe way for me to access), added markers back, various simplifications
removed introduced allocations
moved frameNo+serverTs to NetWrite (main thread set)
naming conventions, small tweaks
Reduced PacketArrayPool's length to the max value, reworked GetHashCode, removed unneeded second Close in ResetSocket, Use GameManifest.Current instead of loading from disk again
moved relay send thread start to first packet enqueue, implemented missing Equals and GetHashCode methods