[1.0.2408] Visitor animals eating my food (etc.)

Started by bugi, November 05, 2019, 01:58:10 PM

Previous topic - Next topic

bugi

(I don't think this really counts as a coding bug, but more like a design flaw, but since the result is unexpected behavior, I think this is closer to be bug than a suggestion. I was able to find a mention of the same symptom in the modding requests, and even there, it was noted that it should already be part of the base game.)

Ordinary situation, enclosed colony building with doors etc. and a "fridge" next to "living room" (sort of).

What happens:
When traders come, they will use the colony's tables for eating, and during those moments, their pets/animals will follow them inside, and then wander around. Both the visitors and their animals will ignore closed and even disallowed doors. (Sort of thematically understandable, if nobody went to tell them about local rules, and there are no proper locks in any of the doors. But since the doors are all "locked" for enemies, there are obviously locks.)  During those wanderings, the animals will happily eat even fine meals, stored inside a fridge.  Smart ones, they are, somehow knowing there is food inside a closed dark room, and able to open the doors...  Such animals can also enter e.g. kitchen; I've had a case when I wasn't watching (i.e. micromanaging) that a whopping 2 muffalos and 1 another animal had entered kitchen while my cook was busy cooking behind presumably "locked" door (i.e. disallowed, in order to keep other colony members out of the place). There goes a pile of food into junkyard, can't risk it with the insane amount of dirt all those animals managed to spread around in the moments they were in there.

As it currently stands, during early game, visitors can cause more trouble than an enemy raid :P

What I expect:
I would expect, thematically, that the visitors left their animals to the "hang around" spot, which is usually outside, even outside the colony perimeter, or at least that they would very quickly order their animals to NOT eat my food or to even enter fridge or kitchen.  (I could expect disobeying such orders e.g. if the animal has already been starving for a while, but then again, in such case I'd expect the animal to have done something desperate even before entering the colony area.)  And I would expect them leaving animals outside not just to prevent stealing/eating, but to not spread dirt.  I would also expect visitors to obey the colony's rules with doors, and actually be able to define even stricter rules for them (separate door control for visitors). Along the idea of "We barely know you, you have no business waltzing through the defensive room, kitchen, and our living room, just to shortcut from west side to the hanging area you so inconveniently chose to be on the opposite side of the colony".

And since visitors can apparently see through walls to see where the tables and chairs are (and animals see food), I'd expect them to also see which rooms are kitchens, fridges, bedrooms, and prisons, etc., and would automatically not enter such "sensitive" places; they have no legitimate business to go into them (unless a family member happens to be there or something).

Reproduction?
Since traders coming in can't be made deterministically, I can not give direct steps to reproduce, but I think it is quite obvious anyway. Make a normal colony but leave the tables/chairs near outer walls, and fridge/kitchen next to those, withing animal wandering range, and wait for the event. Also, I don't have a savegame file for this, since when I noticed these happening it was already too late, and the previous save game is too far in history (can't ensure the randomness leads to animals eating stuff).


Solutions?

Few examples, some are partial solutions (need more than one).

* Have "trader/visitor spot", just like the colony has for its own caravan making. That would be their hang around place. Would prevent hanging in an area that is too near sensitive places, and in some cases could prevent shortcut pathing through the colony.

* Do not let any non-colony animals (visitor, enemy, wild) open any doors. Visitor humans could still open the doors for animals, assuming the visitor itself is allowed/can open such door, if they have some valid reason to do so, e.g. to reach their designated gathering spot.

* Make the visitor animals stay at the hang around spot when owner/handler goes to eat. (Thematically, handler either says "stay!" to them, or gives the rope to another visitor or ties it to a tree or whatnot.)

* Have separate toggle for doors to disallow/allow for visitors. This makes it possible to designate area where visitors can go to eat (instead of going to eat in the prison, or colony member's room while she is sleeping there.

* Allow defining allowed area(s) for visitors, and possibly separate one for their animals. If they can not reach such area from outside (edges) (e.g. without passing through disallowed doors), they could just behave otherwise like before (hang around whatever spot they can figure out and reach), and not enter any place the doors won't allow.

Note, there is apparently currently no room type for "fridge" or food storage (I don't know of nice name for such room in English). I'd suggest adding such, e.g. with rules something like: It is not recognized as any other type of room, it has complete roof, (for fridge) its temperature is below, say, 5C, and has storage area(s) which have allowed foods and/or other item types that benefit from cooled storage.  Such room types might help with visitor AIs, but might also get some other useful uses.

Tynan

As you noted it's not a code bug, so I will move this to suggestions.

Without going into detail, visitors are supposed to be a mixed blessing in many cases. The idea with RW isn't that everything is super cleanly a benefit/cost (like and RTS) but more that we throw characters and game systems together to let stuff happen. So richer interactions with visitors, including "annoying in-laws" type problems are intended. Of course if it's really extreme we'll balance that down but I'm not sure it is now.
Tynan Sylvester - @TynanSylvester - Tynan's Blog

bugi

I can understand the fun(ny) sides of some unexpected "emergent" behavior (I've seen insanely fun cases of this in certain MUD), but this visitors and their animals wandering in and messing things around is no longer fun, funny, occasional, or thematic. It is more like almost every time traders come, there is hopefully one useful interaction (trade, which is in itself already a balanced thing), and about a day of micromanagement h*ll in order to keep things safe and clean.  I.e. 10% pure usefulness, 90% of pure annoyance.  Not quite the balance for a fun game period, especially since one can not just say "Please, come back later, we're still barely recovering from the latest distaster."  They simply come, don't ask permissions, and visitor animals using the kitchen as their toilet... a dry "ha. ha. ha." from me.

Also, throwing rules and system together and seeing what happens? Sure, but those rules should then at least make some sense. Visitor animals being able to go through doors, even "locked" doors, is certainly not a thing that makes sense, and most of the times not even fun. Especially in a game like Rimworld where the colony is often on the brink of total disaster even without "friends" being an additional problem and behaving like jerks (not controlling their animals properly), too.

Note, the door rules are currently kinda borked in that visitors/traders and even their animals can access more places (i.e. any place whatsoever) than enemies or even the colony members and animals themselves. Visitors' (and especially their animals') reach should be somewhere in between enemies and colony members (arranged in one way or other), in order for the rules/systems to make sense.

Even if only the human NPCs would get in (for eating), they would still have some negative effects, like reserve an eating place (for a moment) and drop dirt around, unless the player had spent an effort to counter that, by building an own place for the visitors (if that was possible in the first place).  There should be a benefit for such effort.  If one needs some extra balance in that, perhaps there could be more or less standing change or how much they leave gifts, if any, after the visit depending on how nicely they got treated. E.g. how nice rooms they could use for their eating, perhaps even adding an option for them to sleep over the night in bedroom(s) made for them, if they could use recreation things, etc.  And if treated really nicely (and with a good trade), perhaps they'd come again sooner.

If richer (and random) interactions are wanted, then those can be added by adding more variations in the interactions, and still be thematic, fun and make sense. For example, there are already social fights and romances (within groups of NPCs). Why haven't I yet seen social fights between visitors and colony members? Or romances, say, some visitor then starting to visit my colony more and more often, trying to see a particular member again, until there is a new couple (or he/she gives up), and depending on the moods/colony status, I may loose a member or gain a new member...  Or visitors throwing a party.  Or etc.  There is certainly many ways to get some fun and/or unexpected things happen without the mentioned enforced always happening mundane annoyance.

Granted, my colony members are 99% time busy doing important stuff elsewhere (like cleaning that frigging mess they made in the kitchen), especially since there is no (sensible) other interactions than trading with visitors. So, not much chance for fights or romances... Perhaps there should be more activities with visitors? Like some kind of "socialize" actions: perhaps just chatting for a while (just like with prisoners, though maybe not as effective), or asking to play a bit of chess. Or more concrete actions, like offering to train their animal (if one or more is in need of that), etc.

(If there was a way to teach/train others, then that could be yet another useful activity to do with visitors, but alas, no such natural and critical for survival thing in the game...)

Perhaps animal(s) getting inside could be a random event (instead of being a de facto pattern)? Visitor animals perhaps getting spooked of something, or an animal smelling opposite gender, or animal randomly deciding to follow some interesting NPC (even colony member) through doors for a while, or whatnot reason, possibly ending in unexpected places.

Vakari

Check out the Trading Spot mod.  Should help a lot:  https://ludeon.com/forums/index.php?topic=33669.0

Also the Locks mod will let you have more control of who can use doors:  https://ludeon.com/forums/index.php?topic=35913.0

Both are available on Steam if you want them.  I consider both essential QoL mods.  Hope this helps!

bugi

Sounds like I'll be trying to those.  If there was a "thanks" button (or such), consider it pressed. And those suggestions/mods confirm that I'm not alone with my wishes and ideas.

I tried to look for some QoL-type mods soon after I started playing, but once I noticed how many "5 star" or such mods there were on Steam workshop, it seemed like a futile attempt to find actually good ones (for me). So I decided to wait and react only once I spot some nice prefiltered list somewhere.