Game Mechanics new npc spawn ordering and pricing system

good or bad idea?

  • good idea.

    Votes: 3 42.9%
  • bad idea.

    Votes: 4 57.1%

  • Total voters
    7

Godley

Skeletron Prime
we probably are all familiar to trying to get an npc to spawn but failing utterly, so i thought up this;
this system add up all the factors of a npc house, that is, the location(is it in the jungle or by the ocean?), the solid walls(wood or gold bricks?) the background walls and the furniture(wood chair or gold bath?).
each npc will have things they likes, and things they don't like (e.g the pirate likes golden furnitures and the house being near the ocean, but doesn't like dirt background walls)
npcs can swap houses if both likes the other's house better, however, they can't abandon their house to move into an unoccupied house that they like better.
the more satisfied an npc is, the cheaper he/she will sell his/her items for, and vice versa.
also,an unoccupied house will always take the most suited npc (e.g a house near the ocean will always take the pirate if he had not already occupy a house)
and that's it!
 
Interesting idea, but it seems like it would be extremely complicated to implement, much less use.
I can understand how it will be a pain in the butt to implement, but to use it will just require all sorts of furniture to be used in house building with each one built with a theme.
Mechanic and goblin tinkerer? Use meteorite or Martian themed furniture.
Party girl? Slime themed.
Dryad? Regular wooden furniture.
the benefits will be notable even if you just build a couple of themed houses.
 
I think there is no problem with swapping houses as the player can change to which room each NPC is assigned to. Still, it would make the building houses for NPCs way more complicated, with people looking for the "only right" way to build the house for each NPC, trying to get the best benefits.

Now, you can simply build anything and get the NPC inside, which constitutes also into creating inaccessible cells so they can't move, functioning rooms for various mechanisms or wooden boxes without anything made from sheer lazyness. Each to their own i guess.

Still, i think it's an interesting idea, maybe create a mod for something like that? ;)
 
I got the notion that they would, the NPC would give only a very limited benefit, if any. Themed houses and special furniture would simply enhance what an NPC can do (buy/sell).
That makes sense. It seems like the themed house benefits would be more practical later on when players actually have materials to build themed houses.

Just looking at implementation, it gets more insane the more I think about it. I imagine they would have to come up with some sort of preference system and put each NPC's preferences in there, with a way to measure any eligible NPCs' preferences against one another. There would also probably need to be some kind of subscale for each NPC within their own preferences (e.g. for the pirate, how valuable is a room with a golden sink and golden table, versus just a golden bed?) so that the game could distinguish between two similar houses and pick which one the NPC likes most. There's also a matter of what constitutes a "theme" - tiles of the same material, similar materials, etc. Then they would have to figure out how to make the NPC's prices cheaper once it's in its ideal house, and probably how to handle it if the house is better than average but not ideal; in other words, they would have to make a scale of prices based on the preferences. There would need to be a system for NPC house swapping and spawn priority taking into account available houses. I'm sure there's more, but that's what I was able to come up with by just thinking about it critically with no knowledge of game design and very minimal knowledge of coding in general. If this ever becomes part of the game, it would be a while until it does. I think a mod like this would certainly be cool though.
 
Without going into too much detail, i'd see it in a manner of:
  1. Special UI for each room opening up with various categories displayed. Alternatively just a pop-up text when hovering over a room showing all the benefits.
  2. Each furniture item would have some added values to specific categories. Golden furniture would benefit to Rich, wooden to Nature, steampunk/martian/meteorite to Industrial, bone/honey/flesh to Animalistic, etc. There could be a lot of categories really.
  3. Each NPC would value a specific category and there could be a limit of let's say 10 or 15, at which he/she would give the most benefit.
  4. Comparing rooms would be quick, as it would come down to checking the numbers, in the end choosing at random if there are more than one room with the max benefit. Additionally, NPCs with same interests can't swap between themselves, as they would continuously change.
  5. Information about NPC likes would need to be shown somewhere, if not in their dialogues then in the UI.
 
Without going into too much detail, i'd see it in a manner of:
  1. Special UI for each room opening up with various categories displayed. Alternatively just a pop-up text when hovering over a room showing all the benefits.
  2. Each furniture item would have some added values to specific categories. Golden furniture would benefit to Rich, wooden to Nature, steampunk/martian/meteorite to Industrial, bone/honey/flesh to Animalistic, etc. There could be a lot of categories really.
  3. Each NPC would value a specific category and there could be a limit of let's say 10 or 15, at which he/she would give the most benefit.
  4. Comparing rooms would be quick, as it would come down to checking the numbers, in the end choosing at random if there are more than one room with the max benefit. Additionally, NPCs with same interests can't swap between themselves, as they would continuously change.
  5. Information about NPC likes would need to be shown somewhere, if not in their dialogues then in the UI.
Brilliant.
 
To avoid players metagaming this, make the benefits more like different dialog text, or their event happens on different days, or they give a short-lived buff every hour or so, something minor along those lines. If building X theme house makes the NPC sell stuff cheaper everyone will end up doing that because not doing so would literally be a handicap.
 
