Topic: Villager exploit fixes  (Read 7464 times)


Ketsuppi

« on: March 08, 2023, 01:07:26 PM »
Some suggestions after finding a couple of quite nasty exploits involving villagers:

  • Villagers should be able to put out fires. It is possible now to trap a whole fortified village by setting a fire on the entrance tile and shooting the villagers down one by one through the fire. I've also been able to burn down village houses without the villagers doing anything but shout at me. (It would also be neat if the player could put out fires, but I'd say villagers being able to do so is more important balance-wise at the moment.)
  • Villagers should react to violence even if it doesn't involve the (current) village members. After hiring someone from the village you are able to kill them instantly in the village right in front of the villagers. This contradicts a bit with the villagers not letting you hire them before the first companion has returned.

Sami

  • UnReal World creator
  • Administrator
  • Member
  • *****
  • Posts: 1273
  • Total likes: 3180
  • UnReal World creator
    • View Profile
    • UnReal World
« Reply #1 on: March 09, 2023, 12:00:23 PM »
Some suggestions after finding a couple of quite nasty exploits involving villagers:

  • Villagers should be able to put out fires. It is possible now to trap a whole fortified village by setting a fire on the entrance tile and shooting the villagers down one by one through the fire.
Yeah, that's bit of a problem, for the villagers being attacked this way. Putting out fires is one solution to one issue, but there are also other cases where NPCs can be lured behind an obstacle they can't cross - eg. water - and then taken advantage of. So we'd actually need to add tactics to have NPCs seek cover and wait until there's sane way to proceed. Or to have only archers to participate in cases like this.

Quote
I've also been able to burn down village houses without the villagers doing anything but shout at me. (It would also be neat if the player could put out fires, but I'd say villagers being able to do so is more important balance-wise at the moment.)[/li][/list]
How did you manage in this, and was it with some previous version? They oughta warn you few times first, then ask you to leave, and proceed with almost an immediate attack if you continue with breaches. I did a quick try and managed to start two fires before getting attacked.

Quote
  • Villagers should react to violence even if it doesn't involve the (current) village members. After hiring someone from the village you are able to kill them instantly in the village right in front of the villagers. This contradicts a bit with the villagers not letting you hire them before the first companion has returned.

Oh, this was new to me, but that's how it appears to be. Companions themselves also react to being attacked by the player character in all too placid way.
Definitely something to tune here.
- Sami | UnReal World creator

PALU

« Reply #2 on: March 09, 2023, 05:33:32 PM »
Just be careful not to make companions overly aggressive when hit. Accidents happen, especially with missile weapons, but there have also been accidents where you spam "attack again" and you missed that the target was dead and a dog (or companion) moved to that tile, and you don't want your robber hunting posse to devolve into a free for all when everyone is fighting against everyone else.

Ketsuppi

« Reply #3 on: March 09, 2023, 08:32:41 PM »
How did you manage in this, and was it with some previous version? They oughta warn you few times first, then ask you to leave, and proceed with almost an immediate attack if you continue with breaches. I did a quick try and managed to start two fires before getting attacked.
I covered a house completely with branches and slender tree trunks (put them over the wall tiles) and then sneakily started a big fire on an adjacent tile. Then after getting shouted at I just waited and watched the fire spread and eventually burn the whole house down. But yeah, it was a long time ago on an older version, and now that I tried it on the current version I couldn't get the fire to spread at all. Has there been changes to how that works?

Sami

  • UnReal World creator
  • Administrator
  • Member
  • *****
  • Posts: 1273
  • Total likes: 3180
  • UnReal World creator
    • View Profile
    • UnReal World
« Reply #4 on: March 10, 2023, 12:15:19 PM »
Just be careful not to make companions overly aggressive when hit. Accidents happen, especially with missile weapons, but there have also been accidents where you spam "attack again" and you missed that the target was dead and a dog (or companion) moved to that tile, and you don't want your robber hunting posse to devolve into a free for all when everyone is fighting against everyone else.

