Gotcha!
Pumpking
I like the idea but I seriously dislike the leaving part. Some npc's are rather needed, like the magician with his mana potions or the gunner with his ammunition. It'd be very annoying to see them leave while you're out of mana/ammo. I'd rather see them making their items more expensive if they're unhappy, like you said.
Also, at the start of the game you haven't got the means to properly decorate a house, so any npc's that'd come over would also leave again.
As you mentioned, if they're happy then items could be cheaper. If they're very happy have them sell special items? A nice bonus for people who take the effort in making a nice house. Perhaps have certain npc's sell their own outfits and weapons, like the painter's gun or the stylist's scissors.
The nurse's price would vary depending on her happiness, but perhaps provide buffs too past a certain happiness point.
The guide... I don't like the wall of flesh relation. I doubt the guide would be able to influence the wall of flesh' strength. It's not like he owns that thing down in hell, as far as I know. Perhaps just leave his happiness as always happy. Afterall, he's not seeking you out when you have a roof available; he's right there from day one. Perhaps he should just be the one stable npc who's with you all the way (well, until you sacrifice him anyway x).
You bring up an idea though. This makes me think how DarkAwesome could expand this idea with having certain npc's lose or gain happiness if they live near eachother. You'd have to keep them on separate floors.
Like how the mechanic and goblin would be very happy to live on the same floor since they obviously like eachother, but the dryad would absolutely hate seeing that perverted arms dealer walking around in her house. Meanwhile the arms dealer would be happy, since he's a perv.
Every npc would hate the annoying angler kid and pirate, except for the cyborg which would be immune to the angler's annoying comments and the pirate ting on the floor.
The dye trader would feel at home with the painter, both liking colours and both probably needing eachother's services once in a while.
Dryad would like Truffle, both having a nature background and based on her dialogue.
Arms dealer and Demo dwarf would hate eachother, due to their competitiveness, also based on their dialogue.
The Witch Doctor would either be happy with the Magician next door due to learning a thing or two from him (and vice versa) or they could also dislike eachother due to competitiveness, although I think the Magician is the type that never gets angry over anything.
And so on.
Also, at the start of the game you haven't got the means to properly decorate a house, so any npc's that'd come over would also leave again.
As you mentioned, if they're happy then items could be cheaper. If they're very happy have them sell special items? A nice bonus for people who take the effort in making a nice house. Perhaps have certain npc's sell their own outfits and weapons, like the painter's gun or the stylist's scissors.
The nurse's price would vary depending on her happiness, but perhaps provide buffs too past a certain happiness point.
The guide... I don't like the wall of flesh relation. I doubt the guide would be able to influence the wall of flesh' strength. It's not like he owns that thing down in hell, as far as I know. Perhaps just leave his happiness as always happy. Afterall, he's not seeking you out when you have a roof available; he's right there from day one. Perhaps he should just be the one stable npc who's with you all the way (well, until you sacrifice him anyway x).
Except that not every npc is the same. Would the grouchy tax collector be interested in parties? Or the way too serious dryad? Or the reserved clothier?I have an idea: If you have a Party Girl, other NPC's happiness will go down slower.
Because parties.
You bring up an idea though. This makes me think how DarkAwesome could expand this idea with having certain npc's lose or gain happiness if they live near eachother. You'd have to keep them on separate floors.
Like how the mechanic and goblin would be very happy to live on the same floor since they obviously like eachother, but the dryad would absolutely hate seeing that perverted arms dealer walking around in her house. Meanwhile the arms dealer would be happy, since he's a perv.
Every npc would hate the annoying angler kid and pirate, except for the cyborg which would be immune to the angler's annoying comments and the pirate ting on the floor.
The dye trader would feel at home with the painter, both liking colours and both probably needing eachother's services once in a while.
Dryad would like Truffle, both having a nature background and based on her dialogue.
Arms dealer and Demo dwarf would hate eachother, due to their competitiveness, also based on their dialogue.
The Witch Doctor would either be happy with the Magician next door due to learning a thing or two from him (and vice versa) or they could also dislike eachother due to competitiveness, although I think the Magician is the type that never gets angry over anything.
And so on.