Yes. the way most game developers implement morality systems
tends to be unsophisticated and deserves a long discussion.
Having read your post I just fell compelled to recommend you to
play Tyranny from Obsidian, Which, for a lack of a better
explanation, works on a very Classical Roman morality lens, usually
misrepresented by most as "Being a Bad Guy".