paramat wrote:I saw your chat on IRC and was about to encourage you to use on generated instead :)
My flatten mod solves some of your problems, on a chat command it searches through the perln values of distant parts of the map to find higher ground, to avoid a flat area being created out in the ocean, it then chooses the flat area centre co-ords and knows what chunks to flatten around that, all this before any player gets near the location to generate the flat area 'on-generated chunk'.
I have an interest in big cities and the knowledge of flatten mod, i would be interested in helping you out by creating a new version of flatten mod that flattens and creates road systems 'on-gen'. You then could add code that adds the buildings in each chunk.




[/spoiler]
[/spoiler]

[/spoiler]MirceaKitsune wrote:Today I added support for drawing the intersection points as well, and finished the road system. Roads are now in the master branch of the structures mod! Here's a city with roads fully drawn seen from above:
[spoiler]http://i40.tinypic.com/14t50zr.png[/spoiler]
And now for something, completely different:
[spoiler]http://i40.tinypic.com/sotl77.png
http://i42.tinypic.com/29w76eh.png
http://i41.tinypic.com/de1p8i.png[/spoiler]
No, those buildings aren't single structures. They're the default example of another system I coded today, which allows buildings to have multiple floors. When enabled, the building requires a start, end, and middle schematic. Start is placed at the bottom, middle is looped X times upward, and end is placed at the top. Eventually I plan to randomize it, so each instance has a slightly different number of floors... but for now it just spawns the amount of segments you tell it to in mapgen.txt.
Inocudom wrote:Have you tried making those cities in the custom mapgen linked to below?
https://forum.minetest.net/viewtopic.php?id=7366
The custom mapgen was made by paramat and uses the terrain of mapgen v7.
paramat wrote:Ah those apartment blocks are awesome 8) multiple schematic massive architecture is something i want to work on.
paramat wrote:The latest commit of 'uniflat' mod has a chat command search function for 0.4.7 stable MGV7, which automatically searches for a location with epic terrain (it actually searches for a high terrain persistence which creates rough terrain and high mountains), you can see the result in my latest screenshot. Since MGV7 has been re-written since 0.4.7 stable i need to add another search function for 0.4.7 dev MGV7, and also MGindev. Then i will convert it to LVM for you to test and edit to your needs :)
minetest.register_chatcommand("uniflatserv7dlop",{
description = "Search Ongen Centre 0.4.7devMGV7 Low Persistence",
privs = {privs=false},
func = function(name, params)
local perlin2 = minetest.get_perlin(perl2.SEED2, perl2.OCTA2, perl2.PERS2, perl2.SCAL2)
local player = minetest.get_player_by_name(name)
local pos = player:getpos()
local plax = math.floor(pos.x + 0.5)
local plaz = math.floor(pos.z + 0.5)
local plaxq = (80 * math.floor((plax + 32) / 80)) - 32 -- quantise to chunk minp
local plazq = (80 * math.floor((plaz + 32) / 80)) - 32
local serzdis = 80 * math.ceil(AVRAD / 80) + 240 -- distance to search area
local serzmax = plazq - serzdis -- search starts at a distance southwards
local serzmin = serzmax - 1280 -- search a rectangle 2560 x 1280
local serxmin = plaxq - 1280
local serxmax = plaxq + 1280
local suichu = 0 -- suitable chunk counter
for z = serzmax, serzmin, -80 do
for x = serxmin, serxmax, 80 do -- loop through all chunk minimum points in search area
local noise2 = perlin2:get2d({x=x+40,y=z+40}) -- persistence noise at chunk centre
if noise2 < -1.0 then -- if low persistence then
suichu = suichu + 1
else
suichu = 0
end
if suichu == 3 then -- if 3 suitable chunks in a row then define ongen centre in middle chunk
flax = x - 40
flaz = z + 40
print ("[uniflat] ongen centre defined x "..flax.." z "..flaz)
return
end
end
suichu = 0
end
print ("[uniflat] no suitable location found")
end
})Users browsing this forum: No registered users and 6 guests