Feature Spotlight: Curing the "Yes-Men" (NPCs, Part 1)
AI characters tend to agree with everything you say. Speech fingerprints and refusal anchors give our NPCs their own voices, and a backbone.
The Timekeeper · 2026-09-18
After the 500-turn test, I want to shift gears and talk about the people who live in our timelines. We've done a huge amount of work on our NPC systems recently, so I'm splitting this into three posts to avoid a wall of text.
Today, in Part 1, I want to talk about how we're tackling one of the most annoying problems in AI games: the agreeable mirror.
If you've played AI RPGs, you know the drill. You walk into a tavern and meet a hardened, supposedly terrifying mercenary, and within two turns you've convinced him to give you his sword, buy you a drink and tell you his deepest secrets, just by typing "I persuade him to be my friend".
And yet a base AI model will try. By design, AI models want to be helpful, so characters tend to collapse into agreeable yes-men. They have no backbone and, worse, they keep falling into "player-parroting": repeating your own words back to you.
When we built Hourglass 3.0, we decided our characters couldn't be yes-men any more. They needed to push back. Here's how we did it.
Ironclad personalities and speech fingerprints
Instead of giving the AI a generic prompt like "play a 1952 detective", every major NPC now has an ironclad personality, including a speech fingerprint: a dialect and rhythm specific to their background. A 1966 London docker sounds completely different from an aristocratic politician, and the AI no longer blends everyone into the same polite voice.
The refusal anchor
This is the big one. To stop players talking their way past every obstacle, every major NPC now has a refusal anchor: a firm line they will never cross, even if threatened.
If a character's anchor is "will never betray their brother", no amount of clever typing will get them to sell him out. The AI firmly rejects your attempts, and you have to find another way around the problem.
The results
We ran these systems past our automated AI judge in our recent tests. Across the sessions we logged exactly 0 NPC inconsistencies and only a handful of instances of parroting, most of them very subtle. Characters held their ground, refused to help when it went against their nature, and made the world feel genuinely dangerous and real.
Next time, Part 2: dynamic scene casting (how we stopped characters chiming in from three rooms away) and why tracking trust, fear and intimacy separately beats a single "friendliness" meter.
What's the worst example you've seen of an AI character completely breaking character just to agree with you? Tell us on Discord.
In the manual: How People Behave
Thanks for reading. See you in the past…