[MapScript] Erebus Continent

I kind of disagree with you. All the options you mentioned are in perfect world, so...
well you could use that one, right? ;) What I like at this map script is the simplicity (smile) that you can set it up and play instead of using hours to set up all that many options in the custom game screen first. Better than add options (IMHO) would be to "perfect" it. Let's say you got a point about the continents which should be far away from each other. And also the thing about inland seas is quite logical to me. The New World option could be put in though ;) - but of course that's only my opinion.
 
[to_xp]Gekko;7766339 said:
not an issue, but something I dislike is that even with low cohesion, high sea level, all the continents are reachable by earlygame boats that cannot travel over ocean. this really takes away the usefulness of being able to "trade over oceans" with the Astronomy tech, Sailing it's all that needed. distant continents should be separated by oceans instead of simple coast imho.
Please keep in mind that the intention of this script is to creat a part of a world and not an entire world. Creating a single primary continent with some possible subcontinents and islands is very much the desired result. There isn't a way to have both unfortunately, unless glaringly obvious forced separation is ok, if so you can add that easily by changing the separation line in the map constants, it will literally force a line of ocean dividing the map in half, it tries to smooth the edges but it will be quite obvious.

[to_xp]Gekko;7766339 said:
oh, and again imho, the code that says "lakes are always less than 10 tiles so that they are freshwater" should be applied to all sea levels instead of low sea level only. otherwise it kinda takes away that "lake" feeling when you have lots of big lakes that are not freshwater :D
As of 1.6 the limit is hardcoded at 9 tiles regardless of sea level. However, lakes can grow into each other creating larger lakes that exceed this limit. You should see (perhaps not on small maps) that the majority of the lakes are quite small. There are also a number of 'clean-up' functiosn that run to fix things that would otherwise look bad such as a one tile river leading to a one-tile lake that is one tile away from the ocea or another larger lake. It also tries to create channels between bodies of water (including lakes) that are only separated by a single land tile in many cases since that will generally look better. My advice in this case would be to modify the xml to increase the number of tiles allowed in a fresh water lake to something around 30. I like the fact that not every lake is freshwater as it adds more of a barrier in the area without boosting the value of every surrounding plot with fresh water.

[to_xp]Gekko;7766339 said:
I can understand why you would want to keep the number of options showing up in the main menu low to avoid cluttering the screen, but I disagree, I think the more options available, the better. perhaps it would be possible to have as many options as possible, but have most of them only adjustable through manually editing the python file so that they don't clutter the screen? something that's easy enough to use that you don't have to learn python, just a simple "option xxx = true" in the python file that you can easily edit with notepad would be great. similar to how you can set Erebus to soften peak percent chance, or add wrappings :)
I think there are too many option pull-downs already :)

Open it up in notepad, scoll down and you'll see all of the constant variables you can set. However, you also want to look just below that as many are adjusted by game options so you will have to set those as well. In the initialization portion (first list) Cephalo was very good about adding comments to explain what the values did, I kept with this as I added new variables so hopefully everything is understandable.

[to_xp]Gekko;7766339 said:
a couple more features from perfectworld that would be awesome to have here are altitude affecting terrain ( IF it's not in already, not sure :D it's great to see higher terrain being colder. right now you see cold terrain only near the pole, but very high altitude spots should have some as well imho :) ) , and having different resource sets on different continents to encourage trading ( so for example one continent gets cow and wheat, another gets pig and rice etc. )
I actually dislike that very much and it was the first thing I cut out when modifying Perfect World (the effect isn't present in FaireWeather, or I removed it without paying attention). Nothing breaks the map for me like a big chunk of snow with beavers on it in the middle of a vast desert. It does still have an adjustment for temperatures based on altitudes but it only affects features, this is why you can see forests in areads otherwise full of jungles and you can find evergreen trees far from the poles.

I kind of disagree with you. All the options you mentioned are in perfect world, so...
well you could use that one, right? ;) What I like at this map script is the simplicity (smile) that you can set it up and play instead of using hours to set up all that many options in the custom game screen first. Better than add options (IMHO) would be to "perfect" it. Let's say you got a point about the continents which should be far away from each other. And also the thing about inland seas is quite logical to me. The New World option could be put in though ;) - but of course that's only my opinion.
That is really more of my goal, I already like the maps it generates for the most part and now I just need to perfect it and eliminate the times where it generates something I don't like. Well, that and fixing the starting positions to something more consistant and reliable. The 'new world' code that I use is modified from my version of Perfect World, it behaves almost exactly like PerfectWorld without having a new world enabled. That is to say it has a set percentage of land that it tries to use for starting areas and continues to add areas to the available list of starting areas until it is using that percentage of land. Currently it wants at least 70% of the total available land to be used for starting areas, typically this means the largest continent since that is 70% or more of the land by itself. If you enable logging you can look in the PythonDbg.txt log file and see the results of this process based on the number of available areas and the total available land including the exact number of tiles it will consider for starting area sizes based on the current map.
 
