All 27 town NPCs that move into your world once you meet their condition and build a valid house. Open any for its unlock condition, dialogue and happiness preferences.
Terra Codex tracks 27 town NPCs. Each moves in once you meet its condition and provide a valid vacant house.
Build a valid house (enclosed, with walls, a light source, a flat surface item like a table, and a comfort item like a chair), then meet the NPC's unlock condition — a boss kill, an item, or freeing them in the world.
Each town NPC likes certain biomes and neighbours and dislikes others. Housing them where they're happy lowers shop prices and unlocks Pylons for fast travel.