Announcement

Collapse
No announcement yet.

[Map Script] SmartMap

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

  • [Map Script] SmartMap

    Yes, it works with 1.61, with mods, and with multiplayer.

    Get it from the download link below.

    Version 9.1 update with ability to load and scale WBS savegames!

    Version 9.0 new version with new earth maps feature!

    Unzip to your publicmaps folder. Use by selecting customgame, and selecting SmartMap as the map.
    The single most common error is to wind up with an extra folder: civ iv folder\PublicMaps\SmartMap\SmartMap.py rather than the correct:
    civ iv folder\PublicMaps\SmartMap.py

    This map script can create an incredible assortment of gameplay experiences.

    Here's a random sampling of outcomes:
    First row: High Sea level, Large size, assorted options.

    Second row: Med Sea level, Large size, assorted options.

    Third row: Low Sea level, Large size, assorted options.



    You can see a screenshot of all the custom options in the post below.

    Here's a picture of the new earth maps:
    Attached Files
    Last edited by DougM; June 17, 2006, 14:15.
    Check out SmartMap: my ultra flexible map generator for civIV.
    http://apolyton.net/forums/showthrea...hreadid=147547

  • #2
    shot of the map options

    Here's a peek at the custom options:



    And from the readme, here's information on how to use it:

    ReadMeSmartMap.txt
    ReadMe file describing how to use SmartMap, and its various features.

    SmartMap has two related discussion threads.
    CivFanatics:
    Yes, it works with 1.61, with mods, and with multiplayer. Get it from the download link below. Version 9.1 update released, now loads and scales WBS files, plus loads blue marble terrain and WBS terrain for those maps! Version 9.0 new version with new earth maps feature! Unzip to...

    Apolyton:


    Sections:
    1) How to use
    2) Options
    3) Thanks
    4) Version History


    1) How to use
    Extract the SmartMap.py to your CivIv install directory's PublicMaps
    folder. Start the game, and select Single Player followed by Custom Game.
    On the option titled 'Map:' select SmartMap as the map. Set other options
    to your liking (I suggest trying all the defaults first!), and Launch!

    A common error is to extract to civdir\PublicMaps\SmartMap\SmartMap.py. You
    want to just have civdir\PublicMaps\SmartMap.py

    Be patient. This script is slower than many of the default scripts. A large
    map takes about 30 seconds to generate on my 1.8ghz pentium-M laptop. Huge
    takes close to a minute. Pangea is the slowest to generate, picking fair
    start locations on a pangea takes a lot longer.


    2) Options
    Options are the point of SmartMap. There are a bunch of them. I will
    describe how to use each of them in turn to get just the map you are
    looking for.

    Map: SmartMap, otherwise you're not using SmartMap!

    Size: Duel, Tiny, Small, Standard, Large, Huge. SmartMap will use this
    setting to determine the overall area of the map, unless you choose to override
    the width and height manually, as explained later. SmartMap picks a random
    width and height that produce the required area, so not all maps will be the
    same shape (if you want to force a specific shape, use the overrides
    described later).

    Climate: Temperate, Tropical, Arid, Rocky, Cold. These mean approximately
    what they do in the normal map scripts. Tropical has less desert and jungle than
    you would get in the normal generator. If you feel like you get too much tundra
    and snow in temperate, try tropical. Arid produces a lot of desert. Rocky means
    an extra boost to hills and mountains. Cold means more snow and tundra.

    Sealevel: low, medium, high. This option is used by SmartMap in a unique way.
    Since SmartMap offers a direct ocean percent control, sealevel is used to control inter
    continental strategy. In particular:
    Low = all land on the map MIGHT (or might not) be reachable by galley
    Medium = it is very unlikely you will be able to reach another continent by galley,
    but contact between civs on different continents may happen early due to
    influence borders touching (it is only possible to reach another continent
    occasionally by galley due to a bug in civiv that will rarely allow a galley
    to enter an ocean tile).
    High = guaranteed that you cannot reach another continent by galley, and civ contact
    between different continents will not happen until two near as possible cities
    both reach level 3 culture, or caravel (almost always caravel happens first).
    This option is not guaranteed to be enforced if you select a non-default land style, as
    explained later.

    Era / Speed: These options are not affected by and do not affect SmartMap. They are for the
    mod or the game to use.

    Continents: Controls the number of continents generated by the script. Each option is fairly
    self explanatory. On low sea level, continents are permitted to merge, so you may receive less
    than the expected number of continents. You may also receive less than the expected number if
    the script cannot find enough room (as might happen if you select duel size with 36 continents).
    You may receive more than the expected number if you select a non-default land style, as explained
    later. If you select 0 continents, you'll get a very archipelago style map. You may also select
    'single tile isles' if you are playing a mod that prefers maps with only single tiles (such as
    planetary space based mods). You can also select various specific land forms, such as earth,
    north america, south america, africa, europe, asia, and australia.

    Terrain: selects a terrain generator. The terrain generator decides if a given land or hill plot is
    a desert, plains, grass, tundra, or snow. The oasis and great plains generators are taken from those
    scripts, while standard is just what you normally get on default scripts. SmartMap is a custom terrain
    generator that knows how to generate terrain for all kinds of map setups. You can also use this
    setting to exclude certain types of terrain such as desert. I recommend SmartMap. There are
    additional options that will restrict or alter the types of terrain offered as well,
    such as no snow or desert or more grass.

    Features: selects a feature generator. Features are things like oasis, flood plains, forest, and jungle.
    They go on top of the base terrain to enhance it in some way. Again, the oasis and great plains options
    are just what you'd expect from those scripts. Note that you do NOT have to match terrain and feature
    generators. Oasis terrain with Great Plains features works just fine, as do all other combinations.
    The default SmartMap feature generator generates a few combinations that do not occur in the standard
    scripts, in particular things like floodplains on grass are possible, and oasis will occassionally be seen
    on tundra. These are things that happen on earth, and so are 'realistic' but some may find undesireable
    because they aren't normal in the sense of the default scripts. If you are one of these people, there is
    the SmartMap Strict option, which to the best of my knowledge will not generate any combinations not found
    in the default scripts. I recommend either SmartMap or SmartMap strict.

    Bonuses: selects how bonuses are placed. You can choose from the standard placement or SmartMap placement.
    SmartMap attempts to be fairer about how resources are placed strategically, and offers control over how many
    resources you get. There are restricted placement options that place resources more like the standard
    generator, or which obey additional rules enforced by the standard generator. I recommend SmartMap Normal.

    Goodies: selects how goody huts are places. Options are similar to resources, but also includes an option
    to disable goody huts entirely (SmartMap None). I recommend SmartMap Normal.

    Ocean: determines the percentage of ocean to be used on the map. Note that selecting low ocean
    levels may result in a map with significantly more useful land area than is typically expected for
    a given size of map, and may cause a gameplay imbalance. There is a no ocean option which will produce
    lakes but not ocean, and a no lakes, no ocean option which will produce an all-land map. You may also
    choose from various options that will generate an inland sea or lakes rather than an ocean based map.

    Hills: allows you to specify what percentage of the land area should be coverd in hills.

    Peaks: allows you to specify what percentage of the land area should be coverd in peaks. The no block
    options will prevent certain situations where a single peak blocks access to a resource.

    Forest/Jungle: allows you to specify if you'd like more or less than the standard amount of forest and
    jungle. Note that this option only affects the results of the SmartMap feature generator.

    Rivers/Lakes: allows you to specify if you'd like more or less than the standard amount of rivers and
    lakes. Note that this option only affects the results of the SmartMap feature generator.

    Land Style: this option controls a couple of special features that are that are included to allow for a
    greater map variety. First, you can control how round your continents will turn out. Rounder
    continents have a tendency to be more fair, so very round is the default. As you transition to somewhat or
    less round, you will get odder continent shapes which various people have requested, or find to be
    'more realistic'. Independently, you may also choose a level of fragments. Fragments are little pieces
    of land added randomly to the map which will appear as archipelagos or odd continent outgrowths, or tiny
    islands. You can get all sorts of interesting growth patterns with these. However, since they may be
    placed anywhere, they may violate the sea level guarantees of separation. They may completely join
    continents, or make them reachable by galley. Nevertheless, some people wanted this as another way to
    have more varied or realistic maps. The default for this option is very round, no fragments, which provides
    the most guarantees of fair gameplay, particularly for multiplayer games. For single player games, you
    may have fun seeing what interesting other types of maps you can get with this option.

    Start Placement: selects how player start positions are determined. The SmartMap option attempts to do a
    fairer job of placing players based on an analysis of the positions of strategic resources, and is also
    more likely to place your initial settler on a tile with one tile of ocean access so that your capital can
    build ocean buildings. It also prefers to place start positions on hills, because of the defensive bonus.
    You can also select placement that will prefer inland or coastal starts either just for the human player,
    or for all players. The 'new world' options will attempt to place all players in the eastern half of the
    map

    Wrap: allows you to specify whether the map wraps around the border in x and/or y. X wrapping is
    the standard circumnavigatable globe you probably expect, but the other options may provide for
    an entertainingly different gameplay experience. You can also select central pole with any of the above,
    in which case you will find an additional 'pole' (icy area) in the center of the map. This is the
    equivallent of polar projection.

    Override width/height options: these options allow you to force SmartMap to generate a specific size of map
    to your liking. This can allow you to generate absolutely huge maps beyond the size that your computer
    memory can hold, so be careful with this. Multiply the width you select by the height you select to get
    the total number of tiles your map will have.

    Override separation: this option allows you to override the sea level control, and gives you the ability
    to pick a continental separation of your liking. In particular, this makes it possible to ensure that
    culture boundaries on separate continents will never touch, or to allow continents to come within exactly
    one coastal tile of each other, without having to resort to using fragmented land.

    All options now have an added 'smartmap random pick' option, which will choose among the most commonly
    preferred options on that particular menu. This is particularly useful for override width and height where
    the normal 'random' option will often return values too large and cause your computer to run out of memory.

    3) Thanks
    I'd like to thank the following people for their contributions:
    Sirian : for answering a number of questions about how map scripts work
    A Silly Goose @ CivFanatics : for early feedback
    lordroy @ CivFanatics : for lots of feedback and screenshots
    Victorvanwavere : suggestion to have a forest/jungle setting & what became land style
    Randle @ CivFanatics : report of getting capital on wrap border
    Silver14 @ Apolyton : report of too many very tall maps when x-wrapping and other early feedback
    alms66 @ Apolyton : also suggested the forest/jungle setting, and other early feedback
    Commander Bello @ Apolyton : manual width/height override and other feedback
    skodkim @ Apolyton : assorted feedback
    battists @ Apolyton : idea for this readme!
    ShallowGrave @ CivFanatics : finding the overrides bug in 8.0
    Sto : helpful discussion and bug finding
    DG : regular feedback and bug reports
    Last edited by DougM; May 26, 2006, 15:30.
    Check out SmartMap: my ultra flexible map generator for civIV.
    http://apolyton.net/forums/showthrea...hreadid=147547

    Comment


    • #3
      13/4/06 - Removed post information as it was outdated.
      Last edited by Silver14; April 13, 2006, 15:29.

      Comment


      • #4
        version history

        # Version History
        # 9.0
        # New land layout: earth. Selecting this will generate the earth, with source data
        # from a blue marble projection. This is a highly accurate earth layout, with peaks
        # and hills somewhat fuzzed to make for a more playable map.
        # Also added: north america, south america, africa, europe, asia, australia
        # All of the new maps are based on blue marble data, and so are going to be more accurate
        # than they are going to be strategically well designed, and resource placement will
        # be random rather than historically accurate. The current version will also have
        # generated terrain, but the next version will probably include an option to use
        # terrain sampled from blue marble data.
        # New resource placement options: very many (places a _lot_ of resources), crazy, and
        # crazy many. The crazy options place resources on any workable tile. This makes for
        # a rather different gameplay experience.
        # New terrain placement option: crazy which will place terrains randomly.
        # New feature placement option: crazy which will place features randomly.
        # Protected read / write of the smartmap config file so file errors won't cause a script
        # error, and moved the config file to the user dir, which should help people not playing
        # as admin on windows.
        # Improved odds of generating flood plains in desert river tiles.
        # Changed the grid infos to be compatible with mods with arbitrary number of map sizes, which
        # will make smartmap compatible with mods that have more than the usual number of map sizes.
        # This change also makes SmartMap maps closer to the usual size.
        # Improved speed for calculating the altitude of plots on very land heavy maps.
        # Call the python garbage collector and clean up memory usage to allow larger maps. I can
        # now generate maps somewhere around 10% larger than before. I can now generate a map
        # with twice the area of the usual huge, and start it on my 1G computer.
        # Base CivIV = 200M, 280x84, 65% ocean = 500M, 280x84 0% ocean = 700M, that's roughly
        # 13K or so per additional land tile allocated by CivIV, so keep that in mind when
        # deciding on your ocean levels.
        # Fixed a bug that tried to place continents too close to the map edges some times.
        # Fixed a bug with regenerate map that occurs if you load a first turn savegame and then
        # immediately try to regenerate it, thanks skovran for the report.
        # Cleaned up code in player placement, improved speed.
        # Added catches to player placement to prevent overlapping starts. If an
        # overlapping start is somehow generated (a bug reported a couple of times),
        # it will now fallback to standard placement mode. I'm unsure how an overlapping start
        # can ever happen in the first place, but this should really guarantee it is impossible
        # for it to get through and actually place the players that way.
        # Fixed a bug that would sometimes misjudge whether or not to place additional players
        # on a large continent.
        # Improved the way continents are calculated to be more accurate in certain cases around
        # blocking peaks, and improved performance.
        # 8.7
        # Added 3 great lakes options (few, normal, many). This will generate a map with a number
        # of large lakes (large enough to typically have ocean tiles).
        # Edge sea and corner sea were reversed in what they generated, fixed.
        # Corrected the usage of cardinal directions, thanks to Sto for noticing. This turned out to
        # be harmless, but would show up in the xml error log.
        # Fixed bug with generating inland sea maps, thanks DG for noticing.
        # Corrected minor math error in hill placement that was generating more hills than specified.
        # Corrected disagreement between ocean percentage and size of central sea in such maps.
        # Fixed problem with counting number of available sea resource spots that would place too
        # many sea resources on certain styles of maps.
        # Removed all used of CyPlot.isCoastalLand() because this method doesn't do what you'd expect.
        # Forced central sea maps to keep the central sea away from the poles to prevent splitting
        # the map in two.
        # Speed up altitude calculation by simplifying the search for nearby ocean.
        # Speed up wetness calculation by skipping water tiles.
        # Speed up hash lookups by increasing step size.
        # These speed improvements should knock about 10-20% off the total generation time.
        # 8.6
        # Correct the override width/height entries to reflect the 'standard'
        # width and height numbers (previously this was rough, now it is exact).
        # So these numbers now match what scripts that use the base XML produce.
        # Added extra plains / extra grass options to the terrain options, which
        # will produce more of that type of terrain.
        # Added 'new world' coastal/inland start options, which will place start
        # positions in the east (as new world) but also favor coastal or inland
        # starts.
        # Added 'no block' peak options. This forbids peaks from having ocean
        # on both sides either vertically of horizontally. This prevents certain
        # common cases of resource blocking that some people found annoying.
        # Any such peak is reduced to a hill, as a result you will have less total
        # peaks on your map.
        # Improved performance of land placement in low sea width (removed unneeded checks).
        # Improved performance of land placement in high sea width by spatially
        # hashing the previously placed lands, and reducing the search for conflicting
        # lands to nearby hash entries. This makes a huge difference on big maps with
        # high sea levels selected (>50% faster).
        # Improved distribution of hills and peaks so that small continents don't get
        # a disproportionate amount of them.
        # Tweaked up likelihood of floodplains slightly. You may see a bit more desert
        # in temperate maps. If you don't like desert much you can of course turn it
        # off or switch to tropical which has much less desert.
        # Improved performance for placing resources on large maps with lots of resources.
        # Overall performance improvements will no generate the most difficult type of map
        # (huge, land heavy, high sea level map with 2 or more continents) in less than
        # a minute on my p4m-1.8ghz.
        # 8.5
        # Performance improvements.
        # Improved hill placement for a huge/65ocean/30hills map from 12 seconds to 2.
        # Improved huge/65ocean/many resources from 90 seconds to 30.
        # 8.4A
        # Quick Fix for problem with placing players on pangea maps introduced in 8.4
        # (would cause an endless loop, freezing civ iv on pangea and certain other
        # maps where it couldn't decide the best continental distribution of players)
        # 8.4
        # Tweaked resource placement to obey minlatitude and maxlatitude for the stricter
        # resource placement options (SmartMap few, and all clumping options).
        # Tweaked resource rates some more based on forum feedback.
        # Made some other adjustments to the fair resource distribution to simplify it, and
        # to distribute resources a little more evenly in certain cases. Also improved
        # chances that all expected resources will be placed.
        # Added terrain options to place no desert, no snow, no snow/desert,
        # no snow/desert/tundra, only plains, or only grass. If you wan't minimal
        # snow/desert/tundra, play on tropical, and turn jungles to light if necessary.
        # Added 'SmartMap restricted / most restricted' option to resource placement, which
        # enforces every placement rule I understand, clumps both happy and health resources,
        # and offers fewer (restricted)/much fewer (most restricted) resources in general.
        # Move the version history for prior versions to end of file
        # Added player/all inland/coastal placement options. Player inland will do its best
        # to give the first player an inland start. Coastal prefers a coastal start. All
        # attempts to do the same for all players (less likely to succeed, based on available
        # map positions).
        # Add single tile isles option. This make for a very wierd game in generic civiv, but
        # was requested by people developing space/planet based variants.
        # Fixed bug in override separation that caused it to behave always as if low sea level
        # was selected instead.
        # Added 'central pole' variation on all wrap options. This creates an icy pole in the
        # center of the map, as if you were looking down on earth from above the north pole,
        # also known as polar projection. This now allows you to have 0,1,2,3 poled maps,
        # which you can envision as different ways to unwrap a spherical world onto a flat
        # rectangular map.
        # Fixed a small math error in determining the distance from the pole/equator which
        # became obvious when working with the polar projection maps. This may cause you
        # to see a little more snow/tundra than previously.
        # 8.3
        # Tweak tundra, snow, desert picking process to make more likely on small maps.
        # Add new separation override to allow absolute control of continent separation.
        # More rivers sourced from hills if there are few peaks.
        # Added options for central, edge, and corner sea to the ocean selections to
        # generate that style of map. Particularly, if you enjoy the 'central sea'
        # map style, you can now generate that with SmartMap.
        # Tweak resource rates to make whales not quite so common, and to address other
        # resource rate comments reported.
        # Place resources in placement order to try to prevent good map positions from
        # being taken by resources placed in wrong order.
        # Added SmartMap New World placement option. This will prefer to place civs
        # only on continents in the eastern hemisphere. This option will default
        # to ordinary smartmap placement if there are not at least 2 continents, or if there
        # is not a continent at least 90% of which is located in the western hemisphere.
        # 8.2
        # Add option for 'no ocean' that will place nearly all land.
        # Note: takes longer to generate high land count maps. Be patient.
        # Add option for 'no ocean, no lakes' that will place all land.
        # Improve the placement performance of smartmap placement on high land count
        # maps by ruling out very low scoring placement positions earlier.
        # This will improve overall map generation performance slightly.
        # Small improvements to forest and lake placement, attempt to cure the
        # rare 'all forest tiles' on normal forest problem (I've never reproduced
        # this, but the chance that any such bug survived should be low.)
        # Added 'smartmap random pick' option to all (smartmap controlled)
        # menus, this makes a choice from among the more typically desirable
        # options, and also stays random the next time you create a map,
        # unlike the standard 'random' option, and even randomly re-picks if you
        # choose to 'regenerate map'. I highly recommend using this in place of
        # the standard 'random' option.
        # 8.1
        # Add Clump Health and Clump Both resource placement options.
        # Clean up land placement code organization a little bit.
        # Force release of spiral search memory, and reduce how far spiral search
        # searches to improve performance.
        # Fix the defaults for override with and height that were causing people
        # to get out of memory errors.
        # 8.0
        # Use pickle to store last preferences.
        # Tweaked the adjustment to rivers and lakes so that many rivers will be more
        # noticeable, and few lakes will really cut down the amount of lakes.
        # Fix resource rates for smaller maps.
        # Allow start placement to place settlers on hills as well as flatlands.
        # Weight hills for start placement appropriately to the defensive bonus.
        # Add spiral search feature, this may be of use to other mapmakers, used in
        # my script to assign fragments as belonging to the nearest continent. Spiral
        # search is the most efficient method of doing a 'find nearest X' on any grid
        # based map, assuming you don't have a list of all X available.
        # On higher river levels, make hills more likely to start rivers.
        # Make rivers a little more common in general. Make the automatic river for each
        # sufficiently large continent always start from a hill or peak if one is
        # available, or a random tile if no hill or peak is found.
        # Improve river paths by using spiral search to measure distance to nearest ocean
        # Don't flatten peaks on coast, as this can create interesting strategic issues,
        # and also tended to leave far fewer than the expected number of peaks.
        # Fix a bug in the start placement picker that was giving extra scores for the
        # start plot when it was supposed to be scoring nearby plots.
        # Adjust how fragments are generated, and the number of fragments for few/many,
        # to make maps using smaller numbers of fragments look less chaotic. Fragments
        # also now sort-of obey the sealevel rules: they are allowed to start anywhere,
        # but can only grow into one neighboring continent, so they are more likely to
        # create an archipelago type of continental extension, rather than so frequently
        # causing continents to merge.
        # New SmartMap Clump Happy resources option which distributes all happiness
        # resources like the standard generator (in clumps so trade is more likely to be
        # necessary, hence 'clump happy'), but other resources in the smartmap style so
        # that the distribution is fairer.
        # Corrected a small land counting problem that sometimes gave too much land for
        # a given ocean percentage.
        # Added a few new options to the override width and height to allow for generating
        # random ranges of sizes, as a couple of people had requested that.
        Last edited by DougM; May 26, 2006, 15:31.
        Check out SmartMap: my ultra flexible map generator for civIV.
        http://apolyton.net/forums/showthrea...hreadid=147547

        Comment


        • #5
          No problem.

          I'll play around with it some more when you update it.

          The oasis was next to a river if that had something to do with it?...

          Vegation seems low too. Very few, if any Jungle squares. Small forests. Desert squres seem rare as well.

          Please don't think I'm complaining, I just want to help you tweak it to produce better maps.
          Last edited by Silver14; January 20, 2006, 16:03.

          Comment


          • #6
            Originally posted by Silver14
            No problem.

            I'll play around with it some more when you update it.

            The oasis was next to a river if that had something to do with it?...

            Vegation seems low too. Very few, if any Jungle squares. Small forests. Desert squres seem rare as well.

            Please don't think I'm complaining, I just want to help you tweak it to produce better maps.
            No worries at all, thanks for providing feedback. I've fixed the resource generation, and after a few more tweaks i'll post a new version in a couple of hours. I'll have a look at making desert/jungle/forest a little more likely.
            Check out SmartMap: my ultra flexible map generator for civIV.
            http://apolyton.net/forums/showthrea...hreadid=147547

            Comment


            • #7
              version 2 uploaded

              # 2.0 Reduce bonus percentage for SmartMap bonus
              # Allow standard bonus distribution as an option
              # Bias width,height towards wrap direction
              # un-straight-edge where continents meet
              # SmartMap terrainGen allows more desert
              # SmartMap featureGen suggests more forest and jungle
              # Support for random ranges in number of continents
              Last edited by DougM; January 26, 2006, 13:50.
              Check out SmartMap: my ultra flexible map generator for civIV.
              http://apolyton.net/forums/showthrea...hreadid=147547

              Comment


              • #8
                Interesting script
                The Party seeks power entirely for its own sake. We are not interested in the good of others; we are interested solely in power. Not wealth or luxury or long life or happiness: only power, pure power.

                Join Eventis, the land of spam and unspeakable horrors!

                Comment


                • #9
                  version 3 released

                  Probably the most important new feature is that SmartMap now has custom player placement rules, which I think are somewhat fairer than the existing rules.


                  # Version History
                  # 3.0 Re-enable climate selection, which may or may not be honored
                  # Restore 36-continent option, accidental deletion
                  # Create a better default option for each selector
                  # Un-smooth edges near poles
                  # Properly handle allowing continents to wrap on wrap axis
                  # Performance optimizations by reducing function call counts
                  # Custom player placement rules
                  # Complete replacement of bonus system
                  # Separate out goody hut placement and put in correct order
                  # Cleaner debug print messages

                  (attachment deleted due to v4 release)
                  Last edited by DougM; January 30, 2006, 13:19.
                  Check out SmartMap: my ultra flexible map generator for civIV.
                  http://apolyton.net/forums/showthrea...hreadid=147547

                  Comment


                  • #10
                    hmmm... i dunno... can you give me a better discription of the 'feature' features (the last onesin the list) ? I dont seem to get what does what... Thank you.

                    Comment


                    • #11
                      Originally posted by Unimatrix11
                      hmmm... i dunno... can you give me a better discription of the 'feature' features (the last onesin the list) ? I dont seem to get what does what... Thank you.
                      Let's see if this will answer your question

                      # 3.0
                      #Re-enable climate selection, which may or may not be honored

                      In prior versions, you could not use the 'climate' option. Now you can, though it may be ignored if you choose things like 'great plains' for terrain generation.

                      # Restore 36-continent option, accidental deletion

                      Accidentally deleted the 36 continent (many small islands) option that was in 1.0 during 2.0. Restored for 3.0

                      # Create a better default option for each selector

                      Each of the various options now has a better default, such as random 2-7 continents is now the default for # of continents, and smartmap is the default for terrain generation etc.

                      # Un-smooth edges near poles

                      To avoid getting wierd graphic effects, continents are forbidden to touch the poles. In prior versions this would lead to very straight lines near the poles.

                      # Properly handle allowing continents to wrap on wrap axis

                      In prior versions, continents were not allowed to cross the edges of the map, even if map wrap was turned on for that axis. This has been fixed.

                      # Performance optimizations by reducing function call counts

                      Some code changes not relevant to an end user, other than that they improved map generation time by 50% or more.

                      # Custom player placement rules

                      You can now choose between standard player placement, and smartmap player placement. In my opinion, standard sometimes makes mistakes, and my smartmap option does a better job. This will probably be a matter of opinion, but I added this because I've seen many complaints in the forums about bad placement on custom continents map script.

                      # Complete replacement of bonus system

                      This is really just a cleanup of how bonuses are distributed over the map. You can still choose between standard and smartmap modes, and smartmap mode is significantly improved compared to version 2.0.

                      # Separate out goody hut placement and put in correct order

                      This is just a map script ordering issue. According to the mapscriptinterface, goody placement is supposed to occur 2nd to last , I had it 3rd to last previously which I took from one of the other map scripts which also did it wrong. (not that it was harmful, but for anyone attempting to use my script as a model for further development, it is helpful to do things the right way).

                      # Cleaner debug print messages

                      Just for developers, if you are trying to figure out how to do your own map scripting, I did a significant amount of work to make these messages useful.
                      Check out SmartMap: my ultra flexible map generator for civIV.
                      http://apolyton.net/forums/showthrea...hreadid=147547

                      Comment


                      • #12
                        more followup on what options mean

                        Originally posted by Unimatrix11
                        hmmm... i dunno... can you give me a better discription of the 'feature' features (the last onesin the list) ? I dont seem to get what does what... Thank you.
                        It just occurred to me that maybe I completely misunderstood your question. If you are asking about terrain/feature generation, then this is quite simple.

                        Terrain generation: this is a step in map scripting in which you convert from generic land to things like 'land-as-desert' 'land-as-plains' 'land-as-tundra' etc. I've included 4 methods: standard, great plains, oasis, smartmap. SmartMap is a naturalistic terrain similar to standard, but nicer (in my opinion of course). Great plains and oasis are straight from those scripts. Extra plains and lots of desert respectively.

                        Feature generation is then one step later, and is responsible for placement of things like oasis, forests, jungle. The same options are available as for terrain gen, but note that you can mix and match as you like (great plains terrain + oasis features is allowed).

                        Then there is bonus placement: either standard or smartmap. This is responsible for placing things like corn, coal, aluminum etc on the map. Smartmap attempts to do a better job of distributing these fairly, but if you don't like smartmap's technique, standard is available.

                        Goody placement occurs next, and uses either standard or smartmap placement, sharing the bonus placement option chosen above. Smartmap and standard placement aren't noticeably different for goodies, which is why it doesn't get a separate option. I think smartmap gives slightly more goodies.

                        Finally, there is player placement. This determines where on the map each player starts. I wrote a very complicated function for this based on my ideas of what makes for a fair start. I'm satisfied that to me, the start positions seem fairer than with standard. But as usual, since some people no doubt will not like it, standard is available as an option.
                        Check out SmartMap: my ultra flexible map generator for civIV.
                        http://apolyton.net/forums/showthrea...hreadid=147547

                        Comment


                        • #13
                          thanks

                          Originally posted by Unspeakable Horror
                          Interesting script
                          Please do let me know if you have ideas for improvement (though please see v3 first, as v3 has quite a bit of improvement). I'm definitely looking for more good ideas.
                          Check out SmartMap: my ultra flexible map generator for civIV.
                          http://apolyton.net/forums/showthrea...hreadid=147547

                          Comment


                          • #14
                            Some options for improvement:

                            "% cover" option that controls the number of land tiles covered by forest and jungle. This percentage should be high to reflect early earth (see below).

                            "% desert" option - I seem to recall the Earth being at 25% desert (including ice deserts, rocky deserts, etc.) I suppose civ's tundra would fall into this category.

                            "Earth-like" option (might work better as a seperate script completely - haven't dug into civ4 enough to say)
                            Sets all other options to produce the most earth-like results.
                            This option should also generate very earth-like continents by using the exact same approximate triangular shapes of earth's continents (which you can figure from one of the many earth maps available), and applying the fractal algo to those, rather than picking random points to start the fractal algo from. In this way, there will always be a "North America", "South America", "Europe", "Antarctica", "Australia", "Asia" and "Africa" - plus an Island chain in the Caribbean and Indonesia - but the land masses won't be identically shaped to earth's.

                            -edit-

                            Sorry, btw, very good script.

                            Comment


                            • #15
                              Originally posted by alms66
                              Some options for improvement:

                              "% cover" option that controls the number of land tiles covered by forest and jungle. This percentage should be high to reflect early earth (see below).

                              "% desert" option - I seem to recall the Earth being at 25% desert (including ice deserts, rocky deserts, etc.) I suppose civ's tundra would fall into this category.

                              "Earth-like" option (might work better as a seperate script completely - haven't dug into civ4 enough to say)
                              Sets all other options to produce the most earth-like results.
                              This option should also generate very earth-like continents by using the exact same approximate triangular shapes of earth's continents (which you can figure from one of the many earth maps available), and applying the fractal algo to those, rather than picking random points to start the fractal algo from. In this way, there will always be a "North America", "South America", "Europe", "Antarctica", "Australia", "Asia" and "Africa" - plus an Island chain in the Caribbean and Indonesia - but the land masses won't be identically shaped to earth's.

                              -edit-

                              Sorry, btw, very good script.
                              I will go ahead and add a tweak to let you adjust coverage, and I'll think about one for desert (because you can already affect desert with the climate option).

                              As to an earth like option ... that would be difficult to do with my script. There's no existing code for managing how something grows, so doing an island chain in a specific place is difficult, and so is weighting the size of continents appropriately. It might be better to just allow someone with a more earth-specific script implement that.
                              Check out SmartMap: my ultra flexible map generator for civIV.
                              http://apolyton.net/forums/showthrea...hreadid=147547

                              Comment

                              Working...
                              X