userDaniel Pcancel

3,050 Commits over 730 Days - 0.17cph!

3 Days Ago
Update(tests): patch ElevatorLift Tests: TestMTSave(ElevatorLift) - passes
3 Days Ago
Update(tests): patch ElectricWaterWheel Tests: TestMTSave(ElectrictWaterWheel) - passes
3 Days Ago
Update(tests): TestServer now sets up empty topomap Tests: TestMTSave(ElectricWaterWheel) - no longer NREs, but still fails
3 Days Ago
Update(tests): patch DPV Tests: TestMTSave(DiverPropulsionVehicle) - passes
3 Days Ago
Update(tests): bypass TOD_Sky sampling by DigitalClock when running unit tests Tests: TestMTSave(DigitalClock) passes
3 Days Ago
Update(tests): patch DeployableBoomBox Tests: TestMTSave(DepoyableBoomBox) passes
3 Days Ago
Update(tests): patch ComputerStation Tests: TestMTSave(ComputerStation) - passes
3 Days Ago
Update(tests): patch BoatBuildingStation Tests: TestMTSave(BoatBuildingStation) - passes
3 Days Ago
Update(tests): patch BuildingBlock - also skip EnsurePopulatedTriggersList if boatskin is null(it is in tests) Tests: TestMTSave(BoatBuildingBlock) - passes
3 Days Ago
Update(tests): Patch BlackjackMachine - skip sub entity spawning in testing mode Tests: TestMTSave(BlackjackMachine) - passes
3 Days Ago
Update(tests): patch Bike - also implemented TestFuelSystem.GetFuelAmount and Capacity Tests: TestMTSave(Bike) - fails on transform access
3 Days Ago
Update(tests): patch BaseSiegeWeapon and BatteringRam - implemented TestFuelSystem.GetFuelFraction Tests: TestMTSave(BatteringRam) - now fails on transform access
3 Days Ago
Update(tests): patch BaseSubmarine Tests: TestMTSave(BaseSubmarine) - now fails on TimeSince
3 Days Ago
Update(tests): patch BasePlayer Tests: TestMTSave(BasePet - a lil weird, but okay) - fails on TimeUntil
3 Days Ago
Update(tests): patch BaseBoat Tests: TestMTSave(BaseBoat), now fails on TimeSince
3 Days Ago
Update(tests): patch AutoTurret Tests: TestMTSave(AutoTurret) passes
3 Days Ago
Update(tests): patch PlayerHelicopter for TestMTSave - added IFuelSystem.TestFuelSystem, mostly duds Tests: ran TestMTSave(PlayerHelicopter), still fails, but now around TimeSince
3 Days Ago
Update(tests): patch BaseVehicle, BaseHelicopter for TestMTSave(TwitchBus) - also skip spawning marker for CH47 in unit test mode Tests: TestMTSave(TwitchBus) passes
3 Days Ago
Bugfix(tests): path CargoShip and skip some prefab logic for TestMTSave Tests: TestMTSave(CargoShip) passes
3 Days Ago
Bugfix(tests): patch OreHopper.oreOutputMesh in TestMTSave Tests: TestMTSave(OreHopper) passes
3 Days Ago
Bugfix(tests): patch up ItemContainers.allowedItems in TestMTSave setup Tests: ran TestMTSave tests, 343 -> 298 failures
3 Days Ago
Bugfix(tests): catch exceptions raised when killing spawned entities on test cleanup Allows us to clean up entire spawnable list, permitting other tests in the queue to succeed if they don't mind the poisoned state Tests: ran all TestMTSave, 354 failures out of 637
3 Days Ago
Update(tests): patch up CoalingTower.unloadingBounds for TestMTSave Tests: TestMTSave(CoalingTower) passes
3 Days Ago
Update(tests): do minimum initialization for IOEntities Allows FogMachine and StrobeLight to pass tests Tests: ran TestMTSave, these 2 cases pass
3 Days Ago
Bugfix(tests): exclude abstract BaseEntities from test cases Tests: ran unit tests
3 Days Ago
Bugfix(tests): bypass ferry error checks when initializing during unit test Can be fixed properly, but don't think we need it right now Tests: ran TestMTSave(NexusFerry) - it passes
3 Days Ago
Bugfix: bypass marker spawning when unit testing Unrelated blocker to MT saving test Tests: Ran TestMTSave(NexusIsland), now passes
3 Days Ago
Optim: avoid struct copy in ExtractTransformAccess, just reinterpet the pointer shrinks asm to 8 instructions from 40+ Tests: ran TransformEx unit tests
3 Days Ago
Merge: from main
3 Days Ago
Merge: from remove_jobs2 - Bugfix for exceptions when server gets more than 32 players Tests: compiles
3 Days Ago
Bugfix: expand TickDeltaTime & TickNeedsFinalizing server state arrays as players join Prevents NRE when server gets >32 players - missed this during rewrite Tests: compiles
3 Days Ago
Merge: from main
6 Days Ago
Update: ensure BaseEntities with networkEntityScale can be saved in MT - added GetLocalScaleMT + unit tests - increased TestMTSave(BaseEntity) coverage Tests: ran unit tests - 219 pass/425 fail
6 Days Ago
Bugfix(tests): rewrite test proto comparison to use serialized buffers Was naive to hope NUnit would fall back to reflection-based Equals for objects. Tests: ran TestMTSave(BaseEntity) - it passes (though there's 1 branch that's not covered, gotta fix)
6 Days Ago
Update: add GetNetworkTime(ThreadSafeTime) overload Going to use it to gradually convert entity saving code (instead of modifying all 40 callsites from the get go) Tests: ran unit test for BaseEntity - no longer complains about scripting API, but thinks outputs differ
6 Days Ago
Update: Convert BaseNetworkable.GetNetworkPosition/Rot to use GetLocalPosMT/RotMT - every BaseEntity now caches it's TransformHandle on spawn Only active when UsePlayerJobs >= 4 Tests: ran unit tests (now fails further). spawned a boat on craggy and sailed for a bit - no replication issues.
6 Days Ago
Update: Implement GetLocalPosMT and GetLocalRotMT that can bypass unity scripting restrictions - added unit tests These are dangerous and can only be used if it's known that there's no other overlap with transform hierarchy changes. WIll be slower than TransformHandle read in editor/staging, but should be similarly fast in release Tests: ran unit tests
6 Days Ago
Update: cache Time values into ThreadSafeTime so we can avoid unity api calls - replaced Time.frameCount read in BaseNetworkable BaseNetworkable can now save, now the rest of BaseEntity Tests: ran TestMTSave(BaseEntity) - still fails, but now further
6 Days Ago
New(tests): BaseNetworkableTests.TestMTSave - saves each subclass of BaseNetworkable twice on thread pool, compares results Tests: ran all 644 cases, all fail, picks up scripting API asserts as hoped
7 Days Ago
Merge: from remove_jobs2 - Removal of UsePlayerUpdateJobs 2 supporting code, setting it lower will run at least mode 3 - Bugfix for potentially invalid buffer usage when fetching WaterInfos - Moved more BasePlayer state to NativeArrays Tests: ran unit tests, ran around on craggy
7 Days Ago
Update: Codegen Tests: compiles
7 Days Ago
Clean: pass around ReadOnly instead of mutable collection where possible Tests: compiles
7 Days Ago
Merge: from main
7 Days Ago
Bugfix(tests): make sure PerfIsNoClipping properly cleans up spawned gameobjects - also cleaned up some leftover deltaTime arrays in tests This was messing up tests further in the queue Tests: ran AH perf and unit tests
8 Days Ago
Bugfix: fix out of bounds write Tests: ran unit test combination that previously failed - now passes
8 Days Ago
Clean: remove AntiHack.DeltaTimes persistent buffer Was used to cache tick times, but now we cache it in PlayerStates Tests: ran AH perf and unit tests - stumbled on an unrelated(I think? suspicious) bug
8 Days Ago
Update: move tickDeltaTime and tickNeedsFinalizing into it's own state arrays Cleans a stale TODO Tests: booted craggy and ran around
8 Days Ago
Bugfix(tests): remove test assertion that can sporadically fail Since we run some checks in parallel, some state results are unreliable Tests: ran unit tests as a batch and each in isolation
8 Days Ago
Bugfix(tests): ensure env volumes get cleaned between TestIsFlyingConsistency runs Found a test that fails when run in isolation Tests: ran unit tests
8 Days Ago
Bugfix(tests): use test state caches for PlayerState Fixes failures from previous change. Spotted a bug that should cause a failure, yet it passes somehow - will investigate next Tests: ran AH perf and unit tests