255,826 Commits over 3,990 Days - 2.67cph!
Orientation almost working
Added a orientation debug gizmo for Ian.
Workaround for that one weird floating gib ghost.
Shake tweak on large boulder.
- Fix broken projectile velocity normal calculation
- Allow automatic normal translation to be automatic, on or off
- Attempted to fix match orientation (might need some more minor tweaks)
Setup FX and screen shake profiles for medium and small catapult boulders.
Fixed ram taking damage from head collisions
Tweaked catapult amount of boulder we spawn with the scattershot
Fixed projectile rotating the wrong way
Shifted renderqueue on smoke_whispy by 1, to fix FX elements sometimes not sorting through the refractive glass.
Small damage effect ram head fixes.
more ui changes
tweak shop item ui
tooltip ui changes
rename new ui files
Improved horse towing interactions
Restored ballista rotation sounds I just broke on
112292
Fixed static ballista anim mask
siege weapon sound import settings
additional battering ram sounds and polish
codegen
▌▊▅'█ █▌▍▉ ▇▅▍-▉▇▅▊▊▊ ▇▆▉▋▌▌▄ ▍▊▍▊▅▍▉█▆▊▊▌▍ ▋▆ ▊▊▅▉▇▅▌
▇▇█▆ ▄▍ █▄▆▋ ▆▌▋▊▍▄▆▊ ▅▅▊▊▋▊▌ ▄▅▄▍ ▅▅▅▌▊▆▌ ▅▄▄▄ ▍▌▄▆▉▍██▋
Fixed occasional ballista desync
Fixed choppy movements when another client is reloading
Fixed pitch rotation sometimes not working because of animations
Cleanup
Change junkpiles so they require 1m30s of no players around them before despawning, instead of checking once per 30s and being able to despawn right away
Frisbee with branding and upload
▆▅▋▇▆█▋ ▄▋▆▇ ▊▍▉▅▉▉▆ ▄▉▅▊▄▆██▊▉▌ ▍▋▅▆▉▌▊
▋▌▄▅▋▊ ▆▉▊▍▉▍▆▄█ ▍▅▉▄▅ ▍▇▌▍▇▌ ▌▍
▆▉▇'▍ ▆▋▌▄ █▉▌▅▉▉▋ ▆▋▍▄▌▌▅ ▋▉ ▆▅▍ ▇▆ ▇▍ ▉██▅▉▅▍, ▄▊▇ ▅ ▉▉█▋█▇ ▅▉ ▄▋▅▅/▉▄▌▋ ▊▅▋ █▋▅▉▆▊▅
Optimize ComponentList.GetAll by getting rid of LINQ
The combination of recursion and LINQ allocated a lot of garbage in GetAll, this would result in a heap reallocation during many GetAll calls.
Removing LINQ yielded a nice performance improvement.
Getting rid of the recursion gives another tiny performance improvement, but not big enough to justify the reduction in code readability.
I can not show results directly for ComponentList.GetAll, because the function executes too fast after the optimization and is no longer captured by the sample profiler.
But here are the improvements for PhysiscsWorld.OnIntersection, which makes heavy use of ComponentList.GetAll internally via InvokeListeners<T>().
Before:
Function Name: Sandbox.PhysicsWorld.OnIntersection
Number of Functions: 2907
Total time: 9s 406ms 99µs
Maximum: 11ms 86µs
Top Quartile: 3ms 848µs
Average: 3ms 235µs
Median: 3ms 176µs
Bottom Quartile: 2ms 684µs
Minimum: 20µs
After:
Function Name: Sandbox.PhysicsWorld.OnIntersection
Number of Functions: 2779
Total time: 3s 661ms 358µs
Maximum: 6ms 971µs
Top Quartile: 1ms 552µs
Average: 1ms 317µs
Median: 1ms 220µs
Bottom Quartile: 975µs
Minimum: 19µs
Related to sbox-deathmatch/issues/104
Fixed SelectedBlueprint.UpdateIngredients error, bag merge on high external stone gate
Applied a refactored rotation-agnostic version of the non-blinding arrow flame to the mini crossbow, so that it can do its spinny gymnastics.
▊▅▌▌▄▇▉ ▉▌▋▅▆▅ ▍▆▅▊▌▌▌, ▅▍▌▌ ▋▍▊ ▆▌▆▅▆
Remove unused
New models
Fix news post width
Remove toc from news, everyone hates it
Add Transactions table
Add monetisation tab to dashboard
Move org to own project
Fix exception in device information service
Move dash orgs to sidebar
Home type lists use dashboard sidebar
Jams use dashboard sidebar
Move charts to dashboard
User page cleanup
Platform news has dashboard sidebar
Notifications use dashboard sidebar
Start converting packages
▉▉██▅▊ ▊▉▊▍▊▊ ▋▌▌▍▋▊ ▌▄▍ █▉▅▉▊▍ ▍▇▊▇▋▊▆▋▆ ▇▆ ▌▋▍ ▆▉▋▋▉▄ ▆▉▉▆▊▅▋▅▅ ▄▆ ▌█▊▊ ▅▍▉▍▄█▅
▄▆▋▆▊▋ ▆▄█▊▍▌▄▇▅ ▆▇ ▄▋▋▋▅ ▇▌█▄▄ ▇▄▌ ▄█▆ ▆▇ ▆▉▉▊▅▅ ▍▄▊▆ ▊▋▆██▅▅ ▇▉▍ ▌▌▍'▋ ▊▊▌▍▊▉ █▊ ▌▍▌▋ ▌▇▊▉▌ ▅▊▉▌▇▌▍
Head and hand aligned grabbing system
Trumpet tree prefab setup / updated bounds, colliders and markers
API fixes, remote pickup is default behavior when grabbing (need to add a sensible range to this), fixed hand collider being invalid and breaking everything
ShaderGraph Reroute Nodes now preserve the input type correctly. Resolves Facepunch/sbox-issues#7466
+ Reworked the DebugLine shader, fixing various isses with pixel alignment and perspective.
+ Added '-' character for negative numbers :)
+ Made sure that text size is always divisible by 4 for a clearer appearance. Also raised the default text thickness to 2. (I'm a fan of thin lines, but you really couldn't read these.)
Rotation offset for player hands
Move some files
Spawn players at the spawn point furthest away from other players
Restored "JellyFish" shader
Let's try this again, but this time only this shader, and compiled with tools from this branch
Subtract
109698 - fix client parenting issue with thrown explosives (c4, satchels)
Prevent Reroute Nodes from creating circular reference errors where none existed
Asset Browser no longer deletes a folder when renaming it to the same thing. Also allows you to rename the folder to the same name with different capitalization. Resolves Facepunch/sbox-issues#7464
Trumpet tree custom colliders
Trumpet tree billboard setup
added tactical gloves to v4 loadout
Female metal plate, backpack v4
Revert "Compiled shader files"
This reverts commit 1066b62d90e749ab7731667263022cd35202a2cf.
Revert "Restored "JellyFish" shader"
This reverts commit 024f56cb3eb37f6aa416b1887008d35700630afd.
Revert changes to screenspace_general
Something is up here, Linux is having unexplainable issues on x86-64 only
More motion editor selection tweaks
https://files.facepunch.com/ziks/2025-01-31/sbox-dev_A9sD8bdPAK.mp4