EDIT: Got confused with the messaging systems (Nighten created another which I used), so this may be completely irrelevant depending on how different the code is.
Not sure if you're still doing this since it was so long ago, but if you still need help - you have to change all of the names for the text messaging characters to be something other than their normal names, if that makes sense. I don't just mean "add _nvl" - a completely different name. In my game, someone is called Christopher, & whenever he talks is referred to as "h" - however, when using the texting mechanism, I changed it to be "christopher_nvl". It worked perfectly.
I believe the system just gets confused if it has the same name as someone who already exists outside of the phone, if that makes sense!
Also, if your MC's name is inputted by the player at the start of the experience, I don't think you can display that above their text boxes. Just define them as MC_Name (or not - I don't even think I defined it in the script), & their texts will appear on their own (aka, without a name).
If you can't figure that out, there is one block of code here you can change to solve all of your problems:
if d.current:
if d.who == MC_Name:
at message_appear(1)
else:
at message_appear(-1)
Just add two lines:
if d.current:
if d.who == MC_Name:
at message_appear(1)
elif d.who == [insert your MC's name here]:
at message_appear(1)
else:
at message_appear(-1)
That should fix it. :)