Announcement

Collapse
No announcement yet.

Random map scenarios

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Random map scenarios

    In accordance with Mark's suggestion, I am starting a thread dedicated to issues relating to random map scenarios.

    Demo 7.1 does have random maps, but they are not yet scenarios, since they have no civilizations.

    The maps are simple fractals using a midpoint algorithm, with a sea level added later to set the amount of land.

    Since the only variable is altitude, only altitude related characteristics are used. This means that the available terrain types are ocean, coastal sea, flat land, rolling, broken and mountains, in increasing order of altitude.

    As Laurent said:
    Then we need hygrometry (desert/humid squares) and vegetation (forests/plains).
    Both of these models are dependent on climate patterns, which I will add when I figure out how to do it. If anyone has any references on coding such things I would much appreciate any help here.

    I certainly do want this completed in time for D8.

    Cheers

  • #2
    Hey Gary. On climate...

    Here's a link to a site with an interesting digram of wind patterns and how they emerge. Just scroll down a little bit



    I presume a crude estimate of water put into the air, combined with where the winds tend to blow it would be a first step. When you think you're a few weeks from doing the first crude pass at the climate coding let me know, and I'll see if I can lure Paul Crocker into working on it a bit. Paul was responsible for the first shot at a map generation model way back, and seemed to know his stuff! An eight-zone model like that shown in the diagram on that web page is the sort of thing he wanted to use.
    Last edited by Mark_Everson; August 30, 2002, 22:40.
    Project Lead for The Clash of Civilizations
    A Unique civ-like game that will feature low micromanagement, great AI, and a Detailed Government model including internal power struggles. Demo 8 available Now! (go to D8 thread at top of forum).
    Check it out at the Clash Web Site and Forum right here at Apolyton!

    Comment


    • #3
      Please take a look at the ecology model. I have designed it with map generation in mind and set up a way to link climate with disasters, vegetation etc.

      Last edited by Simon Loverix; September 2, 2002, 08:03.

      Comment


      • #4
        I did reread the ecology model, but it tends to concentrate on rather minor ecological details (like wetlands) and does not give any real help in a large scale map generation algorithm, apart from saying things like "wind patterns should be taken into consideration".

        What wind patterns? Where exactly are they? How do mountains affect them? How, exactly, do they generate high or low rainfall areas? How do they vary seasonally? In the long term?

        In order to produce good map generating code I need specific answer to these and similar questions, in a similar detail to that provided for, for example, the social model.

        Cheers

        Comment


        • #5
          I thought there was an effect of altitude stated in the model, like moving climate zone 110km towards the pole for every 100feet altitude or something, and a repartition of zones per latitude.
          Clash of Civilization team member
          (a civ-like game whose goal is low micromanagement and good AI)
          web site http://clash.apolyton.net/frame/index.shtml and forum here on apolyton)

          Comment


          • #6
            I thought there was an effect of altitude stated in the model, like moving climate zone 110km towards the pole for every 100feet altitude or something, and a repartition of zones per latitude.
            That may help for temperature (if we knew the temperature distribution by latitude, which we don't), but does not help with wind dominated moisture levels. Nor does it help simulating things like the Gulf Stream.

            Cheers

            Comment


            • #7
              Gary, are you referring to the most recent version of the ecology model (3.0)? Follow the link I pasted into my previous post, you can download it from there.

              Comment


              • #8
                Wind directions, as can be seen in one of the pictures on the page Mark_Eversons linked to:
                0-30: east to west, trades
                30-60: west to east, westerlies
                60-90: east to west, polar easterlies
                A rough way to similute moisture would be to see how long stretch of water a wind has covered before reaching land, and let the air moisture be proportional to that. Then for each land square, the moisture in the air is decreased, and instead the moisture on the land for the square is increased. Mountains should be more wet than plains, since they generate more rainfall.

                Water currents often go in the same direction as the winds, but follow circular patterns. A sea large enough to be swept by both westerlies and trades, will have a clockwise current (if it lies on the northern hemisphere) because the south of it will be swept to the west, and the north of it to the east. When the water moves north it will be warmed, and by the time it moves back it will have cooled. So on the northern hemisphere east coasts should be warmer than west coasts.

                There is an animated picture that illustrates the principle on http://mbgnet.mobot.org/salt/motion/current.htm

                Comment


                • #9
                  Hi RM, thanks for the writeup and link! I think the solar flux hitting the water is another important factor in how much water vapor gets into the air. FE much more water should go into the air near the equator than at the poles. I'm hoping someone will turn up that can characterize a relatively simple model that still gets the important factors. I think we have most of the building blocks, just specifying them in terms of the map details is what's needed.

                  Of course, a relatively simple model might not work, but I think it stands a good chance of giving ok, or even intriguing maps.
                  Project Lead for The Clash of Civilizations
                  A Unique civ-like game that will feature low micromanagement, great AI, and a Detailed Government model including internal power struggles. Demo 8 available Now! (go to D8 thread at top of forum).
                  Check it out at the Clash Web Site and Forum right here at Apolyton!

                  Comment


                  • #10
                    I did include a similar way to handle wind currents in the ecology model. But the page on the web site was never upgraded, though I sent a copy to Dom. Mark, can you put it on it's place? (link in the above post)
                    Thanks.

                    Comment


                    • #11
                      Hey Simon, thanks for the reminder. I've asked che to put it up. As Gary said though the v3 model doesn't have enough details to give him what he'd need for coding. Interested in making it more specific, per his comments?
                      Project Lead for The Clash of Civilizations
                      A Unique civ-like game that will feature low micromanagement, great AI, and a Detailed Government model including internal power struggles. Demo 8 available Now! (go to D8 thread at top of forum).
                      Check it out at the Clash Web Site and Forum right here at Apolyton!

                      Comment


                      • #12
                        Well for wind patterns and percepitiation, most major wind currents generally flow west to east and this in combination with mountain ranges causes wetter areas to the west and dryer to the east.

                        Also like water, wind takes the path of least resistance, so a small grouping of mountains may not get much wind as the current flows around it.

                        Major post-industial Cities affect climate by creating local areas of high pressure zones above them that will bounce small fronts around them.

                        I'm not quite sure how major watter currents are formed, except they generally help regulate the ocean tempatures, but can be broke down easily with heavy rainfalls.
                        Which Love Hina Girl Are You?
                        Mitsumi Otohime
                        Oh dear! Are you even sure you answered the questions correctly?) Underneath your confused exterior, you hold fast to your certainties and seek to find the truth about the things you don't know. While you may not be brimming with confidence and energy, you are content with who you are and accepting of both your faults and the faults of others. But while those around you love you deep down, they may find your nonchalance somewhat infuriating. Try to put a bit more thought into what you are doing, and be more aware of your surroundings.

                        Comment


                        • #13
                          I have taken a look at ecology model 3.0 and have some suggestions on wind and moisture distribution. It departs much from model 3.0 in these two areas, but I think it will lead to generation of smoother worlds and less special cases in the code. It is a rather long description, be warned.

                          It seems that in the model winds will be represented by vectors, and they will be rare compared to the number of squares. Why not let each square have its own (smaller) wind vector? It seems to me that if you want to use the winds for things like sailing movement you will still need the wind at each square, and then you will have to interpolate, if you use model 3.0. I would suggest generating wind direction for each square when generating the world and then be done with it.

                          I do not think mountains should turn the winds away completely, as suggested by model 3.0. Perhaps slowing windspeed (If you use 1 wind/square, then the vector length can be used as windspeed rather than actual stretch) is reasonable though.

                          Winds move mostly in west-east direction or east-west direction in 7 bands. The direction can be approximated for each square by something like f(y) = sin(5*pi*y/total_height_of_map) ), where positive direction is west. But you probably want to modify the strength of the winds by some latitude dependent amplification, and add some random noise, both in north-south and east-west directions, to make it less uniform and predictable. And change the winds with respect to mountains, of course.

                          Moisture can be generated by
                          1. First approximating general air humidity in each square using solar flux as suggested by Mark_Everson. Air humity near the equator should be very high, near the poles low. Air humidity in land squares should initially be zero.
                          2. Air humidity can then be "smudged" by the winds by an iterated process moving some of the air humidity in the wind direction for each square.
                          3. Moisture on land can then be calculated by some nice formula using air humidity, altitude and distance to poles and equator. You probably want to test empirically which formula makes the nicest moisture distributions before deciding exactly which. When you are done, you can release the air humidity data from memory, if you do not wish to use it any more. You probably only want it when generating the world.

                          Later when rivers and lakes are implemented, that can also be taken into account for in the moisture calculation process.

                          The main benefits of my suggestions:
                          1. One way to calculate moisture and winds for all squares regardless of climate zone ( temperate, tropical etc. ), no special cases in the code needed and most likely worlds that seem less "discrete".
                          2. Winds calculated for all squares ONCE at world generation. No interpolation between longer windstretches needed. (Local wind changes near cities, like Lord God Jinnai suggested, can of course still be implemented.)

                          Comment


                          • #14
                            Interesting post, RM. And it wasn't that long, either.
                            I am a bit afraid that per-square (or -polygon) winds would still need some smoothing. Winds in a square depend on the neighbouring squares, so some interpolation is inevitable if you don't want to have winds like WWEWW in neighbouring squares, with the Eastward anomaly explained by nothing. I am not sure whether it would change the generation of terrain enough to bother with, though.
                            Clash of Civilization team member
                            (a civ-like game whose goal is low micromanagement and good AI)
                            web site http://clash.apolyton.net/frame/index.shtml and forum here on apolyton)

                            Comment


                            • #15
                              RM:
                              I still think intereplation would be the easier course to go given LD's response.

                              Also mountains should affect both direction and speed, depending on the type and area.

                              On the moisture thing:
                              When generating oceans, 1 point should be chosen ouside a continental shelf. Then fill all squares to X height like a bucket or whatever. This allows for below-sea level lands which otherwise would require more work later on.

                              The next step seems fine, assuming everything else works the way its suppose to.

                              Thus areas with high mostiure concentration and are fairly close to sea level would become swamps while the those far below sea level would become lakes. This also applies to high level areas too, but those are much rarer. Basically right now the differeance in determining a swamp vs. a lake is if the water can escape to the ocean.

                              Next would come rivers and underground water sources, both of which, would probably be randomly generated as i don't think we will be having a complex geology infrastructure.

                              Then Erosion needs to go last as it will affect lakes...perhaps making them larger in area and also adding land to deltas...

                              Finally vegitation.
                              Which Love Hina Girl Are You?
                              Mitsumi Otohime
                              Oh dear! Are you even sure you answered the questions correctly?) Underneath your confused exterior, you hold fast to your certainties and seek to find the truth about the things you don't know. While you may not be brimming with confidence and energy, you are content with who you are and accepting of both your faults and the faults of others. But while those around you love you deep down, they may find your nonchalance somewhat infuriating. Try to put a bit more thought into what you are doing, and be more aware of your surroundings.

                              Comment

                              Working...
                              X