255,019 Commits over 3,990 Days - 2.66cph!
Leaderboard backup, run #
17789
Longer clientside building priv cache when holding a wire tool + some optims
Fixed IsBuildingBlockedByVehicle cache return
Increased cache duration on flame turret and shotgun trap
Add radtown and travelling vendor map markers (but rotation isn't sent from the game for some reason)
Updated translations
Update items
Custon cache duration for IsBuildingBlockedByVehicle and IsBuildingBlockedByEntity
Comments
Fix m_bCaptureWithRenderDoc never being initialized and causing it to be captured infinitely (#1830)
[Pick] use CUtlMemory for transform buffer instead of a fixed transform size that crashes, allows for it to be smaller and alloc as much as it needs, needs testing
Bind instance ID buffer too, remove all this bullshit, keep initial transforms at 1 million like it was for now
Pass index instead of pointer for bone setup, need to guarantee it's stable if we're resizing
Ensure GPU buffer capacity management in next frame, transform buffer handle is bound very early in frame to be able to be resized by then
Fix OnMapUpdated action not always being set, causing map to not hotload
merge from autoturret_servertick_optim
Check if the autoturret has entities connected to its outputs before calling MarkDirtyForceUpdateOutputs
This will drastically reduce the time spent on AutoTurret::ServerTick on server with a large IO queue
Enqueuing turrets can be very slow because of the duplicate checks - temp solution until we back the IO queue with an hashset
LifeStoryUpdate::UpdateTimeCategory now uses a 45s cached server building privilege
Added support for different cache duration in BaseEntity::GetBuildingPrivilege
Do more expensive undo for scale tool to capture potential component changes on scale
Merge: from profiling_improvements
- Fixes ProfilerBinViewer to display all available threads and fix invalid callstack depth calculation
- Fixes a bug that would prevent json from being generated on busy servers
- Fixes a bug with timelines being very-slightly out of sync
- Optim/Bugfix to filter out all constructors from being profiled
Tests: a lot of exports in the edittor and a bit of forced "bad" cases
Bugfix: ServerProfiler - properly filter out constructors
- Due to a typo (missing .) it would never match constructors and never filter them out
Using release libs built from ec8c5522
Tests: snapshot in editor on Craggy - confirmed no contructors were recorded.
Bugfix: properly ignore constructors
I missed a period, so it would never match
Bugfix: ServerProfiler - sync up non-main-thread timelines to main thread
Previously it was possible to have a small gap at the very start of the snapshot on non-main thread views.
Tests: exported a snapshot in the editor.
Bugfix: ServerProfiler - properly handle sheared callstack at the start of worker threads during export
This revealed that I have a bug with non-main thread timing (things are slightly offset). Will fix next.
Tests: injected data that was tripping up the export originally. Validated that it does trip up before fix, and now exports correctly after fix. Exported 10 snapshots in the editor - no failures, and all look correct.
Add physics grabber example component that grabs objects using fixed joint
Flame turrets now cache the dominating building privilege they're linked to
If they don't have any linked TC, we use a server cached GetNearestBuildingPrivilege
Also adjusted the trigger exclude layers accordingly
Motion editor selection polish
https://files.facepunch.com/ziks/2025-02-21/sbox-dev_fNBVNJB6Du.mp4
* Object snap toggle, snaps to blocks / playhead
* Fixed drag logic for each handle
* Can't make selection go out of bounds
Fixed fog being black on some maps with HDR
Added clothing to vertical slice loadout
Shotgun trap now uses server cached GetNearestBuildingPrivledge when not attached to a building
Skip trigger check if we can't fire
Set trigger Exclude Layers
Compute uvs from params after scaling mesh
Don't rebuild mesh component if it's not active
Bugfix: ProfileBinViewer - fix callstack depth calculation
- Also replace RadioBoxGroup for threads with a Dropdown - turns out 50 threads radio buttons don't vertically fit my monitor. Who knew.
Hoping it's the same issue in the json exporter.
Tests: Opened a debug snapshot from official server.
Move Enemy Rebel to Combine tab, add icon & localization
Move ammo localizations to .properties
Hammer preview for point_worldtext
https://files.facepunch.com/rubat/2025/February21-1113-CrowdedFoxhound.jpg
Newline support in point_worldtext
Fixed Hammer breaking VMF files if they contain \n in keyvalue values
New point_worldtext features
Text spacing X/Y, orientation
slight shift in torch trans y entity position
Set IsBuildingBlockedByVehicle and IsBuildingBlockedByEntity cache time
Merge: from main
Tests: none, no conflicts
Add warnings for invalid icons in Feed - should be able to track this down now
Death messages are in everyone's console
Add networkable version of suppressing pickup notices
Up the pitch of the grenade clang sound, lot better
Add trail to thrown hand grenade
IsBuildingBlockedByVehicle merge fix
Merge from app_skip_field
Fix compile (some fields got stomped because these weren't in sync)
- updated upperBodyAimMask (removed eyes/eyelids/jaw/eyetransform)
- updated mask meta on anims
added wooden_flooring_a
https://files.facepunch.com/jason/1b2111b1/firefox_9cyHSIvkGY.jpg
https://sbox.game/facepunch/woodenflooringa
blends will come shortly
Merge from fast_debug_draw
Sync protobuf changes from Rust, fix entities with IDs bigger than 32bit IDs