[Map Script] Tectonics

It is an interesting twist in two opposite directions to see requests for both more realism and for less, to improve the results.
Indeed. Actually my biggest problem is I see requests based onthe results of the generator on big maps and my comp can't handle more than normal for playing, so I don't test bigger than normal maps, except an occasional large map, but even these take very long to displlay in the world builder. The advantage of fractal maps is you don't really worry about map size, things will scale smoothlessly because it's fractal. Adding more hills by an additional pass of plate movement and some erosion coould provide for more hills, maybe some isolated ones, but on small or medium maps I think it's not useful.
The climate could need some work too, since it's very "straight" lines, but here I strike a realism/gameplay problem.
I have unfortunately lost the 3.1 version in which I had created a set of plates to generate Earth continents just to see what it looked like and to help get more realistic results. Of course it showed that my script is not tectonically correct at all, but it helped in getting subduction right and showed some interest for climate with the Sahara in particular.
 
LDiCesare said:
I have unfortunately lost the 3.1 version in which I had created a set of plates to generate Earth continents just to see what it looked like and to help get more realistic results. Of course it showed that my script is not tectonically correct at all, but it helped in getting subduction right and showed some interest for climate with the Sahara in particular.

Interesting.

The machine I used all through development was quite the dino, except on video, which was only adequate (but was good when I started). As you say, though, the same code scales well with the fractals, as least for the landmass shapes. (Not as well on climate, but that's another story).

It would be unfortunate if machine limitations impose on the range of what you are able to work on, but I suppose there's no simple way around that.

Is your process calculation-intensive? Or is just the graphics that are bogging you down, do you think?


- Sirian
 
I've noticed an issue when using this script that things like clams and rice will sometimes be seen floating above the square they are supposed to be occupying. I don't know if this is a Tectonics script problem or a Civ 4 problem, but I don't think I ever noticed it on the non-Techtonics maps I have played.
 
I've noticed an issue when using this script that things like clams and rice will sometimes be seen floating above the square they are supposed to be occupying.
I don't know. I haven't touched the resources generation code so I can only blame the default code or rendering engine for that.
Is your process calculation-intensive? Or is just the graphics that are bogging you down, do you think?
I don't think it's very calculation-intensive. The first plate iterations has a part of randomness in it which imply I make many passes through the loop to fill the plates, but, even though it's not really good design, it's fast enough. The rivers code si quite ugly and might be slow but I don't think theres is a combinatorial problem there. On the other hand, my vid card registers as "doesn't meet the minimum requirements", so I think it's really a vid card problem.

I have updated the script to provide two new things:
1)Some fault lines. Well, actually, if I find a large flat plate, I'll decide it's got a fault line somewhere in it and spawn a line of hills and lakes therein. It's not noticeable on standard and below maps, has an effect on large maps (and presumably huge). This gives less big flat areas and I can pretend it's a faultline so meaningful from a geological point of view.
2)Corrected a big bug in the climate generator. Now it does what it was supposed to do. You'll have less desert and the moisture computation is finally correct.
 
Ah yes, bugs. Nailed that little bugger, did you? :)

The extra fault lines sound like progress.
 
Something that would be very interesting, would be taking the tectonics even further and allow earthquakes, volcanos and tsunamis to appear allong the faultlines during the game...
This would prolly have to be coded in the SDK thou, thou could possibly be done in python :)
 
The bug with climate was that instead of blowing continuously the wind would pick up a bit of water, move, and drop it in one square. A bit like if clouds flew over the desert but never ran there.
Adding volcanoes and earthquakes on fault lines and at plate boundaries might not be fun. If you played civ (1) you may remember the occasional earthquakes that occurred when there was no temple in the city, and fires when you lacked an aqueduct. They were more annoying than fun imo. It could be used to kill one pop point and some improvements, but shouldn't have too much of an effect for game balance. Knowing the faultlines/plates can probably be done ny using global variables in Python, though, but I don't know how to and won't model the effects of earthquakes etc.
 
There's still a small problem with bad starting locations though. I played an 8 player large map with France (randomly picked), and I ended up alone on a southern continent. I was located in the north on the grasslands, but could only place 5-6 on grassy terrains before being forced in the tundras and ice areas. I also was too far off another continent to settle it so I kinda lost badly though I didn't had much a chance to begin with.

But besides that, nice maps :)
 
The player distribution tries to make it so the players have roughly the same territory on their continent. I don't know how to avoid such a situation. Tundra squares and ice squares are considered as of little value but hacing neighbours is actually useful (except maybe Montezuma). I don't have ideas as to how to prevent such isolated starts from happening. Suggestions are welcome.
 
LDiCesare said:
The player distribution tries to make it so the players have roughly the same territory on their continent. I don't know how to avoid such a situation. Tundra squares and ice squares are considered as of little value but hacing neighbours is actually useful (except maybe Montezuma). I don't have ideas as to how to prevent such isolated starts from happening. Suggestions are welcome.

