1,452 Commits over 638 Days - 0.09cph!
refactored to ScopedOcean to setup fixture-scoped flat ocean
minimum setup required to run a test with ocean
merge from droppeditem_improvements (compile fix)
merge from droppeditem_improvements (compile fix)
merge from droppeditem_improvements
wrapped DroppedItem RB-removal behaviour behind `droppeditem.remove_rb_on_sleep` convar (defaults off, very experimental)
- only changes existing dropped items as they become inactive/active, doesn't go through and remove bodies from anything
dropped item improvements with vehicles
- item clipping check data stored in LS, behaves properly with boats now instead of falling through all the time
- experimenting with destroying/adding RB components instead of setting kinematic
kind of hacky BC fix to allow scaling BC without breaking the positions of chains
- adjusts LengthModifier by inverse of minimum lossyScale to simulate larger in WS to cancel out the incorrect scale when adjusting transforms in LS with bonestates
- need a more legitimate fix for VMs as I hadn't realised how much scale was effecting it
▌ ▌▉▇▊▌ ▊▉▇▆ ▌▅▊▅▍▇▅█▌▌▄▇▇▆▅▅▆▋▋▆▆▋▊▍▇
▇ ▄█▋▆▆▆▄ ▄▄▊▌ ▉▉▌█▌▊▋▋ ▊▉▌▅ ▌▆▊▍▍▌▅▍█▌▇▉▊▆▍ ▄▍▇▇▄▉ █▍ ▌▊▆▆█▍▌▋▋ ▅▆▌▄▉▇▅▅ ▍▋▇▋▆▇▌ ▊▊▋▋▆▆▌▊▇ ▇▌ ▆▊▉▊▍ ▉▄▉ ▇▇ █▍▉ ▊▆▅▄▋▅▆▉ ▇█▊▌▆▅▉█ ▆▊█▋▊▄ █▊▆▋ ▋▊▋▍ █▅ ▋▅▅▍
merge from wakeaiz_tickrate_optim
further decrease wakeaiz tickrate and added jitter, we don't need to tick every fixed update for players entering such giant volumes
BC - handle null root chain entries and chains that have no nodes
merge from bc_null_chain_fix
merge from wakeaiz_tickrate_optim
drastically reduce tickrate of WakeAIZ when it becomes active, at worst this will add +10% to the sleepDelaySeconds (usually set to 30s) but will significantly reduce the perf impact of it
fix BC serialization issue
committing test multichain setup for reference
added support to BC for branching chains
- rotation is a little iffy, but behaves itself enough to not warrant adding extra constraint control against each child
merge from non_trigger_wake_AI
- chunky merge, ran s2p on a bunch of monuments
s2p for both oilrigs to re-apply fixes from `s2p_particle_flatten_fix`
merge from main
- kept destination on oilrig prefabs, will rerun s2p
refactor to allow subscriptions to nodes of the Grid<>, this lets us sleep the polling when the coarse query grid is completely empty and resume ticking it when it is populated again
improved WakeAIZ perf - added AnyPlayersInSphereFast to grid queries as we can check the validity ourselves in the filter callback
removed TriggerWakeAIZ, made gizmos less obnoxious, just use player querygrid directly instead of connections
replace procedural creation of TriggerWakeAIZ in dungeons with WakeAIZ
replacing train tunnel prefabs TriggerWakeAIZ
replaced all TriggerWakeAIZ in all monuments and ran s2p - train tunnels still left
- airfield
- artic_research_base
- bandit_town
- compund
- desert_military_base a/b/c/d
- excavator
- military_tunnel
- oilrig / oilrig_small
- trainyard
also copy sleep delay and zones in tool
quick tool to convert TriggerWakeAIZ with a button
- also made it so BaseEditorExAttribute can invoke a method for isTrue/isFalse instead of just reading fields/properties
setup ghostships and tropical islands WakeAIZ again because I changed the serialized format
- ran s2p on all islands
optional box support, re-uses x component of vec3 size for radius otherwise
- uses largest extension for network radius check and then a coarse OBB<->triggerpoint intersection to determine actual contents
replaced TriggerWakeAIZ with WakeAIZ on all ghostship variants and tropical variants
- ran s2p on all tropical islands
corrected inverted sphere gizmo
corrected latch, support for puzzlereset ddraw (get PooledList on request, don't track)
initial non-trigger AI WakeZone
▍ ▇▄▉▍▍▍▋▉ ▆▇▇▆▉▅ ▉▌▇ ▆▋█▌▋▉▅▆▌▇▄▇█ ▋▊▍█▆▆▌▄▉ ▄▉▌█▅▍ ▍▋▆▅ ▉▊▍▍▍ ▄▊ █▇▋▅▉▊ ▆▋▉▋▇▅▌ ▆▍▇▊▊ ▍▍▇█▅▆▄▄▍ ▋▌▋▋ ▍█▉▌█▆█ ▉▌▊▊ ▉▆ ▊▊▇▌
▌ ▌▊▄▄▆▄▋▇ ▉▌▌▍▉▋ ▇▄▅▅▍▅▇▇ ▌▍▍▅▅▉ ▋▋ ▅▌▍▋▅ ▊█▋█▉▍▋▆▅▆▇▋▄▌▇▋██
▆ ▄██▇▋▋ ▍▅▆█▇▇▆ █▉▉▍▇▅▋▆ ▍▇▇▉▊▍▅▋ █▉▍█▆▅█▋ ▍█▌▇▆█▌ ▌▄ ▉█ █▆▄█▅▋▍ ▅ ▅▄▋▅▋▌ ▇▌▌▇▍▄▇▄▌ ▄▌▆▇▄█ █▉▉▄█▊▉▇▅ ▋▊▆ ▄▇▊▅▇ ▄█ ▌▊▍ █▄▉▅ █▇▄▉▍ ▇▍▊▊▉▆▄▆ ▆▋▉▋▊▆▋ ▇▊ ▅▍▉ ▅▌▅▋ █▄██▇▅▅▆▉▌ ▆▇▇ ▋▄▌▆▌▆ ▅▅ ▆▌▌▌▌▌▆
▅ ▋█▅▆▆ ▉▊▅▍ ▍▌▍▊▆▇▉▌▆▊▊▌▋▇▅▅▇▍▊▋▍▄▄▋
▄ ▉▊▇█▋▋▉ ▊█▍▋▆▉█▌▌▇▅ ▄▅▌ ▄▍▋▊ ▌█▉▉█▍█▊ ▍▅▍ ▄▉▌▆█▊█▉ ▆▋▍▄▄██▇ ▇▋▆▉▊▉▌ ▌▆▄▅▍ ▍▇▉ ▊▆▌▌ ▌▆▋▋ ▆▉▇▉▌▍██▄▄▊ ▅▍▊ ▊▆█▊▄▄ █▉▉▉ ▍▅▇▋▅▊▉ ▄▉▄ ▄▍▆ ▄▄ ▍▋▉▄▌▇▅▊▍ ▊▊▇▅▆▋ ▆▊ ▄▌▉ ▊▉▋ ▆██▊▉▍ ▊▋▍█ ▉▄▆▍█▊ ▆▋▉ ▇▅▉▆ █▋▌▋ ▇▌██▇▇▄ ▆▉▇▊▉ ▋▇▌▊▍▉▅
better in-editor usability/visability of RconVars
added physics_used_memory profiler record for reading
test: dry ran analytics with logs and we're getting expected byte values back from it
fixed typo breaking active_dynamic_bodies profile analytic (dev build only)
merge from fresh_water_fix
freshwater fix - readded following components to world setup prefab
- cliff topology
- procedural components
- ocean topology
▆ ▄█▊▌█ ▊▇█▄▆█▍ ▄▄█▉▋▉ █▇▊▍▍▍ ▍▄ ▍▄▄▍▊▆ ▇ ▌▋█▋▄▆▆▊ ▆▍▍▋▆▆ ▆▇▉▌▆▆▆▉ ▅▉▊▌█