139,248 Commits over 4,505 Days - 1.29cph!
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.
salvaged hammer refresh work
- folder cleanup
- removed old anims, models, files
- updated naming of 3p anims
- tweaked sound event timing on 3p anims
Don't override bestRot before spawning
Look for COl when skipping meshes in building block highlights/upgrade
Applied terrain footprint to rock_formation_small_d to fix terrain gaps when it spawns over terrain erosion gutters - need to do a pass over all similar 'flat' rock prefabs
Added footprint functionality into the CliffSandbox dev scene
More tweaks and improvements.
Populate tiles in customizer with options defined in character manifest.
Fix two extra races being added for no reason
Apply TerrainFootprint's terrain changes in the PlaceCliffs procedural pipeline after all other component steps before spawn
Fix deployables that are inside multiple rooms not working
- assign them to their own network groups similar to walls that share multiple rooms and subscribe appropriately
fixed small shark .worldmodel weird setup
TerrainAnchorRingGenerator can now also generate a TerrainFootprint for the cliff to outline TerrainAnchor's and mark a perimeter where terrain should raise up to - this eliminates cases where the terrain erosion step creates gutters that rock formations spawn over, leaving a gap under the rock
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.
CliffSandbox scene can now get the `.map` file from the server's `levelurl`
Always show rooms that are within ~30m of the player
- prevents us from having to blast the client with a ton of entities right when they open the door, allows us to stream them at a sane rate
merge from wtp_maintainables_rework
Merge: from mt_snapshot_savings
- Bugfixes for a couple unsafe Save codepaths in Jobs 4 mode
- Added debug utility in InvokeHandler to track down a thread race in Jobs 4
Tests: unit tests + gameplay on craggy
Bugfix: make Underwear.ValidateForPlayer MT friendly on server
Fixes BasePlayer saving throwing unity exceptions
Tests: changed underwear with Jobs 4
Simple list of doors with transparency for testing
System to generate alpha'd player icons - allows us to setup desired shots with specific lighting setups
Manifest system based off Underwear manifest which allows us to link races/body types/hair to icons as well as things like steam items or specific seeds
Add ddraw for network groups for rooms
Bugfix: make FishMount.Save mt friendly - cache fish container index
Tests: placed a fish in a trophy display with Jobs 4
Added honey bandage to medical crates and waterwell vendor
exported latest vm glass ar admire animation
Update: wrap InvokeHandler internals in DebugMTLock
Tests: booted on craggy and ran around with EnableDebugMTLock
Update: add single-thread reentrant support to DebugMTLock to avoid deadlocks
- added unit tests
Because of course InvokeHandler is non-trivially recursive
Tests: uni tests
fixed muzzle flash fx slight incorrect position on the muzzle brake
When sampling multiple potential destination around an agent, instead of snapping random points to the navmesh, floodfill around the agent and only sample on the reachable polygons
- fix 7x spike of 2.64ms on oilrig, when all points land in unreachable navmesh islands, and we waste time trying to path to them and hitting our node exploration cap every time
merge from attchement_lod_fixes
Glass AR - updated weapon rack positions
Re-apply the steam init reflection hack now it's not needed and tested.
merge from command palette
Fix misaligned caret when the search is empty
Merge from fp_steamworks_steaminput
krieg chainsword small weaponrack positioning
merge back from command_palette
Update: Move UnsafeScriptingAccess and DebugMTLock to Facepunch.UnityEngine
- Cleanup empty asms
Tests: ran relevant unit tests
fixed ladder.worldmodel from having two conflicting lod groups causing console errors
Merge from PlayerMaintainedMonuments
Update: explicitly capture callstack when DebugMTLock is tripped
- frame count can be limited to via unsafe.DebugMTLockMaxFrames (def 5)
Tests: ran unit tests
Update Facepunch.Steamworks files (b56e56a)
Initialize ISteamInput with the interface lifecycle - previously SteamInput.Controllers always enumerated empty because Init was never called.
Release build from GitHub Actions.
fixed both corn and salvaged hammer having double lod renderers on their world model
update to propane tank .worldmodel
fix for random disappearing act in the lods
Regenerate all the HLODs in the game
Had to resave all monument scenes, if there's any conflicts on other branches just discard this change as another S2P should fix the issue
Created a new Scene2Prefab batch window, exposes all scenes with S2P and allows us batch generate HLODs/S2P