158,215 Commits over 4,566 Days - 1.44cph!
- 1-2 boat groups will spawn every 5-8 hours (spawn together)
- Each individual group gets a random lifetime of 30-60 minutes before egress
viewmodel lasersight/brake attachment placment
update base_occlusion/foundation_offset_fix
Cant take the pt boat out of the deepsea (just like the other boats)
More Uzi 3p setup - stock and no stock anims for world model and player
- w_uzi anim hooked up, now swaps between the stock/ no stock anim sets when rifle mode is is toggled
- 3p anims now using a subsystem, not an overrride....so I can use multiple masks (no stock = one handed, left arm stays on locomotion, left hand comes in for the reload, stock out = two handed
- removed holdtype controller (not needed now)
- Stock deploy / collapse anims play when toggling between the two
- 3p anim updates + deploy/collapse stock clips
- uzi.entity: ProjectileAnimationSubSystem driven by the StockDeployed flag, HoldType.uzi override removed
- Uzi.cs (client only): sets the rifle_mode float on the world model animator from the stock flag. Skipped while the animator is inactive, same approach as CrossbowWeapon/Handcuffs driving their world animators
Cherry pick alloc fix for pool table and fishing, and fix compile error
Fix industrial pipe segments being permanently dynamic via flag on the prefab, toggle their LODs only when on a moving parent like base io lines
merge from base_occlusion/vending_door_fix -> base_occlusion
Add support for doors to be "always closed" but still treated like portals between rooms
- allows vending machines to block visibility between rooms while keeping the same code as doors
Add the "door blocker" component for base occlusion to the vending machine prefab too
Fix entities placed in sockets (vending machines) not linking up with their sockets until stability runs (which doesn't apply for vending machines) or server restart
- part of the reason vending machines didn't block occlusion: they sometimes had no links
Fix entities that were forced dynamic due to being parented never resetting the flag when pooled and staying dynamic when reused without a parent
Update tests to be aware of the extra faces on foundations now
Fix a foundation surrounded by walls being connected to a foundation outside the base offset half below
- add faces on the sides of foundations & rely on existing face linking behavior to work properly
Reserialize foundation prefabs before adding new faces (for clean diff)
added example mesh for jarryd -
idea is to box’s position, dimensions and rotation
Use object-name suffixes to assign physics materials, e.g. floor_01_wood uses Wood.
Remove material suffixes from generated child names
Place aligned colliders directly on the parent; create separate children for rotated boxes
Remove the reference instance after conversion, with Undo/Redo support
Cherry pick old animals fixes (flee when attacked from afar, do not sleep)
UIBlurCanvasesBehind skips the capture while a CanvasGroup above is faded out
rename `demo.newui` to `demo.oldui`, enable demoui2 by default.
[old ui stays. we really don't have a reason to nuke it for now and there are still some people that prefer the old one.]
Set "occlusion_door_immediate" to false by default (was supposed to be since we show everything within 32m)
merge from aizone_sleep_fix
Add special staging-only gamepad UI button option that hackily enables gamepad override just for that session.
Hide all other gamepad options in the gamepad section until it is enabled.
Fix navmesh building on top of cargoship
Fix AI Sleep Zones not working correctly since May
- race condition fix earlier this year inadvertently made any zone outside of a BaseEntity not initialise correctly (all except underwater labs)
- before / after on fresh procmap: https://files.facepunch.com/ryanw/2026/October/26_19-06-IndelibleBlackrhino.png / https://files.facepunch.com/ryanw/2026/October/26_18-54-FluffyDaddylonglegs.png
Fix sheeps starving despite a trough, their feed time was lower than cows so they wasted time shuffling with each other for a turn, now feeding time can't desync between sheep and cows
Update: Item.UseItem now returns if the entire item was consumed
- bugfix IndustrialConveyor's use-after-free of item in QuickMove path
Tests: ran conveyor tests, no longer failing
▉ ▄▅▄▌▇ █▆ ▍▅▉▇ ▋▋▄▍▌▉▅▄█▅▌ ▋▆▋▆▉ ▊█▆██ ▌█▋▍▊▇▇▍█▇ ▄ ▍▄▉▇▇ ▇█ ▅█▅▉█▆▇▋ ▅▄▍▊▉ ▌▄▍▍▆▆▍▆ ▅▋▅▍▋▌▋▆▆ ▌▆▆▍▅▍▆▇▄▉▉ ▌▆▆▍ ▋▋▅ ▌▅▉▅▄▇▆ ▍▊▄▉ ▊█▊▉▌ ▅▋▇▉▋ ▅▊▊▆▊ █▇▍ █▅▅▄ ▊▌▄▋▋▅ ▍▋▅▆ ▅▌ ▇▅▌▇█ ▄▆█▆▇ ▋█▌▍▇▌▍▍▆ ▍▇▊▋▋▉▄█▉▇▌▉▌█▌▌▉▉▄▉▇▍▋▋▆▅ ▉▌▌ ▌▄▋▆▄▆█▊ █▅▌▇▊▊▄▇ ▌▍▄▄▄ ▌▇▍ █▌▍▉ ▌█▊ ▍▆▊▋▇▄▇▋▅▇▆▄█▅▅▋▆▊ ██▅▉▌ ▋▍▋▌ ▋▆▆▍▋▍█▌▅▄▍▋▆█ ▅▌▊▌ ▋▌▋▆▅▊▌█▄ █▇▇▌▋▉▅▉
Optimize doors when recalculating series of connected rooms when doors are opened & closed
merge from analytics_base_occlusion -> main
merge from work_queue_optims
- anims and clips for weapons own anims, inc stock deploy + collapse, reload and fire
- initial animator setup for these weapon anims
- clip update of 3p idle
- avatar setup for world weapon rig
Add analytics events for rotating and flipping building blocks
▄ █▍█▅▊ ▌▅▋▉ ▇▄▍▅▌▊▍██▍▍▋█▊▊▄
█ ▅ ▆▆▋▋▇ ▊▉▅▊ ▆▆▊▅▄ ▉▌ ▇▉▌ █▆▆▉█▄▋▅▊▆ ▇▉▅▄▊▉▆▋ ▄▅▍▌▍▋▆▇▍▊▋ ▇▍ ▌▊▄ ▍▌▍▊ ▆▊▉▉ ▍▌ ▇▊▄▊▉█▆▄▇▇ ▍▊▇▉▇▅▅▅ ▇▇ ▇▉▌ ▄▄▋▊▊ █▇ ▉▇▍▄ █▉▆▇▅▆▄ ▌█▆▅ ▇▉█▇▅ ▉█▅ ▉▉▌▋▄▉▋▌ ▊▊▄▋▉▊▆
boat_scientists_improvements -> main
Only attempt turns when we can actually see the player
Lap interval pass on additional work queues
- DroppedItemUnderwaterQueue, 0.05, keep inline (ish) with physics tick rate
- BotColliderWorkQueue, 0.1, this is only refreshed every 0.2-0.3 seconds anyway
Fix bad merge when updated before submitting livestock lamp changes
merge from main -> base_occlusion
merge from analytics_base_occlusion -> main
boat_scientist_improvements -> main
- Give up players if you've been chasing them for a while
- Pursue for a max set of meters unless that player shoost you
replicated_convar_error_change -> main
item_pool_expansion -> main