To avoid players metagaming this, make the benefits more like different dialog text, or their event happens on different days, or they give a short-lived buff every hour or so, something minor along those lines. If building X theme house makes the NPC sell stuff cheaper everyone will end up doing that because not doing so would literally be a handicap.
Technically, selling stuff cheaper is what I want, since it allows players to do difficult stuff such as making special furniture and redesigning house looks(so they can fit in the furniture)for a better future.
 
It's an interesting idea.
But in addition to what others have mentioned, it also kind of forces a player to build specific types of houses and/or in specific locations. There is admittedly already a precedent for this (e.g. Painter's stock or Witch Doctor in the Jungle). I don't think a player should be penalised for not building houses in a particular way.
 
I designed the bonuses to be quite small, only 20% less expensive at max.
Also, wayyyyyy too many people are missing out on special furniture by being lazy.
 
to be honest, this sounds like a nice idea, but as other people have said, it could be too complex. Imagine a new player who is unfamiliar with the npcs trying to get their head around this system.
Additionally, I would not like making changes to a build so i can get the npc i want to move in. i like the idea of having lower prices in a certain house but imo npcs shouldn't be able to choose or switch their houses.
 
I designed the bonuses to be quite small, only 20% less expensive at max.
Also, wayyyyyy too many people are missing out on special furniture by being lazy.
20% is quite a bit, especially if players are essentially being penalized for being "lazy," or even for simply choosing to build their NPC housing according to a different theme than would be mandated by the game for the benefit.
 
It's a good idea, just need to change the approach a bit.

We already have environmental buffs from specific items, but what about points-based room buffs? Imagine that every single piece of furniture can give a certain number of room points. So if you build a room and then put in 3 pieces of furniture that contribute 10 + 25 + 5 points, the room has a "score" of = 40 points. Then let's say you need to achieve a minimum of X points in order for a particular buff to activate, e.g. NPC discounts happen at 50 or more points.

Q: Hold up, if any furniture can give points what's stopping me from putting random stuff like a Cooking Pot in the Goblin Tinkerer's room?
A: Good question, maybe each piece of furniture can also have a category/type, to indicate what kind of points it contributes. So a Cooking Pot might give +10 points, but the Goblin Tinkerer ignores those because he isn't into the type of furniture that the Cooking Pot belongs to. Maybe you get to specify what type of furniture the room should count? Idk.

Similarly, only 1 of each type of furniture counts, so you can't be lazy and simply fill a room with 20 bookcases. Maybe each additional duplicate adds +1 point, so at least it isn't wasted effort, but the player should get more marks for creativity. I'd also like the Housing Query mode to indicate what furniture is contributing how many points.

This way you can still design rooms so that you get enough points to please the NPC living in it to give you discounts or whatever other buffs, but you're not forced to build specific pieces of furniture.

Yay? Nay?
 
Last edited:
The thing is, we agree that the current pricing is acceptable, and that the current spawning system is nice as well.
So, if you just want to build prisons(you know, these 3^9 houses that have no doors), you don’t get punished, but just miss out from the benefits.
Also, we can just build special houses for NPCs we need for our playthrough and will be spending our money on(e.g goblin tinkerer), while building prisons for those we don’t.
 
Maybe each NPC could have an existing furniture set that they prefer. The sets would say "Beloved by Dryads" or "a favorite of Merchants" etc in the tooltip, and if it's in a house and that NPC can spawn, they will spawn with increased priority in that house. It's a relatively simple way of doing it, and would also give players a reason to try out different sets that they wouldn't otherwise.
 
It's a good idea, just need to change the approach a bit.

We already have environmental buffs from specific items, but what about points-based room buffs? Imagine that every single piece of furniture can give a certain number of room points. So if you build a room and then put in 3 pieces of furniture that contribute 10 + 25 + 5 points, the room has a "score" of = 40 points. Then let's say you need to achieve a minimum of X points in order for a particular buff to activate, e.g. NPC discounts happen at 50 or more points.

Q: Hold up, if any furniture can give points what's stopping me from putting random stuff like a Cooking Pot in the Goblin Tinkerer's room?
A: Good question, maybe each piece of furniture can also have a category/type, to indicate what kind of points it contributes. So a Cooking Pot might give +10 points, but the Goblin Tinkerer ignores those because he isn't into the type of furniture that the Cooking Pot belongs to. Maybe you get to specify what type of furniture the room should count? Idk.

Similarly, only 1 of each type of furniture counts, so you can't be lazy and simply fill a room with 20 bookcases. Maybe each additional duplicate adds +1 point, so at least it isn't wasted effort, but the player should get more marks for creativity. I'd also like the Housing Query mode to indicate what furniture is contributing how many points.

This way you can still design rooms so that you get enough points to please the NPC living in it to give you discounts or whatever other buffs, but you're not forced to build specific pieces of furniture.

Yay? Nay?
Absolutely!!
 
Back
Top Bottom