Loading ...
Sorry, an error occurred while loading the content.

Re: [atlantisdev] Re: Map Generation

Expand Messages
  • JT
    ... Hash: SHA1 ... Not really easily doable *currently* due to how much really is still hardcoded into things rather than table driven. ... I haven t had time
    Message 1 of 14 , Apr 25, 2002
    • 0 Attachment
      -----BEGIN PGP SIGNED MESSAGE-----
      Hash: SHA1

      On Thu, 25 Apr 2002, wacky_wizard001 wrote:
      > this way someone can change there world to their likeing without the
      > need to compile each time. you would only need to complie to actualy
      > change how the game is built. this will allow people who dont have or
      > have problams compiling, seting up a game.

      Not really easily doable *currently* due to how much really is still
      hardcoded into things rather than table driven.

      > is the part i did on evicting a unit going to be used. i have been
      > waiting to see if it was used before i go to another problam on the todo
      > list. as i have little time and didnt want to wast it on programe if its
      > not used.

      I haven't had time to look at it, I'm sorry Peter. As I said a few days
      ago, I haven't had *ANY* time to spend on the atlantis code in over 2
      months. Some of this is due to my work, which is in beta-mode, and will
      remain there through august. Yet more of this is due to the fact that my
      life is just incredibly busy outside of work right now. I haven't had
      time to work on code of any sort, atlantis or otherwise. All I can do is
      ask you to bear with me and please continue working on items on the TODO
      list if they strike your fancy.

      > im not the best programer in C, but i want to give it a go and if there
      > was a problam with it i would like to know so i can not make the same
      > mistack next time.

      Looking around here, I cannot find the patch you sent, which means that I
      probably lost it somewhere.. Would you resend it, and I'll at least try to
      take some time to go over it and give you feedback on it.

      - --JT

      - --
      [-------------------------------------------------------------------------]
      [ Practice random kindness and senseless acts of beauty. ]
      [ It's hard to seize the day when you must first grapple with the morning ]
      [-------------------------------------------------------------------------]
      -----BEGIN PGP SIGNATURE-----
      Version: GnuPG v1.0.6 (GNU/Linux)
      Comment: For info see http://www.gnupg.org

      iD8DBQE8yIUNlZQYYI16LJQRAs/nAKCDjWjXGSYQ/37cBzkifOMxQM5+kgCfcYNp
      uspN4dvK41JnKr2EdTGvW6c=
      =xM3R
      -----END PGP SIGNATURE-----
    • John Woolsey
      Anyone have any thoughts about map generation for Atlantis? Someone wrote one on brownian motion at one point. I am looking for startegies for map generation
      Message 2 of 14 , Nov 18, 2004
      • 0 Attachment
        Anyone have any thoughts about map generation for Atlantis? Someone
        wrote one on brownian motion at one point. I am looking for startegies
        for map generation or people who are interested in that kind of thing.

        On another note I started looking through the object model in Atlantis
        and I agree with the statement it could use a little work. I am working
        on developing a better object model for it if anyone is interested in
        that kind of stuff.


        - bfn - JAW
      • Jan Rietema
        On Thu, 18 Nov 2004 08:47:19 -0500 ... Hi John, I wrote map generation code based on a fractal algorithm. I say based-on because the terrain layout is not
        Message 3 of 14 , Nov 22, 2004
        • 0 Attachment
          On Thu, 18 Nov 2004 08:47:19 -0500
          John Woolsey <jwoolsey@...> wrote:

          > Anyone have any thoughts about map generation for Atlantis? Someone
          > wrote one on brownian motion at one point. I am looking for startegies
          > for map generation or people who are interested in that kind of thing.

          Hi John,

          I wrote map generation code based on a fractal algorithm. I say
          "based-on" because the terrain layout is not taken 1:1 from the fractal
          map, but modified according to the needs of the game a bit more, to be
          more controllable by GM-set parameters (such as ocean%, continent size,
          etc). You'll find that code in the A5 source in the kingdoms/map.cpp
          file.
          Fractal generation looks fairly straight-forward but the crucial details
          come into play when you consider balancing those random maps and
          distributing terrain evenly. I went to great pains to balance the
          various terrains' frequency, but every time I worked on the algorithm I
          could just start that balancing again. I went and devised a model of
          terrains based not on discrete types, but on parameters from which
          movement cost, resource types (as well as monster and races) and terrain
          distribution according to the fractal geographic parameters could be
          derived. I never implemented that because it would have needed a
          reworking of much of the gamedata.cpp structure, but it's complete from
          a design perspective.

          Of course, when you start rewriting the game from scratch, especially
          with a new object model, all these things spring to mind again...

          I'd be willing to help and contribute on this issue - and because I've
          worked with the nuts and bolts of atlantis map generation in it's
          current form I might have something worthwhile to contribute (and would
          really love to go beyond the current game's limitations).

          Cheers,

          Jan


          >
          > On another note I started looking through the object model in Atlantis
          > and I agree with the statement it could use a little work. I am
          > working on developing a better object model for it if anyone is
          > interested in that kind of stuff.
          >
          >

          > - bfn - JAW
        • John Woolsey
          At this point I am keeping it simple. I am trying to build MapTemplate which is a template of all of the basic terrain types. I then place all of the map
          Message 4 of 14 , Nov 23, 2004
          • 0 Attachment
            At this point I am keeping it simple. I am trying to build MapTemplate
            which is a template of all of the basic terrain types. I then place all
            of the map generation in this array and then use the array to generate
            the map. The idea behind this is that the GM can persist this data
            change whatever and then build the map off it. For my current design of
            map generation it ignores the placement of terrain and simply uses a
            static map to put it all together. Most of the details of the terrain
            should be auto generatable from there. Also something neat I tossed in
            is a better concept of adjacent hexes. So for example you can say
            HILLDWARF MOUNTAIN in the plains template and hill dwarves will be
            spawned in plains hexes next to mountains. Same in concept to the ocean
            races, but more generic. If you wanted a race to be really rare you
            could sneak it in this way and it would only occur in these combined
            terrains. For example hawk people might only occur in mountains next to
            plains. Similar entries could be used to put Eskimos into hexes next to
            tundra. Also I added a lat for terrain types. So for example tundra is
            0,15. This means it can only occur on the caps. Jungle is 40,50 which
            puts it near the equator etc.

            So to simplify the concept of a fractal map. It basically uses a fractal
            as a random number generator? Or does it generate a fractal and then
            attempt to make the map look like that fractal?

            On another note I am still working on a public cvs. I believe it will
            happen tomorrow. I got asked to take over teaching a course which starts
            on Saturday so I will not get much time to work as I am preparing for
            the course. Likely I won't do much other than simple stuff and think
            until Sunday.


            - bfn - JAW


            Jan Rietema wrote:

            >On Thu, 18 Nov 2004 08:47:19 -0500
            >John Woolsey <jwoolsey@...> wrote:
            >
            >
            >
            >>Anyone have any thoughts about map generation for Atlantis? Someone
            >>wrote one on brownian motion at one point. I am looking for startegies
            >>for map generation or people who are interested in that kind of thing.
            >>
            >>
            >
            >Hi John,
            >
            >I wrote map generation code based on a fractal algorithm. I say
            >"based-on" because the terrain layout is not taken 1:1 from the fractal
            >map, but modified according to the needs of the game a bit more, to be
            >more controllable by GM-set parameters (such as ocean%, continent size,
            >etc). You'll find that code in the A5 source in the kingdoms/map.cpp
            >file.
            >Fractal generation looks fairly straight-forward but the crucial details
            >come into play when you consider balancing those random maps and
            >distributing terrain evenly. I went to great pains to balance the
            >various terrains' frequency, but every time I worked on the algorithm I
            >could just start that balancing again. I went and devised a model of
            >terrains based not on discrete types, but on parameters from which
            >movement cost, resource types (as well as monster and races) and terrain
            >distribution according to the fractal geographic parameters could be
            >derived. I never implemented that because it would have needed a
            >reworking of much of the gamedata.cpp structure, but it's complete from
            >a design perspective.
            >
            >Of course, when you start rewriting the game from scratch, especially
            >with a new object model, all these things spring to mind again...
            >
            >I'd be willing to help and contribute on this issue - and because I've
            >worked with the nuts and bolts of atlantis map generation in it's
            >current form I might have something worthwhile to contribute (and would
            >really love to go beyond the current game's limitations).
            >
            >Cheers,
            >
            > Jan
            >
            >
            >
            >
            >>On another note I started looking through the object model in Atlantis
            >>and I agree with the statement it could use a little work. I am
            >>working on developing a better object model for it if anyone is
            >>interested in that kind of stuff.
            >>
            >>
            >>
            >>
            >
            >
            >
            >> - bfn - JAW
            >>
            >>
            >
            >
            >
            >To Post a message, send it to: atlantisdev@...
            >To Unsubscribe, send a blank message to: atlantisdev-unsubscribe@...
            >Yahoo! Groups Links
            >
            >
            >
            >
            >
            >
            >
            >
            >
            >
            >
          • Jan Rietema
            On Tue, 23 Nov 2004 23:23:52 -0500 ... IMHO, this is exactly what should be avoided in any rewrite of Atlantis: static cross-references between different sets
            Message 5 of 14 , Nov 24, 2004
            • 0 Attachment
              On Tue, 23 Nov 2004 23:23:52 -0500
              John Woolsey <jwoolsey@...> wrote:

              > Also something neat I tossed in
              > is a better concept of adjacent hexes. So for example you can say
              > HILLDWARF MOUNTAIN in the plains template and hill dwarves will be
              > spawned in plains hexes next to mountains.

              IMHO, this is exactly what should be avoided in any rewrite of Atlantis:
              static cross-references between different sets of data like terrain,
              races, monsters...
              BTW, atlantis currently uses a different process of "growing races" from
              their terrain of origin which allows something similar to happen -
              without altering the gamedata. Basically races can just "spill over"
              into neighbouring terrain, if there are no natives to contend that
              region with them.

              > Also I added a lat for terrain types. So
              > for example tundra is 0,15. This means it can only occur on the caps.
              > Jungle is 40,50 which puts it near the equator etc.

              Again, equator and polar circle depend on the world geometry, and surely
              shouldn't crop up in the basic gamedata templates? You are effectively
              setting the world size in stone (well, the GM would have to change all
              the data manually).

              > So to simplify the concept of a fractal map. It basically uses a
              > fractal as a random number generator? Or does it generate a fractal
              > and then attempt to make the map look like that fractal?

              Most map generators seem to use the simple diamond-square algorithm. The
              existing fractal map generation computes a distribution of four or five
              geographic parameters across the world map with this process. Imagine
              having an elevation map overlaid with a similar map of temperature
              (given border conditions to resemble the poles and equator), humidity
              and vegetation (and even culture). Then terrain gets assigned according
              to where it fits best. All with an eye to keeping a balance between all
              terrain types, so that maps don't turn out to be 45% ocean, 50% mountain
              and 5% others (for instance). That latter part is where I have spent
              hours upon hours, and each new terrain you'd add or take away would skew
              the whole balance...

              > On another note I am still working on a public cvs. I believe it will
              > happen tomorrow.

              Neat.

              > Likely I won't do much other than simple stuff and think until Sunday.

              Sure. Atlantis took more than a decade to be where it's at now. No need
              to hurry with this :). (at least that's one way to look at it...)

              Cheers,

              Jan
            Your message has been successfully submitted and would be delivered to recipients shortly.