userPilgrimcancel
reporust_rebootcancel

1,238 Commits over 4,383 Days - 0.01cph!

Today
some more tweaks to textures that don't need to ship 2k vram 12.0MB -> 1.0MB
Today
texture reduction pass - deployable, tools, food, component items: 71 textures touched, 38 resolutions brought down an apple had a 2k ao map at runtime vram 55.1MB -> 9.5MB
Today
modular car wheel fix left wheels swapped over to use wheel_b.fbx instead of flipping wheel_a.fbx, right side stays on wheel_a no more mirrored wheels on 2, 3 or 4 module - fixes the flipped normals cleared the leftover rotations on the wheels https://files.facepunch.com/pilgrim/2026/August/25_19-17-ShadowyHerculesbeetle.png
Today
same as attack heli - setup hab armour colliders properly for both client+server so they can be removed properly added collision mesh for the frame updted prefab
Today
made chanegs to the attack heli colliders left, front and right panels so tht they can be toggled off when removed.
Today
camera, obsidian knife, vampire stake texture reduction among others 11 maps 2048 -> 1024, vram 24.8MB -> 6.2MB
Today
weapon + tool texture further reduction pass where applicable 45 ao maps 1024/2048 -> 512, reduced m15 worldmodel bc/nrm/sg 2048 -> 1024 (almost no visual difference for 3rd person) vram 44.1mb -> 11.8mb
Today
tuna and bean cans now drop open empty cans when eaten instead of unopened versions empty version are lower in triangle count for LOD0 than the previous world models https://files.facepunch.com/pilgrim/2026/August/25_10-09-GullibleBangeltiger.mp4
Today
merge from main
Today
heavy fuse now has a world model updated .item to properly reference it instead of using the burlap sack
Yesterday
dead log resource gib meshes and setup isn't currently supported as nothing in the resource family gibs
Yesterday
merge from main
Yesterday
optimised ao textures for vehicles, generic textures and misc items. halved 2k -> 1k with almost zero visual difference, not enough to warrant the double res 328 MB -> 192 MB vram
Yesterday
optimised props ao textures as it was the same issue with 227 of them, most carrying sources far bigger than they ship at and storing a single channel as rgb. resized to existing max cap 110 files rgb -> 8-bit grey 183 files halved 2k -> 1k 24 files 146.3 MB -> 96.3 MB vram
Yesterday
optimised deployable ao textures where applicable. 245 of them, most carrying sources far bigger than they ship at and storing a single channel as rgb. resized to existing cap 126 files rgb -> 8-bit grey 148 files halved 2k -> 1k 47 files 186.6 MB -> 92.6 MB vram ao is sampled from the green channel so rgb storage was never doing anything.
Yesterday
hab armour split off into chunks so they can break off individually. when all chunks are gone, it leaves the frame of the armour. re-exported hab armour and added armour chunks.
Yesterday
optimised weapon ao textures. 68 were oversized on disk and nearly all were storing a single channel as rgb. no weapons ships above 1024 now. max size 2048 -> 1024 (52 files) on disk 4096/2048 -> 1024/512/256 (68 files) bit depth rgb -> 8-bit grey (58 files) vram 114.8 MB -> 28.6 MB ao convention on weapons is half the albedo, so 1024 against the usual 2048 albedo. 80 already did this, we were just inconsistent about it. we could half again on a per asset basis depending on size of object.
Yesterday
optimised darts textures and max sizes. we were shipping the radiation dart at 4k on all textures. RadiationDart_AO 4096 -> 512 RadiationDart_bc 4096 -> 1024 RadiationDart_mg 4096 -> 1024 RadiationDart_nrm 4096 -> 1024 42.7 MB → 2.17 MB VRAM looking at other textures that are unnecessarily big too to optimise where applicable.
Yesterday
2 Days Ago
update manifest
2 Days Ago
added new cactus decals by repurposing the wood decals looks much better https://files.facepunch.com/pilgrim/2026/August/23_22-55-SomeCicada.mp4
3 Days Ago
speculative - added a collsiion mesh to sleeping bag to prevent dropped items from passing through it.
3 Days Ago
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.
3 Days Ago
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
3 Days Ago
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
3 Days Ago
frankenstein table now has gibs - it was setup to have them but there was no gib mesh. now breaks apart as expected.
3 Days Ago
removed ao from gibs on advanced lootbox and primitive lootbox variants. ao looks great on the static asset but once destroyed the gibs looks nasty when they are in shadow. Now fixed.
4 Days Ago
merge from main
4 Days Ago
merge from gib fixes
4 Days Ago
merge from world models 2026 car radio world model jungle ar world model optimisation ice ak world model optimisation chainsaw world model optimisation
4 Days Ago
car radio now has a proper world model LOD 0 cheaper than burlap sack
4 Days Ago
fix to high external wall and gate collision mesh
5 Days Ago
removed gibbable from hv arrow, poison arrow, wood arrow and spear gun spear as they weren't used + causing an error for automated testing
5 Days Ago
dedicated world model for chainsaw reduced highlight draw from 3->1 and model highlight was actually broken
5 Days Ago
forgot the mesh
5 Days Ago
ice ak world model optimisation consolidated into one object, one LOD chain LOD0 tris 13.8k -> 9.5k highlight draws 5 -> 1 removed dead lod states in sunflower, rose, orchid world models
5 Days Ago
added and setup dedicated worldmodels for fire and bone arrow reducing highlight draws
5 Days Ago
World model LOD fixes - 6 prefabs drawing every LOD at once MilitaryFlamethrower, ak47u_jungle, scrap, crankshaft1/2/3 and stone had LODGroups with null or duplicated renderer refs, so every LOD drew at once regardless of distance. LOD0 optimisation pass on these too: 47,280 -> 22,675 tris world models where applicable combiend into single worldmodel mesh for simplicity and optimisation, reducing highlight draws when item is dropped: flamethrower 4 → 1, jungle AK 3 → 1, crankshafts 3 → 1 each, scrap 2 → 1
5 Days Ago
advanced lootbox (the red toolbox loot crate) now has gibs when emptied/destroyed
5 Days Ago
Disable tangent import on all collision meshes All collision meshes were calculating and storing tangents that collision geometry never uses. Set tangentImportMode to None, removing around 33 MB of mesh data. Import settings only - no mesh or reference changes.
5 Days Ago
fixed small shark .worldmodel weird setup
5 Days Ago
Normalise 257 collision mesh filenames from _col to _COL Case-only rename for consistency with the other 2,557. GUIDs preserved, no path references, FBX contents untouched - no functional impact. FBX contents and internal mesh names untouched.
5 Days Ago
fixed muzzle flash fx slight incorrect position on the muzzle brake
5 Days Ago
merge from attchement_lod_fixes
5 Days Ago
fixed ladder.worldmodel from having two conflicting lod groups causing console errors
6 Days Ago
fixed both corn and salvaged hammer having double lod renderers on their world model
6 Days Ago
update to propane tank .worldmodel fix for random disappearing act in the lods
6 Days Ago
legacy furnace COL 350 triangles -> 240 well within the convex mesh collider threshold (255)
6 Days Ago
Wired the DM Tier2 Lootbox gibs to its own material The crate already had gibs, but materialSource was unset so the pieces fell back to the shared WoodenCrate2 gib material and the tier 2 markings vanished as soon as it broke. materialSource now points at its own body renderer, so the gibs keep Crate_2_DMtier2_dif.
6 Days Ago
Add gibs to the DM wooden loot crates DM Construction Resources, DM Res, DM Medical and DM Food now break apart when emptied instead of vanishing. All four use the same wooden loot crate model, so they share a single gib source (WoodenCrate1_GIBs). Each prefab's own Gibbable points materialSource at its body renderer, so the gibs keep that crate's label material instead of the generic shared one. scaleOverride is 0.8 to match the scaled prefab roots, so pieces spawn at the right size.