On the point about NPCs, I once had a good talk with a fellow who ran really good games where players would invest heavily in the world and in helping people and building communities.
As I talked to him it seemed like one of his core secrets was having NPCs who aren’t total dicks. Which.. duh, right?
I think sometimes we’re so interested in drama and hard choices and “realistic” people that we forget part of drama and hard choices and realism is that lots of people are decent, do form communities, etc. And if you want players to really invest in NPCs and build ties with them, having them be, you know, not total dicks all the time is helpful.
If all your NPCs are difficult, annoying, etc. (much less bad, hateful, or outright liars) then your PCs are going to be heavily incented to be libertarian loner heroes. Because who wants to build a commune with a bunch of assholes?