It's not flawed at all, but it's not easy to make all the characters interact with each other based on the relationship that everyone gives to each character. Just so we understand each other: we have 5 characters in the game where you can choose the relationships they have with respect to the MC, but what you are asking for is that, in turn, these characters can have different relationships between them.
That is to say, it is no longer a question of 10 variables (5 for the relationship that the MC has with each character and 5 for the relationship that those characters have with the MC), but of 32 variables more! (to define, for example, the relationship that Gloria has with Elle, and in turn the one that Elle has with Donald, and vice versa).
That is, in Elle's biography, for example, there would have to be 11 buttons (one to change her name, 5 more to define the relationship that each main NPC has with her, and another 5 to define the relationship that she has with the other main NPCs!).
Considering all this, the fastest and most efficient solution is to call certain characters by their name, not only because programming something like this would be crazy, but also because players do not want and would not want to define 42 relationships between characters plus 6 editions of character names!!!
I hope you understand what I'm saying and sorry for so much writting, lol