Advertisement

Trickery

Started by November 07, 2008 05:25 PM
18 comments, last by JasRonq 15 years, 11 months ago
In general, what are some ideas for AI/NPCs to deal with player deception? Or what do you think to be the best design to handle this? Let's say a game gives the player a specific deceptive ability, such as a fake sword swing in a combat game. How can the game have the player's enemies react and learn, concerning this move, to create as much strategy and fun with it as possible? Here are a few concerns that I think are important: - The deception can't always work. - It needs to work some or most of the time. - Extremely random chances of it working would be pretty lame. It needs to be somewhat reliable. Here are some possible ideas: - The longer it isn't used, the more likely it is to succeed when it is used? - Using the real version of the deception should increase the probability of falling for the fake? - Using the real version to sell the fake should reduce the real version's ability to sell the fake? Something that fades away over time? Anyone have ideas or other input to improve this type of gameplay?
In general as a tactic, it needs to be very reliable, and it need to have decided advantages over a normal attack.

IE, in pokemon there are a number of moves that alter stats. In most fights this is pointless because it doesn't significantly increase your survival rate nor decrease the time to kill the enemy. In Oblivion, there are spells to destroy armour, weapons, damage fatigue and magicka, but most of that is useless because a damage spell or normal attack will end the fight sooner.

So in regards to your fake sword swing move, you need to ask, "How can this be better than a normal attack?" And it needs to be better pretty often or a player will just ignore it in favor of the faster route to the end of the fight.

...And in truth, it may be that the move needs to be better than two attacks. I say this because if the player can create an opening with a fake swing, then make a real swing hit for double, why bother when he can just swing twice in the same time?
Advertisement
Yeah, that's a good point to bring up. A fake out needs to at least be worth going through the trouble.

However, the sword swing was just a random example. These concepts could also apply to lies, bluffs, and treachery in NPC dialog situations.

For example, if the player often dresses to kill, toting around a lot of weapons and armor, and beating up a lot of bad guys, it should give him a lot of room to bluff his way out of a fight with big words when he wants to avoid them. He could even do this to avoid a fight when he has no armor or weapons on him, as the enemy can't be sure of it. Since he can usually back it up, the enemy doesn't push it. However, if he keeps doing this without occasionally fighting, the bluff should probably wear thin and eventually fail. Here, one action (fighting) builds up the deception probability, while using it (bluffing) pulls it back down.

It could also apply to countless other situations, like fake passes in American Football, or throwing fake grenades to make enemies flee from cover. You occasionally need to actually pass and throw real grenades to make it work.

And what if you've never fought a group of people before? How can a bad guy with a five minute life span learn quickly enough to make the deception fun? Might have to let the bad guys know player strategies through some type of magic or technology.
First, I think it should have the possibility of achieving something you can't otherwise achieve using straightforward tactics. The special feint, for instance, exposing you to more risk but is the only way to disarm an opponent without killing him (or do triple damage or whatever).

The AI on the receiving end of deception actually has a tough set of factors to consider, and for this approach you can be simple and straightforward or very complex. You could have some stochastic representation based on known categories of opponents: A guards are Stupid, they'll fall for fake grenades 70% of the time, B guards are Shrewd, they'll see the grenade and only fall for it 30% of the time, etc.

Alternately, you can go with a weighted system that's quite sophisticated.
Let's say you've walked into the secret mob meeting with a belt of grey blocks strung up with wires. If you wanted to systematize this, you could layer it in several ways, with each layer having a range of outcomes, like:

1) Craftsmanship Test: Does your fake bomb look really real?
2) Stake Test: Who's it going to affect? A lackey? The whole room?
3) Demand Test: What is the player asking for? His daughter? All of our money? What's it worth to us?
4) Loss Test: What's the player got to lose? If death is endgame, maybe we know he won't do it, but if there's resurrection then maybe so
etc.

Funny enough, if the cost of being fooled is far less than the cost of failing to recognize the real McCoy, I think the AI should err on the side of caution in a sophisticated system. In your fake grenade example, for instance, the cost of being caught by a real grenade is so high that fakes might always be treated as real.

