138,615 Commits over 4,474 Days - 1.29cph!
Set up all of the lunar new year animal masks as skins of the wolf headdress, so you can reskin between them
Update: Jobs 4 - intercept exceptions from SendAsSnapshot/ShouldNetworkTo and log once per task
- Also if ToStream threw, don't save the resulting buffer as a network cache, as that would poison everything
Instead of bubling them all up to the top like usual, handle locally by just skipping sending the data, and report error once to avoid filling console
Tests: booted into craggy with CCTV fix reverted, no more spam
Fix newly updated art highlighting a bug where remains take damage and get instantly destroyed on impact.
Optim: Implement parallel serialization in Jobs 4 mode
- fix CCTV_RC doing GetComponentInParent on an MT path, cache on init
- add server.ParallelNetworkQueueBatchSize, controls how many players end up being batched in a task. Higher number - less tasks
Offloading ShouldNetworkTo, serialization and sending all to worker threads. Main thread steals last task to run on main thread before spinning for other task completion.
Tests: booted craggy, gathered resources, build a base, rode ahorse, shot a gun, drove a car, heli, zipline, built a boat, used codelock
merge from automated_testing
Jukebox collider convex + RW
Bar stools disable researchable
Dartboard assign place effect
manifest + testlist
merge from main -> high_wall_upkeep
merge from reduce_server_startup_yields -> main
Manually update the "reduce_editor_startup_yields" branch
- old branch adam made to skip 10x 100ms delays in server startup in the editor
- I think it might need a WaitForFixedUpdate() but not 100ms waits
- only affects editor: doesn't change standalone builds
Switch to AddField for impacted IDs with OnClanUpdate
Updated eye position for bar stool mounts
Added Disable Analytics Upload editor prefs
Saves a second when exiting playmode
Swapped a UnloadUnusedAssets in WorldSetup to ConVar.GC.unload, so it respects the Disable Unloading Assets editor pref
Was taking around 600ms when entering playground
merge from hackweek_parented_ddraw
Fix UI map zooming in forever
merge from editor_playmode_timing -> main
Print time taken to enter play mode in the editor (so we know what iteration speed is)
Cleanup spline movement a bit
Pooltable:
- Groundwatch fixes
- Various layer/setup fixes
- Rotation fixes
masterkey prefab set up WIP
-viewmodel with animator
-worldmodel prefab setup
- placeholder icon
- entity setup
- item setup (using keycard)
- 3p override controller
- placeholder viewmodel anims
Hackable crates correctly saveload their state (timer progress, whether its been looted, etc.)
Some cleanup on the script
Pooltable:
- Remade all colliders as primitives
- Better deploy and prevent build volumes
Creating avatar for keys rig
Adding keys world model rig
New events to cover basic clan usage and to reduce allocations in apartment events.
fixed hardcoded data bounds in admin view
Fix pooltabel groundwatch not working
Fixed escape opening the menu when having the pie menu open
Added UIEscapeCapture which now cleanly handles escape closing events for the pie menu in instances where the pie remains open after releasing keys (eg. when using `input.radial_menu_mode 1`)
merge from console_optims
Fixed pasting a large string in the console input field being slow
ConsoleTMPInputField handles pasting itself by processing everything in one go
Added `espcanvas.nameplateautosize_falloff` (defaults to 50)
merge from bootstrap_optims
Fixed skin viewer trying to load prefabs from the prefab asset scene when its not loaded yet
Added a safeguard in GUIDToObject, any request from a non loaded asset scene won't cache the null miss
Update: rewrite ToStreamForNetwork to be thread safe
- EntityMemoryStreamPool is now a concurrent queue
Now, theoretically, we just throw it at threads and drink champagne
Tests: craggy, built a base and checked decay timer
Update: initialize every SaveInfo with ThreadSafeTime.TakeSnapshot
- also removed some jobs 2 code I missed previously
Tests: on craggy rode a horse, built a base, checked decay timer was updating as I added/removed resources
Deploy animation added to pool set
updated sculpting menu items
Bugfix: avoid multiple BuildingPrivilege.CalculateProtectedMinutes calls in a frame for 1 entity
Atomic latch wasn't correctly checking if it was updating from an old value only, so we could CompareExchange(1,1,1) and pass
Tests: none
merge from menuwarmup_editor_optims