144,759 Commits over 4,413 Days - 1.37cph!
No allocations when running the flood fill when rebuilding circuits
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
Use Azure Artifact Signing
▅ ▄▆▆▊█▆ ▉▍▄▅▋ ▊▇▌ ▊▊▆▋▄▊▅▅▌ ▆██▆▍
Another consistency pass for resource files
* Remove the word "Launcher" from launcher file descriptions - I thought task manager would show "Product Name" field, not "File description" field.
* Make all resource files provide a single language ID (was previously US or UK english, sometimes German and Canadian English?)
* Updated tool icon slightly
* Add icons & version info to all compiled .exe files by our build system
Build 64bit gmad/publish, add icons/version, fix some compile warnings
Disable Steam Error Reporting as it is apparently EOL'd by Steam
* Crash dumps are now generated by the game, not Steam
* Moved crash dumps to crashes/ folder.
Resolve 64bit tools not loading
Build Hammer 64bit
Fixed a bunch of Hammer 64bit runtime crashes
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