105,088 Commits over 3,806 Days - 1.15cph!
▄▇▉▇▄ ▅█▊▍▍█▅ ▊▄▄▆▌▌ ▉█▆▇█▄ ▄▇▅▋, ▋█▅▇▆█▌▇ ▇█▉ ▅▉▋█▌▋▉▇▅. ▍██▊▉ ▆▍▋▍█▆▊▄▋▌ █▋▅▌▅▆, ▊▍█▆█▌▉▌▉▆ █▍▍ ▋▇▄▉ ▋▍▉▄█▌.
Update: Switch to Dynamic measurements for Pool perf tests
- Also moved the tests into it's own nested class since there'll be more in the future.
Surprised this is not default behavior, but ah well. It does run less measurements, so it avoids random spikes.
Tests: ran the pool perf tests, results line up with previous
▆▉█▉▅ ▌▊▅▇▅▌ ▍▋▇▍ ▅█ ▌▆▇▉▅▆▉▋ ▍▍▊▆▄▇ ▌▍▅▇▋▉ ▊▇▋▊▅▄█▍▄
+ ▍▍▊▋▌▋ ▅▊▇ ▅▆▍▋▅▌ ▍▍ ▆ ▋▍▍▉ ▄▅▉ ▌██▋█▄
Bugfix: Avoid perf degradation with many small Perf Test iterations
Was caused by aggressive GC invocation, which I just ripped out - there's a better alternatives if it's truly needed.
Tests: Ran the Pool bench tests, execution time went down from 3m to 3-5s
initial 2D grid for avoiding Physics checks against WaterVisibilityTrigger
- Simple BitArray for static, brute-force through dynamics due to tiny count
- train tunnel trigger volumes limit the usefulness of this, next step is splitting world-Y into very small number of cells
Bugfix: Avoid tracking allocations from Setup/Cleanup
This fixes the bug that was invalidating measurement tracking. That said, this causes a perf regression because ExecuteSingleIteration is slow - will fix in next CL.
Tests: Observed a reduction in allocation calls for Pool perf test (but not to 0, as it's picking up allocations from GC.Collect)
New: Adding PoolTests allocation perf test
Estimates the allocation speed compared to basic heap alloc when we have full capacity available. This is just for perf testing package validation(revealed 2 bugs).
Tests: ran it and validated results in the Test Report window
Add: Adding Performance Test Framework(v3.0.3) as a source package
While evaluating I discovered a couple issues, so will be patching it over time
Tests: wrote a pool perf test, it ran
world_update_2/logpile_fixes -> world_update_2
Rebalanced wood pile to 1k with hatchet
- █▉▉▍█▍▄▊ ▅▌▇▊▄█▄ ▉▆▆▋▋ ▆▍ ▇▉▄▄▇▅▉▇▄█▅▋▇▄ █▄█▄ ▉ █▇█▍▅▅▊ + ▄█▍▅▋▅▍█▅▍ ▌█ ▊ ▌▅▌▋▍▉ ▇▅▄▄▆▌▊▆▌▊▌▊▍
- ▌▊▅ ▄▇▍▊▍ ▋▌▌ █▆▍█▊▇█ '▊▄▉▌▉▄' (█▊▆▄▍▄▌)
Fixed Jackhammer causing RPC Error when used on legacy wood piles
▌▄ ▄▌▆ ▊▋▅▉ ▄▊ ▋▉ ▌▉▇▅▅▊▌ ▊▋█▌▉▌▄ ▄▅▆▆▄, ▅▉▊▌ ▇▊▉▆ ▋▄█▍▇▋█ ▉▉ ▋▇▌▅▅▍ ▄ ▉▆ ▆▇▉ ▋▍▆ ▌▉▊▍▆▋▄ ▉▉▇ ▅▊ ▆▉▉ ▌▇█▉ ▇▍▇▍
▆▋▇▊▋▋▇▉█▊▍▍▌▇▌ ▋▋▉▉██ █▇█ █▅▅ █▌█▌ ▌▋ "▉▆▋█▍▇▊ ▍▋▌▌▌" ▌▅▉█, ▊▆█▇▍▋▌█ ▍▅ ▉▉ ▍▋▍▌ ▄▆▇▄ ▄▆▌ ▅▍▉▋▉▉▊▊ ▄▉▄▅▆█ █▋▌ █▇▉▌▌
▅▄▄▍▄ ▋▉▋ █▇▇█▆██▍▆▍ ▆█▉▍ ▍▉▋▇▊██▊▋▊▍▇ ▋█▋▊▉▍▄▇▄ ▊▋▌▆▍▇▌ ▆█ ▇▇ "▆▅▅█▅▊▄ ▄▆ ▌" ▊▊█▍▊▍▆▉ ▇▆▇▆▌▆ (▋▌▅▊▅▊ ▇▆▇▊▄ ▊▇▇ █▌▌▍▄▆▍▅ █▆▆▇▊▊▄ ▅▍▄▇▌)
fixed bird shit decal projecting on decal layer0
Heli Error Spam Fix -> Main
Revert heli dynamic height
Should prevent error spam
world_update_2/radioactive_water -> world_update_2
Merge radioactive_water -> world_update_2
▍▊ ▊▊█ █▄▉▋ ▉▊▄'▆▄ ▄▄▌ ▌▆▄▊▄▍▊ ▅▅ ▅ ▋▍▆▊ ▅▅▆▇▅ ▌█▄ ▋▆▌ ▌▆██▇▇▄▌ ▉▄▆▄▍▍, ▊▄▉▆ "▇▇▉▉▌█ ▍▄▊▌▅ █▌ █▌▋▅ ▋▅▊▌"
▋▊▅▊ ▊▍▄▆█ █▌▌ ▋▇▌▆▇ █▍ ▉▆▊▅▊▅▆▋▆▅▋▍▌ ▍█▉ ▊█▍▆▉ ▍▋ ▆▇▆▉▅, ▅▍▉▋▇▆▄▉ ▅▉█ █▇ ▅▋▅▊▉▄ ▍▆▋▆▌█▆█▉▉█ ▌█▉▄▊▇ ▊▍▊▊▌▌ █▅▍█▌
█▇▍ █▄▊▊▄▊▅▌▆▉▉_▇▇█▆▅ ▊▉▋▋▆▄ ▉▆ ▅▋▇▇▌▋ ▅▄▅▄▋ ▌▅█▉
▍▄▆▆ ▉▋▅▉ █▋ ▅▉▌▄ ▊▋▄▊▅▆ ▇▉▊ ▍▍▌█▉█▉▍ ▊▇▅▊▄▆▄▊▉ ▊▇▋▍▇▋ ▊▇▌▉ ▇▅▋▊▉▇█▇▆ "▊▇▊▅ ▌▌ ▉▆▋▇▉" ▉▍▍▉▉ (▄▌▊▉ ▅▆▄▊▌)
Added --main container too
Merge: from main
Tests: built all modes in editor
Update: document and test StringView.IndexOf
Tests: ran the new unit tests
Prevent being able to bully wolves by repeatedly shooting at their feet to scare them away, fix wolves trying to cancel their reaction to fire
Streamline wolf interruption behaviour, assign target upon hearing noise
Polish and budget NPC hearing, reduce charge range
Radtown no build increased
Dropzone position change
S2P
removed hurt volume from the frontier gate
fixed offsets in the frontier gate prefab
setup renderer lod on the frontier wall variants
WIP editor for TweakUIPresetSelect for easier editing of preset blocks
Applied new changes to ak for testing
Exposed support for IK hint on left hand
Simplified editing process, eliminated a few button presses
Similarly, increased the player check radius on BaseSpawnPoint from hard-coded 2m to 10m. Added OnDrawGizmos to BaseSpawnPoint to visualise the radius.
Due to how this is implemented, RadialSpawnPoint now uses 10m by default as well, but I've increased it to 20m manually for all scientist spawns. 10m is probably a better default anyway since we use the same spawn script for barrels etc as well.
Added playerCheckMargin as an additional margin around the spawn radius for human player checks in RadialSpawnPoint. New default value is 20m. Previously this used a const of 1m, so this does significantly change the behaviour of all existing RadialSpawnPoint users, but it prevents NPCs spawning closely to players.
Sample three points from the aim poses instead of two, use barycentric co-ordinates to blend between them