userDaniel Pcancel

506 Commits over 123 Days - 0.17cph!

3 Months Ago
New: Initial version of Save Viewer It's very simplistic, but currently displays ID, prefab name, and parent ID (if exists). Allows to search by these and prefab name Tests: loaded a test save from staging server (200k entities, 20mb), was able to interact and get data I wanted
3 Months Ago
Clean: simplify code in WhatUsesThis.ParsePrefab Tests: none, trivial changes
3 Months Ago
Bugfix: WhatUsesThis - avoid duplciate results It was possible that our recursive search would pick up the same references as AssetDatabase, so exclude those. Tests: Asset used to return 5 results with 2 pairs of dupes - now it's 3 results with no dupes
3 Months Ago
Update: WhatUsesThis is now able to inspect prefabs recursively It'll search for any GUIDs that are mentioned on any attached MonoBehaviors and cache them. Search is done in the background while database scan is ongoing - no perf degradation. Tests: ran Rebuild then searched for the prefab that didn't report any results - now reports 6 hits
3 Months Ago
Update: pool.print_memory now allows to filter by T, case sensitie Will be useful in narrowing down leaks in a more precise fashion Tests: Ran the command with/without filter args
3 Months Ago
Merge: from /main/expand_ipooled Tests: tested all modes in editor, built client and server binaries, tried 2p local multiplayer - coor loop was good.
3 Months Ago
Merge: from main I've reached a good checkpoint, so prepping to merge back to staging Tests: tested all modes in editor, built client and server binaries, tried 2p local multiplayer - coor loop was good.
3 Months Ago
Update: TokenBucket implements IPooled Tests: none, trivial changes
3 Months Ago
Update: Sliced-/GranularAudioClip.Grain now implement IPooled Didn't realize there were extra similar types, added. Tests: None, trivial changes
3 Months Ago
Update: Planner.Guide.Snapping implements IPooled Another candidate for struct conversion - added it to the task. Tests: tested with laser light snapping - still snaps
3 Months Ago
Update: SoundModulation.Modulator now implements IPooled Ideally this should be a struct, since it's an 8byte object, but that would require to change too many places for now. Will create a separate task for this. Tests: local session, ran around and shot - could hear steps, impact on different surfaces
3 Months Ago
Update: MusicManager.ClipPlaybackData now implements IPooled Tests: booted in local session, no exceptions
3 Months Ago
Update: MusicClipLoader.LoadedAudioClip now implements IPooled Tests: booted in local session, no exceptions
3 Months Ago
Updating: EngineAudioClip.Grain implements IPooled Will need to explore further if it's dead script Tests: None, trivial change
3 Months Ago
Merge: from main Tests: none
3 Months Ago
Update: Replacing Pool.FreeUnsafe with Pool.Free where possible Since more IPooled usage has been added, these were left untouched by accident. Tests: none, trivial changes
3 Months Ago
Merge: from main Tests: checked all modes build
3 Months Ago
Update: Network.Message implements IPooled Technically, this should be converted to a struct instead, but the benefit/effort is not worth it right now. Also marked a static as readonly, since we never modify it. Tests: single client-server session was pumping messages succesfully. Built all modes. Tested recoridng and playback.
3 Months Ago
Update: WaterDynamics.InstanceBatch implements IPooled Also removed a bit of dead code and unused functions. Tests: checked that rowboat still produces foam
3 Months Ago
Update: PlayerReclaimEntry implements IPooled Tests: tested in local multiplayer in softcore mode
3 Months Ago
Update: ImpostorBatch implements IPooled Moved some code around and removed some always-true checks. Tests: during local game hit all new functions in the right order
3 Months Ago
Update: convert PositionLerp to IPooled Previously implemented as IDisposable, so this was a straighforward switch. Tests: ran a local 2player game, forced the client to disconnect - confirmed EnterPool got called
3 Months Ago
Merge: from main Tests: built all modes in editor
3 Months Ago
Update: fixing invalid namespace reference Tests: none, trivial change
3 Months Ago
Clean: Removing other TMP hidden warnings Turns out I added an extra csc file that I missed today. Tests: none, trivial changes
3 Months Ago
Update: fixing depr warnings in TMP Originally I excluded it from fixes as it was an external package, but it has a couple of our fixes already. Tests: none, trivial changes
3 Months Ago
Update: Review feedback Avoid creating a struct when fetching state of ParticleSystem Tests: none, trivial change
3 Months Ago
Merge: from main Tests: Build all modes
3 Months Ago
Merge: from /main/pool_reduce_freeunsafe Tests: tested on feature branch with build tests
3 Months Ago
Update: Replace Pool.FreeUnsafe with Free No funcitonal change, just reducing work in the future. Also updated relevant binary. Tests: Build a win64 client locally and built all modes in editor.
3 Months Ago
Merge: from main Tests: none
3 Months Ago
Buildfix: updating stale DLL Tests: built all modes
3 Months Ago
Update: Fixing obsolete FreeList usage Tests: none, trivial change
3 Months Ago
Update: Consolidating Facepunch.System.Tests - Cleaned up a bunch of bogus using statements Tests: Ran combined unit tests - they pass.
3 Months Ago
Merge: from main Tests: ran around, gathered, shot, built
3 Months Ago
Merge: from /main/experiment_reduce_gc_server_refresh Tests: ran new unit tests, checked Server Browser work
3 Months Ago
Merge: from main Tests: ran new unit tests, checked ServerBrowser
3 Months Ago
Update: StringView gains index and range support Added tests to cover new functionality. Added more checks for Substring operations Tests: ran new unit tests, checked ServerBrowser
3 Months Ago
Update: StringView - prefer ctor overloads instead of default args Saves a couple branches in some scenarios. - Also expanded tests to cover all ctors and arg ranges Tests: Ran new unit tests and checked server browser
3 Months Ago
Clean: Updating the docs of StringView to compare against Memory Turns out I missed System.memory during my initial research, which serves a very similar purpose. Sadly, it doesn't cover all our use cases, so we still need StringView - I've mentioned these shortcomings in the xml doc. Tests: none, trivial change
3 Months Ago
Update: Finalizing StringView - StringView's constructor now follow's Span form (source, start, len) instead of (source, start, end). Fixed updated unit tests. - Reimplemented CompareIgnoreCase via EqualityComparer<T> instead of IEqualityComparer<T> as per MS recommendation. - Annotated every public method with xml docs Test: ran unit tests - all green. Checked ServerBrowser - still good.
3 Months Ago
Update: Expanding HashEquality test for StringView To confirm that the required interface is implemented correctly and gets invoked. Tests: Ran the updated unit test
3 Months Ago
Merge: from main Tests: built all modes. Server Browser still works
3 Months Ago
Update: Reimplement tag support in server browser Fixes the break I left when running the experiment with StringView Tests: Clicked through server browser's various filter options
3 Months Ago
Buildfix: Reimplement deleted overload call from last CL Also reduced number of hashset allocations when tags are empty. Tests: Went to server browser to check Nexuses
3 Months Ago
Merge: from main Tests: Built all modes
3 Months Ago
Update: Nuking the allocating StringView.Split There's a non-allocating overload already present, so going to keep it default to help keep the 0-allocations approach. Tests: none, trivial changes
3 Months Ago
Add: unit tests for StringView and it's ignore case comparator I'll need to merge this Tests assembly with the one in unify_pool_free branch once it's merged (which-ever one goes in first) Tests: ran them - they pass
3 Months Ago
Update: Further rounding up StringView - Added ToString() (makes debugging much nicer too) - Fixed up wrong exception types - Added Length property Tests: ran new unit tests(next cl) for StringView, they pass
3 Months Ago
Merge: from main Tests: built all modes, built small house, cut a tree