3,460 Commits over 1,007 Days - 0.14cph!
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
S2P compound & oil rig as they had the BBQ prefabs
Merge from main -> monument_scenes
merge from fix_static_bbq_missing_prefab -> main
Revert GUID of static BBQ to old value to fix missing prefab error in monuments
Add tool to extract server demos -> individual player demos on the client
- can read multiple chunks in parallel and merge them together at the end
- runs on worker threads so it doesn't lock main thread
- can specify multiple users to extract at once
Merge from monument_scenes -> aux1
Merge from monument_scenes -> aux1
Run Scene2Scene on all the correctly tagged monuments
- only commit the scene output, not the legacy prefabs as they shouldn't have changed at all
Remove MonumentScene tag from swamp cabins scene
When running "SceneToScene" in bulk don't print errors & run on tags instead of "if MonumentInfo" is present
Add "MonumentScene" tag to all real monuments
Delete all scene spawner prefabs & monument scene outputs so we don't include any existing monuments that want to opt-out from conversion
Switch from a bool inside the `SceneToPrefab` component to using tags on the scenes to opt-in to output a scene
- the prevents us from reserializing the source scenes and causing conflicts with other branches
Switch monument scenes to be opt-in rather than opt-out (to deal with all the non-monuments being included)
Find monument scene spawners inside the /remapped/ directory instead of trying to remap every single prefab
merge from main -> monument_scenes
merge from fix_compressed_tags_official -> main
Put commas between each compressed tag to fix all issues parsing them
merge from main -> biome_visuals_2
merge from native_memory_stream -> main