156,713 Commits over 4,566 Days - 1.43cph!
Merge from render_pipeline_testing
merge from buildingprivilege_cache
Fixed regression with player boat privs when using the cache
merge from gate_speed_fix
Cleaned up building priv cache vs vis tests
▄▅▆▄▍▅▉▄▆█ ▊▋█▉▌█ ▄▇▇▇█▉ █▄▌▊ ▉▉▄ ▉▍▅▊ ▍▆▉▋▊▍▆ ▇▆▉▉▋▌▍▍▉▆▉▌▌▆▅▉▊▆▅▇▊▍▍▋█▉▄▉▆▇▋▇▇▄▄▅▍▌▆▄▊▉▄▌▄▅▆█▋▋▌▉▉▊▊█▇▋▄▅▌█▊▆█▅█▌▆▄▉▌▍▄▊▄▍▅▋▇▇▊▋▉▉
Merge from neon_sfx_occluded
Neon sign sounds are now occluded
Had to adjust their volume slightly
▊▇▇▄▌▍▍▆ ▌▊▆▊ ▉▉▌ █▆▄▊▇ █▄▅▉ ▍▇▋ █▆ ▅▄▉▅▉ ▌▄█▋▇ ▄▉▆▉▄▉ ▉▄ ▆▊▇█ ▌▅▄ ▉▉▅▋▅█▅ ▉▍▊▉▊▉▍▊▋▄▉▋ ▉▌▆▉▅ ▄█▆ ▉▋▍▋▆▇ ▄▄▆ ▌▊▊▌▌▍ ▆▌ █▌▍▅▉▍▇ ▌▄▉▅▇ ▄▍▊ ▋▆▊ ▌▄ ▍▇▆█▌█ ▍▇ ▍ ▍▊▌ ▍▊▋▅█▄▍▌▉▍▅ ▋▌ ▋ ▅▌▄▍▉▆ ▄▆▍▅▉█ ▆▅ ▍▄▍ ▅ ▍▆▇▇▆ ▉▆▅ ▊▄ █▄▅ █▉▅▆▄▇▄
Merge from solar_explosive_fix
Fixed attached explosives getting scaled incorrectly on the solar panel
Merge from spray_reskin_atlas_fix
Fixed incorrect material replacement when using the spraycan to reskin the double door at low quality
Fixed chainlink gate speed opening 2x slower
Merge from mount_size_changes
NPC mount points can now specify a size and overlaps - so a large mount point could overlap other mount points and make them inaccessible
Added a new, single large mount point to the 2 module flatbed that overlaps the two existing small mount points
Prevents being able to mount two cows to large flatbed, still allows two sheep to be loaded
Merge from OreNodeNetworkFix
Merge from WeaponRackFlamethrower
▋▅█▇▅▇ ▋▍▋▋ █▅▅▌▌▆▊█▅▄▅▅▆▅▆▋▄▌▇█
▊▌▍▍▌ ▉▉█▊█▄▊ ▍▌▇▊ ▅▍█ ▇▌ ▄▍█▋▊▉▇█▇▌▋▋▊ ▊▆▄▅ ▋ ▄▉▅▌█▌▄ ▇▌ ▉▌█▍▉██ ▊▌▉▆ ▆▍ ▅▍▇▊ ▇▌▆ ▅▄ ▊ ▄▅▇▌ ▊▅▉▊ ▋▆▋ ▌▉ ▍▌▆▇▆▄ ██▌▉▄▇ ▅▉ ▌▉▅▄▊▉▆▇▋▅▊▋█▇ ▍ ▉▍▆▇██▋▅▉▄▅▉▅▅▊▇█▉ ▊▊▅▉▅▄ ▆▇▉▅▄▊ █▊▄ ▉▇▊▋▍▋▅▄█ ▉▄▉▍▅▆ ▅▌ ▅▆▋▊▌▍▋ ▆▄▄▌▊▄▌ ▊▉▉▉▋▄▉ █▌▉▊▊ ▍▅▉▇ ▅▇ ▍▆▉ ▅▌ █▋█▌
Fixed error spam on ultra-wide screens with the nailgun, paintball gun and bowless crossbow viewmodels. Small rounding errors in the viewmodel sway/bob were snowballing each frame until Unity rejected the rotation. No visual change, just trying for a clean console.
Merge from terrain_config_load
Possibly fixed terrain configs not loading in a demo
▌▌▊█▌▌ ▌▇▉▆ ▊▊▉▆▍█▊▅▆▊▍▍▅▋▋▌▄▉
▉▆▆▍ █▇█▆▄▌▋▆▇▍ ▉▍▊ ▊▌▍▇▍▅▊ ▉▅▋▅ █▊▅▍ ▍▇▌ ▆▅▄▊▊▇▄▄▌ ▆▆▇ ▇ ▇██▊▅▇▊▉▅▊▇▆▊ ▇ ▌█▊▌ ▆▄ ▄▆▋▉▄ ▆▉▇▍ ▆▇▆▋ ▇▋ ▄▅▉▋▊▊
merge from buildingprivilege_cache
Reordered the check so bases with no TC are cheaper
Convared the vehicle and entity privilege changes under buildingmanager.privilegecache
Legacy shelters, vehicles and boat building stations no longer use Vis queries
Same base same spot:
GetVehicleBuildingPrivilege 0.34ms -> 0.01ms
GetEntityBuildingPrivilege 0.84ms -> ~0
nailgun skinnable initial setup
Optimize server startup time by 72s (230s -> 158s) by fetching the spawnables only once instead of doing it for each of the 100 spawn populations
Optimize server startup time by 24s (254s -> 230s) by using HashSet to check for duplicate player models
Added coconuts to small_a, small_b, small_c and med_a
Sort the cells oldest first
Store each blocks bound centre and net id in the grid so:
- blocks out of the query radius are skipped without a dictionary lookup
- the age check doesnt read every block from memory
Only run HasColliderWithinSphere when the block bounds aren't entirely inside the search sphere
Around 0.09ms for GetBuildingPrivilege in that same base, same spot
LightGroupAtTime optimization pass
Merge from livestock_animals, fix regression and red test
Fix regression caught by Led_TwoInSingleFile_StandSideBySide test
- Skip the bounds check for blocks that aren't older than the current best block
- Visit the cell you're standing in first
Skips a lot of work when standing in the core or middle of a base
On livestock, stop using syncvars for things that should not be broadcasted to all clients, instead use protobuf