Yes, accidents can happen, and I believe the placid companion reaction to player character attacks is originally in place for that very reason. And it wouldn't need a chance, if there wasn't a raise of abusive playstyles when the exploits are pointed out.

To define overly aggressive here, is a good question, and an interesting AI dilemma.
If the companion gets one accidental blow of a sword or an arrow in their back during your adventures, they probably should take it as an accident. But what if that happens frequently...

Companion: "You shot me in the back!"
PC: "Oh, sorry, I'm just not very skilled archer. I was shooting at that squirrel, you see."
Companion: "This happens every time we are hunting squirrels. This is the sixth time now."
PC: "It was an accident. Sorry."
-- time passes ---
Companion: "You shot me again. This was 27th time."
PC: "It was an accident. There's a squirrel over there you see."

And maybe on the 28th time the player character succeeds with this masterplan of shooting the companion dead and robbing him during the hunt.

Well, we don't want to invest too much time to address this, as the murderous characters will keep on doing it the way or another, but one way to go about it would be to add counter of tolerable accidents. But still, if the first "accident" is tolerated, and the character actually plans to take the companion down with carefully planned attack, they still have a second attempt without consequences - and the exploit remains.
- Sami | UnReal World creator

Sami

  • UnReal World creator
  • Administrator
  • Member
  • *****
  • Posts: 1273
  • Total likes: 3180
  • UnReal World creator
    • View Profile
    • UnReal World
« Reply #5 on: March 10, 2023, 12:19:29 PM »
How did you manage in this, and was it with some previous version? They oughta warn you few times first, then ask you to leave, and proceed with almost an immediate attack if you continue with breaches. I did a quick try and managed to start two fires before getting attacked.
I covered a house completely with branches and slender tree trunks (put them over the wall tiles) and then sneakily started a big fire on an adjacent tile. Then after getting shouted at I just waited and watched the fire spread and eventually burn the whole house down. But yeah, it was a long time ago on an older version, and now that I tried it on the current version I couldn't get the fire to spread at all. Has there been changes to how that works?

Burning down houses still can be done, but you need to set multiple fires side-by-side and then it may spread.
Few decent fires beside the wall should get the house burning. But it's more like the villagers should react to this sort of firemaking eventually with stronger actions than just shouting - that is, if they witness you are the one who did it.
- Sami | UnReal World creator

PALU

« Reply #6 on: March 10, 2023, 04:58:48 PM »
I agree companions shouldn't just accept constant abuse, but the player planning of murdering the companion is, in my opinion, the exception and will get away with murdering the victim with proper planning anyway. Thus, I think it's more important to make sure honest mistakes don't escalate out of control than murderous intent being punished when these two cases are balanced against each other.

It can be noted that in the game mechanics, arrows do go astray, while blows never hit a an unintended target (they may miss, but not hit someone else instead), but "hit again" can take a lot of hits to finally kill a target, especially if you're trying to use blunt attacks to the head to preserve the skin, so it's easy for the player to mentally doze off a little. An optional warning message when an attack is made at a friendly target may allow for an immediate anger reaction from a melee attack, as those are never accidental from the game mechanic perspective.

In the "squirrel hunter" case I would probably use telepathy, i.e. have the companion know whether it was targeted or not to account for various clues the game can't really capture. It can still be abused by murderers, though, as you'd then aim at the ground on the other side of the companion (and it's certainly possible for a companion to move in front of the player when practicing archery if "pick up and then shoot" is used, rather than manually picking up the arrow first).

Ketsuppi

« Reply #7 on: March 10, 2023, 06:59:36 PM »
Burning down houses still can be done, but you need to set multiple fires side-by-side and then it may spread.
Few decent fires beside the wall should get the house burning. But it's more like the villagers should react to this sort of firemaking eventually with stronger actions than just shouting - that is, if they witness you are the one who did it.
Ah, I see. And yeah, it has always been a very lucky endeavor to get even that one fire burning because the villagers notice and do turn physical very quickly (understandably). So we have the same experience there for sure.