thanx for the reply, I'm gonna have to take a peek at the python file and look around if I can tweak it to be perfect for my taste :D

Gelvan, the 2 reasons I don't play perfectworld is that it does not have an option for toroidal maps, and it has too much sea ( it's a realistic amount for a terra-like planet, but 70% sea is just too much for me ;) )

on a side note Seven05, you might want to tweak the way deserts are handled. If I understand it correctly, you say that deserts will not be near coast/lakes. while that is visually nice, it does mean that maps with lots of water often have no deserts at all. as outdated as the screenshot on the first page of the thread is, it still portraits the behaviour as of version 1.61 very well. look at the maps with low cohesion, they have only a couple desert tiles on the whole map ( and on maps smaller than standard you often have none at all ) . increasing the amount of desert via dropdown doesn't really help since there's simply NO place for desert to spawn if the continents are not large enough. basically, on low cohesion maps ( or any other map with "small" continents for that matter ) deserts are very very very rare even if you choose "massive amount of deserts". besides, I don't think it's absurd to have deserts on coasts, or around a lake... Namibia for example is on the coast and is all desert, and the Sahara is on the coast as well if I'm not mistaken ;)

of course I don't wanna push you, it's just something that you may want to consider to improve your map so that it behaves perfectly regardless of options. :goodjob:
 
That actually an effect of the climate, not any softening that I have coded in. The climate functions run in several passes to simulate four seasons of weather and two types of rain. Being an attempt at realistic (or perhaps 'earth-like') maps the weather code does an excellent job. It's not mine though, it's all Cephalo's work so I can't take any credit for it. But what it will do it calculate the average annual temperature and seasonal monsoon rains and geostropic rains. Since, by definition, a desert is a region with a specific low annual rainfall it's really about as close as possible to being a perfect simulation as we can expect with the low resolution of Civ4 maps. As you'll find on earth there are no vast deserts on small(er) landmasses or islands. For instance look at the difference between New Zealand and Australia.

So, to make a long story short (to late?) anything done to force deserts on maps with smaller landmasses will cause the larger landmasses to be covered with huge deserts or vast regions of plains. Your best bet would be to increase the desert thresholds a bit to fine tune it for the maps you normally use. The good news is that the script should be very easy to tweak without having to make any changes to the code itself. :)

The biggest culprit is the smaller map sizes unfortunately. On standard sized maps I frequently have lakes in or near the desert regions with desert terrain surrounding all but one or two tiles of the lake. Using the toridal maps is also having an impact since they have a full range of lattitudes from 80 through -80 while the maps without y-wrap use a narrow range of 90 through -20 which spreads out the temperature zones more.
 
I've uploaded version 1.7, the biggest changes are with starting plot selection and the boosting of starting plot values by adding resources (now uses custom code instead of the defaults from Civ4). I also have a new method of clearing the area around starting locations of forests and jungles, it scans a 7x7 grid centered on the starting location and removes some of the forest & jungles creating irregualr, and generally more interesting looking areas. This also clears out a bit away from the initial city so you can move your settler if you like without such dire consequences. The elves do not clear any forests around their starting locations and this uses an override to the default normilization so it has no effect on FlavourMod or FF with flavor starts enabled.

For Gekko I added a tweak to the placement of tundra & snow on maps with y-wrap enabled and made some adjustments to the placement of ice. There should be less tundra & snow toward the east & west map edges now, but only if y-wraping is enabled.

Hopefully I didn't break anything this time :)
 
great job on the new version, as always. the starting plots are all good AND flavourful, and it works very well with flavourmod enabled :goodjob:

the only thing I would change is the ratio of plains/grasslands. with default settings grasslands are very common while plains are a lot more rare, except around desert. setting the "desert amount" option would give more plains, but also more deserts which some people may dislike. so imho, plains should be more plentiful and grasslands should be less plentiful.

oh, and I love what you've done with the placement of ice and tundra on toroidal maps. it looks very natural now. thank you :)
 
Glad that change worked on the y-wrap world, I ran a few tests but since I don't play on those maps I wasn't sure if the change was enough or even too much.

