138,488 Commits over 4,474 Days - 1.29cph!

36 Minutes Ago
Add UV1 channel to the 100x300 barrels blocker for use with a new beveled rubble detail normal, in order to reduce the low poly look on some rocks
1 Hour Ago
more basement player block blockouts
1 Hour Ago
- play confetti effect on win
2 Hours Ago
merge from PlayerMaintainedMonuments
2 Hours Ago
merge from PlayerMaintainedMonuments
2 Hours Ago
merge from PlayerMaintainedMonuments
2 Hours Ago
Wood Panelling wallpaper - WIP textures and material
3 Hours Ago
Converted multi-compiles to shader-features where applicable in the cloth shaders
3 Hours Ago
merge from mainmenu_toggle_optims
3 Hours Ago
master key for apartments viewmodel and textures
3 Hours Ago
Bar Stool Wood - Updated model with backface on cloth, updated textures
3 Hours Ago
fix string alloc in VolumetricFogShadowPreProcessPass
3 Hours Ago
Applied the same system to the F1 menu - ~12ms -> ~4.20ms - GC ~115KB -> ~10KB
3 Hours Ago
Update: avoid Time calls in BasePlayer.GetUnderwearSkin - UnderweatManifest now initialized in ServerMgr.StartServer Tests: switched to jobs 4 and toggled underwear
3 Hours Ago
Add an assertion to catch rare error spam from WaterCamera
4 Hours Ago
merge from game_room_dlc -> main
4 Hours Ago
merge from dart_game
4 Hours Ago
switch left side of darts scoring to just show points earned in each round (doesnt accumulate on the left anymore)
4 Hours Ago
Satellite list serialization fixes
4 Hours Ago
Update: in UseParallelSaves mode, Ragdol component samples transform handles Tests: on playground enabled Jobs 4 and ragdolled a bunch of times
4 Hours Ago
improved sculpting ux massively, keeps collider as-is during carve (only updating visuals) so that carving depth doesn't feed into itself or need messy plane logic
4 Hours Ago
Merge from playermaintainedmonuments
4 Hours Ago
Update: use handles to get pitch and yaw rotations for AttackHelicopterTurret in UseParallelSaves mode - amended test to cover turret saving path Tests: TestMTSave pass
4 Hours Ago
Fix scientists not spawning in deep sea
4 Hours Ago
Workbench recycle bin upgrade is now interactable and gets its own 16 slot storage. Reycle upgrade automatically puts all returned ingredients into the recycle bin storage. Bin storage is take-only - can't put anything in or add to existing stacks manually.
4 Hours Ago
Merge from render_pipeline_testing
4 Hours Ago
Fixed the normal maps not being present on the deploy meshes
5 Hours Ago
thickened up X sprays and set O sprays to white
5 Hours Ago
Update: move OrientableLight interpolation invoke from Save to rpc + ondeply Scheduling invokes won't be safe in MT Tests: none
5 Hours Ago
game_room_dlc -> main
5 Hours Ago
Fix hit animation not working
5 Hours Ago
adding for Damian to check
5 Hours Ago
Update: avoid transform call in TravellingVendor.Save when it's following a spline Tests: none
5 Hours Ago
Supply signal animation updates
5 Hours Ago
Update: move Privelege caching from DisplayingBoxStorage.Save to OnPrivelegeUpdated We can't have it in Save as it is self-modifying and can call Vis.Entities - lets see how this holds Tests: none
6 Hours Ago
merge from cui_updates
6 Hours Ago
merge from main
6 Hours Ago
No longer create pie close action if there isn't a closing command
6 Hours Ago
- Added a fast path for root canvas toggling, that lets us toggle the main menu root canvas without triggering a lot of stuff on every graphic - Graphic::CacheCanvas walks up and stops at the first enabled canvas instead of doing a nasty GetComponentsInParent, saves ~560KB of GC per menu toggle - Each main menu page now has a canvas component too Toggling the menu: - ~134ms → ~45ms - GC ~600KB -> 24KB
6 Hours Ago
Update: force TimeZone caching in WipeTimer.ServerInit While smashing TestMTSave(WipeTimer) I saw it NRE while resolving timezone. Couldn't repro again, but this should make it safe Tests: none, trivial change
6 Hours Ago
Update: get rid of WipeTimer rounding to second, just pass DateTime from external source Old version would always have a sporadic fails when serialization test would run across second boundary, this way we can control it in tests Tests: a bunch of times for hacked version of TestMTSave(WipeTimer) that has 1k serialization tasks
Today
fix double free on pooled array in sculpting
Pooltable: Show 'turn processing' if the balls are still moving. Have reset game as a second option Dont show reset game if players are mounted to the pool table
Today
merge from vehicle_emojis
Today
Improved emoji search in chat - Can search for items with their display name (had to guess their shortname before), works in different languages - Emoji autocomplete now also works with Contains instead of just StartsWith
Today
Fix car and chassis vehicle items having whitespace in their shortname - its bad and breaks using them as emojis in chat Changing shortnames is cursed but these are only used for the f1 vehicle tab and I've applied the FreezeItemId tag so the id will stay the same
Today
Merge from main
Today
Update(tests): add various missing TestServer setup and unit testing bypass for entity logic Tests: ran all TestMTSave, no sporadic failures, except WipeTimer - guess my prev fix didn't work >.>
Today
SoftMask optims: - Don't bother updating disabled soft masks from OnCanvasHierarchyChanged - NearestMask cache disabled masks, so we can skip the second walk SoftMask.OnCanvasHierarchyChanged 30ms -> 0.03ms when opening the main menu
Today
Better snapping. Can also now snap placement of a new fence to a post of an existing fence. TryFindNearbySnapPost uses the grid too.