I should mention that I’m grossly simplifying this and ignoring all the dialogue that your loved ones have across party banter and in the camp if you go and talk to them at various stages in your relationship.
For instance, Alister is very curt and quick to ask “What do you need?” when you first meet him, but as your relationship deepens into a friendship his dialogue slows down to an informal pace and he speaks fondly when he asks “Something on your mind?”. (I can’t remember if he prompts you this same dialogue if you’re in a relationship with him; it’s been a while since I played that game!)
What I’m mainly talking about is how there’s no storyline for characters beyond the romance in most interactive media. You initiate a romance, have sex - or maybe you don’t - and then that’s the end! Do not pass go, do not collect $200 dollars. It’s a let down after coming down from this possibly amazing romance to never have to acknowledged again in the story.
DA:O does avert by virtue of some characters themselves i.e. Sten or Wynne or Shale not even being romance option to begin with.
Other characters’ stories deconstruct this entirely by having the integrity of your relationship hinge on your actions in a relationship i.e. slaying Morrigan’s mother or killing Loghain for Alister or Leliana being utterly broken if you defile Andraste’s ashes. All of those are pretty realistic all things considered and I loved that about those moments because it really captured what being in a relationship can be like.
It’s a matter of giving and taking and sometimes something’s gotta give and your actions do have consequences. In those cases, the consequences just so happen to be if an NPC remains in a relationship with you.
But back to the topic at hand… In short, romance is a good selling point, but it has to be done well - like basically all things in writing! Romancable NPCs have to be characters first and then romance options second IMO and if that means that there’s occasionally some tension between the MC and the NPC, then fantastic!