If you ask any TTRPG veteran to name the most memorable villains they have faced in campaigns they’ve played over the years, most will struggle to find more than a handful. Ask about memorable NPCs, and I can guarantee they’ll struggle to name even one.
With most campaigns running over several weeks or months, why do players not remember characters they are actively interacting with for hours-long sessions, yet can name characters from a 90-minute movie they saw once, or a video game they played over a couple of weeks, or a single comic book they read?
Find some unforgettable NPCs in Horror at Yishusu Landing:
Even though most of those forms of media are visual in nature, people more easily remember characters for how they made them feel, which many TTRPGs fail to trigger in players. Below are some common reasons this failure happens, and tips on how to fix each one.
No Clear Desire or Agenda
The NPC just “exists” to give info or fill space, with no strong wants. They become wallpaper.
Give each important NPC a sharp, simple motive: “I want X right now.” Let that motive shape how they talk and what they ask PCs to do.
If the NPC is poor, don’t allow them to just dump all the info they have for free. Have them negotiate the price of each bit, and as the PCs pay, have the NPC raise the cost of each subsequent piece. If the NPC is motivated by fame, have them force the PCs to write their name on the PCs’ armor (like race car drivers) in exchange for information. If the NPC is an artist, have them force the PCs to sit for a painting.
A great example from the comics: J. Jonah Jameson from Spider-Man is Peter Parker’s boss at the Daily Bugle. He hates Spider-Man and pays Peter for pictures of the hero so that Jameson can run negative stories on the front page. This single, sharp motivation leads Jameson to make deals with other photographers, writers, and even villains, all in service of one goal. That one goal makes him memorable.
Flat Personality (All Serious / All Snark / All Exposition)
NPCs default to “gruff quest-giver,” “mysterious villain,” or “sarcastic rogue,” with no texture.
Add one contrasting trait that cuts across the stereotype. Use it in their first scene so it sticks.
A tough mercenary who’s squeamish about blood. A high priest who’s terrible at remembering scripture. A calm mastermind who has such poor memory that they need a scribe to notate everything. A great example is Dexter, a TV series about a serial killer who is also a cop. The character works because of the contrast: the instinct to kill is constantly in friction with the professional obligation to uphold the law. That contradiction is what made audiences watch season after season.
No Emotional Hook to the PCs
NPCs exist only in the GM’s head canon. Players have no reason to care.
Tie NPCs to the PCs’ choices or backstories. Make sure at least one NPC per arc can say: “Because of you, my life is different.”
Have the NPC benefit from something the PCs did in a prior adventure, or be harmed by a PC’s earlier decision. Give them a hometown, faith, or rival in common with one of the PCs. Have them remember the party by name. Give them a small handmade trinket to pass along. Or have the NPC beg the PCs to kill a troll in their name, a promise that keeps that character alive in the party’s minds long after the conversation ends.
Pay attention to how players respond to NPCs. If they joke about a character, talk about them between sessions, or mention them unprompted, that NPC has real traction. Bring them back. Maybe they happen to be in the next town picking up supplies. Maybe they get hurt by the villain later in the campaign. Pull on those connections to bring players deeper into the setting.
The original Avengers films worked because the characters were introduced individually before joining forces. What made it hit hardest was Phil Coulson, an agent who appeared across multiple films and who every hero knew personally. His death in The Avengers gave the audience something to feel alongside the heroes. Compare that to the Justice League film, where the heroes assemble without a shared emotional anchor. The difference is the human connective tissue between characters.
All Talk, No Impact
NPCs say a lot but nothing actually changes when they’re around.
For every recurring NPC, decide one concrete thing they can change: the price or availability of something, how guards treat the party, which rumor becomes “true,” or their connections to other important characters.
Show consequences. After they help or hinder the PCs, something in the world is visibly different next time the players encounter it. Give the NPC an arc across sessions: they get elected to office, open a store, learn a trade. So the next time the PCs meet them, there’s something personal to talk about that didn’t exist before.
One-Scene Antagonists
Villains appear, monologue, fight, die. No buildup, no aftermath, no relationship.
Introduce antagonists before they’re enemies. Give the villain an arc. They start as a rival, patron, or ally with misaligned values.
The villain’s plan gets foiled, or the PCs accidentally ruin something the villain cares about. The PCs find something the villain wants, and the villain makes several attempts to buy or trade for it before escalating to hiring thieves to retrieve it. Make them appear throughout the campaign via rumors, letters, victims, or their sigil. Let them escape with purpose at least once. Think of Doctor Evil in the Austin Powers franchise: he never wins, but you always believe he’ll be back.
In the Star Wars prequel films, Senator Palpatine grows from just another lawmaker to gaining positions of power very quickly. Every time he makes an appearance, he has a new and more important title, and his influence stretches farther out. The audience watches the creep of his control as the heroes fail to notice it. That slow burn is what makes his eventual reveal so satisfying.
Indistinguishable Voices
Everyone talks the same: same vocabulary, tone, and cadence.
Pick one speech quirk per important NPC and use it consistently from their first appearance.
The NPC could have a stutter or an accent. They always use proverbs. They never use contractions. They avoid names entirely. They over-apologize. They swear by one specific deity. They put the emphasis on the wrong syllable in almost every word. You could also color their dialogue with a signature topic: weather, food, money, philosophy, gossip. Everything they say is tied to a metaphor about fishing or hunting. They have a limited vocabulary. They hate a specific food, color, or animal and bring it up unprompted.
What makes characters in commercials so memorable, even after a single 20-second ad? Catchphrases and obsessive traits. Tony the Tiger repeats “They’re Grrrreat!” Lucky from Lucky Charms always complains about kids going after his Lucky Charms. The Verizon spokesperson with “Can you hear me now?” Give your NPC something they obsess over, or a phrase that defines them, and players will quote it back to you weeks later.
Overpowered or Underpowered Antagonists
Either the villain is so strong that players feel they can’t affect them and stop caring, or so weak they’re a speed bump and are never taken seriously.
Let the PCs hurt the villain’s plans even if they can’t kill them yet. Ruin a ritual, steal an ally, expose a secret. Scale encounters so antagonists sometimes deliberately cut their losses rather than being steamrolled.
Let the villain know the players are meddling, through an assassin sent as a warning, a fire set at the childhood home of one of the PCs, or an exposed secret used as retaliation. Make the villain win a beat occasionally, but make it costly for the PCs rather than devastating. The NPC they were protecting suddenly dies from a poison they couldn’t stop. An item the PCs were hunting is found by the villain first. The PCs are framed for a crime and become outlaws.
No Stakes Linked to the NPC
Interacting with or ignoring an NPC feels the same.
Attach clear stakes to each prominent NPC. Show those stakes in small previews first, minor outcomes, then escalate.
If the PCs help the NPC, the town gets defenses, a rare item, or a new ally. If the PCs ignore them, a district falls, a rival grows stronger, or a law turns hostile. If the character dies, riots break out, people leave town, or criminals take over. These consequences don’t have to be immediate. Plant the seed, let it grow, and make sure the players can trace the outcome back to their choice.
Mystery With No Answers (or All Answers at Once)
Antagonists and key NPCs are wrapped in vague mystery that never pays off, or their entire backstory is info-dumped at once.
Decide three layers of information before play. Let each layer unlock with player choices, not just the passage of time.
Layer one: what anyone can know (rumors, first impression). Layer two: what careful investigation reveals (habits, methods, contradictions). Layer three: the real core (their fear, their goal, their secret). Make each layer a meaningful reward for something the PCs actually did. And consider dropping the big reveal at the end of a session like a cliffhanger, letting the anticipation carry players through the week.
Breaking Bad used this masterfully. Late in the series, the secondary lead Walt is having a barbecue with family when his brother-in-law Hank goes to the restroom and discovers something that reveals to him (a cop) that his beloved brother-in-law is the drug lord he’s been hunting for years. The episode ends on Hank’s face as the realization hits, then cuts to credits. The writers didn’t linger. They trusted the audience to sit with it.
No Thematic Role
NPCs don’t tie into the themes or conflicts of the campaign. They feel random, disconnected, and forgettable.
Identify your campaign’s central themes (corruption vs. idealism, debt, memory, family, control) and give each major NPC a clear stance on at least one of them. Let their choices embody those ideas.
Sample NPC stances: “Everyone is corrupt; best be rich about it.” “Family is a chain.” / “Family is everything.” “The past always comes back.” When NPCs hold these positions and act on them consistently, they echo the campaign’s big questions and make the world feel coherent.
In Game of Thrones, a recurring theme was loyalty and trust. Ser Jorah Mormont swore allegiance to Daenerys Targaryen and based every decision on how it would affect her, to a self-detrimental degree. Other characters consistently betrayed allies. Some, like Jaime Lannister, had full arcs in which their loyalties evolved toward something greater than personal interest. Every major character embodied a position on loyalty, and that consistency made the theme land.
Some of these may feel like they require a lot of extra prep for characters the PCs may never meet again, but it actually just takes a minute or two to mirror various characters from other sources to give life to your NPCs. Alternatively, a random table can quickly give a character unique traits and motivations without any prep at all. We have several of these random tables planned for future newsletters and publications, so stick around.
Put in the extra time. Make the world you’re weaving for your players come alive, so that even small scenes feel connected, and NPCs stick because they mean something.