Cataclysm-dda: Odd overmap generation - forests, swamps and some other stuff too

Created on 8 Aug 2018  路  9Comments  路  Source: CleverRaven/Cataclysm-DDA

Windows, tiles, 0.C-29661-g765578f.
Mods: dda, no_npc_food, novitamins
(And it was the same with build from over a year ago I think.)

Current overmap forest/swamp generation results in very noticeable disjointed edges on overmap chunk borders. Also swamp seems to be placed only on the river banks (as it probably should) and around the overmap chunk edges which is quite noticeable and odd looking too.

There's a map example:
hiltonia map 0_no_lines

And here is the same map with overmap chunks marked:
hiltonia map 0_lines

I have also noticed that things like cities, subways, anthills, sewers and pretty much any other multi-tile structures seems to be overmap chunk bound. While being much less noticeable it still may result in odd shapes and it will be nice to have multi-chunk interconnected underground communications.

For example look at central city and the one in left bottom corner of the top right chunk - they are line shaped around the edges. Also here's some anthills that are clearly cut buy chunk edges and if I'm not mistaken they don't even have entrances. Haven't got there to check it in person yet.
hiltonia map -1_marks2

Map / Mapgen stale

Most helpful comment

I see, impressive, perhaps consider making this an external tool. But I agree, mapgen is kinda buggy. especially those disconnected roads

All 9 comments

what are you using to see mapgen like this?

Hand-made hacky python script. I made it mainly because I was bugged by the fact that in-game map is vertically stretched due to letters not being square.

I see, impressive, perhaps consider making this an external tool. But I agree, mapgen is kinda buggy. especially those disconnected roads

There are several good solutions for a number of these issues:
If we switch to placing forests based on global coordinates and a world
seed, they'll line up properly without assistance. A popular technique for
doing this is using possion noise and thresholds as the determinant.

Lining up large scale map features could be accomplished by halting feature
creation once it hits annovermap edge, and completing it once the overmap
is loaded. The underlying code that triggers overmap generation guarantees
that an overmap is generated before the player visits it.

Another option is a large-scale import of real-world map data, which will
obviously be consistent across chunks. There are several contributors
looking into this approach right now.

As of build 8442, this is still present.

@maniak1349 Are you planning to publish the script?

@int-ua
No. At least not right now.

Every time I get back to the script it is broken in a multiple ways both due to my errors and recent changes to the game. Right now for example it is missing bunch of colors (since they are hardcoded into the game), not applying overrides from mods (my bad) and incorrectly displaying roads including those new forest trails and some railroads (and I have no idea why yet). An that's only stuff I've found by running it against fresh world from latest build.

Besides script code itself is a mess so it will be more appropriate to rewrite it from scratch properly. Or better still - to integrate that map view into core game, since game itself does almost all the job my script does - load maps, players, chunks, mods etc. Neither of those seem to me as a trivial tasks. Maybe I'll look at it some time later when I will have more free time.

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. Please do not \'bump\' or comment on this issue unless you are actively working on it. Stale issues, and stale issues that are closed are still considered.

This issue has been automatically closed due to lack of activity. This does not mean that we do not value the issue. Feel free to request that it be re-opened if you are going to actively work on it

Was this page helpful?
0 / 5 - 0 ratings