254,393 Commits over 3,990 Days - 2.66cph!
Add developer menu (https://files.facepunch.com/tony/1b2711b1/sbox-dev_RNMgcIDcBP.mp4)
cherrypicking
96391 physical_keys
Fixed vanishing industrial pipes due to
96124
merge from helk_qol_01 (moving no longer applies aimcone penalty to the first shot but rather the movement penalty is now blended in over several shots (full auto while moving))
merge from incendiary-rocket-explosion-fix
merge from milflame_improvements
merge from cargoshipsoundupdate
merge from launch_site_puzzle_loot_fix
Expose aim offset per aim function
All launch site main building loot now uses puzzle reset mechanism, independent of the rest of the monument loot spawns. When the puzzle resets there is now guaranteed loot throughout the the main building, 50%~ more loot. Puzzle only resets when no players are nearby.
S2P
Work on life states, depossess player on death, add pawn possession test
https://files.facepunch.com/tony/1b2711b1/sbox-dev_9RDuMDYpfP.mp4
Added callback for external asset changes
Now saves the database somewhere where it won't be wiped on shutdown
Restore the old filter here even if e.Resume() throws
Add Rpc.Resume. This handles disabling and restoring filter if the Rpc.Caller is us before and after resuming. Use this everywhere.
FilterOnly -> FilterInclude. AllExcept -> FilterExclude. Only one RPC filter can be active at any time
Fix EventSystem null exception
LibrarySystem read/save version property, support switching versions
Leaderboard backup, run #
11346
Merge bulk_uploader -> analytics_server_profiling
Add overload to allow EventRecord to be serialized as a completely flat object (without the Data field)
Bug fixes
Cancellation token on setting up blob
Removed soft blend from mlrs_lightmask to fix the badass looking mlrs blinkers not rendering.
Flamethrower 3rd person center point fix.
Improved flamethrower pilot light look and performance, now lights up a very tiny area around the barrel.
Add bulk uploading class to route high frequency data points through Blob storage rather than event hubs
- normal gameplay events still go through the web api & event hub
Switch frame profiling data to dedicated "profiling" table to avoid cluttering the "gameplay" tables
Add `analytics_bulk_upload_url` convar to designate the upload container
Fixed monuments static IO lines spawned at world origin
Fixed NRE when updating wires attached to null entities
Added door controller sockets to ladder hatch, triangle ladder hatch, shop front and wood shutters
Meta files and other things that Unity wants to update with the 2022 upgrade
More basic stats
More profiler markers that are exposed in release builds
Change `analytics_enabled` to be a saved convar (to make it easier to toggle in editor)
- default to false instead of true
Rename InvokeLogger -> InvokeProfiler
Rename PacketLogger -> PacketProfiler
Serialize invoke stats in data points
Capture performance stats for every single server frame & send to azure analytics
- packets (sends, recvs, total outbound packets)
- invokes (execution time, invokes, adds / removes)
- general execution time per frame
Grab all physics stats (colliders, triggers, collisions, etc)
- figure out later how to expose it in release build
Add `dump_profiler_recorders` command to dump all ProfilerRecorder handles to disk in a .csv
Merge main -> Bikes. Updates bikes branch to Unity 2022