userDaniel Pcancel

3,032 Commits over 730 Days - 0.17cph!

Today
Bugfix: BuildingPrivlidge(sic) - add GetOrUpdateProtectedMinutes that's MT safe and does a bit of a cheeky If we end up sending this entity to many players in 1 frame, it will update the cached protected minutes only for 1 player, and the rest are in limbo if they got old or new value. This gives us same perf as original lazy-eval solution. Tests: TestMTSave - got 0 fails!
Today
Update(tests): patch MapMarkerMissionProvider Tests: TestMTSave passes (down to 2)
Today
Update: TestServer now initializes PaintballColorLookup.instance Tests: TestMTSave - 5 -> 3 fails
Today
Bugfix: make TravelingVendor.Save MT friendly - get rid of wheel flags processing, they were updated on server and sent over, but not used - cache linear velocity every fixed step (we're missing on interpolation, but we only send the snapshot every fixed update anyway) - use manually interpolated steeringAngle instead of querying the wheel collider Tests: TestMTSave(down to 5 remaining), ran TravelingVendorTest scene and looked at the vendor as it drove around
Today
Bugfix: move tin can updates out of Save, as it's not MT safe Tests: TestMTSave and placed it on the ground, walked over and opened inventory
Today
Update(tests): TestServer now also initialized TrainWagonLootData and Translate classes Tests: TestMTSave - 13 -> 7 fails
Today
Bugfix: batch of bugfixes to Save being not MT safe - removed more Time dependency - replaced Transform access with TransformHandle bypass Tests: TestMTSave - 20 -> 13 fails
Today
Bugfix: move Signage.EnsureInitialized from Save to ServerInit, as it's not MT safe Tests: TestMTSave - 25 -> 20 fails
Today
Bugfix(tests): batch of patches for unit test spawned entities to avoid NREs in Save Tests: TestMTSave - 28 -> 25 fails
Today
Bugfix: move CarvablePumpkin.EnsureInitialized out of Save, since it's not thread safe Tests: TestMTSave(CarvablePumpkin) and spawned and carved one on playground
Today
Bugfix: batch of Transform replacements with TransformHandle in save code when using Jobs 4 Tests: TestMTSave - 32 -> 29 fails
Today
Bugfix: batch of replacement for Time usage with ThreadSafeTime Only 1 skipped out for now, BuildingPriviledge - that one does lazy-eval, which is problematic Tests: TestMTSave - 42 -> 32
Today
Bugfix: BasePlayer - avoid Time.time when evaluating mortarCooldown There's one more issue to resolve, but it doesn't affect unit tests, will resolve later Tests: TestMTSave - 59 -> 42 fails
Today
Bugfix: vehicle related Time api fixes - TimeSince and TimeUntil now have a member method allowing to calculate from passed time (to avoid Time.time invoke) - TrainCar uses GetNetworkTime(ThreadSafeTime) overload Tests: ran TestMTSave, 74 -> 59 fails Tests: TestMTSave
Today
Bugfix: don't use cached fuel fraction, just calculate it when saving Avoids TimeUntil sample, which isn't safe in MT Tests: TestMTSave(AttachHelicopter) pass
Today
Update(tests): another small batch of patches and skips that I missed Tests: TestMTSave 81 -> 75 failures
Today
Bugfix: BaseNPC - fallback to original GetNtworkRotation implementation for server side entity It knows how to fetch local rotation in MT-safe way Tests: TestMTSave - 94 -> 81 failures
Today
Update(tests, editor): last batch of patches and bypasses to spawn entities - Renamed Prefabs editor script into PrefabTools, as it was conflicting with PRefabs.Misc.GhostShip I can finally get to fixing save issues for MT Tests: relevant TestMTSave pass
Today
Update(tests): batch of various patches and prefab spawn skips Got about 10 patches to apply before starting to fix saving for MT Tests: relevant TestMTSave pass
Today
Update(tests): skip marker spawning in tests for DeliveryDrone Tests: TestMTSave(DeliveryDrone) pass
Today
Update(tests): patch GraveyardFence Tests: TestMTSave(GraveyardFence) pass
Today
Update(tests): patch StringFirecracker Tests: TestMTSave(StringFirecracker) pass
Today
Update(tests): patch CookingWorkbench Tests: TestMTSave(CookingWorkbench) fails on Save now (realtimeSinceStartup)
Today
Update(tests): patch WaterInflatable Tests: TestMTSave(WaterInflatable) pass
Today
Update(tests): TestServer now creates TreeManager Tests: TestMTSave(TreeEntity) pass
Today
Update(tests): patch ThrownBoomerang Tests: TestMTSave(ThrownBoomerang) pass
Today
Update(tests): patch SingleUseMissionStorageContainer - also have TestServer explicitly create InvokeHandlerFixedTime to avoid DontDestroy call Tests: TestMTSave(SingleUseMSC) pass
Today
Update(tests): patch SantaSleigh Tests: TestMTSave(SantaSleigh) pass
Today
Update(tests): patch MobilePhone Tests: TestMTSave(MobilePhone) pass
Today
Update(tests): patch DisplayingBoxStorage Tests: TestMTSave(DisplayingBoxStorage) pass
Today
Update(tests): patch ConstructableEntity Tests: TestMTSave(ContainerCorpse) pass
Today
Update(tests): patch BallistaGun Tests: TestMTSave(BallistaGun) pass
Today
Update(tests): patch WildlifeHazard Tests: TestMTSave(WildlifeHazard) pass
Today
Bugfix(editor): rename TreeManager.Reset into ResetTrees Unity was derping trying to call instance Reset when it was marked as static Tests: TestMTSave(TreeManager) pass
Today
Update(tests): ensure patched BaseCombatEnt have non-0 starting health Allows for Stocking to survive during initial damage tick on spawn Tests: TestMTSave(Stocking) pass
Today
Update(tests): redirect relationship db location to temp path in tests Tests: TestMTSave(RelationshipManager) pass
Today
Update(tests): skip generation and map marker of ProceduralDynamicDungeon in tests Tests: TestMTSave(ProceduralDynamicDungeon) pass
Today
Update(tests): patch PatrolHelicopter - also bypass map marker spawn in unit tests Tests: TestMTSave(PatrolHelicopter) - fails on transform access in save
Today
Update(tests): bypass mapMarkerPrefab spawning in unit tests Tests: TestMTSave(MLRSRocket) pass
Today
Update(tests): patch MiningQuarry - also bypass deposit spawning in unit tests Tests: TestMTSave(MiningQuarry) pass
Today
Update(tests): patch InvisibleVendingMachine Tests: TestMTSave(InvisibleVendingMachine) - fails on translation token
Today
Update(tests): bypass grid spawn in HexagonGridGenerator tests Tests: TestMTSave(HexagonGridGenerator) pass
Today
Update(tests): patch HeldBoomBox Tests: TestMTSave(HeldBoomBox) pass
Today
Update(tests): bypass reclaim manager spawn in GameModeSoftcore unit testing Tests: TestMTSave(GameModeSoftcore) pass
Today
Update(tests): patch BaseHuntEvent Tests: TestMTSave(EggHuntEvent) pass
Today
Update(tests): patch DynamicDungeon Tests: TestMTSave(DynamicDungeon)
Today
Update(tests): bypass createdObject spawning of DroppedItem in unit tests Tests: TestMTSave(DroppedItem) pass
Today
Update(tests): bypass self-destroy of DeepSeaManager if we're in unit testing mode Tests: TestMTSave(DeepSeaManager) pass
Today
Update(tests): patch BradleyAPC Tests: TestMTSave(BradleyAPC) pass
Today
Update(tests): patch BasicCar Tests: TestMTSave(BasicCar) pass