201,363 Commits over 4,171 Days - 2.01cph!

Just Now
Tests: PerfOcclusionLineOfSight - reset internal recent visibility cache between runs Tests: ran the set
46 Minutes Ago
Implement NativeArray.ReinterpretLoad() for NativeArray.ReadOnly to avoid triggering concurrency checks.
47 Minutes Ago
Tests: ServerOcclusionTests - standardize test naming Tests: ran test set
54 Minutes Ago
Tests: ServerOcclusionTests.GeneratePairs - generate correct number of pairs This further shrinks runtimes, as previously we generated waaaay too many Tests: ran ServerOcclusionTests set
1 Hour Ago
update media_projects/hackweekaug2025_media
1 Hour Ago
merge from main -> media_projects
1 Hour Ago
Tests: optim TestOcclusionLineOfSight_PerfSerial/-Parallel By properly constructing and caching base players - tests now take less than a second. Tests: ran test set
1 Hour Ago
Tests: add TestOcclusionLineOfSight_PerfSerial/-Parallel Both run for too long - likely due to how I create players for the tests. Will fix next Tests: ran the new set
1 Hour Ago
Tests: TestOcclusionLineOfSight_Consistency - rset occlusion cache between serial and parallel runs Tests: ran the test set
2 Hours Ago
Added crosshair codes. Can be generated from the current crosshair settings, and then easily loaded at a later time or shared with other people: https://files.facepunch.com/cipeaX/2025/August/12_13-59-FrankGrasshopper.mp4
3 Hours Ago
Tests: add ServerOcclusionTests.TestOcclusionLineOfSight_Consistency Compares results between serial and batched versions. Tests: ran the new test set
3 Hours Ago
Update: prep BasePlayer.OcclusionLineOfSight (both serial and batched) for use in tests Tests: none, trivial change
3 Hours Ago
Play an on/off animation on the maps when the engine is toggled on or off Map system refactor and storing in its own file Folder cleanup
3 Hours Ago
Tests: rewrite ServerOcclusionTests to make ServerOcclusion usage clear Is it ugly on some lines? Yes. But is it explicit and beautiful? Also yes. Tests: ran the unit tests
4 Hours Ago
Fix unity_BaseCommandID not being set on Mac
4 Hours Ago
Fix stencil buffer incompatibility in Standard and Standard-Terrain
4 Hours Ago
4 Hours Ago
Clean: propagate network time from FinalizeTickParallel Tests: none, trivial change
4 Hours Ago
Optim: NetworkPositionTick - remove extra InvalidateNetworkCache Cache has been previously invalidated in FinalizeTickParallel, so no need to discard it again Tests: none, trivial change
4 Hours Ago
█▋▉ ██▄ ▅▍▇▄▊▄ ▊▍▍█ ▍▊▊▄▆▉▆▇ ▌▌█▆█ ▌ ▇▆▅▍█▊ ▇▍▌█▌▍▄.
4 Hours Ago
Optim: OcclusionSendUpdates can now reuse occlusion results - Got rid of old OcclusionLineOfSight that used to send updates internally, as there's no need for it now Tests: 2p session on Craggy with UsePlayerUpdateJobs 2
4 Hours Ago
Clarified in the tutorial that you must talk to the survivor (not just be in their proximity).
4 Hours Ago
bug fix: incorrect button prompt was displayed for opening the inventory on this tutorial text only.
4 Hours Ago
Clean: remove couple TODOs - one was just completed - another was overzealous Tests: none, trivial changes
5 Hours Ago
Optim: SendNetworkPositions - reuse occlusion query results Tests: 2p on Craggy with UsePlayerUpdateJobs 2
5 Hours Ago
update from main
5 Hours Ago
merge from gesturewheel_cinematic_fix
5 Hours Ago
Fixed cinematic gestures not showing in the gesture menu when using ShowAdminCinematicGesturesInBindings
5 Hours Ago
When updating the phrases we now save their context for later use Some cleanup in phrases update code
5 Hours Ago
Update: move ServerUpdateOcclusionParallel inside FinalizeTickParallel - FinalizeTickParallel invalidates players network cache - with UsePlayerUpdateJobs 2 we can skip it later, but 1 is has double-invalidate This increases the coverage of OcclusionFrameCache, allowing to simplify a bunch of code. Tests: 2p on Craggy with UsePlayerUpdateJobs 0, 1, 2 and disconnects. 0p server with UsePlayerUpdateJobs 1, 2
6 Hours Ago
Merge: from connectedplayer_rewrite Got far enough along in this direction and things seem to work
Today
Bugfix: ServerUpdatePlayerTick - restore Player.serverTickInterval functionality Got lost during the rewrite Tests: 2p on Craggy with UsePlayerUpdateJobs 2
Today
Backup
Today
▊▆▇▋ ▅▉▄▍▍
Today
▅▍▊▉▋▋
Today
fix mannequin prefab rendering
Today
Rename BlockFace -> BlockFaceDefinition so I can make runtime types with normal names
restore_old_sorting -> main
Baked defaults into play prefab
Today
Define sockets for square floor
Changed default orderBy string to match new intended behaviour
Restore default sorting to be ping then pop (like the old menu)
Today
Define faces and edges for a normal wall
Today
Proper MVP implementation of "full base heating" - add ability to define faces & edges of each building block - draw gizmos to visually confirm what you are defining
Fixed notify LOD notifing the wrong object
Added toggleable working lighting, needs some work to make it prettier
Missed files
Today
Left mouse button when holding a water jug / water bucket now pours (up to) 5% of the container's max amount from its inventory. Still needs animation setup. A gradual pour over time rather than a throw of a smaller amount may be nicer, needs more thinking. Video: https://files.facepunch.com/jacob/1b1111b1/Unity_Q6cXeVt4NE.mp4
Today
WIP crosshair customization, added the following convars to control the appearance and behaviour of the crosshair: - mode: 0=static, always visible | 1=static, hidden during ADS | 2=dynamic, adjusts to accuracy, hidden during ADS - style: 0=full | 1=no dot | 2=only dot | 3=T-shape no dot | 4=T-shape with dot - color: 0=white | 1=green | 2=blue | 3=red | 4=yellow | 5=magenta | 6=cyan - dotsize: Size of center dot [0-5] - spacing: Distance of the outer lines to the center dot [0-3] - outline: Outline enabled [true/false] - outlinecolor: 0=black | 1=green | 2=blue | 3=red | 4=yellow | 5=magenta | 6=cyan Demo: https://files.facepunch.com/cipeaX/2025/August/11_19-02-AttractiveLacewing.mp4
Today
Hackweek XIII | Sparrow Missile Tiki Torch - Initial prefab setup as campfire, new model with different fire effect, lights up and extinguishes correctly, set up namings and item