I created four categories of responses: 1) Moody vs. Cold, 2) Gentle vs. Harsh, 3) Extrovert vs. Introvert, 4) Funny vs. Serious. For each character, one trait is selected from each category. So, they are all "assigned" personality traits that look sort of like a Myers Briggs assessment. For example, Marlene is CHEF (Cold, Harsh, Extrovert, Funny). During dialogue with NPCs, the player will be given the chance to respond accordingly by where they are placed in each category.
Ignore the funny slashes and text codes. :B What I'm referring to is the "Gentle or Harsh", followed by the table. At that time, the player will say one or the other, depending on if they are placed in that group. The "Gentle" characters (basically, the "nice ones") will say the first option (Lucas, Elliot, Diora, Nadia). The "Harsh" statement (#2) is said by the other characters. My choice of category names was kind of stupid, but I didn't want to have repeating first letters. More like "sensitive" and "blunt", but whatever. .___.
I should also mention that every character has a different overall type, so no one will say 100% the same things. This might seem really time-consuming, but it really doesn't add on much more (just a little extra copy/pasting). Well worth it to me. :}
*Also note that this only applies to the player's responses. Each NPC is going to have their own dialogue and their personalities are less controlled lol