branchrust_reboot/main/world_update_2/waterwell_updatecancel
25 Commits over 31 Days - 0.03cph!
Another pass on vending orders
Remove some old hacks to fix save games (again)
Added explicit versions of TakeFrom to eliminate param[] allocation
Fixed dead npc shopkeepers using the wrong loot panel, a symptom of them not using the correct corpse prefab
Involved moving CreateCorpse override up a level from HumanNPC to NPCPlayer, this turned into a bit of a refactor as I cleaned up the copy+pasted CreateCorpse methods in FrankensteinPet, ScarecrowNPC and GingerbreadNPC, exposed any differences in their corpse generation process as virtual properties (see CorpsePath, ShouldCorpseTakeChildren, KeepCorpseClothingIntact, OverrideCorpseName, ApplyLoot, CopyInventoryToCorpse)
Remove Gibbable, GroundWatch components from new planters, mark them as immortal
Added 1x planter to water well A
Added 2x planters to water well B
Fixed parenting of planter in water well D and E
S2P all wells
Fixed NPC shopkeeper not respawning
Manually reimplemented the vending machine changes on this branch
Merge from parent (many merge issues, will need some fixing)
Created a new water wells test scene, added to the dev scene loader
Shop UI now closes if vendor dies while player is shopping
Setup placeholder clothing loadout
Add NPC/vending spawners to water well C and E
Lowered chance of teas in food cache loot table
Protobuf restructuring, save next refresh time
Expose server.waterWellNpcSalesRefreshFrequency, default one hour (WIP)
Removed a bunch of code in InvisibleVendingMachine that was marked to be removed
New vendor refreshes item selection (every 60s right now for testing)
Happens regardless of whether the vendor is alive or not
Don't show map marker for water well NPC
First pass on a shopkeeper NPC in the water well (only on D variant right now)
Can be killed by players, will not drop any loot
Will respawn after 30-60 minutes
Shop is inaccessible while the shopkeeper is dead (so please be nice)
Some minor shopkeeper cleanup, converted a generic flag into a named const flag for better tracking and invisible vending machines no longer need to do a Vis.Entities every time they sell something or look at the player
Added 1 - 2 food cache spawners to water wells b,c,d,e
Set up prefabs and first pass on loot table (mixture of high quality food and teas)
Clean up food cache prefabs (correct mesh LOD settings, removed unneeded colliders, added RendererBatch to pickle jars)
Move Food Cache folder to Prefabs/Misc/Food Crate (as this is not a deployable)