6,905 Commits over 1,096 Days - 0.26cph!
mainisland_roaming_scientistboats -> main
When a boat’s driver dies another scientist now takes over driving
- 20% chance for scientist rhib to drop a blueprint page
- 20% chance for scientist pt boat to drop a blueprint book
Fix leg ik not working on the rear pt boat
- Boats in a group no longer pass a hidden player back and forth forever, they give up 45s after losing sight of him
- PT boat turrets look around when they have nothing to shoot at
- Roaming boats patrol closer to the coast, min shore distance 100m -> 35m
- Fixed killing the roaming boats event leaving behind boats spawned less than a second earlier
- Removed a duplicate line of sight check when roaming boats pick a target
main -> mainisland_roaming_scientistboats
boat_targetting_improvements -> main
main -> mainisland_roaming_scientistboats
New targetting system for ai scientists:
- Remembers locations of previously lost targets
- Auto switches between visible players if it loses its main target
- Ai scientists will keep attacking even if the target hides
- More stable/fun overall
Fix waterpistol error during manifest generation
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