yairm210 / Unciv

Open-source Android/Desktop remake of Civ V
Mozilla Public License 2.0
8.5k stars 1.58k forks source link

Rectangular maps and map generation algorithms #1806

Closed r3versi closed 4 years ago

r3versi commented 4 years ago

Hi, I created this issue to notify you I started working on implenting rectangular maps and improving map gen algorithms (with help by CPT. Klutz). The rectangular map (although it is ready) cannot be deployed yet because the mapgen algorithms don't work well in such a shape. The following is a sketched to do list; if you have requests/suggestions post them below!

Whistler11 commented 4 years ago

This sounds great! excited for this feature!

ghost commented 4 years ago

I hope this don't take eons. I'm very excited for rectangular map : 3

krijnsent commented 4 years ago

If you need inspiration, this is a tool I made a while ago for rectangular map generation: https://steemit.com/map/@beeheap/create-a-fantasy-grid-map-in-excel

r3versi commented 4 years ago

Kudos for doing this in excel and thanks for sharing it! It's really close to the approach we took. Once the PR is ready I'd like to receive your feedback about it

krijnsent commented 4 years ago

I had a swing at the current version and map editor, here the "unsorted feedback" which I maybe should spread over several issues:

Map editor:

Map generation:

I'll see if I can update my Excel tool to help with some concepts for better map generation, but don't know when I'll have the time for that.

remdu commented 4 years ago

By the way if we want to make maps in which the left and right side wraps so that we can go around the world seamlessly we need to make some kind of cylinder in 3D perlin noise like the 3rd comment here says https://www.reddit.com/r/proceduralgeneration/comments/37azql/using_simplex_noise_for_2d_horizontal_wrapping/

There are also many interesting ways to use perlin noise, for example for tiles https://gamedev.stackexchange.com/questions/23625/how-do-you-generate-tileable-perlin-noise

krijnsent commented 4 years ago

@r3versi Any chance the map specs can be specified somewhere and/or can you point me to the right place where this can be found?