[Map Script] Tectonics

I've just released an updated version of this map-script. It's one of the scripts included in my MapScriptTools and as such dependent on them.

Tectonics_316_mst.py - Version History
Version 3.16 - edited by Temudjin - 15.July.2010
- NOW DEPENDS ON MapScriptTools.py


Adjusted for MapScriptTools
Planetfall compatibility
Mars Now! compatibility
Create Marshes, if mod allows it
Create Deep Ocean, if mod allows it
Create Special Regions (Bogs, Dents, Elemental Quarter, Lost Isle)
Place Kelp, Haunted Lands and Crystal Plains if mod allows for them
Check for Temudjin's Cool Starting Plots
Add option for team placement
Supports any number of players
Add rivers on islands
Allow more world sizes, if supported by mod
Better balanced resources
Print stats of mod and map
_____
Thank you LDiCesare for this great map-script. I think you were the first to introduce plate-tectonics to the game. A theme which I expanded upon, in a very different way, with FracturedWorld.
 
I play Tectonics exclusively but I have one issue with it. 70% Land (Earthlike) always generates a lot less land that expected and 60% Land always generates a lot more land (typically massive pangaea-like continent) than expected.
 
I followed a previous poster's suggestion and set these values for 70% Water:

numContinents = 2*numPlayers-5
numSeaPlates = numPlayers*2

Using 7 players these maps look much better to me.

How do you save your old selections when starting a game? I'd like to have this map always generate a random climate.
 
I don't know how to save the previous selection, I think it always picks the default one.
To get the random climate always, you can change the option default value to that.

Edit this:
def getCustomMapOptionDefault(argsList):
iOption = argsList[0]
if (iOption == 0):
return 0
else:
return 1

Now, the list only contains the available options, and random is not one, so since iOption 1 is the climate, you could try return 4 instead of return 1 (since random is added at the end) but this either works or crashes, I can't test right now. Another way to do it, but I don't know when the method is executed, is to return something like
gc.getGame().getMapRand().get(4,"climate")

If it doesn't work there, you can do it here:
class ClimateGenerator:
def __init__(self):
self.climate = CyMap().getCustomMapOption(1) -- replace by gc.getGame().getMapRand().get(4,"climate")

I can't really test anytime soon but I hope this can be helpful.
 
Top Bottom