The key to any good story, which is all a table top game really is is a shared story, is fun characters that we connect with.
NPCs must be fun, believable and make your players want to interact with them as a character, not just an extension of the plot. Let the NPC shine; give them quirks and a consistent personality. Larger than life NPCs draws the role player out of the gamer; if NPCs aren't a jumble of stats, players start to think of their characters the same way. They'll start thinking like a bitter truck driver instead of the guy playing one.
Just like in real life, PCs usually start out with maybe a brief physical description to judge from. They probably come up with a stock idea: surly dwarf
barkeeper, un-bribe-able city cop, so on and so forth. Your job is to
get them to stop referring to their inside guy on the force as "the cop" and start calling him "Officer
You do that by making Kessel a distinct character; primarily through his words and how he talks. An elf warrior maiden is going to have distinctively different diction than an African-American reporter fresh out of J-school. Both should vary from the ghost of a murdered little girl or the holographic projection of Sherlock Holmes. How do you do this? I use two major tools: Stock Responses and Character Hooks.
This falls under the general advice: Be prepared. Do not completely rely on stock responses to keep NPCs from appearing scripted. Knowing how a character will respond to situations that can be readily anticipated is too valuable an improv tool to turn down though. Think of it like preparing a witness for trial; you ask them the questions you think they'll be asked to prep a response.
What's good is that you control the information PCs have. You know they are likely to ask about the Necronomicon, because they lost it last session. PCs tend to ask about people with specific names, dead bodies, magical items, local politics, curses and living people who they distrust. All quite reasonable, really.
This doesn't mean an NPC has to have an answer, but knowing that Jacques is new to the neighborhood because he is unaware of the Dockyard Killer is something the players would like to know, and you should be able to provide them with that information, preferably by Jacques asking what the hell they're talking about.
While each set of players are unique, there are some extremely basic stock interactions players foist upon unsuspecting NPCs.
1. What is your name? What are you doing here?
2. Being hit on or flirted with.
3. An outlandish request. Have several of these.
4. Information that they do not know.
5. Information that they have but cannot share, and will admit to having.
6. Information that they have, but cannot share, and will not admit to having.
As you work on these, try and get a feel for the character. Try and find things to latch on to to make a character more memorable. You aren't looking to stick word to word to these, but just start to get a feel for the kinds of words that a character uses to make responses feel consistent. For example, if a married woman responds negatively to being hit on, work in references to her husband when she talks. A lech should hit on pretty women in the party; give the resident librarian big words to drop when talking. Those little bits of preparation help the NPC steal the show in a believable way.
Think of a dialog tree in an adventure game or a Bioware title; you know some things the players will ask. So prepare for those to help when the players inevitably ask something off the wall. Your prep will make it so an NPC can respond authentically, instead of with a vacant stare. Unless, that's authentic.
NPC Character Hooks
Now, you can't always prepare for everything. So, find your NPC a hook to hang them on and define them. Most major NPCs have excellent hooks, because they fit into your world and have a purpose. For minor (and surprise!) NPCs, you don't want to waste time over prepping. Hooks work great for one-shot sorts of characters; a merchant, an inn-keeper, the cop giving the party a speeding ticket, etc. I try and bring half a dozen hooks to a session. Make them as agnostic as possible so when players talk to someone you don't expect them to, you have a hook for the NPC to play off of.
In one adventure, the players were off track going into places that did not exist. But, what was worse, the PCs were suddenly talking to a lot of NPCs who had no reason to know about the adventure (or exist!) How boring would it be to constantly hear the GM repeat: "They don't know about that."
By simply having a few note cards, like, "Failed guitarist, now works as a door-to-door salesman," the players still felt like they weren't be railroaded. (Here's a secret: The players are always being railroaded. Your goal is to trick them otherwise.) Talking with Cindy ("Meets with her boyfriend every afternoon for coffee, thinking about breaking up with him") was a lot more interesting then another round of "No, she doesn't know about the murder either."
What character hooks do is they help you respond to players going off the rails; stock responses help you when the players are playing in the safety of the sandbox you've built for them. A handful of hooks can help you get the players back in the right direction. For example, one surprise NPC mentioned when asked that he read about a murder in the paper. The players looked at the paper, found the name of the journalist, and got back on track. They felt good; they found a clue!
NPCs with character hooks let you salvage something from going wrong without your players knowing. After all, if the NPC has a name, a brief bio, and seemingly unique responses, he or she was always meant to be talked to, right?
I had an NPC guard who simply had a name (Eric, I think), and the
note: "Wife forgot to make him lunch today." He had a life now! He wasn't just a bluff or diplomacy check. He was interesting because he had things unrelated to the main plot; he was not a roadblock. He was a person! They're PCs, so of course, they ruined everything, going with default plan number
one: Solve it with fire.
Those two tools have helped me get NPCs to have running dialog with PCs, salvage NPCs from the scrapheap and redirect players in the right direction without too much obvious hand holding. If you are good at improv, something I am not, you can probably get away with even less prep. But, even just a sentence or two of a hook is often enough to start building a character from a caricature.
Come back tomorrow for a few other notes on conversing with NPCs. This got too long as it was.