250,049 Commits over 3,959 Days - 2.63cph!
Multiplayer/networking project settings. Add option to change Destroy Lobby When Host Leaves and Auto Switch To Best Host. Defaults can be set in Project Settings but can be overriden via Lobby Config.
Improve navmesh generator cleanip
Reenable AssertNoGraphErrorsInScene test
Save/load permanent RCON IP bans
Merge from main to jungle ruins
Mini crossbow:
- Swapped world model to use the viewmodel for just now
- Added multi swap arrow script to support multiple swap arrows in different slots
▊▌▉▆▅▋▇▍ █▉▇▊ ▇▄▋▉▍▄ ▉█▆▊▌ ▍▇▇▅▊█ ▊█▍▆▋ ▍▍▅▉ ▇█▋▍▄▌▉▆▅▆▌▋▅▆▅▋█▍▄▊▍▌▉▊█▋▅█▇▊▅▋▇█ ▊▄▊▇▊▍▇▄▅ ▌▋ ▊▉▅▋▉ ▇▍▍▉▊▉ ▍ ▄█▆▊▅▌▉ ▅▅█▊▉ ▄▄▄▇▄▆▌▋▊ ▍▋ ▆▍▊▌▇▅▋▋▌▅▅ ▉▍█ ▆▆▅▊▋▊ ▆▌▊ ▋█▆▊▌▇ ▋▋▆-▅▊▍▋█▄▅▍ (▇▊▌▇▌█ ▅▌ ▋▍▊▄▌▆▉▇▇▍█▅ ▉▌█▄ ▇▍█▆█)
Can now set height directly on a layer instead of having a single distance-between float. Added JsonUpgrader where needed
Update: added Assembly name to the snapshot marks
Makes it a bit clearer where calls are coming from at the expense of larger snapshot(compressed: 2mb -> 7mb, json: 50mb->140mb). But, since the profiler is much faster now, the snapshots are smaller on 6k servers.
Tests: exported 2 snapshots from Editor's Craggy, and exported 5 from standalone 6k server
Bugfix: Prohibit constexpr initialization of mutexes in ServerProfiler.Core
Turns out the toolset I'm using produces non-binary compatible assembly - using an escape hatch to avoid this issue. This only manifested in standalone builds.
Tests: exported 5 snapshots from procgen 6k world in a row over 2 minutes. Used both borked and good hamony mods as well.
merge from upgrade_forgiveness
merge from skin_change_noclip_fix
▍▋▊▌▄ ▉▆█▊ ▍▅▅▉█▌_▅▄▋▇▋▇▍_▊▉▊▌▅▇▉▄_▌▄█▉█▊▇
█▉▍▉▉ ▋▋▍█ ▊██▌▍_▅▉▊▄▇_▇▅▊█▅▉▅
▍▆▆▇▅ ▌▇█▇ ▆▋▊▅▇█_▍▆█▆▍▄_█▆▌█▉█_▄▍█▅▉
█▍▉▅▊ ▍▌▍▆ ▌▍▌█▌▋▇▋▌▆_▉▍▆▅█_▇▌▉█▋▊
Temporarily ignoring AssertNoGraphErrorsInScene
Bump verbosity for PR tests
removed copied crossbow files from blowpipe folder, added/set up worldmodel prefab
Child camera executes command lists from camera it's taking attributes from
anim import options for drawbridges
clipped the open anims on the drawbridges to be the correct span
New view model and 3rd person blowpipe animations set up
▅▇▅'▉ ▆█▉▍▋█▅█▆ ▊ ▇▌▋█▍▍ ▇▆▄▆▅ ▅▆ ▄▇▍▇▅█ ▅▆▄▍▉▉ - ▍▌▌█▇ ▍▍ ▊▍▋▌ ▉ ▇▅▆▄▌▇ ▍█▄▆█▉▋▅ ▄▄▄▇▆ ▌▅▌-▍▄▉▌▋▇▆█ ▇▆▉ █▍▍▅▅▇ ▋▄▅▉▋
Bugfix: fixed incorrect time scale in reports
- Also replaced the debug dll with a release one (interestingly, this also removed quite a lot of scopes in the report)
Tests: exported snapshot from Craggy in editor
Merged battering ram gibs
Virtual Cursor: rewritten, much simpler now, mimics mouse, so works for everything
- Also tracking pressed controller buttons now
Virtual Cursor: rewritten, much simpler now, mimics mouse, so works for everything
- Also tracking pressed controller buttons now
merge ice_sculptures->Aux2
Updating catapult rig with new mesh LODs
▍▊▍▇▉▆▌ ▍▄▆▋▌ ▅█ ▅▄▆▊▋▊▉▋ ▄▅ ▊▇▅▇▋▅▄▉ ▄▄▅▋ ▍█▉▉▆▅▍ ▊▌▊▊▌▅▄▌▊▋▄, ▌▆▉▌▋, ▆▅█ ▅▌▅▅▋▄ ▇▇▄'▋ ▅▆▇▇ ▌█▇▍▊▆
Optimize navmesh generation by pooling generators
This also fixes sbox-issues/issues/6941 by limiting the degree of parallelism for the generation.
cherrypicking aux2 ice_sculpture fixes
Replace AO on shader with a single, non-directional AO but that composites properly, older shaders wont have incompatibility problems, also makes Dynamic Reflection work without ao
SampleScreenSsMSAA to composite non-MSAA screen effects ( SSR, AO, etc ) into an MSAA buffer
https://files.facepunch.com/sampavlovic/1b1711b1/05csVIYZJM.png
Fix AO compositing for custom shaders
https://files.facepunch.com/sampavlovic/1b2111b1/CRqx99maFj.png
Add compiled shaders for AO including for Material shaders
Composite AO to pipeline rather than blitting, cleanup
AddHookAfterTranslucent > AddHookAfterDepthPrepass
[Pick] Add internal Graphics.FrameAttributes, up to review
Remove hack for clearing AO and use FrameAttributes instead
[pick] GetBindlessRWTextureXXX if compute shader
Move all ambient occlusion sampling to AmbientOcclusion.hlsl, bindless sampling
RWTextureCubeArray doesnt exist, should just be a RWTexture2DArray
[pick] Fog.hlsl cant be sampled from compute shaders in compute shaders that also ref lighting.fxc
[pick] Fix include guards for hlsl classes, fixes declaration in both standard and material shaders, fix AO sampling
Update shaders with bindless SSAO sampling
Do a simple texture fetch for AmbientOcclusion::Sample, simplify SampleScreenSsMSAA
Compile shaders without MSAA sampling for AO
Bugfix: various issues that snuck in during rewrite
- Turns out unmanaged threads get destroyed by engine, so needed to add deferred clean up of collected telemetry - this fixed editor crashes and crashes in export thread
- I accidentally recorded allocations for worker threads only - flipped to record main thread only
- I was emitting methods for MethodExit and MethodException marks, which is unnecessary - cleaned up
Still need to fix timestamp conversion on export, that'll be next
Tests: exported snapshot from Editor's Craggy
Fixed regressions in CPhysicsShape::GetTriangulation
Yeet the weird pointer iteration that fucked me 3 times by now.
Only use cameras for load origins if no LoadOrigin components in scene
fixed 3rd person cake to display corredct birthday number, also tweaked materials for better SSS and jam colour/height
Support new server message protocol
Bump up pose recipe param buffer size to 4kb
Message sending cleanup, send more than one edit per message
Update SpriteTool
slightly improve grappling
nograb component
Pause menu
Scene + Rooms
Clear out unused InputManifestTemplate ItemGroup in Sandbox.Game
Remove old SCENEOBJECTFLAG_HIDEINFIRSTPERSON
Remove old SCENEOBJECTFLAG_SUPPORTS_ENV_INTERACTION
Write GameOverlay depth to main scene, so things like bloom layer don't render over it
Fixed offset battering ram scoop
Merge from december24_art_fixes/tutorialcleanup
Moved the tutorial island scene to the Test subfolder so it is separate from actual scenes used in the game or S2P
Created a new TutorialIslandSceneDressing nested prefab that contains all of the content from the scene. Some of this set dressing had been updated just in the prefab and not in the scene so this resolves some issues
Added a big written note to the top of the Tutorial Island scene to discourage edits, we still need the scene in order to rebake out the terrain mesh or foliage