Here's a try at Karen's persona. It feels a bit too vanilla, but let me know what you think. I'd be happy to make further edits if you like the general premise. (I assumed all of the messages would be directed at Laporte, so if that's a bad assumption, I'll need to redo a bunch of them.)
AdmiralRalwood, I tried out your Python script, but it ran into a syntax error... I'll take another look at it later.
EDIT: voice-acting lines have been added below. I also made a couple small changes to the text.
$Persona: UEFNgMei
$Type: wingman
$Name: All Clear
$Message: XSTR("Radar's clear for now. Stay sharp, everyone.", -1)
+Persona: UEFNgMei
+Avi Name: Head-TP6
+Wave Name: uefngmeiallclear.ogg
$Name: Arrive Enemy
$Message: XSTR("New contacts jumping in, and they're not friendly.", -1)
+Persona: UEFNgMei
+Avi Name: Head-TP6
+Wave Name: uefngmeicontact.ogg
$Name: Arrive Enemy
$Message: XSTR("Eyes up! Shivan contacts in the area!", -1)
+Persona: UEFNgMei
+Avi Name: Head-TP6
+Wave Name: uefngmeicontactshivans.ogg
$Mood: Shivans
$Name: Attack Target
$Message: XSTR("It'd be my pleasure.", -1)
+Persona: UEFNgMei
+Avi Name: Head-TP6
+Wave Name: uefngmeiattack1.ogg
$Name: Attack Target
$Message: XSTR("Copy that. Target's in my sights.", -1)
+Persona: UEFNgMei
+Avi Name: Head-TP6
+Wave Name: uefngmeiattack2.ogg
$Name: Attack Target
$Message: XSTR("Moving to engage!", -1)
+Persona: UEFNgMei
+Avi Name: Head-TP6
+Wave Name: uefngmeiattackdesperate.ogg
$Mood: Desperate
$Name: Backup
$Message: XSTR("Hey Laporte. You called for help?", -1)
+Persona: UEFNgMei
+Avi Name: Head-TP6
+Wave Name: uefngmeireinforcements.ogg
$Name: Beta Arrived
$Message: XSTR("Beta is on station. What's the call, Laporte?", -1)
+Persona: UEFNgMei
+Avi Name: Head-TP6
+Wave Name: uefngmeibeta.ogg
$Name: Check 6
$Message: XSTR("Watch it, Laporte, bandit right behind you!", -1)
+Persona: UEFNgMei
+Avi Name: Head-TP6
+Wave Name: uefngmeibandit.ogg
$Name: Death
$Message: XSTR("No... not like this, not--", -1)
+Persona: UEFNgMei
+Avi Name: Head-TP6
+Wave Name: uefngmeideath.ogg
$Name: Delta Arrived
$Message: XSTR("Delta wing is in. Awaiting orders.", -1)
+Persona: UEFNgMei
+Avi Name: Head-TP6
+Wave Name: uefngmeidelta.ogg
$Name: Depart
$Message: XSTR("Copy that. Let's head on home.", -1)
+Persona: UEFNgMei
+Avi Name: Head-TP6
+Wave Name: uefngmeideparting.ogg
$Name: Disable Target
$Message: XSTR("She won't be going anywhere.", -1)
+Persona: UEFNgMei
+Avi Name: Head-TP6
+Wave Name: uefngmeidisable.ogg
$Name: Disarm Target
$Message: XSTR("Got it. Targeting weapon systems.", -1)
+Persona: UEFNgMei
+Avi Name: Head-TP6
+Wave Name: uefngmeidisarm.ogg
$Name: Engage
$Message: XSTR("Copy that. Weapons free on all hostile targets.", -1)
+Persona: UEFNgMei
+Avi Name: Head-TP6
+Wave Name: uefngmeiengage.ogg
$Name: Engage
$Message: XSTR("Acquiring target. I'm not done yet.", -1)
+Persona: UEFNgMei
+Avi Name: Head-TP6
+Wave Name: uefngmeiengagedesperate.ogg
$Mood: Desperate
$Name: Epsilon Arrived
$Message: XSTR("Ng'Mei here. Epsilon has arrived.", -1)
+Persona: UEFNgMei
+Avi Name: Head-TP6
+Wave Name: uefngmeiepsilon.ogg
$Name: Gamma Arrived
$Message: XSTR("Ng'Mei here. Gamma is standing by.", -1)
+Persona: UEFNgMei
+Avi Name: Head-TP6
+Wave Name: uefngmeigamma.ogg
$Name: Help
$Message: XSTR("Got one on my six. Can someone pick him off?", -1)
+Persona: UEFNgMei
+Avi Name: Head-TP6
+Wave Name: uefngmeineedhelp.ogg
$Name: Help
$Message: XSTR("Taking hits--can I get some cover over here?", -1)
+Persona: UEFNgMei
+Avi Name: Head-TP6
+Wave Name: uefngmeineedhelpdesperate.ogg
$Mood: Desperate
$Name: Ignore Target
$Message: XSTR("Copy, leaving them alone for now.", -1)
+Persona: UEFNgMei
+Avi Name: Head-TP6
+Wave Name: uefngmeiignore.ogg
$Name: No
$Message: XSTR("Say again, Laporte? Not sure if I heard that right...", -1)
+Persona: UEFNgMei
+Avi Name: Head-TP6
+Wave Name: uefngmeinegative.ogg
$Name: No Target
$Message: XSTR("Copy, but I don't have a target.", -1)
+Persona: UEFNgMei
+Avi Name: Head-TP6
+Wave Name: uefngmeinotarget.ogg
$Name: Oops 1
$Message: XSTR("Whoa, watch your fire, Laporte!", -1)
+Persona: UEFNgMei
+Avi Name: Head-TP6
+Wave Name: uefngmeifriendlyfire.ogg
$Name: Player Dead
$Message: XSTR("Laporte's ship is down! Laporte, do you copy? ...Dammit, answer me, Noemi!", -1)
+Persona: UEFNgMei
+Avi Name: Head-TP6
+Wave Name: uefngmeiplayerdies.ogg
$Name: Praise
$Message: XSTR("Nicely done. Still can't believe an Earther is that skilled.", -1)
+Persona: UEFNgMei
+Avi Name: Head-TP6
+Wave Name: uefngmeipraise.ogg
$Name: Praise
$Message: XSTR("Hell of a kill, Laporte.", -1)
+Persona: UEFNgMei
+Avi Name: Head-TP6
+Wave Name: uefngmeipraisedesperate.ogg
$Mood: Desperate
$Name: Praise
$Message: XSTR("Look at you, kicking Shivan butt out there.", -1)
+Persona: UEFNgMei
+Avi Name: Head-TP6
+Wave Name: uefngmeipraiseshivans.ogg
$Mood: Shivans
$Name: Rearm
$Message: XSTR("Weapon stores are empty. I need a rearm.", -1)
+Persona: UEFNgMei
+Avi Name: Head-TP6
+Wave Name: uefngmeirearm.ogg
$Name: Repair
$Message: XSTR("I'm hit pretty bad. Calling in support.", -1)
+Persona: UEFNgMei
+Avi Name: Head-TP6
+Wave Name: uefngmeirepair.ogg
$Name: Self Praise
$Message: XSTR("I've still got it.", -1)
+Persona: UEFNgMei
+Avi Name: Head-TP6
+Wave Name: uefngmeiselfpraise.ogg
$Name: Traitor
$Message: XSTR("What the hell? All pilots, Laporte has gone rogue! Disable if possible, but... but kill if necessary.", -1)
+Persona: UEFNgMei
+Avi Name: Head-TP6
+Wave Name: uefngmeitraitor.ogg
$Name: yes
$Message: XSTR("You got it, Laporte.", -1)
+Persona: UEFNgMei
+Avi Name: Head-TP6
+Wave Name: uefngmeiaffirmative.ogg
$Name: yes
$Message: XSTR("Let's do this!", -1)
+Persona: UEFNgMei
+Avi Name: Head-TP6
+Wave Name: uefngmeiaffirmativedesp.ogg
$Mood: Desperate
"Radar's clear for now. Stay sharp, everyone."
filename: uefngmeiallclear.ogg
"New contacts jumping in, and they're not friendly."
filename: uefngmeicontact.ogg
"Eyes up! Shivan contacts in the area!"
filename: uefngmeicontactshivans.ogg
"It'd be my pleasure."
filename: uefngmeiattack1.ogg
"Copy that. Target's in my sights."
filename: uefngmeiattack2.ogg
"Moving to engage!"
filename: uefngmeiattackdesperate.ogg
"Hey Laporte. You called for help?"
filename: uefngmeireinforcements.ogg
"Beta is on station. What's the call, Laporte?"
filename: uefngmeibeta.ogg
"Watch it, Laporte, bandit right behind you!"
filename: uefngmeibandit.ogg
"No... not like this, not--"
filename: uefngmeideath.ogg
"Delta wing is in. Awaiting orders."
filename: uefngmeidelta.ogg
"Copy that. Let's head on home."
filename: uefngmeideparting.ogg
"She won't be going anywhere."
filename: uefngmeidisable.ogg
"Got it. Targeting weapon systems."
filename: uefngmeidisarm.ogg
"Copy that. Weapons free on all hostile targets."
filename: uefngmeiengage.ogg
"Acquiring target. I'm not done yet."
filename: uefngmeiengagedesperate.ogg
"Ng'Mei here. Epsilon has arrived."
filename: uefngmeiepsilon.ogg
"Ng'Mei here. Gamma is standing by."
filename: uefngmeigamma.ogg
"Got one on my six. Can someone pick him off?"
filename: uefngmeineedhelp.ogg
"Taking hits--can I get some cover over here?"
filename: uefngmeineedhelpdesperate.ogg
"Copy, leaving them alone for now."
filename: uefngmeiignore.ogg
"Say again, Laporte? Not sure if I heard that right..."
filename: uefngmeinegative.ogg
"Copy, but I don't have a target."
filename: uefngmeinotarget.ogg
"Whoa, watch your fire, Laporte!"
filename: uefngmeifriendlyfire.ogg
"Laporte's ship is down! Laporte, do you copy? ...Dammit, answer me, Noemi!"
filename: uefngmeiplayerdies.ogg
"Nicely done. Still can't believe an Earther is that skilled."
filename: uefngmeipraise.ogg
"Hell of a kill, Laporte."
filename: uefngmeipraisedesperate.ogg
"Look at you, kicking Shivan butt out there."
filename: uefngmeipraiseshivans.ogg
"Weapon stores are empty. I need a rearm."
filename: uefngmeirearm.ogg
"I'm hit pretty bad. Calling in support."
filename: uefngmeirepair.ogg
"I've still got it."
filename: uefngmeiselfpraise.ogg
"What the hell? All pilots, Laporte has gone rogue! Disable if possible, but... but kill if necessary."
filename: uefngmeitraitor.ogg
"You got it, Laporte."
filename: uefngmeiaffirmative.ogg
"Let's do this!"
filename: uefngmeiaffirmativedesp.ogg