Nice! Ive been waiting for a good villages mod that places schematics according to the terrain instead of flattening the ground.
The vast majority of human players on a server isn't capable of adjusting their building style to the sourrounding terrain.
The only thing this is missing is gravel roads and more natural/realistic farms :3.
:-/ Such demands is what you get if you promise "placed without adjusting the land" :-)
Nice mod, was surprised to see 8 npc's sharing a tiny house though :)
There was heavy overpopulation in my test worlds as well. It's possible that they breed so much in order to get at least some people through the next night when aggressive monsters (sometimes called players) will appear.
That's something I'll have to teach mg_villages/handle_schematics as well.
Gravel roads would be nice indeed. I tried to avoid them by claiming "it's only a settlement, not a village or town". ;-) Maybe in the distant future.
Very understandable :-) MT's terrain is very tricky in that regard.
As for the realistic farms: I designed the gardens after those in Minecraft. Yeah, that's bad. But I'm not that creative. If you point to a better looking farm, I see what I can do.
Hm, yes, I don't overly like standard MC houses/villages. They seem so...tiny and stretched too much in height. At least the forge is pretty nice, and the huts as such aren't too bad either. The church looks much too cramped.
Overall, the settlements generated look quite good. In detail, there are points where much imporvement is needed. For example it feels wrong to have the tower at almost the lowest place of the village, where you can hop on top of it from the mountain it's partly embedded in. Many huts end up mostly embedded in a hill as well. It's partly acommodated for by the house having overhanging roofs. Thus the paths to the front door are usually free. Other houses end up on visible platforms. That's hard to avoid. I had that in my random_buildings mod as well (though with some randomness added to the platforms/pillars).
In one test world, the houses where cut off at an absolute height of 30.
A settlement inside a dense rainforrest isn't optimal either. The trees ought to be cut down in such a case.
Holes inside the village area are problematic. If all those poor mobs spawning inside the houses ever manage to get out of the door, they'll surely fall into all these deep holes and stay there forever. That can't be!
My handle_schematics mod has a cheap function for analyzing the hightmap and for finding places with equal height:
Code: Select all
local heightmap = minetest.get_mapgen_object('heightmap');
local res = handle_schematics.find_flat_land_get_candidates_fast( heightmap, minp, maxp, sizex, sizez, minheight, maxheight );
sizex and sizez are the dimensions of the flat area you're looking for. minheight and maxheight can limit where it can be placed (i.e. most houses don't want to be placed below water level; ships on mountains are uncommon). Returns res.places_x and res.places_z (for houses rotated by either 90 or 180 degrees; sizex and sizez are swapped). Those tables are arrays that contain all the indices relative to heightmap that are flat enough for a house of said dimensions. Places choosen for a house can be marked as occupied so that they won't get offered in subsequent runs of handle_schematics.find_flat_land_get_candidates_fast.
The circular way the mod places its houses looks very convincing. That'd be a very suitable arrangement of houses for the village type grasshut in my villages modpack as well.
Nice to see replacements used so that the houses look diffrent. Seems to work very well.
I hope that the mod will be developped further.