248,566 Commits over 3,928 Days - 2.64cph!
Codegen, manifest, protobuf, etc
Merge from shields (new branch to collect all primitive stuff in one spot for media)
Restored the 2px gap between vital bars
Fixed player hitting their own shield when crouching and melee attacking
Physics tool selects all rigidbodies in hierarchy
Added a OnPlayerClothingChanged client side callback to HeldEntity
Backpack meshes will now be enabled when a shield is equipped and disabled when the shield is holstered
Expose MeshComponent.Model
Don't invoke ISceneCollisionEvents for trigger intersections
Update skinned renderers if they have physics bones
Always create ragdoll bodies at the saved gameobject transform unless the bone has just been created, allows for ragdoll posing in editor https://files.facepunch.com/layla/1b0311b1/sbox-dev_pSeZ9ABT7i.mp4
Fixed a case where shooting while crouched would sometimes result in the player shooting their own shield, applying damage to themselves in the process
Shield vm animator can now go straight to block from the melee attack end state
Improve handling of empty navmesh tiles
Also improve editor auto update when world bounds change.
Merge from shred_helicopters
Manually kill the players in a vehicle earlier in the shredding process so they don't end up getting kicked for being under the terrain in some cases
Merge from monument_scenes_renderlod_fix
deserialize absolute game object flag, flags are deserialized selectively
-Ballista low poly model update
-Ballista UV's
-Ballista Materials
-Ballista WIP Textures
Joints execute in editor, physics tool can manipulate physics in editor so joints should also work
Colliders without rigidbody are static in editor
Update: review feedback
- dispose of the nested CTS for perf snapshot uploads
- Use async copy when creating an extra stream to send backup files
Tests: full local server flow + 2 snapshot uploads
Remove Ragdoll.DriveFromAnimation, active ragdoll stuff should be a component on top
vendor_stats_fixes -> main
Fixed a bunch of issues with single entry placement after changing scaling
- Ensured everything is in local time
- Setup methods to process into 12 hour time
Fixed terrible scaling on stats menu
Ao proxies removal (#1678)
* Remove aoproxies ambient occlusion, it never looked too right and it's stupid to have artists authoring them manually, almost no one did
I still think SDF AO works better than SSAO in most cases, but they should live as a renderhook and artists don't need to touch anything, the way it is now is very hard to maintain, it could be 10x simpler
* Remove sdf.hlsl (until we meet again 🫡 )
Added 12 and 24 hours options to timescale
Is47Tiles -> AutotileType enum with 4 bitmask types.
GetAutotileBitmask now returns proper values for each type
Basic 2x2 Edge and Corner bitmask implementations
Fix PaintTileTool warning and NREs
Can now change Autotile type after initially creating it, fixed all NREs that come with that change
Changing Autotile Brush type now gives popup warning telling you its a potentially destructive change. Cleaned up a bunch of unused code
Fix AutotileWidget not being created with unnamed autotile brush
Fix brush type not serializing
Fixed not being able to select brush while tile was selected in Tileset Editor
Replaced separate create buttons with a single button that has a dropdown for brush type
https://files.facepunch.com/CarsonKompon/2024/December/02_13-37-FrigidUintagroundsquirrel.mp4
Navmesh only run heightfield generator cleanup in task
Navmesh generator cleanup is sub 10 microseconds, so not worth it to dispatch a task, since task dispatch overhead would be higher than actual compute.
Fixed clientside only entities being considered map created
Fixed being disconnected from sv_lan servers due to recent changes
Entity:FollowBone doesn't check the boneID argument if given NULL
Fixed Mega Gravity Gun not being able to pick up flesh
Remove cheat flag from cl_wpn_sway_scale
Added sv_quota_stringcmd_kick
Remove aoproxies ambient occlusion, it never looked too right and it's stupid to have artists authoring them manually, almost no one did
I still think SDF AO works better than SSAO in most cases, but they should live as a renderhook and artists don't need to touch anything, the way it is now is very hard to maintain, it could be 10x simpler
Remove sdf.hlsl (until we meet again 🫡 )
Broadcast combat sound instead of just playing on the host
Added ready up sound
Collect halves_won, rounds_won stats
Kills, Deaths stats
Played card stats
Ability activation stats
Stats for each card type, card name
Record game wins/losses via stat
Only progress if all players are ready
Preparation phase is ready-up based instead of time-based
Add bark and footstep audio to new jump anim
Removed separate run/walk/duck speeds. Just have speed, then a slow walk speed
Events for controlling wish velocity, if we can jump, if we can shoot
Plunger vert colour adjustment