6,106 Commits over 1,614 Days - 0.16cph!
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)
merge from main -> base_occlusion