Your issue with plains is again most likely due to the maps you prefer. If you open up the file and find the following variable:

self.PlainsPercent = 0.24

You can control it to fit exactly where you want. This variable is modified when you adjust the desert level so you'll also want to look for and alter the definitions for mc.PlainsPercent a little further into the file. What this variable means is that 24% of the tiles will be plains and/or deserts, you can simply increase it without changing the desert percent and you'll get more plains.

On standard sized maps this default value (0.24) can result in huge regions of open plains. Since plains are effectively worthless without fresh water and/or food resources I had to keep them from getting too big. As with deserts there tends to be one or two good city locations and a lot of space that will only support small cities, with a smaller map this probably won't be as much of a problem.

The starting positions right now are OK, I still see a tendancy on larger maps for civs to cluster a bit much leaving a few with a lot of room to go and others fighting just to cram 3-4 cities in before all the space is taken. So I need to get a little more control on the minimum distance between starting plots which is proving to be tricky when combined with making sure ever starting plot is equally good (or at least potentially equal). Part of the problem is that when I generate potential starting plots I generate more than needed, so it's laying out starts for more players than you actually have and then picking the best of them. If every start was taken the spacing would be good but then any sort of 'flavor' starts would be difficult, particularly with the Illians and Malakim and to a lesser degree with the dwarves and elves (and lizards in FF) since those starting positions are generally bad using generic rules.
 
thanx, I'll try looking at the file again. I tried that yesterday but the sheer number of adjustable variables put me off for the time being :D

Cephalo has sure done a great job never hard-coding stuff and commenting everything... I sure had a laugh when I read the description for "meteor showers" in perfectworld :lol:

a certain lack of plains has been pretty much a constant in all my maps so I guess it is caused by duel size. medium cohesion and increased deserts should give me what I'm looking for. lack of fresh water is certainly never a problem due to the many rivers and small lakes.

actually I'm always impressed by how great these maps look even on duel size. perfect world doesn't work good with such small sizes, while Erebus is inconsistent. the shape of the map is always good, but at duel sometimes you have most of the map be ice and/or desert, which makes it kinda unplayable. Faireweather sure is a great mapscript to start with, and I'm looking forward to Perfectworld 2 :D
 
I run some test maps with the settings middle sea level, high cohesion, less tundra, increased desert, increased mountains, standard jungle, flat maps with "play now" with small and standard map size.

The result is great, the deserts in the middle secludes nicely, and they provide many mana nodes. I had once again an inland ocean, that created a peninsula, which looks nicely and is good for strategy.

In one map there was a bit a strange distribution, the Sidar were quite lonely in the BIG west, while the east had 6 civ's that would fight and create a two-religion-war (Sidar-Rest) for sure.

Other than that, the distribution was good, one civ had most often a bit an advantage, but the others also had enough room for building 6 cities or more without conquest.

Personally I'd like to have more dungeons.

I never play "play now" but for the people who do, I'd recomend to increase the count of players for small from 5 to 7 and for standard from 7 to 10. but I think that's not "done" by the map script anyway.

There have been Civ's that started with hill starts, surely due to increased mountains, even though it would be nice if that could somehow be prohibited.

What was very nice: on the standard map size it always had 2-3 mini continets around the main continent with special resources like mithril.

so far it looks good. this time I will use small size with above settings and 7 civ's because standard is just too big for me. (takes about 25h one game!)

so far so good - and thanks! :)
 
I should probably reset the map sizes back to the standard sizes since I no longer need the larger space with my recent changes to the way the margin of oceans are adjusted by sea level. If I do that the default number of Civs should work better, to the same degree they do on normal pangaea maps anyway. I've found that 10-12 civs on a standard map works well, I've tried it with 18 even, and there is enough room but it's tight. I think I should really look into handling the starting plots differently than I currently do but that's a pretty significant undertaking so I can't promise anything.

I'll look into handling the placement of dungeons and lairs, currently I don't do anything with them or the unique features. If I put my own placement code in there I can have an optional setting to control the number of them.

I don't do any sort of terrain normalization, the only changes I make to player starts are reducing features (forests and jungles) and adding bonuses (resources) to bring the starting values in line with the best start. I can add in some code to soften up some of the harsh starts, I'll base it off the 'flavor' rules I have defined just like I do with forest & jungle removal and do it so it's a similar 'soft' fix so it should blend well with the rest of the map. At the very least replacing some of the peaks with hills should be a big help since nobody can use them for anything :)

