Personally I like the "X (Dis)Approves" mechanic. Since this is a video game and Larian probably can't model (and we certainly can't view) every single companion's accurate facial reactions in real time or write dialogue for each companion for all possible PC dialogue&decisions that affect approval, showing the "X Approves" text is a decent-enough way to convey this information. In a real adventuring party, there'd be countless discussions and pouting and snarkiness throughout the entire days of traveling together, but these must be shortened in a video game. I do recognize that the mechanic can easily be overused and it probably could use improvements.

At the very least, companions not currently in the party shouldn't approve/disapprove of small decisions. And perhaps a better way to show disapproval would be: if you choose a dialogue option that a companion dislikes, they interject into the conversation to argue. If you then ignore them and choose that action anyway you get the "X Disapproves" text. This would also make it feel more like a party of adventurers rather than Tav + meek followers.

Similarly, for companions that weren't in the party when you made a Big decision (e.g., side with or against tieflings), their disapproval is only shown through a later conversation with them, where you might get the chance to pacify them through persuasion or deception.

EDIT: Oh wait I might have misunderstood..? You should only figure out if a companion approves or disapproves after a choice, not before. Unless they explicitly speak up in the conversation to state their preference. I wouldn't like dialogue options being labeled as [X will disapprove]

Last edited by mrfuji3; 12/07/22 07:34 PM.