6,894 Commits over 1,096 Days - 0.26cph!
boataicoordinate_tryclaim_fix -> main (broken merge last time)
boataicoordinate_tryclaim_fix -> main
Ensure dead drivers dont keep stale HasDriver flags around
boataicoordinate_tryclaim_fix -> main
boat_ai_movement_improvements -> main
workshopskin_warmup_server -> main
repairbench_reskin_stall_fix -> main
radiation_watergun_fix -> main
Fixed the NRE in BoatAICoordination.TryClaimTarget
Greatly improve the movement and avoidance code of the scientist boat ai
- Sientist boats steer smoothly instead of weaving side to side, and reliably get themselves unstuck
- Context steering uses 16 directions and steers between them instead of snapping to the nearest 45°, which caused a sawtooth style effect (even though we were lerping)
- Fixed the stuck reverse never triggering above 32fps, (it measured speed from position change between AI ticks which was 0 most frames)
- Boats back off and swing round when stalled, aground or too close to make a turn, and follow an obstacle round when they stop closing on a blocked target
- Fixed patrolling boats circling off the shore forever when their orbit point lands on land
Fixed servers stalling for up to ~200ms when a player crafts a workshop skinned item for the first time after a restart or steam definitions update
- The steam item definitions warmup now runs on the server too, it was client only so dedicated servers always read them cold
- Also warms WorkshopId, (HasWorkshopSkin reads it for every owned item and each cold read is a native Steamworks call)
- Moved SteamItemDefinitionWarmup out of the Client folder
7.81ms -> 0.07ms on first call
Fixed repair bench reskins freezing the server for ~0.7s after a steam item definitions update
- Reskinning a redirect back to default or to a workshop skin went through skins2, scanning every steam definition
- Now a direct definition lookup, 1275ms -> 0.66ms in editor. Was happening ~95 times a day across official servers
Fix streams in waterguns not being colored for radwater
- Ensure boats spawn on the edge then travel inwards
- Code cleanup
Use own custom convar for egress
- 1-2 boat groups will spawn every 5-8 hours (spawn together)
- Each individual group gets a random lifetime of 30-60 minutes before egress
Cant take the pt boat out of the deepsea (just like the other boats)
boat_scientists_improvements -> main
Only attempt turns when we can actually see the player
boat_scientist_improvements -> main
- Give up players if you've been chasing them for a while
- Pursue for a max set of meters unless that player shoost you
replicated_convar_error_change -> main
item_pool_expansion -> main
radwater_color_throw_fix -> main
- Swap to another target if the boats main target is obstructed
- Otherwise decide to bail if the target has been hidden for a long time
If the target is no longer valid then move on to someone we can see, or bail out
If none of the crew of a scientist boat can see the target player then turn the boat around so it can face them
Swap 'Replicated convar not found on client' to a warning for this patch
I previously marked replicated convars as saved, so everyone will get replicated errors the first time they join a staging server as everything regenerates
(fine to swap back to an error next patch)
Item pool 512 -> 2,048
We really should have a bigger default item pool. We are consistently overflowing it.
- Do Remove works in batches
- Loot container resets in batches
- Fixed sprinklers sometimes skipping splashes when their barrel rechecks its drain
- Fixed sprinklers sometimes having a null fuel type for .1 seconds
- Fixes radwater tint flicker on circuit and output changes
Radwater splashes use green effect variants; sprinklers no longer start with plain water
- Viewmodel support
- Water gun/pistol support
- ParticleSystemTint is no longer an IEffect
main -> network_lods (breaking)
▇ █▉▆▋▉▉▅▆▉ ▍▌▉▌▌▋▉ ▆▌ ▋▍▄▇▉▍▋ ██▍▅█▍▊ ▌█▆▅ ▆█▆▊▋█ ▄▊▍▅█▅▆ ▉█▆▊▅▆▄ ▄▇ ▄▄▄▆▄▅▄▅▊█▊▊▇ ▋▊▅▅▊▇ ▌▍▉▄ ▆▊ ▊▍▊▄▋▅ ▅▄ ▌█▅▉ ▉▇▍▉▌█▍ ▉▊▆▊ ▉▉▍▉ ▋▅ ██▄▋▉█ ▅▇▄▍▆█ ▉█▇ ▉▉▊▆▇▇ ▅▅ ▄▋▄▇▆▅▉▋▉▇ ▍█▍ ▅▌▍▍▋▅▋
- Net LODs use 16m position cells for all ranges instead of cached group lists
- Set network lods to be off by default
- Profiling
- Code cleanup
Cleaner way for the client to grab lod ring on its side
Swap net lods to use distance comparisons instead of cells to ensure its consistent between small and large network entity settings
- Massive code cleanup
- Reduce/remove a bunch of un-needed allocations
- Remove some un-needed procedural eye code
- Use idle breathing instead of regular idles when up close.
- Dont use idle 2 and 7
Add support to be able to skip certain clips when zoomed in on the head so we can bypass larger head movements when zoomed right in
More merge fixes
- Codegen
Fix entering play mode trying to change generate biome/place monument settings
simple_creator_v2 -> main
main -> character_customisation (breaking)
New cleaned up simple map creator to replace the overengineered rubbish before
- Create maps with certain monuments
- Create maps with certain biomes
- Force spawn one specific monument
- Force spawn in specific biomes