5,350 Commits over 1,522 Days - 0.15cph!
merge from codegen_timings -> main
Include the time taken for SyncVar weaving in the "SyncVar weaving Sucess" log message that already exists
Add Profiler.BeginSample() for code generator
merge from high_wall_upkeep -> main
Fix high walls that are connected to a building block without a TC not updating when the building block is destroyed
- update during decay if the TC is destroyed or doesn't match their existing building
- this could have happened with other deployables like shotgun traps but didn't really because it was only 1.5m range, not 16m range
Add "drawnearbybuildings <duration> <radius>" to show what building decay entities belong to
Add "forcedecaytick" to force every decay entity on the server to run it's decay tick (to see if walls will reconnect to a building when decay is ran)
Add ability to manually run decay ticks and bypass the "once per 10m limit"
Prevent divide by zero if the CraftAmount of a high wall blueprint is zero (don't think it's possible but best to be safe)
Fix compile error by making high_wall_upkeep replicated (even though I don't think it needs to be all the code using it can run on the client)
Fix sqrDistance still being calculated for high walls despite not being used
Switch high walls to look for oldest building block (like building priv works) instead of closest block
Move the hardcoded "16m radius" for GetNearestBuildingBlock() and the high wall specific "GetNearbyBuildingBlock" into a shared constant
merge from main -> high_wall_upkeep
Add upkeep component to the legacy & ice high walls
Move the upkeep multiplier selector (building percentage vs high wall convar) upwards into BuildingPrivlidge.Upkeep.cs
- fixes deltaTime being overwritten by the convar instead of swapping the convar <-> "20% upkeep" shown in TC
merge from main -> high_wall_upkeep
merge from reduce_server_startup_yields -> main
Manually update the "reduce_editor_startup_yields" branch
- old branch adam made to skip 10x 100ms delays in server startup in the editor
- I think it might need a WaitForFixedUpdate() but not 100ms waits
- only affects editor: doesn't change standalone builds
merge from editor_playmode_timing -> main
Print time taken to enter play mode in the editor (so we know what iteration speed is)
merge from fix_editor_disable_deepsea -> main
Don't spawn in the deep sea manager at all when it's disabled in editor preferences
merge from copy_paste_load_threaded -> main
Load the copy paste files on startup on a background thread
- still loads textures and adds to the list of files on the main thread
- saves 600ms for my 36 copy pastes
- more important for editor iteration speed than standalone clients (as most players aren't admins and don't have copy pastes on their client)
Add the upkeep component to both high walls and gates
thumb_up
10
thumb_down
11
Add support for the "Upkeep" component to tick a bool if it's a high wall
- will then use the convar for it's multiplier instead of the base's upkeep multiplier (based on size)
Add `high_wall_upkeep` convar to control what the upkeep of high walls will be
- set to static value because high wall upkeep would be too low near single TCs and too high near big bases
Refactor BuildCost() so it returns a struct that contains the cost & how many items are produced each craft
- allows us to divide the upkeep for high walls by 3x because we craft 3x per craft
merge from waterwell_stock_decrease -> main
Decrease max stock of items in waterwell vendor from 10 -> 2
- increase restock time from 2m -> 10m per item
- keep syringe & ammo at 10 stock & 2m restock time
merge from turret_hqm_increase -> main
Increase turret crafting cost from 10 HQM -> 25 HQM
thumb_up
14
thumb_down
13
merge from fix_boat_vendor_heli -> main
Add tests to confirm boat spawners don't destroy helicopters & boat spawners still destroy boats
Add support for vehicle spawners to label what kind of vehicles they spawn (boat, horse, heli)
- prevent boat spawners from deleting helicopters when spawning boats since they can't get in the way
merge from fix_alt_loot_clothing -> main
Remove unused field + comments
merge from main -> fix_alt_loot_clothing
Fix compile error + rename field
Added another test to make sure that when alt looting with a full inventory, the extra clothing will go into the body bag
Add new tests to TestItems for alt looting behavior I fixed & ensuring corpses still block input correctly
Add ability for RPCFactory.MoveItem() to supply ItemMoveModifier parameters
Fix NRE from ConstructionError.Log() for players without connections (for tests)
Create method for PlayerOpenLoot() inside DroppedItemContainer outside of the looting RPC (same idea as what StorageContainer has)
Add more items to ItemManager.Items to make tests easier
Add convar for "bypassiteminputrestriction" to allow the server to be put in a mode where you can move items into input blocked containers
Fix alt looting from player corpse bags -> player inventory
- fixes clothing alt looted from dropped item containers not being worn if you are already wearing clothing
- fixes clothing that would be dropped if you have a full inventory by trying to force move the items into the corpse bag first (bypassing the "no item input" manually)