I’m mostly going to be taking this from the perspective of how to write good NPCs, in my opinion. Talking about what I think makes a good NPC is a question that would take me much longer to think about. So, carrying on!
One of the things I like to do, that is more applicable to IF than anything, is that when I design a character’s personality, I hold them to the same personality traits that are available to the MC. So basically, I go over the personality stats in the game, and assign them traits as if they were MC’s themselves, following the same rules and statistics as the MC. This helps to establish a consistent tone, I think, and if you have enough nuances in your personality stats to give the character several traits already, then there you go.
After that, what I like to do is determine what personality stats this character would like to see in the player. People don’t always want 100% carbon-copies of themselves for friends and all that. Sometimes they prefer people with different traits, for some reason or another. This is the process for character design I used in one of my WIPs, Tales of Aurora, and I was very transparent about it.
Pulling an examples from that WIP- The Stardrake, following the personality stats of the game, is a chaotic, compassionate leader that is an optimist and is highly emotional. Already, that’s five traits for him that came just from the personality stats in the game (your results may vary). However, he doesn’t like it when the MC is a leader. He actually prefers the MC as a follower, because he’s just the slightest bit arrogant and he doesn’t like it when people step on his toes. A sixth trait.
Now, obviously there’s more work that goes in after this. Establishing their tone and attitude- how they usually talk and respond to things, whether it’s with humor, or aggression, or nervousness, etc. A backstory is always a good thing to add, of course, because it gives the character a place in the setting and can explain why they do/think what they do. But I assume this is stuff most people know, so I won’t go deep into detail with it.
And since this post is already several paragraphs long, I’m gonna retire it. Just giving some thoughts about my progress, I guess. See if it’s useful for anyone else. If you’re looking for 5 more paragraphs from me, I could talk about my thought on non-IF NPCs or characters,