4,032 Commits over 1,127 Days - 0.15cph!
merge from main -> monument_scenes
Merge from main -> monument_scenes
Merge from hot_reload_unity -> main
Merge from hot_reload_unity -> main
Add hotreload package manually since specifying the package link requires a git client on PC
Merge from main -> monument_scenes
Merge from hot_reload_unity -> main
Merge from main -> hot_reload_unity
Merge from main -> hot_reload_unity
Combine `isFlushing` and `invalid` bools into single `disposed` bool
Add `UsePooling` convar that allows you to turn pooling on and off for bulk uploaders
- default to false to help debug why multiple types of events are uploaded to the same file
Include serverid in uploaded path so we can see which server is sending errors inside ingest failures
Sends raknet stats per connection (including throttling) to runtime profiling every 1 second
- iterates through 30 connections per frame but waits for up to 1 second to start looping again
Include byte[] pooling stats for networking
Flush memory pool size every 5 minutes for runtime profiling
Fix a collider's cached monument not being invalidated if the collider moves
- no evidence of this happening but best to be safe
Rename `MonumentColliderTag` to `CachedMonumentComponent` to make it a lot clearer what it does
Add `GetOrAddComponent()` to ComponentEx instead of using the VLB namespace
Merge from fix_reserved_slots_joining -> main
Fix reserved slots being added when you left the queue after joining a server
- supposed to only be reserved when you disconnect after getting past queue
Add ReservedSlots to serverinfo command
Merge from event_record_pool_increase -> main
Increase EventRecord pool size from default of 512 -> 16k
Merge from fix_reserved_slots_expiry -> main
Fixed reserved slots not expiring until a player joined the queue (or server) without a reserved slot
Fixed a player able to use expired reservation to join (incase the first fix doesn't work)
Merge from rcon_commands -> main
Include more information on each connection
- number of messages sent, recieved and broadcast
- connection duration
Add `print_rcon_clients` command to print a list of all connected RCON clients
Merge from runtime_profiling_rcon -> main
Log rcon as part of runtime profiling
- commands executed
- number of connected clients
- rcon commands ran each frame
- successful or failed RCON connections
- execution time of RCON commands per frame
Reference pooling to Facepunch.Rcon assembly so Rcon stats can be pooled
Switch RCon from Queue<Command> with lock to ConcurrentQueue
Merge from qol_print_memory_improvements -> main
Add `MaxItemsInUse` to pool
- lets you know the maximum amount of items taken from the pool at once
Add `reset_max_pool_counter` command to reset the maximum item counter per pool
- allows you to reset the pool count incase it gets set to a really high value during 24hr window
Switched from showing `KK` -> `M` for millions and `B` for billions
Adding `--raw` to `print_memory` will print out the raw number counts instead of rounding them to thousands, millions or billions
Merge from gameplay_analytics_convar -> main
Use dedicated `gameplay_analytics` convar instead of requiring the server to be official with stats enabled
Start refactoring EventRecord.Submit() to static SubmitPoint() (so we can force use of uploader classes in future)
Remove eventrecord blacklist (was used to stop uploading of frequent events) because it's not used and complicates code
- if events are spammy we can remove them
Use dedicated `gameplay_analytics` convar instead of requiring the server to be official with stats enabled
Merge from cached_ping_query_reduction -> main
Switch from pinging servers via their IPs to pinging the entire server list via 4 queries
Convert BiomeVisuals -> BiomeVisuals again, minus the moss prefabs
Fix renderer being added to root of BiomeVisuals2 when it's not in the default position
Update biome_visuals_2/prefabs_2
Merge from main -> biome_visuals_2
Merge from monument_scenes -> aux1
Fix remapping order being reversed
Fix remapping only remapping the requested monument instead of every single one
Fix train tunnel prefab that got overwritten with SceneSpawner during some S2P
Merge from monument_scenes -> aux1