3,309 Commits over 945 Days - 0.15cph!
Increase refresh interval from 5m -> 45m
Add `ping_refresh_interval` to modify how often ping refreshes
Set to 0 to never run ping estimation
Return ping results after each iteration rather than waiting for all 5 iterations to finish before returning any results
Update ping manifest
Add `ping_parallel` to switch between pinging sequentially and pinging all endpoints at once (default false)
Add `ping_samples` to control how many times to ping each endpoint (default 5)
Remove client UI button for ping estimation
Fix NRE caused by null tags when using cached browser & ping estimation
Add `string[] Tags` to standardize tags from cached browser
Fix disk quota code not being called
Try catch disk quota code incase file IO errors
Fix NRE in Performance Logging
Try catch & log error rather than throwing exception
Prevent NRE in EventRecord.AddObject() incase null objects are ever passed in
merge from main -> full_server_demos
█▇▍▉▅▅ ▇█▆ ▊▉▉▇▅▆ ▇▍▆ ▍▍ ▊▅▄█▋▋ ▆▉▅▉▋▆▋
▌▌▊ ▉▆▌▌▆█▋▇▊ ▇▅ ▍▇▌ ▍▊▆▊▉▆ ▆█▌▇▌ ▌▆▋▍▆▌
▊▉▌▌▆ ▋▉▌▊ ▌▍█▇ -> ▇▅▅█▅▉_▍▍▍▌▍█_▇▄█▉▄▍▌
Add `ui_pool_max_list_size` convar to fix UI instantiation lag until unity 2022
Set default max list size to 1,000
Don't pool any lists > 1k
Merge from main -> 2022_3_20f1
Fix right clicking attachments going onto held gun instead of into open backpack
Fix clothing being equipped when hover looting into backpack & backpack is full
Fix hover loot not working from backpack -> vending machine
Fix backpack UI staying active on screen after backpack is closed
Convert the normal tags to short tags within the server browser UI (this allows steam server queries to work with short tags)
Don't decompress tags in serverinfo as we are operating on the short tags instead
Log error if unique ^ prefix is found in tags before commpressing
Shorten large gamemode tags (monthly, vanilla, etc) down to a two characters (^a^b^c)
Expand tags back to full values when creating ServerInfo struct
Move hash & status from server tags -> rules
merge from full_server_demos -> aux2
merge simple_upload -> full_server_demos
Change blocksize convar from bytes -> MB
Fix wrong conditional compilation symbol in EnsureHarmonyLoaded()
Simplify the upload logic to upload each demo chunk slowly rather than try to squeeze each one within 5m
Set default max concurrent uploads to 20 streams
Add convar to print upload progress `print_upload_progress`
Add convar to configure upload timeout `upload_timeout` (default 100s)
merge from main -> ping_estimation
Merge from full_server_demos -> aux2
Network++
merge main -> full_server_demos
network++
merge packet_ordering_2 -> full_server_demos
▅▉▇▋▍ ▊▋▊▊ █▋▌█ -> █▍▉▄▌▊_▍▅█▉▋▇_▄▇█▆▇▅▍
Merge from main -> rpc refactor_2
Merge from main -> rpc refactor_2
▅▌▇▌▊ ▉█▅▋ ▄▋▌▊ -> ▉▌▅█▉▄_▄▄▋▊▋▄_▆▉▅▍▋▋▍
merge from harmony2_3 -> aux2
Add MonoMod to AppDomain assembly resolver to point to the loaded harmony dll
Cherrypick copying harmony to build directory
Pure reflection approach to load 0Harmony.dll, create Harmony instances & patch methods
Exclude 0Harmony from the build
Cherrypick disable assembly validation again
Cherrypick harmony 2.3 again
Fix copying of dlls to builds
Update HarmonyHook.cs to work in editor (because unity wants absolute path)
Update Rust.Harmony.Loader.dll
merge from ping_estimate -> aux2
Fix compile error from random namespaces at top of `PingEstimator.cs`
Merge from main -> harmony2