(1) create a new room
(2) create a room description
CHANGE_ROOM_DESC This is the description of the interior of the home. It has wooden walls, or something.
(3) change room script to 10269
(4) create the home data record (this will also set up room flags)
(5) change the base room name for this home
HOME BASENAME D'Mare Fin, Cottage
(6) change the room name using the base name with ", Available Home" appended
CHANGE_ROOM_NAME D'Mare Fin, Cottage, Available Home
(7) if this home is buyable, then set the price, otherwise make it claimable (for free)
HOME PRICE <price>
... or ...
HOME MAKECLAIMABLE 1
(8) create and drop any furnishings for this home (bed, table, chairs, desks, whatever)
Remember: if a furnishing is NOT mentioned in the room's description, assign it a data3/value1 of 179 (and data3/value8 of 20 if it is sitable/layable).
(9) create the exit out (always make an OUT exit; you may additionally create GO exits but an OUT exit must exist)
CREATE_EXIT OUT <room # of exterior>
(10) from the exit out, create a regular GO exit into the home. If the home has more than one of the same type in the same area, then use exit names similar to FIRST COTTAGE, SECOND COTTAGE, etc. The game engine will automatically prevent access to GO exits to unavailable homes from non-owners/designated guests.