First thing you need to do is to layout the map. For me, I am just using various sized houses for this tutorial. This is what the outside map looks like on mine:

For my map, I made some really quick houses. For your homes, you can furnish the outside as much as you’d like.
The next part is to create the inside homes. If you want to buy your own furniture, there is a great video tutorial on how to do so. If you want to decorate the home, then feel free to map the inside as much as you’d like.
Buying a House
I consider this part the easier part. There are two ways to do this. You can use either switches or variables. For me, I am going to use variables. For this variable, I am going to call it HOUSE UPGRADE.
For my house, the variables will go like this:
Wood hut – HOUSE UPGRADE = 1
Wooden shack – HOUSE UPGRADE = 2
Large home – HOUSE UPGRADE = 3
Mansion – HOUSE UPGRADE = 4
The first thing we need to do is make sure that the player cannot enter the home unless they bought it (Unless you want to create an open house type of thing).
To do this, we will set a conditional branch and have HOUSE UPGRADE = x. Within the house upgrade part, we will put the typical transfer event in it. In the else statement, you can put a message saying that the player needs to buy the house first.
Example:

You will do this with all the doors.
Next, I am going to add sign posts to all the homes. This is optional, just something to add to your system.
This is really simple to make, it uses variable tag under the conditions area. Here is my example of it:

Note: In this first page, the variable should be set to HOUSE UPGRADE is 0 or above.


Buying From the Retail Office
Now we have the outside done! Time to work on the retail office.
First, build the office and create an NPC to talk to. With the NPC, you can have it greet the player and ask if you’d like to buy a house. For mine, I set my choices to:
Wood Hut – 10G
Wooden Shack – 100G
Large House – 1000G
Mansion – 10000G
Nothing today
I also created a label in front of the choices so that the NPC will loop back to them if you do not have enough money for a certain house.
This is what my NPC event looks like:



Selling Our House
So now we are done with buying a house! But now we need to sell our house if we want to upgrade, or downgrade to save some gold. To make things easier, let’s make another NPC next to the guy we’ve created.
This is how I set up the NPC.



Now you have your own housing and retail system for your game!
Here are some other system tutorials that you might also like to add to your game: