Bug: The caretaker’s FindCaretakerInteraction method had lowerName.Contains(“fill”) as a keyword match for Priority 4 (“Prepare” interactions intended for buffets). This matched the piñata’s “Fill” interaction, so every tick the caretaker would push “Fill” on every piñata on the lot. When the lot state was saved and reloaded, all piñatas appeared filled/in-process.
Fix: Removed the overly broad “fill” and “stock” keywords from both:
VMNetPushCaretakerTaskCmd.cs (line 198-199)
VMNetSpawnServiceNPCCmd.cs (line 388-391)
The remaining keywords (“prepare”, “refill”, “buffet”) are specific enough to still catch buffet-related interactions without false-matching piñatas or other non-food objects. And “restock” is already handled separately at Priority 3.
After deploying this fix, the user will need to manually clear the piñatas one more time (collect the coins), and after that they should stay empty/available across lot reloads. Want me to commit this?