Perhaps having a vast icy tundra available to you (as sometimes happens to me with tectonics maps) counts as much as having a medium size, grassy starting location.

I don't like the polar starting locations, but I can usually deal with them. I'd like to see a variant of tectonics that de-emphases the size of the polar regions. Maybe it could be an option, like the ocean coverage?

The worlds generated are beautiful and fun to play, but all that tundra can be problematic.
 
Yes, amount of arctic terrain could be an option. I may add that in the next version.
I thought about ensuring that there are at least 2 players per landmass which would pretty easy to code, (well, easy except for the last player placed). I may try to add this too: I'd consider that all continents already have one player on them when there's actually 0. This trick could force 2 players on the same land.

Except I don't want 2 players on same landmass for islands. Arg???
 
Just wanted to drop a line and let you know that I dled this about 2 weeks ago and have played 4 games with the script and I like it. I think I'm going to play with this until further notice. Great job, lots of fun!
 
Two things:

1. I like this map script very much. At least 50% of my games are on maps generated by your script.

2. I don't think your script takes west winds and ocean currents into account, does it? They have an huge impact on the climate of many regions. Take the Gulf Stream for example. Its heating whole Europe on our world. Maybe you can include this in a possible new version? Would be nice.
 
I take winds into account (although I may have fumbled the direction at times - winds blow mostly west or east depending on latitude and I'm not sure I'm really clean on the direction/latitude thing) but not the currents.
Winds provide moisture thus deserts will tend to be far from the coast or after mountains which block the winds.
I'm not sure how to model the Gulf Stream. The effect is not just moisture but also climate: It should replace tundras by prairies for instance. The real problem m ius to determine the water currents, where they come from warm places. I'd have to identify seas in which currents flow. It'd be interesting to get that modelled but I don't have ideas on how to do this yet.
 
Climate models ... I've spend some time on this subject recently and I came to one conclusion: It's more complex and more difficult than I thought. :crazyeye:

For example, the buzz word for global scale ocean currents is "Thermohaline circulation". Never heard of it before? Me neither, but it is all very interesting and the understanding of it could really help to make a more than exceptional good map script for civilization. Unfortunately it's only one part of the big puzzle and it is difficult to cut it down to a simple solution which is implementable without sacrificing half a day of processor time for modeling the climate.

However, for starters it might be possible for me to help you with the wind directions. I found a quite good article concerning it and the latitudes where they occure and why. Sadly, it was an german article about the basics of global meterology. Hence I don't think it is a good idea to link the whole article here. Nevertheless there was a nice picture of an idealised earth without any continents showing the main wind directions and the corresponding latitudes. Here it is:



As you can see on the second picture (the one of our real earth) continents influence the directions, but in the end it is more or less the same. Asked for my opinion I would suggest to us the simple scheme.

That's all for now, but if I find the time I'll will spend some more time with climate models in the future.
 
First off, funny thing: I've been an civaddict since civ2 and lurked around here forever, and this is the first thing to actually compel me to register and post, so, hello world.

I think this script is great, even as it is a work in progress, and am a bit surprised that it doesn't already have a horde of supporters giving their two cents. Fortunately for me, this probably means my two wont get lost in the jar, so let me get to it.

First, regarding the issues with arctic masses, perhaps it would be possible to code a pair of randomized polar plates. Randomized in the manner that one or both are ocean plates, thus creating a likeliness for a circumnavigable ocean, and also pulling the land masses off the poles.

About current/climate emulation (if thats actualy something you're addressing) an easy start might be to simulate clockwise and counterclockwise currents, for the northern and southern hemisphere's respectively, which tend to pull moisture from the poles and equator.

[of course reallity is more complex, but thats the general effect. http://earth.usc.edu/~stott/Catalina/images/Oceanography/surface currents.jpg ]

And onto what I'd like to see: I'd rather see the number of plates generated based on map size and not number of players. I generally like to play on smaller maps but with more civs and wouldn't mind seeing a few civs get crammed from the get go.

Related to this, I'd also like to see some tweeking with the resources, but Im sure that's a ways away, if its even being considered. I would love it if someone could provide some quick info on how I might plug in some resource generation from another scrtipt, though.

Once again, I really enjoy this script. Thank you, and keep up the good work.
 
Plugging resource generation from another script should eb pretty easy as I don't override it:
You must edit tectonics.py and put the addBonuses from another script. If you want to use something elaborate like Smartmap, which uses options, you'll have to replug that option in the script.
I'm still looking for a way to integrate some climate options in the default climate argument, if I can get rid of the "rocky" 'climate'.
 
I uploaded version 3.5 there: http://apolyton.net/upload/view.php?file=8232_TectonicsV035.zip
This includes a climate option after the landmass option. I didn't use the default climate dialog because I don't know how to get rid of the rocky and cold items and don't want to let them in as alternates for standard (mostly because it would bias the random option).
There's also a varaition on starting locations in order to make it less likely that civs start alone on their continent/island (except for island landmass option).
 
Top Bottom