Jump to content

Dynamic NPC Housing


TheAquanix

Recommended Posts

I'm aware that NPCs are part of the long road ahead and we do have Traders, but ever since experiencing the complex building mechanics available here in VS, I'd love to see incentives to build structures that aren't just designed to serve only you. Perhaps in the future we could have NPCs that you encounter whom you could build structures for, akin to meeting travelers much like yourself and needing to supply housing for them, to which they can benefit you just as you benefit them.

Example: A wandering NPC who happens to have experience with forges and smithing. You build him a house of appropriate design (don't put people in a dirt hut if you can help it) and he moves in, then if you supply him with appropriate equipment, A crucible, Hammer, Anvil, etc. He can smith things for you if requested while you do other things and can perhaps even passively smith things on his own sometimes. Dynamic NPCs would definitely add a lot of further depth to the world.

There are probably mods that do things like this already, and if there are already other posts that have suggested something like this, knock on wood I suppose. But yeah, this is a fun concept to consider. It would give a reason to build additional structures that aren't just for yourself.

  • Like 2
Link to comment
Share on other sites

as a guy who lives alone on an island with the only other intelligent life being Richard, a merchant who lives on the opposite side of the island, i approve of this idea.


i would love the ability to build Richard a house at my location and have him move in. Even if it's only for a limited time per year. Maybe it's just his winter home or something idk.

Link to comment
Share on other sites

It would be interesting if there is a RTS-like system where you can place a claim and build a village, and nearby nomads and migrants would opt to live in your village, and eventually enabling you to run a kingdom of your own.

Especially if they come with different classes that aren't available for players by default, like 'Master Smith' or 'Master Carpenters'.

They can teach other NPCs these skills by taking on apprentices and enable your villagers to grow more skilled to do work more efficiently.

The more 'impressive' you make your village the more and more NPC starts to want to join, even merchants that would otherwise live in the wilderness.

Edited by Dra6o0n
Link to comment
Share on other sites

Agreed. Don't know to what degree mods like Villagers does this, as by the time I've explored all the content for this release, there's often a new one, so I don't get to check out many mods.

If you have ideas for how to algorithmically define "impressive", it wouldn't hurt to ask people creating that mod if they would like your suggestions. For example, how could one tell between artistic chiselwork and just randomly hitting it with a chisel enough times to get a bonus to "impressive"? How would one know whether you used a certain block or blocks for aesthetic purposes, or just to use up something you had sitting in a chest?

 

Edited by Thorfinn
Link to comment
Share on other sites

7 hours ago, Thorfinn said:

Agreed. Don't know to what degree mods like Villagers does this, as by the time I've explored all the content for this release, there's often a new one, so I don't get to check out many mods.

If you have ideas for how to algorithmically define "impressive", it wouldn't hurt to ask people creating that mod if they would like your suggestions. For example, how could one tell between artistic chiselwork and just randomly hitting it with a chisel enough times to get a bonus to "impressive"? How would one know whether you used a certain block or blocks for aesthetic purposes, or just to use up something you had sitting in a chest?

 

Well what looks artistically impressive is determined by the material you used, the 'artistic' value of the shape you make with it, and how large a 'structure' is built with it (like say a house). For chiselling, I think you earn less points off of that than using better materials.

And furnishing your buildings with props and decorations would make the rooms more impressive, which can help as well. This idea basically gives players a reason to craft non-essential infrastructures and furnishing, because your villagers likes it.

If someone wants to make a mod like this, just use Rimworld as an example for simplicity. The room size, the quality of the floor, the walls, and the furnishing that is inside the room, the lighting that is available inside the room.

 

The more points you get from building the best looking houses and facilities, the more migrants may show up at your gates to join your village...

 

For instance if you make a giant tower as your base, that would be impressive on a "height" scale alone. Or if you make a giant keep with big walls on all sides, that's impressive as it's very secure against monster raids.

 

You do need some sort of tool to 'define' a structure as something using claims and properties maybe... Like maybe the floor is important for this to work, if you build a house on a special 'floor' block that is at least 4x4 in size, it is treated as a single structure? I'm not sure how you would set this up, unless you use a special 'sign' or claim system so the game knows a house is a house (based on rooms?) and a huge wall around your base is not a house.

Edited by Dra6o0n
Link to comment
Share on other sites

Materials used -- Is it based on rarity? Color? Do accent colors add, like they would in real life? Well, if the accent goes with the main color. How would we define garish or tacky accent colors? Does a blue tile roof go with a bauxite house? If I double the thickness of walls, doubling the number of blocks, does it double the value? What value would you assign a house made of salt? Does it matter if it's a wet climate or a desert?

Shape -- Right. If you look around a high-buck subdivision, there are all kinds of house shapes. How does the algorithm decide which shapes are artistic?

Chiseling -- Maybe not the best decision. Not only is it a lot of work, it can add a lot of visual appeal. High craftmanship is big bucks in the real world. But it's hard to objectively define in-game.

Furnishings -- Right. How much do they help? Shells? Butterflies? How much furniture? When does it stop adding and start subtracting because it looks like a hoarder lives there?

Size -- Based on footprint? Blocks of flooring? Volume of building? Do balconies add? Decks? How much? And as you note, figuring out what comprises a building as opposed to just a room is a bit problematic, particularly when the deck will be outside the house.

How about view? Shouldn't it matter whether you are looking at Lake Louise or the tenements across the alley? But how could you algorithmically determine the quality of the view?

How about the yard? Bonus for fruit trees or crimson maples? A pond in the back yard?

In real estate, they say, Location, location, location. Probably not here though? But is there at least a downgrade for living next to the butcher or tanner or the pig pen?

It needs to be fleshed out a lot more or you might as well just generate a random number and call it good.

---

EDIT: I'm not trying to discourage you. Fleshing out something like this is very challenging. But it needs to be done before it can be coded.

Edited by Thorfinn
Link to comment
Share on other sites

I think artistic value on a simplest form of points, and safety is important... Like if you have a big village with secured walls, and there is little threat outside, the village earns points for not being under threat for a period of time... But if at any moment threats starts spawning around outside, you start losing points.

Maybe earn bonus points if you share stockpiles of food with them.

For starters, 'artistic' values of blocks isn't really determined by colors or whatnot, but the points earned is set in stone by the type of block it is...

Simple materials for instance don't have much artistic value points, or could even be -1.

But specifically crafted blocks that uses materials meant for artistic value, like bricks and cut limestone, etc, holds higher value as artistic blocks even if they don't perform as well in regards to durability and such.

As for 'rooms' it should be a simple measurement of walk able space before checking furniture and stairs.

Because players would decorate the space, to have narrow or wide walkable area, you simply need to be able to check the 'room' itself by a dimension that is as close as possible, and give a score based on the scale of it (4x4 is tiny, 6x6 is moderate, 8x8 is large, 12x12 is huge, and 16x16 is gigantic). It does this by counting the room's standing floor space in a 2 block height, on X and Y axis, only counting solid blocks in it's use (basically decorative and utility objects don't count against it).

Trying to keep it as simple as possible here. Maybe require players to place a specifically designed signage or flag to indicate this is the entrance to a shared space? (Place above the door?)

... Or even better, what if it's a specific 'door' used for this system, so it knows where to check where the room should be? The problem is height and width if the player makes intricate 'hallways' or passages inside it...

Edited by Dra6o0n
Link to comment
Share on other sites

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.