2,842 Commits over 2,072 Days - 0.06cph!
▅▇▉▌▆█▇▊ ▆▆▆▉█▅ ▉▋▌█▅▋▄█▊▉▄▅▍▊
Early exit from LODCell.ChangeLOD if the cell distance hasn't changed much (uses a percentage so farther cells are skipped more when moving around)
Add profiler samples for LODGrid, RendererGrid, FoliageGrid, and WorldGrid's inner loop
Get rid of two every frame allocations in ServerMgr.Update
Get rid of 0 length array allocations in Poolable
Immediately after instantiating the UI, disable its root game object, then enable it again. The time spent in UI every frame will then drop by 0.5ms.
app.info fixes: was giving an NRE because the companion server was not running
Truncate server hostname for pairing notification
▋▄▋'▉ █▌▍ ▄▋▊ ▆▍▄▉▇▌▌▇▍▆-▄▅▅▆ ▅▆▊▊ █▇▌▌ ▌▊▉ ▊▊▅▊▅ ▊▋▊▄▇
Remove a redundant every frame copy in LightLOD.UpdateAll
Switch ImpostorRenderer to use a NativeArray instead of a C# one
Use Shader.PropertyToID when setting shader properties
Don't check NeedsTimeout every cycle of the loop because it's a bit expensive
Add app.listenip to set the IP address the companion server should listen on (optional)
Add app.publicip to set the IP address that Rust+ should connect to when pairing (optional)
Add app.info to display which IP addresses and ports the companion server is currently using
Fix NRE spam when leaving a server
Return FoliageCell.batches to the pool when not needed
Use a shared empty list for FoliageCell.placements if there are no placements for the cell
Make WorldGrid sparsely allocated
Make LODGrid pool empty cells too
Pre-fill pools in bootstrap
Remove debug.logs
Make RendererGrid pool empty cells
Fix some error spam when running benchmarks in the editor
Refactor the phrases script so it shows a path to where it found things in warnings
Fix translation setup for bass and trumpet instruments
Fix translation setup for unwrapping gifts
Fix translation setup for "loot" option description on downed players
Fix hemp terraincheck text
Phrases
Fix a bunch of localization issues with the smart alarm setup dialog
Fix the setup dialog closing when you deselect the second textbox
Phrases
▌▊█▌█▋▍ ▉▊▄▇▉▆▆▋▉ ▇█▊ ▍▅ ▊▄▊▄▅▌▌ ▇▇▅ ▊▍▍ ▄▇█▆▍▆▆ ▅█▅ ▍▌▍▌▆▌ ▄█▅ ▆▌▆▉▋▌▆▌ ▄▅▆▍▊▉ ▇ ▆█▄▅▉ ▇▋▍ ▆▍ ▋▅▅'▄ ▉█▆▊ ▉▊ ▄▌▋ ▋█▊ █▅▄▅▆
Fix map image rendering for hapis and some other custom maps
Test for building privilege using steamID instead of the player (because the player might not exist when using the app)
Show the Rust+ option on the main menu
Make companion menu buttons have consistent widths
Update protobuf CodeGenerator (struct fixes, improved dispose error message)
Half3 and VectorData protobufs are now structs
Fix receiving trees not pooling on the client
Fix server not returning map notes to the pool when a new one is placed
Fix client not disposing team data when receiving an updated copy
Hopefully fixed MapNote pooling bug for real!
Speculative fix for serverside NRE in autoturret
Make CoroutineEx.waitForSecondsRealtime finally use pooled instances!
Fix some bad pooling code in demo indexer
Work on getting simple button binds to not allocate
Update protobuf codegen - Dispose will now throw if ShouldPool is set to false
Remove an evil ShouldPool
Add sanity checking assertions to MruDictionary
Fix a bunch of serverside pooling misses
Merge from comp (code review fixes + smart alarm sound)
Companion app main menu updates
Enable push notifications by default
Memoize strings used for inventory icon amounts so they aren't recreated every time the inventory updates
Add a button electric entity
Add detail layer and fuzz mask to the workshop editor