123,978 Commits over 4,171 Days - 1.24cph!
Fixed bbq loot panel title
Connect together faces when entity links update
Fix debug points for walls
Bugfix: players go back to sleep on disconnect on a server with UsePlayerUpdateJobs 2
This looked scarrier than it ended up being. One concern left to investigate - looks like I'llbe able to merge it in tomorrow
Tests: 2p session on craggy with UsePlayerUpdateJobs 2
Fixed 4 conflictings phrases
- setfreq_desc
- spin_desc
- drink_desc
- open_loot
Skip phrases in EntityMenu.cs, we catch these by attributes
Added a check looking for unused phrases and conflicts
Removed some unused/duped phrases
Add debug points to faces so we can ddraw better visualizations for the faces
Fix backface check for 180 degree faces not working due to needing a bigger offset with the normal
Make logging "a little clearer"
Enable more materials for instancing that weren't caught previously because of a buggy automation in indirect instancing tools
Linearise colour values before storing them in the instance data buffer
Some fixes for the phrase contexts update, it wasn't catching everything
Cleanup/polish indirect instancing tools
more WIP on bunker entrance
Optim: NetworkPositionTick - skip transform access
Tests: none, trivial change
Optim: inline virtual calls in SendNetworkPositions and skip transform access
Tests: 2p seesion on Craggy with UsePlayerUpdateJobs 2
Tooltips now use phrases
Converted and reserialized all UI prefabs using tooltips (~130 prefabs)
Update: simplify SendNetworkPositions
Decided against parallelizing with tasks as it looks to be taking only ~0.3ms on a 350pop server
Tests: 2p session on Craggy with UsePlayerUpdateJobs 2
Clean: fix formatting
Tests: none, trivial change
Bugfix: fix failing WaterLevel tests
My ReadOnlySpan caused it, as we had hardcoded access to the global PlayerCache (which we don't use in tests).
Tests: unit tests pass
Small Cleanups:
- use Mathf.NextPowerOfTwo in BufferList
- remove CommandMemoryBase.damage_bitmap
- revert changes to MainCamera
- remove FormerlySerializedAs in RendererLOD
Update: rename BasePlayer.playerCache member var -> BasePlayer.PlayerCache
It was hiding the source of a bug, as func params have lower case name
Tests: compiles in editor
▉▋▇▄▋▅█▍ ▊▄▉▌ ▄█▄█▅ ▇▊ █▅█▋▋.▉▆▇▋▇▌ ▉▇▍▆▋▇
▄▊▄▌ ▋▇▊▉▍▌▇ ▋▆▋▆ ▇▋▉▍▄ ▍▉ ██▋▊▉ ▌▉▅▍▋▊▋ ▇▉▆▋▋▌▌
Some refactoring, make sure prefab phrase contexts arent stomped when running the phrase update
Fixed persistent assets in lists being explored as potential phrase contexts
Clean: prefer ReadOnlySpan<BasePlayer> instead of playerCache where possible
Makes it easier to guess things at a glance.
Tests: ran all relevant unit tests(discovered WaterLevelTests are failing, will investigate next) + 2p session on craggy with UsePlayerUpdateJobs 2
convar to help test prepare for missions
Revert back to simpler save method
Abandon mission instead of trying to use reset to defaults
Update: demote PlayersToFinalize, PlayersToValidate, PlayersToRecache from being global caches
Tests: 2p session on Craggy with UsePlayerUpdateJobs 2
Update: demote PositionChanges from being a global cache
Tests: 2p session on Craggy with UsePlayerUpdateJobs 2
Keep instancing disabled by default
Strip debug code out into separate files
Merge: from occlusion_rework
- Fix for occlusion queries not being commutative
- Reenable occlusion frame cache and expand it's use to full frame
- Server occlusion deduplicates queries
- minor API restructure (might affect mods)
Optim: ServerUpdateParallel - update player subscription groups just before we run sever occlusion update
This ensures that server occlusion frame cache is built from up-to-date occluders, and allows to save on more occlusion checks downstream in ConnectedPlayersUpdate
Tests: 2p session on Craggy with UsePlayerUpdateJobs 2
Remove old unused job code
- Properly support material property blocks (for real this time)
- Disregard LOD minimum distance for the 0th LOD entry to prevent objects hiding from getting too close to them.
- Fix ConVars
- Various cleanups
More progress on bunker outside blockout WIP
Clean: split up FinalizeTickParallel monstrosity
This is end of prep to rearrange systems for better occlusion cache reuse
Tests: 2p session on craggy with UsePlayerUpdateJobs 1 and 2
Merged engine.json and phrases.json into a single file