userDaniel Pcancel
reporust_rebootcancel

2,857 Commits over 700 Days - 0.17cph!

9 Days Ago
Bugfix: StringView.ToVec3 - ensure we grab first-of-a-set separator Tests: ran StringView and Command unit tests
9 Days Ago
Update: add StringView.IndexOfAny - expanded unit test to cover Will need it to bugfix ToVec3 again Tests: ran unit test
9 Days Ago
Update(editor): add a couple more ToVec3 Tests: catches failing cases
9 Days Ago
Update: StringView now allows construction from null strings - expanded unit tests This brings it closer to ReadOnlySpan semantics. Tests: some unit tests failing, will investigate later
10 Days Ago
Merge: from tovector3_parse_format_fix - Bugfix: fixes ToVector3 parsing bugs for various spacing configurations of Vec3, added unit tests to cover it Tests: ran unit tests, checked F3 modes camera offset is correct and spawned entities appear where expecte
10 Days Ago
Bugfix: StringView.ToVector3 - trim off both whitespaces and , Tests: StringView and Command unit tests pass
10 Days Ago
Update: add a couple more test cases to ToVector3 unit test Tests: still fails, as expected
10 Days Ago
New: add Facepunch.UnityEngine.Tests assembly - added StringView.ToVector3 unit test Currently fails, as reported Tests: ran unit test, fails as expected
10 Days Ago
Merge: from main
10 Days Ago
Clean: remove NetWrite.BytesWithSize(byte[]...) overloads Tests: editor compiles
10 Days Ago
Clean: remove acouple obsolete things - Get rid of IStreamReader/Writer - they're not used anywhere - get rid of NetWrite.Bytes(byte[]) overload - superceded by Bytes(ReadOnlySpan<byte>) Tests: editor compiles
10 Days Ago
Merge: from main
10 Days Ago
Merge: from player_benchmark_improvements - Bugfix for PlayerModelBenchmark scene missing from builds Tests: none, trivial change
10 Days Ago
Bugfix: mark PlayerModelBenchmark.unity for maps bundle Tests: none, trivial change
10 Days Ago
Merge: from main
10 Days Ago
Update: in progress work to support ReadOnlySpan<byte> in NetWrite - Rust.SourceGenerator updated to support ReadOnlySpan<byte>-like types in RPC sigs - NetWrite pipes most byte[] calls to ReadOnlySpan overload Still need to cleanup and figure out if IStreamWriter is needed Tests: editor compiles
13 Days Ago
▊▋▊▅▊▊▄ ▄▄▊▉ ▄▊▋▉▅▅▄▊▆▇▇▅▊▊▍▇▅▅▄▆█▅▇▄▍▅ ▌▆▉▆▋▅█ ▅▍▄▍▄▉ ▍██▊▆▆▊▍▉ ▊▇▍▌▄▇ ▄▍ ▇▊ ▉▍▆ ▌▄▍▊▆▊▉▊▍▇▅ ▊▅▌▄█▅▋▇ ▅▇▊▆▇▌▄▅▄ ▍▋▇█▉▊▊▇▋▊ ▄▍▇▌▋▍▌▆▍▉▄█▅▌▆▋▍▅ ▌▉▋▅▉ ▉▋▅▄▊▄█ ▆▊▋█▋▇
13 Days Ago
▄█▍▍▅▌▊▉ ▍▇▌▆▍▅ ▌█▊█▊▌▆▄▄ ▇▉▇▉▉▌▆▍▆ ▋▇▊▌▆ ▅▄▍▉█▉▇▉▄ ▋▍▍▇▋▍ ▋█ ▄▍█▉ █ ▌▆▄▊▋ ▇▊ ▉▊█▍▆ ▉▇▊▇▋▉ ▊▋█ ▊▉▉██▍█ ▆▆▋ ▇▋▋▆▊█▌ ▌▍ ▍█▄█▄▅▆▊▅ ▅▆ █▌ ▌▍▆▋█ ▆▇█▅▆▇ ▋▉ █▋▅▍ ▌▍▋▊▋▍ ▉▄▉▆▅▆▇▅ ▍▆ ▉▌ ▌ ▄▍▍▊█▉▌▆▋▊█▋▉▉▅▆▇▊▅ ▄▍▊▋▍ ▍▅▅▋▅▇▉ ▄▊▍▄▄▍
13 Days Ago
Merge: from alloc_clean_june2026 - Optim: amortise or remove 19 allocation sources Tests: on craggy, gathered resources, built a mini base
14 Days Ago
Merge: from main
14 Days Ago
Optim: Replace Physics.OverlapBox with Physics.CheckBox in BaseVehicle.VehicleFixedUpdate Saves allocating the results array, and should be cheaper as well Tests: none, trivial change
14 Days Ago
Optim: get rid of string alloc in BaseCombatEntity.Hurt 1alloc/32b Tests: none, trivial change
14 Days Ago
Merge: from main
14 Days Ago
Optim: SpawnGroup - SpawnInstances not returns a List instead of IEnumerable Allows to save on iterator allocation, 40b Tests: none, trivial change
14 Days Ago
Optim: cache UpdateNetworkGroup invoke Saves 1 alloc/128b Tests: none, trivial change
14 Days Ago
Optim: cache PlayRadioChatter invoke Saves 1 alloc/128b Tests: none, trivial change
14 Days Ago
Optim: cache 2 invokes in Buoyancy.CheckSleepState Saves 2 allocs/256b Tests: none, trivial change
14 Days Ago
Optim: cache RemoveCorpse invoke Saves 3 allocs, 384b total Tests: none, trivial change
14 Days Ago
Undo of previous change - since entities can only be demolished once, the change was useless (and wasted memory)
14 Days Ago
Optim: cache StopBeingDemolishable invoke 1 alloc/128b Tests: none, trivial change
14 Days Ago
Optim: use static action in ServerBuildingManager.Split Should save another 2 allocs/160b per building block Tests: none, trivial change
14 Days Ago
Clean: tabs -> spaces, get rid of explicit generic args Tests: none, trivial change
14 Days Ago
Optim: use static callback to avoid allocs in ServerBuildingManager.CheckMerge Saves 2 allocs, 160b total Tests: none, trivial change
14 Days Ago
Optim: get rid of LINQ in Planner.FindSocket Saves 3 allocs/180b total Tests: none, trivial change
14 Days Ago
Optim: cache UpdatedVisibleHolsteredItems invoke Saves 1 alloc/128b Tests: none, trivial change
14 Days Ago
Optim: avoid boxing allocs in Azure.LogResource Weirdly Enum.ToString has 2 boxing allocs, totalling 48b. Tests: none, trivial change
14 Days Ago
Clean: fixup formatting in BasePlayer.OnProjectileAttack Tests: none, trivial change
14 Days Ago
▍ ▊▋▌▇▅▋ ▄▆▄█▍ ▄▊█ ▊▇▋▆▉ ▄▇▄▇ ▌▇▊ ▄ ▋▅▉▉▇▉▋▄▍▌█▉▋▍▍▉▅█ ▅▋ ▇█ ▅█▄▄ ▉ ▊▊█▄▍█▋▇▅ █▌▉█ ▍▇▊▉▆▋▋▅█ █▅ ▇▅▍▊▆▍▅▉ ▇▍ ▄█▉▌▉▄▍▉▋▄▇▍▋ ▋▄▋▊▅ ▇▆█▅▅▇▊ ▋▉▅▄▅▇
14 Days Ago
Optim: cache RemoveOldNoises invoke Saves 1-2 allocs, 128b each Tests: none, trivial changes
14 Days Ago
Optim: use pooling in BaseNetworkable::OnNetworkLimitStart Saves us 3 allocs, 100b min Tests: none, trivial change
14 Days Ago
Optim: cache action in PlayerLoot.MarkDirty 1 alloc/128b Tests: none, trivial change
14 Days Ago
Optim: cache PlayerLoot.MarkDirty action creation Saves 1 alloc/128b per container Tests: none, trivial change
14 Days Ago
Optim: cache actions in TrainEngine.PlayerServerInput Saves 2 actions, 128b per Tests: none, trivial change
14 Days Ago
Optim: cache BasePlayer.ForceUpdateTriggersAction allocation Saves a single 128b alloc Tests: none, trivial change
14 Days Ago
Merge: from buildcommand_allocs - Bugfix for enable_marker_teleport teleporting to wrong Z Tests: unit tests + enable_marker_teleport
14 Days Ago
Optim: get rid of a string alloc in teleportpos Forgot it when expanding string view compatibility Tests: used enable_marker_teleport
14 Days Ago
Bugfix: fix invalid trimming in ToVector(StringView) - StringView - add 2- and 3-char Trim overloads - add a unit test Tests: unit tests + enable_marker_teleport
15 Days Ago
Merge: from main
15 Days Ago
Clean: add root-level *.slnx to plastic ignore list Tests: plastic doesn't show it as a new file
15 Days Ago
Merge: from player_benchmark_improvements - New: added PlayerModelBenchmark scene that tracks rendering cost of new player model Tests: ran benchmark a couple times