So, you want to learn how to build a town from scratch huh? Well, it's fairly easy actually.
All, you gotta do is find an area that has no villages, and is fairly far away from another town or village. So here is how to make your own town in 3 simple steps!
Step 1: Decide which Faction your village will be. If it's Horde have it in a Horde Area, Alliance would be Alliance Area and Neutral in a Contested Area. After doing this your ready for step 2. For Step 1, I will be using Mulgore.
Step 2: Now, you can start spawning some object. All, you gotta do is type .gobject spawn <id> 1. If you don't know what your looking for type .lookup object <name>.
After finding the objects you wish to spawn start building the town. The 1 at the end of the object spawn keeps the object there, forever.
Step 3: Now, add some vendors, so you can atleast have players shop in your town. Don't make the vendors have insane items, for sale make it something that you think would be reasonable for the area, and the style of server you have.
Step 4: Adding guards is quite an easy step. Basically all you gotta do is spawn guards of your Faction. So, if your Horde spawn Horde Guards and if your Alliance spawn Alliance Guards, neutral Cities don't need guards because they don't need to attack anyone.
Step 5: *Not Needed* If, you want people to reach your town easily spawn a random NPC. So try spawning a villager or something. Then click on the NPC and type .waypoint addfly
This creates a flying waypoint where this NPC is, so now you can fly to your little town/city.
Step 6: MAKE IT UNIQUE! If your city is going to be underwater, maybe have an NPC on land that gives players an item that allows them to breathe underwater.
If your town is in a Snowy Area, try adding lot's of fires outside and whatnot.
And Down Below is a list of basic objects you can spawn by using .gobject spawn
Massive Door - 185521
Chair - 185453
Campfire - 185545
Meeting Stone - 185550
Mailbox - 185473
Thanks for reading!