So, I like stories where everyone is competent, and as a GM I try to run my villains as playing to win. My goal is for the players to have a good time, but the enemies will use every resource at their disposal to achieve their aims: they will retreat if continuing to give battle is a bad idea, they will go scorched earth if it’s in their interest, they will defeat the players in detail or simply attack with unfair, overwhelming numbers.
Sometimes this results in a beautiful, game-defining moment where the players work out what their powerful and intelligent adversary is doing, and then proceed to outwit them. More often, though, the players win the way players do: shenanigans and brute force until the day is won. This can also be fun, and obviously not every story arc needs to end with an I-know-you-know-I-know battle of wits.
The problem here is that when this happens my players usually don’t ever figure out what the plan was – and what from my side of the screen was a clever ruse or subtle stratagem, to the players looks more like an ass-pull. My players don’t know that they set off a silent alarm and the security forces stalked them around the building before ambushing them from three directions, they just got a random encounter where they were surrounded by guards. They don’t know that the shopkeeper they revealed their true identities to reported them to the BBEG for a bounty, they just know that the army knew they were coming even though they were trying to be stealthy.
So, GMs with similar philosophies: How do you make it feel satisfying / fair when the players are fighting an intelligent and coordinated adversary who knows more than they do?
Some thoughts, in a chaotic order
In general I try to GM in a philosophy like *NPC are person whose action reflects their “supposed skill level”, who don’t want to die and act rationally". It makes the whole story more realistic, limits the combat (Because NPC don’t want to die). However, the how optimal they act is one of the tools I used to balance the game. Stuff like a sub-optimal combat tactic (not finish the already injured PC) or the good old waiting for the orders
A big issue are the “secret NPC reaction”. An option I use a lot (in game with failure margin) is to stack-up the failure margin of the stealth roll, like PC know that they’re doing noise,but don’t necessarily know how much noise would wake-up the guard, trigger a silent alarm or have the special forces storming the complex (I know Blade in the dark has the clock concept which are similar). A more radical variant would be the PTBA-like consequences like you “do the action but someone acts in the background against you” which help the PC feel the “risk level getting higher” without the binary everything is fine --> A sniper just killed your character sorry. I’ve seen some game having reputation mechanic which is a way to put a number on how much a faction hate/like you. Which again can be used to increase the paranoia level.
Finally, if the PC understood the story differently than what I was planning, and that it make sense with what happened. I would change the plot to adapt to the PC understanding. Think about improv theatre were you’re expected to say yes. If I wasn’t clear with setting my scenario and the player go in another direction let’s accept it rather than force the party back on the rails. there is obvious limits, like NPC aren’t “that stupid”