142,795 Commits over 4,413 Days - 1.35cph!
Updated all SimpleLight prefabs to use the HasPower flag instead of On
Updated cinematic controller, fixed existed talking anims and added new sets (generic and host)
Simple light don't switch the ON flag anymore, we can just use HasPower and save a setflag when turning a light on/off (they're batched but that saves some overhead)
Added a max flag flip per tick per circuit budget too (too many flag changes can stall the client)
Circuit budgeting: all circuits share a 0.25ms budget per frame to evaluate. When the budget is depleted mid circuit, we save where we stopped and continue later. The starting circuit is never the same so a single circuit can't eat the whole budget and clog everything
Also moved the drain pass to the 1hz battery tick, it doesnt have to run on every tick
Optimised the evaluation pass. we now starts from the dirty components specifically instead of evaluating the entire circuit from start to finish
When evaluating, if a component output didnt change, we stop there
added hanging ivy (hedera helix variegata) models, materials, textures. created 3 decor plant variants
FPV drone UI WIP & related files.
switch out batched packet send storage for HashSet to avoid multiple sends from an entity within a circuit tick
merge from /main/hackweek_parented_ddraw
merge from /main/hackweek_parented_ddraw
Assigning the duration of a ddraw shape / text to -1 will now make them never expire, unless user / server runs ddraw.clear, ddraw.clearid or client reconnects
underwater post effect initial
▊ ▍▉▄▌█ ██▄▅█▄▅▌▄▊▉▇▄▋ █▆▄█▌▍▌▇▇▆ ▌▆ ▄▉▆▉▉ ▉▋▇▇▅ ▉▉ ▊▉▊▊▄ ▆▌▉▅ ▋▊█ ▌▄▆▌▊ ▄▅▋▇▆▍▉▊▉▅▄▉▋ ▇▇▊▉▌▆▇▆▇▄ █▆▅▆▌▌▊ █▆▍▋▆▄▋▅█ ▊▅ ▍▉▅▋▍█▇▇▋▇ ▆▍██▋▄▇ ▅▄▊▊ ▌▌▊▋▉▄▅▆▍▇▇▊
▅ ▊▌▌▇▉ ▄▍▌▌▋▆█▇ ▇▄▅▋ ▄▇▇▍▍ ▅▋▇ ▍▋▄██ ▄▊▉▍▉▊▌
Kamikaze FPV Drone - Added gibs
Added optional ddraw shape / text identifiers (so they can be individually cleared with the new ddraw.clearid command)
https://files.facepunch.com/raul/1b1511b1/15_19-42-FixedSnowdog.mp4
updated lr300 sprint pose to anim loop
bone knife deploy animation update
illuminated pressure pad;
- Gibs added
- fixed bug on pad stacking on itself
Update(tests): even more edge case unit tests
- escaped double quotes
- split escaped double quotes
Tests: ran tests
▌▋▌▋▌▌ ▉▍▊▅▇█▉▅▇▋▍▉▋█▄▉▆▊ ▋▍ ▇▉▇ ▇▋▇ ▊▆█▄█▄
▇█▅▉▇▍ ▄█▉▋▊▊▌▊▊▅▉▌▋ ▄▌▆▄ ▆▊▆ ▉▍▄▉▇▅▆ ▆▄▄▉ ▇▋▉▅▌ ▊▆▇▄▉█ ▌▋ █▅█▇ ▆▄▇▌▌▅█▅ █▍ ▇▉█▉▉▊ ▉▅▅▆▍▄▉ ▌▍▊▋ ▄▄ ▇▅▆▊▍▍
Update(tests): add a couple more edge case unit tests
- torn nested string
- single quotes nested
- torn single quote nested
- Added a whitespace to first nested string in all tests to validate trimming
Tests: ran unit tests
Salvaged icepick anim update
- New PoolCueViewModel setup - strip off rotational changes
- Update viewmodel rotation based on mountable
- New setup for the viewmodel
Ensure mountable is killed (again)
Add(tests): add StringExtensionTests
Currently only covers SplitQuotesStrings. Baseline allocs - 33allocs, 1.8KB
Tests: ran tests
illuminated pressure pad;
- Lods created
- Prefab updated
Fixed transforms on playground assets and prefabbed up
Optim: fully remove function temporary
Saves 1 alloc (63 allocs, 3.9KB)
Tests: ran tests
Update(tests): add case or command with no args
Tests: ran unit tests
Optim: don't recreate temporary klass and function substrings, fetch the full name at the end
Saves 2 allocs (64 allocs, 4.2KB)
Tests: ran tests
First pass LOD0s and materials for playground assets - still need vertex blends to bed in
Optim: skip lowercasing command class and function names
We rely on case-insensitivite comparator for map lookups - saves 2 allocs (66 allocs, 4.3KB)
Tests: ran unit and perf tests
UZI 9mm LOD0 and Textures
UZI 9mm LOD0 and Textures
Update(tests): also validate uppercase commands are resolved properly
Tests: ran unit tests
illuminated pressure pad;
- textures polished
- icon updated
- prefab updated
illuminated buttons;
- buttons now illuminate both when power is recieved and when sent.
- prefabs updated for buttons
https://files.facepunch.com/curtis/1b1511b1/15_23-41-FrivolousGrackle.mp4
Molotov animation and holdtype updates
New(tests): add basic Facepunch.Console.CommandTests tests(3 unit, 1 perf)
Need it before I start optimizing out allocs
Tests: ran tests, they pass and show allocs (68 allocs, 4.4KB total for test string)
fixing some flow issues on the damaged side of the apt building