I'd vote for the former system if deception is a secondary form of gameplay, but the second if it's deeply embedded into the primary gameplay.

If you're looking to limit deception for the purposes of preventing the player from cheapening their own experience (basically macro'ing the same move each time), I'd look more to automatic game balancing devices for this one. Scanners and body searches for smuggling, special infrared helmets that are immune to holographic fakes and trick grenades, etc.

Always consider the fact that the player should be losing some opportunity when employing deception (i.e., could have killed enemies with a grenade but used a fake instead). So if you keep feinting, it should open you up for an attack that you normally wouldn't fall prey to, provided that the rule is there from the start ("feinting lowers your defense" or whatever).

One final note: I'm not sure it's wise to try and generalize the case for deception. I've gotten into a lot of trouble / headaches that way with other gameplay, like corruption and bribery. It may be better to propose highly specific deception tactics and then explore the ramifications in detail. Otherwise, you could fall into the sort of analysis paralysis that sometimes plagues my mechanics, in that the cases are so broad, with so many contingent factors, that you can't really come up with a decent set of heuristics to address the gameplay you're looking for. (Then again, that may just be my experience, YMMV).
--------------------Just waiting for the mothership...
Again, what ever deception it is, it needs to provide the player with a new path or a faster way down teh current path. If it doesn't the player will skip it for the usual interactions. In fighting, it has to allow the player to escape if thats what he is after and he can't or allow the player a faster or more profitable kill. If its a conversation, deception needs to provide things that cant be gotten easier. This is a balance though because if deception is too effective then the case is flipped.

Learning should be something that is starts from a cautious risk management view point is is modified by per situation use. If a guard is presented, it will flee from a convincing rock-grenade. No boom though and it may not run when a real one drops. It would be odd though for the guard to know what your rock throwing habits are ahead of time unless he witnessed a previous fight.

Over all I think deception should wear thin quickly but the real McCoy should reset is quickly too. That should also be on a per situation basis with little to no memory by the AI across different situations. If I fake out all the guards in one town with a certain tactic, the next town should be equally vulnerable, they shouldn't be able to learn from situations those instances of the AI wern't present to witness. That should hold true for all deception. It also allows the palyer to learn what will work and what won't and how much a tactic can be used before the AI catches on. It gives the player a toolbox of sorts.
Quote: Original post by JasRonq
If I fake out all the guards in one town with a certain tactic, the next town should be equally vulnerable, they shouldn't be able to learn from situations those instances of the AI wern't present to witness. That should hold true for all deception. It also allows the palyer to learn what will work and what won't and how much a tactic can be used before the AI catches on. It gives the player a toolbox of sorts.

I don't agree with this. In most games, the player's enemies won't know the player long enough to learn anything. If this is the case, and you don't give them a chance to know the player's previous tactics, the deceptions will work 100% of the time, or have a completely random probability.

Not all games are set in "towns". Mine is set in a high tech city. If I need to, I can set up AI surveillance in a number of ways..

- Visible cameras. The player could make deception easier by taking them out.
- Microscopic hidden cameras.
- Brain/memory scan (similar to The 6th Day) that can play back events after death.
- Medical technology (nearly everyone can be brought back to life, even when the player "kills" them).
Advertisement
Quote: Original post by Wavinator
You could have some stochastic representation based on known categories of opponents: A guards are Stupid, they'll fall for fake grenades 70% of the time, B guards are Shrewd, they'll see the grenade and only fall for it 30% of the time, etc.

This is what I meant by random probabilities not being very cool. I don't think any enemy should fall for tricks a certain percentage of the time. A small bit of randomness could be used to show variation in shrewdness and awareness between different individuals, but I think it's important to set up concrete reactions to make it fun. A shrewd guard should fall for a fake grenade 100% of the time if he's never seen one before, and a stupid guard shouldn't fall for it at all if the player is notorious for using that tactic.

I think the dissipation of these player reputations should be slow, too. If you abuse a trick, people will talk, and it will become rather useless for a time. If you only use a trick occasionally, it should progress toward useless more slowly. If you only use it in high priority situations, it should remain useful indefinitely. However, the variables will need to be tweaked for different circumstances. The more deadly a trick is, the faster it should become known.

