6,107 Commits over 1,614 Days - 0.16cph!
Include crash timestamp when uploading to sentry
- sentry parses from the minidump but this includes it in the JSON body too
- crashes happen in past then are uploaded on next startup so we want to know the difference
Update the rest of the code to work with the new NativeArrays for mapdata
Add support to TerrainMap to return a NativeArray
Switch WorldSerialization to use NativeArray
- make sure it frees the MapData explicitly as normally the GC is collecting the managed arrays
Switch the MapData protobuf from managed -> NativeArray<byte>
Add support for NativeArray<byte> in protobuf codegen
- instead of byte[]
Fix the server not clearing unused World Serialization maps
- saves about 175MB on 4500 map
Reduce memory usage of the server's SpawnDistributions by 750MB (780MB -> 40MB) and make it 3x faster to sample (2.1 us -> 0.7 us)
- store in tiles of 16x16 values
- 85% of the tiles are all zeros (fun fact)
- tiles that are all the same value store as negative tile index so it can avoid looking up the tile (mainly all zeros)
- deduplicate the remaining tiles (saves a little more)
- palette packing on top for tiles that have mixed values (2 - 4 bits / value)
- reduces server startup time from 4s -> 2.5s
Set TC items to use the display type of "TC limit" (it's how you configure them to show TC limit when held)
Add convar to softcore gamemode prefab
- it's `max_tool_cupboards` so could technically be set on any server (but intended only for softcore)
Implement maximum amount of TCs placed IN SOFTCORE ONLY
- maximum 3 for now
- follows how the "maximum sleeping bag" system works with the amount shown on the icon & toast when you reach the limit
thumb_up
19
thumb_down
10
██ ▌▅▋▊▉ ▄▌▇▅▅▆ ▋▊ ▇▌▌▆▆▌ ▄▆▊█▅▊█▄ ▆▇▌ ▇▊▌▆▉▊ ██▋ ▋▄▉▋▉▉▇▄▌▊▆▆ ▌█▇▅ ▅▊▊▄ ▅▍▊▄▆▌ ▉▌▇▋▆▇▌█ ▅▄▋▍ ▍▉▆ █▆▉▅ ▉█▆▉ ▅▇▍▌▇▊▌▇▉█▊▄█ ▊▄█▌█▇ ▆▆█▅ ▊▅▌▊▋ ▄▍▋ ▇▆▇▆▇▆▉█▌ ▆▋ ▅█▆▉▋▋▅▅▆ ▄▅▍▆ ▋▆▇ ▋▉ ▍▄▆▊ ▋▇▋▄█ ▊▅▇▍ █▍▉ ▆▊ █▉▄▌ ▉▍▊▊▆▆▅█▅
merge from fix_memdump_logging -> main
merge from qol_spawn_vendors -> main
merge from replicated_convar_save_fix -> main
merge from fix_replicated_bag_range -> main
merge from fix_codelock_load_nre -> main
merge from qol_loadout_inventory_preview -> main
merge from fix_apartment_teammate_door -> main
merge from fix_apartment_transfer_items -> main
merge from main -> fix_apartment_teammate_door
merge from fix_custom_item_drag -> main
merge from fix_jungle_plant_water -> main
merge from fix_sentry_modded_tag -> main
merge from fix_motorcycle_dismount_order -> main
merge from fix_client_sail_wind -> main
█▍ ▊▇▍█▍ ▍▅█▆ ▆▊▌█▉▉▇▄█▋▌█▊▍▉▄▍▇▅▇▋▌▉ ▌▆ █▆▊▇
▉ ▍▌▊ ▇▊▇█▄▅▋ ▍▍▍▉▍▇▌▉▌ ▉▊▊▊▇▉█ █▊█▅▆▍▅▌ ▉▇▊▋ ▊▇▆ ▍█▉ ▄▅ ▇▌ ▉▇▌▉▄ ▋▍▇ ▅▇▋▅▍▋▉ ▄█▍▌▅▄ ▊▊ ▅▌█ ▆▊▅▅▆█▄▉▅▅▆▋▍▇▍▆▆▇▍█
Add logging to memsnap commands
- indicate if you are on a release builds and they won't work (keep the commands listed though instead of removing them)
- log a message after they run
- print to server console / logfile / rcon if the dump worked
merge from main -> qol_loadout_inventory_preview
Make sail wind behavior fully server sided
- used to evaluate on both client & server so it could mismatch
- client now just waits for server to send the flag
- convar "sailblockedupdateinterval" to control the 5s polling the sail does to see if it's blocked (same interval as before)
▌▌ ▅▊▆▇▌ ▅▋▊▌▍▅ ▊▋ ▉█▅▅▇ ▋█▍▇▆▅█▌▇█ ▉▄▄▄▊█ █▍▊▉█▋ ▅▌▄▊▇ ▋▌ ▌▆▍▇ ▊▍ █▍▋█▅▌▄ ▋▇▅▌▌▅▄ ▇▄▉ ▉▉▌▄▆ ▄▇▊ ▋▊▍▉▅▊▋█▄▅ ▉▋█ █▊▇▍▋▋▆ ▋▅▋▉▋▋█▋▋▍ ▅▌█▌▇ ▆▄ ▆▆ █▄█ ▅▍▋▇▄▄▍█▄ ▉▆▅▌▊ ▌█ ▋▇ ▅▍▊ ▅▍▊ ▆▊ ▄█▇▊█▆ ▅▆▄▌▋█▋▇▌ ▆▌▊▉ ▇▍▋▇▊█▍ ▇▄▋▄▍▄▄
▇▍ ▄▄▍▊▉▊█ ▉▊▉▅▅▊ ▊▅▆▄▅▇▊█▇▍ ▅▌▍▉▍█▆▌▍▉▇ ▄▌▅▌▅ ▌█▉█▍▇▋ ▉█▍▉ ▅▍▇ ▊▉▋▄▋▌▉▅█▅█▋ ▅▉▇ ▊▆▅▆▍█▆ ▌▌▍▌▅ █▅▄▌▅▌▉ ▍▋▆▋▇ ▄▉ ▋▍█▄▆ ▅▆▆ ▋▊█▍▍▍▇▊▌ ▅▌▋▅▍▇ ▆▆▍▊▊▉▇█▌ ▅█▊▆█▌▋▋▌▅ ▇██▅▌ ▊▉▅ █▊█▇█▋▊▅ ▋▇▉▊▊█▅
Fix modded servers crashing before fully starting not being tagged as modded
▌▆ ▇▍▉▌▉▉ ▆▆▄▄▄▇▋▉▇ ▌▊ █▉▄▋▊█ ▇▍▄ ▋▅▉▋▅▄ ▅▆ ▄▇▊▋▅▄ ▋▌▌▉▆ ▌█ ▉▇▆▅▆▄▋▉ ▊█▅▌ █▋▅▊ ▆▍▍▆█▉ ▍▆▍▆▉▇▍▋▍▄▅ ▉▅▋▇ ▉▌▄▇▋▇▌█▌ ▋▆ ▊▅▉▊ ▆▉▄▄█ ▍▆▄▉█▉ ▌▉▄▋▌▉▇▆▋▄▍ ▌▊▅ ▄▌▄█▆▊ ▋▅▆ ▌▉▉ ▅▇█▇▌ ▉▍▅█ ▇▇▄▌ ▋▇▌▌ ▉▇ ▊█▌█▄
Fix potential NRE in codelock inside Codelock.Load()
Fix custom items dragged from vending machine not using the custom icon
Set sleeping bag range convar to replicated
- fixes clients not showing "orange" guide correctly when the convar was changed (despite the server enforcing the sleeping bag distance)
Fixed jungle having a groundwater level of 0 causing plants placed on terrain to have no water
Fix SocketMod_TerrainCheck.cs after merge
Fix Antihack.cs after merge
merge from main -> fix_foundation_clipping_rocks
Fix medieval doors not counting as closed for base occlusion (they were prefab variants not straight skins)