I'm glad you like it so far. I really like the general shape of the worlds created with it too and the fact the you can have smaller landmasses with valuable resources or some of the unique features.
 
Ok, 2.0 is in the works with some significant changes.

I've reduced the time needed to generate the maps. This is the result of several changes including re-setting the grid sizes to the default values. A big improvement comes from simplifying the 'detail map' used to add interesting features to the mountain ranges and break up vast expanses of flat/hilly land. Not only is it quicker but it looks a lot better at the same time :)

I've also added a rudimentary erosion pass that softens the heightmap in area of extremely high rainfall. The result from this is that area with many rivers (jungles for example) tend to have fewer hills. I'm currently testing the results of two additional erosion passes designed to create more interesting area on the map. This will eventually expand to include adding regional features such as a valley with ancient forests and better placement of marshes rather than the current, mostly random, method. The climate zones can also be set (or randomized) at the start of generation controlling the initial temperatures so the cold isn't always in the north for example. You essentially chose a region (northern/southern hemisphere, equatorial, polar) and the initial climate is generated accordingly.

Player starting position 'normalization' will now remove some forests and jungles in a 5x5 grid and can also flatten some hills and turn some peaks into hills. And the initial starting location selection is being completely re-written... again. Starting plots will now be evaluated per civ with each civ having their own value for food, commerce and production potential in addition to their preference for certain terrain types. This makes it possible to support custom civs using the 'fallow' trait for example and it helps encourage civs to select a location that will work better with their strengths. A new preference has been added for weighing the distance from the nearest neighbor so the civs can be set to prefer starting close to others or way off by themselves.

And finally, I have the start in place to handle placing FfH specific features, dungeons and lairs.

I don't know exactly when I'll have it released, hopefully soon. If I can work it out I will also include more specific landform options, but I'm not sure on that bit yet.
 
Seven05 (and cephalo !), thanks for this wonderful mapscript !

Using 1.7, I had very nice maps. My current one (Standard size 8 civs- High cohesion/reduced desert/minimal jungle and toundra/standard mountains) is almost perfect. Great starting positions, great flow.
Why 'almost' ? Just 2 things :
- Too few resources. I think I'll tweak the river threshold value.
- I'm not a big fan of these tiny lakes. A 'no lakes' option would be nice. (another option I know :blush:)

Take your time for 2.0. :)
 
Thanks :)

I'm probably going to release one more under the 1.x banner, I found a logic error in my code that was messing up the starting plot selection, with that fixed the results are much better. Amazing what happens when the code does what it's supposed to...

The lakes are created by the river system, I haven't spent much time in that portion of the code since Cephalo announced his intentions to release an updated Perfect World with new river code. If you do adjust the river threshold it'll take a few tries, adding more rivers will tend to create more lakes and reducing it will result in fewer rivers overall and those that remain will be shorter. I'll put 1.8 up tonight and that will help with the number of available resources, particularly around the starting areas. It will also give you a sneak peak at some of the changes in 2.0 since I'll include the stable portions of that code as well.
 
Wow, great stuff coming up!

I'm already enjoying this map script and will be even more as you implement the new features. *drool*
 
I had some really nice maps, many small lakes, not too many resources so I had to fight or trade to get more of them. Once I had one little lake after the other and by placing cities inbetween I was able to make a "canal" to the ocean. Also the distribution of mountains and hills is perfect. Sometimes there are maps with too many forrests, but not every time. most often in the east there are more forests while in the west it has more desert.

good job :)
 
most often in the east there are more forests while in the west it has more desert.
Well, I guess you found out which way I have the wind blowing :)

A couple of notes ragarding the impending update...

Using Cephalos river code from PerfectWorld2 gives me the ability to have a little more control over lakes. This results in fewer inland seas and what few lakes are there tend to be a few tiles away from the coast. The rivers themselves are less numerous but those that are there tend to be longer, in fact some are massive and stretch on for 20+ tiles on standard maps. I will add an in-game option to control lakes since some people like them and others don't.

The new mountain ranges are much nicer, IMO anyway. I put quite a bit of extra work into getting them to be more irregular with fewer straight sections and reduced occurances of blob-like clusters of peaks. This same code also helps reduce the occurance of straight sections of coastline so the overall landmasses are more interesting with added details to the coasts. Combined with some new erosion mechanics and the overall result is pretty slick, lots of interesting areas and a good feeling of different climate regions around the map.

Unfortunately, until I get the starting plot code re-written it's completely unplayable :(
 
Back
Top Bottom