141,165 Commits over 4,505 Days - 1.31cph!

37 Minutes Ago
Merge from render_pipeline_testing
43 Minutes Ago
Apply UnityPixelLightIntensityCorrection for billboardlight-RRP to fix particle lighting
1 Hour Ago
Added a drink water need and corresponding behaviour to livestock animals, they can drink from a nearby water container or river/lake
1 Hour Ago
Added functionality for a TC to modify upkeep rate based on how many players are authed Based on a tier system, we can set three group sizes and what percentage a player adds to the TC within that group Setup with some very placeholder values for now for testing Tier 0 - first 4 players add 0% to upkeep Tier 1 - next 6 players add 2% upkeep each Tier 2 - any further players add 4% upkeep each This means a TC with 6 players authed will have +4% upkeep, a TC with 12 players will have +20% upkeep When a player deauths from a TC it takes 24 hours in real time before that player is removed from the tax calculation, so authing, building and deauthing won't bypass the extra upkeep Very, very WIP, for internal evaluation for now
2 Hours Ago
Make sure we only send entiites when a door opens immediately based on a convar, so we can do normal slower snapshot queue when doors are opened and we send entiites and let the "closer than 30m send everything" prevent pop-in
3 Hours Ago
Merge from new_navmesh_fixes
3 Hours Ago
Merge from cactus_impact_effects
3 Hours Ago
Merge from FoundationMeleeLOS_fix
3 Hours Ago
Merge from high_external_wallgate_COL
3 Hours Ago
Merge from MarketTerminal_Names
3 Hours Ago
Merge from AugustLowCraftBuffs
3 Hours Ago
Merge from heavy_helmet_audio
3 Hours Ago
Add audioMuffleAmount to ItemModWearable, allows us to muffle game audio based on specific clothing Muffled game audio when wearing heavy plate helmet
3 Hours Ago
Merge from main
4 Hours Ago
Declare hair shader stencil block
5 Hours Ago
Merge from render_pipeline_testing
5 Hours Ago
Merge from main
5 Hours Ago
Merge from dome_fuel_cap
5 Hours Ago
Capped fuel pump crude storage amount at dome to 1000 (per pump) S2P dome
6 Hours Ago
Merge from deepsea_terrain_everywhere
6 Hours Ago
Fix merge issue
6 Hours Ago
Merge from main
6 Hours Ago
Merge from main
6 Hours Ago
Merge from deepsea_terrain_everywhere
6 Hours Ago
Added deepsea.terrain_everywhere replicated convar, enables the deep sea terrain splats everywhere when enabled
Today
update manifest
Today
added new cactus decals by repurposing the wood decals looks much better https://files.facepunch.com/pilgrim/2026/August/23_22-55-SomeCicada.mp4
Today
Minor feedback tweaks
Today
merge from automated_testing
Today
S2P oilrigs, excavator and gas station
Today
Add convar to toggle navmesh optis on and off
Today
Replace libraries
Today
Merge from main
Today
Gate per tile interlocked add needed for logging when logging is off
Today
Fix ghostship A having no navmesh
Today
Remove unused param in bake stats
Today
Remove some spammy and uninformative logs
Today
Adds lots of instrumentation, and increase navmesh build speed by around 30%, implemented common optimizations I've seen before or discussed with Lorenz: - when rasterizing triangles, reuse values between neighbors instead of re-clipping the triangle against every column (7%) - heightfield is supposed to have faster insertion than compact heightfield thanks to linked list, but because it wastes so much time pointer chasing during iteration it's actually slower, also instertion is not that bad when the column fits in cache (4%) - fuse some span filtering operation to iterate once instead of 3 times on the spans (only 1% for rust maps sadly...) + the pooling from sbox doesn't really benefit us As well as some new findings found from profiling: - during heigthfield stage when comparing span A to span B for walkability tests, don't do everything from scratch when comparing B to A (9% whole map, but monuments and bases specifically x4 speed with this) - watershed iterates through the whole list of regions multiple times, faster with lookup (7%) Can get another 10% if we halve the detail mesh precision, automatically sampled lots of tiles for vertical differences to test and the difference is negligible The real bigger order of magnitude gain is to not limit the number of threads and not time slice geometry collection, it stalls the server but goes 6x faster, could do it at server boot and just throttle the subsequent dynamic navmesh updates (player building bases, nodes etc).
Today
New automated test to check for immortal entities starting with health <= 0.
Today
Changed beancan max stacksize from 5 > 4
Yesterday
Tweaked steering values to make steering feel more responsive (hopefully better with some ping as well) Added first itteration of a drift function, currently uses ctrl to lock the rear wheels https://files.facepunch.com/el-hog/2026/August/23_13-18-PettyDingo.mp4
Yesterday
Reduced stack size for: - F1s 5 > 3 - Bee nades 5 > 3 - Flashbangs 5 >3 - Molotovs 5 > 3
Yesterday
speculative - added a collsiion mesh to sleeping bag to prevent dropped items from passing through it.
Yesterday
re-centered gib parts again - hot_air_balloon: 67 of 67 parts had their origin outside the piece, now 0 - got rid of a load of self intersections that caused the self intersected faces to be discarded despite unity triangulating on import. It can't triangulate self intersecting faces.
Yesterday
Re-centred gib part origins on 8 deployables Same problem as the hot air balloon armour last commit - gib part origins weren't central to their mesh, so pieces rotated about a point outside themselves and the physics was inaccurate. Re-exported the gib meshes and re-assigned the collider boxes. should be much more accurate gib physics now. Also on some gibs, they had parts that were self intersecting and were being discarded. Fixed that. - HotAirBalloon basket: 43 of 55 parts had their origin outside the piece, now 0 - refinery_b (refinery_large_deployed): 24 of 83, now 0 - windmill_main: 22 of 53, now 0 - box.wooden.large: 19 of 33, now 0 - fireplace: 19 of 53, now 0 - lift_shaft_top (elevator): 18 of 33, now 0 - worst part sat 1183x its own half-extent off centre - tool_cupboard: 15 of 44, now 0 - cannon: 14 of 24, now 0 - component_box_wood: boxes re-fitted
Yesterday
Fixed gib collider overrides on 7 deployables Box overrides had drifted from their gib meshes, so colliders didn't match their mesh and clipped through the floor. Some overrides had more whilst others had less gib parts. - io.table: override list resynced 44 -> 29, boxes re-fitted (29 of 29 boxes were not a fit for their own mesh, now 6) - HotAirBalloon_armor_T1: gib FBX re-exported, list 52 -> 51 - their origins weren't central to the mesh causing innacurate physics - sculpture.ice: list extended 30 -> 33; the last 3 parts had been falling back to convex mesh colliders - mannequin: boxes re-fitted (18 of 18 mismatched, now 0) - chandelier, component.box.charcoal.large: boxes re-fitted
Yesterday
Glass AR - material tweaks
Yesterday
frankenstein table now has gibs - it was setup to have them but there was no gib mesh. now breaks apart as expected.
Yesterday
Fix parenting not working when set from the field.
Yesterday
merge from main