Skip to content


Sokomine edited this page Nov 16, 2015 · 6 revisions

##6. Village types

Real villages may vary a lot depending on which region and century they where built in. The style houses are built in also varies from player to player. Thus, groups of houses (blueprints, schematics) are grouped into village types. Each house may belong to more than one village type, but all the houses belonging to one village type ought to visually fit together.

###6.1 What a village type consists of

  • Buildings which share a common style as to please the eye
  • Replacements are applied to all houses in a village the same way (except for the fruit grown). This means for example: Each house in a village will use the same tree trunk type and the corresponding wooden planks, fences (if available), doors (again, if available) etc., will use the same replacement for cobble (i.e. desert stone brick) as each other house in the village, and so on. Houses in another villages share the same materials as well - but those materials will most likely be diffrent ones.
  • The same type of plant that is grown in the immediate area sourrounding the village. In the case of medieval style villages, that's wheat; taoki-type villages grow cotton; others usually just let the grass grow.
  • Some common parameters like minimum and maximum size, road type, road sizes etc.
  • Requirements as to which mods need to be there so that the village can be placed.

###6.2 Village types without further dependencies

These are directly included in mg_villages and always available.

Nore village
nore Nores experimental mg mapgen is also where the original code for the village generation came from. And also these houses here.

Taoki village
taoki from MirceaKitsune's Structure IO mod

###6.3 Village types depending on the cottages mod

The houses for these village types below have been built by me, Sokomine. They require my cottages mod in order to work. These village types are also directly included in mg_villages but will only be used if the cottages mod is installed.

Medieval village
medieval tries to rebuild (German) medieval villages

Characoal camps
charachoal consists of the charachoal burner's hut and the fireplace where he burns the wood to coal

Lumberjack village
lumberjack has wooden homes for lumberjacks with piles of wood in front of some huts; may also contain a shop and a school

Claytrader village
claytrader offers clay, brick and glass to those in need, thus preserving many beaches

Logcabin village
logcabin very simple, poor huts; the bare minimum

Tent village
tent is for new settlements in the wild

Grasshut village
grasshut requires the dryplants mod to be installed, which can be found in the grasses modpack, or in the DreamBuilder Game. The grasshuts where heavily inspired by Mossmanikin.

###6.4 Village type canadian

canadian by Mauvebic/LadyMacBest is taken from some version of Mauvebics MM2 modpac. The modpack is no longer available. The houses in here are more suitable for a town instead of a village. They're big and well-built. It's a pity that the mod can no longer be found.

###6.5 Special types for lone houses

A lone small farm Fort Chateau
Lone houses outside villages may also spawn. The purpose of some of them may be obvious from their name: tower, chateau, forge, tavern, well, trader, sawmill, farm_tiny (the farmer has an additional job and too few land to live only on what he grows alone) and farm_full (for full-time farmers who have their own horses and can live off their land). The type single is a catch-all for types not covered above.

###6.6 Additional village types found in extra mods

These mods exist mostly in order to show you how easy it is to create a new village type. They also create nice villages using mostly default nodes.

Gambit village
gambit: village_gambit adds a new village type named gambit. It was built by the forum user of that name for the peaceful mobs by jojo1997. See also this thread.

Cornernote village
cornernote: village_towntest uses the buildings from Cornernotes towntest mod and adds the new village type cornernote.

Modern houses village
modern houses have been built by BorisGrishenko. See this forum thread.

Ruins village
ruins have been built by AgentNagel42. See this forum thread.

sandcity has been built by me, Sokomine, and can be found in village_sandcity. That city is intended to be a home for those poor sandmobs that we all so often kill in passing. Note also that it has space_between_buildings=-1, letting the houses be together wall-by-wall, with no gap inbetween.

###6.7 Adding your own village type

It's easy to add your own new village type. Just call mg_villages.add_village_type( name_of_village_type, table ) somewhere (i.e. inside your own mod). table has to be a table containing the following values:

min, max: (required) the radius of the village will be choosen randomly between these two values

space_between_buildings: (default: 1) if set to 0, there is no gap at the sides of the buildings; if set to -1, the buildings will overlap

mods = {'mod_a','mod_b'} (optional) a list of mods required for spawning that village type; if the mods are not installed, the village type will never be spawned

texture = 'default_stone_brick.png'sets the texture that will be used in the map shown by the /vmap chat command

replacement_function = my_replacement_function: The function will be called like this: my_replacement_function( housetype, pr, replacements ) and is expected to return a replacement list as e.g. minetest.place_schematic would take.

sapling_divisor (default: 10) affects how many tree saplings will be placed around the village; the higher the fewer

plant_type (default: default:grass_5)is the node name of what the villagers planted around their village. Medieval ones use wheat, while taoki ones use cotton.

plant_frequency (default: 3) the higher, the fewer plants there will be

name_prefix: may contain a prefix that will be used if a lone house of that type is spawned (so that it can be distinguished from a full village)

force_ground, force_underground: set surface node and the nodes below that will be used in the village. Normally, the existing terrain types will be preserved. See village_sandcity for an example as to why and when you might wish to set this.

no_snow: set to true if you never want your village type to be selected for one with artificial snow

roadsize_list = {2,3,4,5,6}: in this example, the main road will be 6 nodes wide, then 5 nodes and so on

road_materials = {'default:cobble','default:gravel','default:stonebrick','default:coalblock'} if you want more variety. Note: Snow may cover your roads (it will never cover the default road gravel)

The buildings themshelves are added in a diffrent way. For information about that, please take a look at Buildings.

You can’t perform that action at this time.