npc theory