Quote: Funny enough, if the cost of being fooled is far less than the cost of failing to recognize the real McCoy, I think the AI should err on the side of caution in a sophisticated system. In your fake grenade example, for instance, the cost of being caught by a real grenade is so high that fakes might always be treated as real.

That's a really good point. And it should be rather easy to implement something to handle this in most hard-coded situations. If falling for a fake is less troublesome than getting nailed by the real thing, it should increase the odds to fall for the fake by the difference.

Partially falling for a trick could also present other actions. In the fake grenade example, the enemy, not knowing if the grenade is fake or not, can choose to quickly grab it and toss it away. Something he wouldn't do if he was convinced it was real.

Quote: If you're looking to limit deception for the purposes of preventing the player from cheapening their own experience (basically macro'ing the same move each time), I'd look more to automatic game balancing devices for this one. Scanners and body searches for smuggling, special infrared helmets that are immune to holographic fakes and trick grenades, etc.

So give the player a clear indication that the enemy won't fall for certain tricks? I think that would work well combined with something else, but on its own, it wouldn't feel much like trickery any more. It would fall into the same category as using an axe to kill an enemy with a shield.

Quote: One final note: I'm not sure it's wise to try and generalize the case for deception. I've gotten into a lot of trouble / headaches that way with other gameplay, like corruption and bribery. It may be better to propose highly specific deception tactics and then explore the ramifications in detail. Otherwise, you could fall into the sort of analysis paralysis that sometimes plagues my mechanics, in that the cases are so broad, with so many contingent factors, that you can't really come up with a decent set of heuristics to address the gameplay you're looking for. (Then again, that may just be my experience, YMMV).

No, if you mean that each type of deception needs its own rules, you're absolutely right. The way people fall for lies is not the same as the way they fall for fake punches. They can't use the same design. They would both need individually tweaked.
To be honest, basing deception on a skill like in Morrowind and Oblivion made it fairly easy to get the desired reaction from NPCs just by clicking a button and I thought it was a bit... Silly.

I'd like to see deception take a more... Hands on approach.
Get you to analyse the way characters move and act when you speak to them to gauge how they will react when you try to decieve them.
Give NPCs the ability to trick the player as well.
It's no easy feat, but more experienced players might look for a specific sign and an NPC can use that to lead them on or something to that effect.
Make it more complicated than clicking bribe.

People might get tired of interacting with NPCs in the same manner over and over so don't make it something that the game is based on.

The last thing we need is My Sims 2.

Feint attacks and such are an entirely different avenue.
Also, fake grenades coupled with real grenades could seriously imbalance the game, depending on how you use it.

I have to say that dirty fighting, as much as it is an awesome idea, is hard to implement.
The most I've seen of this is from Dark Messiah and that was a poor effort.
Kick, stab, repeat.

Personally, in the instance that dirty fighting is a feasible option, most people would choose not to use it over the cooler Prince of Persia style moves anyways. Cinematic goodness > Reality every time.
I think dirty fighting moves can be cool and fun too. Watching yourself kick a guard in the crotch and stab him in the face would be pretty enjoyable.
I realize that some of these things are just examples, but in a combat situation, why would you use a fake grenade or a fake bomb, as opposed to a real one? It isn't that much harder to make a real bomb or obtain a real grenade, than it is to obtain a convincing replica. To me, this is basically like charging someone that has a real sword when you have a fake sword, in the hopes that he won't call your bluff, and just run away. Uhhh....

This being said, there is no real advantage to using fake weapons in a combat situation, the real advantages are gained from fake actions -- make the opponent uncertain of your whereabouts or intentions. For example, your opponent knows nothing about you or your intentions. You have no desire to hurt innocent people, but you want your opponent to think that you don't care, so they won't try to use innocents as shields. So you go into a village, relocate all the people, burn the village down, and strew some fake skeletons around.
Check out the first gameplay video from my javascript/PHP RTS game

This topic is closed to new replies.

Advertisement