userDaniel Pcancel

2,627 Commits over 639 Days - 0.17cph!

30 Days Ago
Clean: ProjectileWeaponMod.Mult - use 1 as hardcoded default value They've been manually specified as 1 everywhere, seems a bit redundant Tests: compiles
30 Days Ago
Optim: cache all selectors that are used in mod value aggregations Tests: got shot by a scientist. killed them with a fully modded ak
30 Days Ago
Optim: reimplement projectile mod aggregators to be alloc free - added outstanding Avg, Min and Max helpers - all helpers are now generic, to support the 2 overloads we have - ripped out GetMods to avoid accidental reintroduction of allocs Still need to fix remaining dynamic callback creation Tests: got shot by a scientist
30 Days Ago
Clean: simplify ProjectileWeaponMod code - get rid of 0 as default arg - mini bugfix: hook up bypassModToggles in one of Sum overloads - added non-GC mul and sum, but not plugged in yet Tests: compiles
31 Days Ago
▉▉▋▄▋▅▌ ▉█▊█ ▌▊▆█▅▋▍▇▇▉▌▌▆▅▄▋▅▋▋▌▅▆▌▇▉▍▋▉▍▇ ▊▇█▄▆█ ▅▌▄ ▉▋▄▉ █▋▋█ ▍▋█▊▋▊ ▌▇▊▌▌▌▅▄█ ▇▍ ▍█▇▅▌▉▉▇ ▊▅▄ ▅▋▇▊▌█▌▌█▋▌▊▊▋▊▊▇▍▌▉▇▊▉▉▇▇▆ ▄▆▍▆▄▉▋▅▌█▆▄▋▅▉ ▌▆▅▋▋█ ▅▌ ▅█▌▉▊▉ ▅▌▆▉ ▆▋▊▉█▋ ▅▌▊▌▅▅▍▅▇ ▋▋▆▇▉▉▌▍
31 Days Ago
▄▆▄▌▇▆█▄ ▆▆▋▄▍▊▋ █▇▇▆▍█▉▋▍▄▇▌▉█▍█▍▌▌▄▉▄▄█▇▊▇ ▋▇▉█▅ ▅▋▌ █▇▆▇ ▆ █ ▉▄▌▍ █▌▉ ▇▌▌ ▆▅▊ ▆▇▆▍ ▍▇▅▋▇▇▊▆▊▌▉█▅▊▉▉▉▍▍▆█▍▋▋█▉▋ ▅▍▉▉█▅ ▇▇ ▍▅▋▆▋▅ ▋▋▍▄▍▊▅▋▊ ▅▆▇▄█▍▉ ▇▇▋▊ █▆▅▇▄▆ ▋▆▉▇▌▊▆▄▋ ▅▋ ▋▉▌▉█▇▇▆▅▅▌ ▇▇▌▇█▄▋█▊▊▍ ▊▍▍▅▆▆▉▅▍▋▌▌▉▌▍▅▍▍▋▅▍▄▍▍▆▉█ ▆▅▆▇ ▉ ▅▌▌▍▊▇▄▄▊▍ ▆▅▉▉ ▆▉ ▉▍▌▉▌▉ ▄▉▍▍ ▍▊▌▇▍▊▇▆▊▋▍▍▉▉▌▊█▍▌ ▋▇▊▆▍▊ ▆█▋ ▊▉▌ ▇▍▊█▇▆ ▇▄ ▉▋▆▌▉▉ ▉█▆▊ ▆▄▄▋▆▊ ▆█▍▊▋▅▉▊▄ ▍▊▄▌▅█▇▅▍ ▆▄▅▋▋▇▅ ▋▅▅ █▉▋▊ ▋▄ ▅▍▇▊▇▇▅ ▊▌▊ ▍▉▉▅ ▆
31 Days Ago
▉ ▍▇▊▌█▍ ▉▅▌▍ ▆▇▅▄
31 Days Ago
Clean(tests): add messages to new checks to know which permutation and player diverged Tests: ran the modified test
31 Days Ago
▌ ▋▋▊▆▍█ █▊▉▇█▄▊ █▇▅▇▉▋▉█▌▋▅▋▍▉█▉▋▆ ▅▄▍▆▄▆█ ▍▇ ▆▅▄▆ ▌▆ ▋▌▄▄▆▅█ ██▍▍██ ▄▌▄▅▌ ▅▆▍▋ ▅▆ ▌▍ ▊█ ▇▆▋▉▇█▅▋▇██▄▋▊█▆▅▌▍▌▉▆ ▄▆▅▊▇ ▄▋▋▆▆▉▄ ▅▆▆█▅▄
31 Days Ago
Update(tests): TestIsFlyingConsistency now also compares computed flying states - Reset flying state between test runs Tests: ran tests, level 1 passes but level 3 now fails
31 Days Ago
Bugfix(tests): make AntiHack tests spawn players with colliders Tests: ran all AH tests, all pass except for 1 already known
31 Days Ago
Update(tests): rewrite TestIsFlyingConsistency to better mix various players Need to figure out why playerr-on-player test doesn't detect player, will do next Tests: ran unit test, detects an issue on level 1
31 Days Ago
Update: set UsePlayerUpdateJobs 2 as default - codegen Tests: none, trivial change
31 Days Ago
Clean(tests): fix formatting inside Test.AntiHack.cs broken by auto conflict resolution Tests: compiles
31 Days Ago
Merge: from main
32 Days Ago
Clean: simplify sync from flying cache back to players Tests: none, trivial change
32 Days Ago
Clean: annotate AreFlying jobs with context comments - got rid of ref and added ReadOnly in a couple places Tests: compiles
32 Days Ago
Merge: from reorganize_unit_tests - Buildfix Tests: switched through all modes
32 Days Ago
Buildfix(tests): add a missing SERVER macro guard Tests: clicked through all modes - all compile
32 Days Ago
Merge: from reorganize_unit_tests - Clean(tests): reorganize unit test structure - all test classes are either in Tests.Unit or Tests.Perf or both namespaces - Bugfix(tests): patch up a bunch of test classes so that they work properly Tests: ran all unit tests. some spurriously fail as part of big batch, but individual test classes pass.
32 Days Ago
Merge: from main
32 Days Ago
Bugfix(tests): patch up ServerOcclusionTests - replace out-of-date occlusion cache with a new one based on Craggy - update CanSee and CantSee chunk pairs - add missing initialization Tests: ran ServerOcclusion unit tests - they pass
32 Days Ago
Bugfix(tests): CompanionServerTests - switch to persistent ClanManager - ClanManagedDB now also lives in a temp folder for tests - some tests now drain any backlogged traffic on the test socket Tests: all CompanionServerTests unit tests pass consistently (finally)
32 Days Ago
Bugfix(tests): CompanionServerTests - use persistent RelationshipManager - house RelationshipManagerDB in a temp folder Tests: ran CompanionServerTests unit tests, 1 sporadically fails
32 Days Ago
Bugfix(tests): CompanionServerTests - setup player lookup map Broke since one of our optims way back. Tests: ran CompanionServerTests - now 2 failing
32 Days Ago
Bugfix(tests): CompanionServerTests - use unique persistence database per test run If a test goes wrong, the cleanup doesn't happen, which borks all the subsequent tests in a run Tests: ran CompanionServerTests - 16 pass, 3 fail
32 Days Ago
Bugfix(tests): rewrite GrowableGenesTests no allocs tests to use ServerProfiler new api Think my old hacky solution finally broke Tests: ran GrowableGenesTests test - it passes
32 Days Ago
Bugfix(tests): workaround "don't add editor components" safety check when running editor unit tests Tests: ran GameTraceTests unit tests - they now all pass
32 Days Ago
Bugfix(tests): fix missing InvokeHandler in GamePhysicsTests Tests: ran GamePhysicsTests unit tests, now all pass
33 Days Ago
Bugfix(tests): ProjectileTests now pass - Skip god mode overlay setting for local player in tests - explicitly enable main shield collider after spawning Tests: ran ProjectileTests unit tests
33 Days Ago
Bugfix(tests): fixup ServerProfiler tests that are sensitive to type hierarchies - release binaries from a496e80e Tests: ran ServerProfilerTests
33 Days Ago
Buildfix(tests): all modes compile Tests: clicked through all modes
33 Days Ago
Clean(tests): rest of Assembly-CSharp-Editor.dll tests restructure Just gotta make sure all platforms build and check if unit tests pass Tests: none
33 Days Ago
Merge: from main
33 Days Ago
Merge: from useplayerupdatejobs3 - Bugfixes for dynamically enabling Jobs 3 mode Tests: unit tests + switched Jobs 2 -> 3 on Craggy in editor
33 Days Ago
Bugfix: ensure AntiHack states are properly expanded when going from Jobs 2 to Jobs 3 Tests: sanity test on craggy in editor, switched Jobs 2 to 3
33 Days Ago
Clean: one more unnecessary playerCache passing Tests: compiles
33 Days Ago
Bugfix: ensure SpeedhackStates and FlyhackStates have sufficient storage - remove playerCache propagation where we already pass a ReadOnlySpan Tests: ran unit tests
33 Days Ago
Clean(tests): 30% restructure of Assembly-CSharp-Editor.dll tests Tests: none, will rerun once all moved
33 Days Ago
Clean(tests): restructure Facepunch.System.Tests.dll tests - removed FPTask and associated tests (was experimental code) Tests: ran unit tests
33 Days Ago
Clean: restructure Rust.Global.Tests.dll tests Tests: ran unit tests. some OBBTests sporadically fail, but pass on 2nd run - think same as before
36 Days Ago
Clean(tests): rename DummyServer -> TestServer Tests: compiles
36 Days Ago
Clean(tests): consolidate various test entities/systems Tests: none, going to happen later
36 Days Ago
Clean(tests): Move test utilities to Tests and Tests.Perf namespaces - replaced manual measurement loops with Test.Perf.MeasureAndPrint Tests: none, leaving till later
36 Days Ago
Merge: from dynamic_object_work_queue_shrinking - Optim: ObjectWorkQueues now shrink to larger capacities overtime Tests: procgen map, ensured outpost turrets still tracked and fired at me
36 Days Ago
Update: debug.printqueues now also prints queue capacity Tests: printed queues while being blasted by turrets
36 Days Ago
Optim: ObjectWorkQueue now shrinks to dynamically adjusted minimal capacity instead of 0 - explicitly calling Clear resets the state back to inital 256 capacity Grows capacity by 10% every minute if 60 overcapacity events have been recorded. This should eliminate allocations for bursty workloads in long term. Tests: visited outpost, got blasted by turrets
36 Days Ago
Merge: from fix_invoke_flood - Optim: prevent repeating invokes flooding work after stalls Tests: observed animals moving normally
36 Days Ago
Optim: change scheduled time for repeating invokes Previously, we would schedule repeating invokes from current time, meaning overtime they would drift towards one frame, causing work spikes. Now we maintain interval in respect to original time, which should preserve original scattering Tests: ran around with a lit torch on procgen, some wildlife moving
37 Days Ago
Merge: from remove_clear_from_unsub - Optim: speed up unsubbign from network groups by skipping clearing their entities from the queue Tests: teleported around 2.5k procgen map