• We are currently performing site maintenance, parts of civfanatics are currently offline, but will come back online in the coming days. For more updates please see here.

The Map's insanity.

TeeInKay

Warlord
Joined
May 2, 2015
Messages
204
Some map options on communitas map

Spoiler :
--Adjusting these will generate larger or smaller landmasses and features.
mglobal.landMinScatter = 0.132 --Recommended range:[0.02 to 0.1]
mglobal.landMaxScatter = 0.29 --Recommended range:[0.03 to 0.3]
--Higher values makes continental divisions and stringy features more likely,
--and very high values result in a lot of stringy continents and islands.

mglobal.coastScatter = 0.367 --Recommended range:[0.01 to 0.3]
--Higher values result in more islands and variance on landmasses and coastlines.

mglobal.mountainScatter = 455 * mapW --Recommended range:[130 to 1000]
--Lower values make large, long, mountain ranges. Higher values make sporadic mountainous features.


I edited these because I didn't like smooth coastlines.

I think it was a success.
Spoiler :

d3zW594.png


The continent assignment is quite wonky though:

Spoiler :
8nARAFk.png



Americas are almost nonexistent and Asia is just a few strips of tundra. The map itself is good ( for me ) but the continents are trippin :crazyeye:.



This is the continent map code. It looks like some people have worked hard on it. I haven't worked out the big picture enough to understand it. It kinda looks like map temp has a lot to do with continent assignment.

Spoiler :

local continentMap = PWAreaMap:New(elevationMap.width,elevationMap.height,elevationMap.wrapX,elevationMap.wrapY)
continentMap:DefineAreas(oceanMatch)
table.sort(continentMap.areaList,function (a,b) return a.size > b.size end)

--check for jungle
for y=0, elevationMap.height - 1 do
for x=0,elevationMap.width - 1 do
local i = elevationMap:GetIndex(x,y)
local area = continentMap:GetAreaByID(continentMap.data)
area.hasJungle = false
end
end
for y=0, elevationMap.height - 1 do
for x=0, elevationMap.width - 1 do
local plot = Map.GetPlot(x,y)
if plot:GetFeatureType() == FeatureTypes.FEATURE_JUNGLE then
local i = elevationMap:GetIndex(x,y)
local area = continentMap:GetAreaByID(continentMap.data)
area.hasJungle = true
end
end
end
for n=1, #continentMap.areaList do
-- if not continentMap.areaList[n].trueMatch and not continentMap.areaList[n].hasJungle then
if not continentMap.areaList[n].trueMatch then
continentMap.areaList[n].artStyle = 1 + Map.Rand(2, "Continent Art Styles - Lua") -- left out America's orange trees
end
end
for y=0, elevationMap.height - 1 do
for x=0, elevationMap.width - 1 do
local plot = Map.GetPlot(x,y)
local i = elevationMap:GetIndex(x,y)
local artStyle = continentMap:GetAreaByID(continentMap.data).artStyle
if plot:IsWater() then
plot:SetContinentArtType(contArt.OCEAN)
elseif jungleMatch(x,y) then
plot:SetContinentArtType(contArt.EUROPE)
else
plot:SetContinentArtType(contArt.AFRICA)
end
end
end

--Africa has the best looking deserts, so for the biggest
--desert use Africa. America has a nice dirty looking desert also, so
--that should be the second biggest desert.
local desertMap = PWAreaMap:New(elevationMap.width,elevationMap.height,elevationMap.wrapX,elevationMap.wrapY)
desertMap:DefineAreas(desertMatch)
table.sort(desertMap.areaList,function (a,b) return a.size > b.size end)
local largestDesertID = nil
local secondLargestDesertID = nil
for n=1,#desertMap.areaList do
--if debugTime then print(string.format("area[%d] size = %d",n,desertMap.areaList[n].size)) end
if desertMap.areaList[n].trueMatch then
if largestDesertID == nil then
largestDesertID = desertMap.areaList[n].id
else
secondLargestDesertID = desertMap.areaList[n].id
break
end
end
end
for y=0,elevationMap.height - 1 do
for x=0,elevationMap.width - 1 do
local plot = Map.GetPlot(x,y)
local i = elevationMap:GetIndex(x,y)
if desertMap.data == largestDesertID then
plot:SetContinentArtType(contArt.AFRICA)
elseif desertMap.data == secondLargestDesertID then
plot:SetContinentArtType(contArt.AFRICA)
elseif plot:GetTerrainType() == TerrainTypes.TERRAIN_DESERT then
plot:SetContinentArtType(contArt.AMERICA)
end
end
end

-- Set tundra/mountains -> snowy when near to snow tiles
for y = 0, mapH-1 do
for x = 0, mapW-1 do
local plot = Map.GetPlot(x,y)
local plotTerrainID = plot:GetTerrainType()
if IsMountain(plot) then
local coldness = 0
local zone = elevationMap:GetZone(y)

if (zone == mg.NPOLAR or zone == mg.SPOLAR) then
coldness = coldness + 2
elseif (zone == mg.NTEMPERATE or zone == mg.STEMPERATE) then
coldness = coldness + 1
else
coldness = coldness - 1
end

for nearPlot in Plot_GetPlotsInCircle(plot, 1, 1) do
local nearTerrainID = nearPlot:GetTerrainType()
local nearFeatureID = nearPlot:GetFeatureType()
if IsMountain(nearPlot) then
coldness = coldness + 0.5
elseif nearTerrainID == TerrainTypes.TERRAIN_SNOW then
coldness = coldness + 2
elseif nearTerrainID == TerrainTypes.TERRAIN_TUNDRA then
coldness = coldness + 1
elseif nearTerrainID == TerrainTypes.TERRAIN_DESERT then
coldness = coldness - 1
elseif nearFeatureID == FeatureTypes.FEATURE_JUNGLE or nearFeatureID == FeatureTypes.FEATURE_MARSH then
coldness = coldness - 8
end
end

for nearPlot in Plot_GetPlotsInCircle(plot, 2, 2) do
if IsMountain(nearPlot) then
coldness = coldness + 0.25
end
end

-- Avoid snow near tropical jungle
if coldness >= 1 then
for nearPlot in Plot_GetPlotsInCircle(plot, 2, 3) do
local nearFeatureID = nearPlot:GetFeatureType()
if nearFeatureID == FeatureTypes.FEATURE_JUNGLE or nearFeatureID == FeatureTypes.FEATURE_MARSH then
coldness = coldness - 8 / math.max(1, Map.PlotDistance(x, y, nearPlot:GetX(), nearPlot:GetY()))
end
end
end

if coldness >= 7 then
--plot:SetTerrainType(TerrainTypes.TERRAIN_SNOW, false, true)
plot:SetContinentArtType(contArt.EUROPE)
elseif coldness >= 1 then
--plot:SetTerrainType(TerrainTypes.TERRAIN_TUNDRA, false, true)
plot:SetContinentArtType(contArt.AMERICA)
elseif coldness >= 0 then
--plot:SetTerrainType(TerrainTypes.TERRAIN_PLAINS, false, true)
plot:SetContinentArtType(contArt.ASIA)
else
--plot:SetTerrainType(TerrainTypes.TERRAIN_PLAINS, false, true)
plot:SetContinentArtType(contArt.AFRICA)
end


elseif plotTerrainID == TerrainTypes.TERRAIN_TUNDRA then
local coldness = 0
for nearPlot in Plot_GetPlotsInCircle(plot, 1, 1) do
local nearTerrainID = nearPlot:GetTerrainType()
local nearFeatureID = nearPlot:GetFeatureType()
if nearTerrainID == TerrainTypes.TERRAIN_SNOW then
coldness = coldness + 5
elseif nearTerrainID == TerrainTypes.TERRAIN_TUNDRA then
coldness = coldness + 1
elseif nearTerrainID == TerrainTypes.TERRAIN_DESERT or nearFeatureID == FeatureTypes.FEATURE_JUNGLE or nearFeatureID == FeatureTypes.FEATURE_MARSH then
coldness = coldness - 2
end
end
for nearPlot in Plot_GetPlotsInCircle(plot, 2, 2) do
if nearTerrainID == TerrainTypes.TERRAIN_DESERT or nearFeatureID == FeatureTypes.FEATURE_JUNGLE or nearFeatureID == FeatureTypes.FEATURE_MARSH then
coldness = coldness - 1
end
end
if coldness >= 5 then
if plot:GetFeatureType() == FeatureTypes.FEATURE_FOREST then
plot:SetContinentArtType(contArt.ASIA)
else
plot:SetContinentArtType(contArt.EUROPE)
end
else
plot:SetContinentArtType(contArt.AFRICA)
end
elseif plotTerrainID == TerrainTypes.TERRAIN_SNOW then
plot:SetContinentArtType(contArt.EUROPE)
end
end
end
end

Lol the forum changed a bit of a line at the start to a smiley -TnK


Thalassicus (Victor Isbell)

I think that this guy did a lot of the work on it. He is credited with ocean rifts, rivers through lakes, natural wonder placement, resource placement, map options, inland seas, & aesthetic polishing. Idk who he is but apparently he is a big deal. I don't want to undo these guys work on this script.... but the pictures don't lie. They are a good representation of what usually is built. And on standard settings there is mostly Africa.

Second Run:

Spoiler :
vX2RCbN.png


And it's continent map.

Spoiler :
olf3X09.png


I think it's a better map. But still, all Africa.
 
I worked with Thal (Victor) on the communitas map and CEP a couple of years back. He lives in Dallas like me, practically down the street.

A lot of work went into turning the Perfect World mapscript into the Communitas Map. Generally speaking it's quite good, the only problems are mountain ranges hobbling the AI (fixed by increasing the mountain scatter value) and continents merging at larger map sizes (the Pacific Ocean Rift isn't generating properly, I'm wondering if something was changed in the last couple of versions of CPP to cause this, as I don't recall ever seeing the issue before a couple of weeks ago).

The continent assignments are aesthetic only: they affect the color scheme used on the tilesets. Africa is used for much of the non-tropical portions of the map because the Africa tileset deserts look great, as do the plains, mountains, hills and grasslands. Personally I'm partial to the America forests since I grew up in New England.

I believe the only thing that needs fixing on the map now is the continental merge issue on Large maps. We can fix it now by assigning two Atlantic rifts, but that's no fun, and doesn't give enough land for city-states since the Pacific rift is where the mini-continents and large islands are located.
 
wow i am from DFW and i am currently in Waco. I thought that was the case of the continents and it makes for a beautiful map. It doesn't have any other effect on game?
 
The continent tileset selections have no gameplay effect whatsoever. It only affects the tile textures (artwork and color scheme).

On the standard continent maps, each continent has its own continent tileset for every single tile on that continent. So the Asia continent would have the Asia color scheme for every tile on that continent. That gets somewhat boring, so the Communitas map assigns continent art based on lattitude (the tropics get the green European artwork which has nice lush forests and jungles), and most of everything else gets the Africa tileset with the exception of some tundra and arctic forest tiles, which get the Asia tileset.

I personally think more of the Africa forests should use the America tileset for variety. Having so much dull brown forest looks awful in my opinion.
 
Agreed. I've played maps with America forests mixed in with Europe forests just below the tropics latitudes and it looked stunningly beautiful. We should create another band above and below the tropics latitude that mixes Europe/America forests at a 1:3 ratio. Either that or make that band the Africa forest band, and make everything above and below that the Europe/America band, or the Asia/America band for variety.
 
Agreed. I've played maps with America forests mixed in with Europe forests just below the tropics latitudes and it looked stunningly beautiful. We should create another band above and below the tropics latitude that mixes Europe/America forests at a 1:3 ratio. Either that or make that band the Africa forest band, and make everything above and below that the Europe/America band, or the Asia/America band for variety.

I leave it to you. Did you see my post re: this map?

Code:
mglobal.oceanMaxWander			= 1

This is the value we need to look at.
G
 
That explains the crazy mutant supercontinents.

I'll set it to 2 and test as soon as I have time to play again, probably next week.
 
I will probably be able to post some screens of the different settings sooner than that, and we con come to an agreement on what works best. That's weird that you unintentionally have it set high. I have turned it up a couple of times for experimental purposes.
 
Yeah, definitely needs more variations in tileset. TBH, I like the idea of fully different tileset for continents, made discovering new lands more visually interesting instead of just a global look.
 
... The different tile-sets per continent is vanilla. As was just discussed we are using the mechanic for visually appealing terrain. It is currently not used for anything else. We have the large variation, one tile-set per continent would remove the variations.
 
It's really easy to change it yourself and find what you like. Some really cool maps can be made with the script we have been using.
 
I Changed it to two and then to one...and i like what im seeing. I haven't used another map since this one was made...i love it.
 
Well I have been messing trying to make the map more pleasing to myself. It has gone pretty well.

These are high resolution images, and you can see the map settings in each one.

Spoiler :
BVldbbd.png


Spoiler :
drN6aC1.png


Spoiler :
Ru8IsSp.png


Spoiler :
rgBlkqs.png



This is the file I used to make these maps.
https://www.dropbox.com/s/73e35rp9bvcmh26/Communitas.lua?dl=0
I noted at the top of the file that I edited it.

If you want to look at the changes but not download it, here:
Spoiler :

--[[------------------------------------------------------------------------------

-- Communitas.lua map script edited by TNK6/27 --

Created by:
- Cephalo (Rich Marinaccio) - Perlin landform, elevation and rainfall creation
- Sirian (Bob Thomas) - Island creation, some code from Continents and Terra scripts
- WHoward69 - Mountain-pass finding algorithm
- Bobert13 - Bug fixes and optimizations
- Thalassicus (Victor Isbell) - Ocean rifts, rivers through lakes, natural wonder placement,
resource placement, map options, inland seas, aesthetic polishing


*EDIT* This map script generates climate based on a simplified model of geostrophic
and monsoon wind patterns. Rivers are generated along accurate drainage paths
governed by the elevation map used to create the landforms.

- Natural wonders appear in useful locations.
- Islands reward exploration and settlement.
- Ocean rifts prevent ancient ships from circling the world.
- Inland seas, lakes, and rivers flowing out of lakes.

--]]------------------------------------------------------------------------------

include("MapGenerator")
include("FeatureGenerator")
include("TerrainGenerator")
include("IslandMaker")
include("FLuaVector")

MapGlobals = {}


local debugTime = false
local debugPrint = false
local debugWithLogger = false

--[[
Setting "overrideAssignStartingPlots = false" may help make the map compatible
with core game patches in the distant future when I'm no longer modding Civ 5.

This disables some advanced features of the map, so it's better to
modify the map's changes to AssignStartingPlots if possible.

~ Thalassicus @ Nov 5 2013
--]]
local overrideAssignStartingPlots = true





--
-- Map Information
--

function MapGlobals:New()
print("MapGlobals:New")
local mglobal = {}
setmetatable(mglobal, self)
self.__index = self

local mapW, mapH = Map.GetGridSize()


--Percent of land tiles on the map.
mglobal.landPercent = 0.47

--Top and bottom map latitudes.
mglobal.topLatitude = 72
mglobal.bottomLatitude = -72


--Important latitude markers used for generating climate.
mglobal.tropicLatitudes = 22 -- tropicLatitudes to 0 : grass, jungle
mglobal.horseLatitudes = 30 -- polarFrontLatitude to horseLatitudes : grass, plains, desert
mglobal.iceLatitude = 55 -- bottomLatitude to iceLatitude : ice
mglobal.polarFrontLatitude = 60 -- bottomLatitude to polarFrontLatitude : snow, tundra


--Adjusting these will generate larger or smaller landmasses and features.
mglobal.landMinScatter = 0.132 --Recommended range:[0.02 to 0.1]
mglobal.landMaxScatter = 0.2 --Recommended range:[0.03 to 0.3]
--Higher values makes continental divisions and stringy features more likely,
--and very high values result in a lot of stringy continents and islands.

mglobal.coastScatter = 0.467 --Recommended range:[0.01 to 0.3]
--Higher values result in more islands and variance on landmasses and coastlines.

mglobal.mountainScatter = 455 * mapW --Recommended range:[130 to 1000]
--Lower values make large, long, mountain ranges. Higher values make sporadic mountainous features.


-- Terrain
mglobal.mountainWeight = 0.8 --Weight of the mountain elevation map versus the coastline elevation map.
mglobal.belowMountainPercent = 0.95 -- Percent of non-mountain land
-- flatPercent to belowMountainPercent : hills
mglobal.flatPercent = 0.78 -- Percent of flat land
mglobal.hillsBlendPercent = 0.33 -- Chance for flat land to become hills per near mountain. Requires at least 2 near mountains.
mglobal.terrainBlendRange = 2 -- range to smooth terrain (desert surrounded by plains turns to plains, etc)
mglobal.terrainBlendRandom = 0.5 -- random modifier for terrain smoothing


-- Features
mglobal.featurePercent = 0.70 -- Percent of potential feature tiles that actually create a feature (marsh/jungle/forest)
mglobal.featureWetVariance = 0.20 -- Percent chance increase if freshwater, decrease if dry (groups features near rivers)
mglobal.islePercent = 0.27 -- Percent of coast tiles with an isle
mglobal.numNaturalWonders = 6 + GameInfo.Worlds[Map.GetWorldSize()].NumNaturalWonders


-- Rain
mglobal.marshPercent = 0.12 -- Percent chance increase for marsh from each nearby watery tile
-- junglePercent to 1 : marsh
mglobal.junglePercent = 0.75 -- junglePercent to 1 : jungle
mglobal.zeroTreesPercent = 0.30 -- zeroTreesPercent to 1 : forest
-- plainsPercent to 1 : grass
mglobal.plainsPercent = 0.50 -- desertPercent to plainsPercent : plains
mglobal.desertPercent = 0.27 -- 0 to desertPercent : desert


-- Temperature
mglobal.jungleMinTemperature = 0.70 -- jungle: jungleMinTemperature to 1
mglobal.desertMinTemperature = 0.40 -- desert: desertMinTemperature to 1
-- grass: tundraTemperature to 1
-- plains: tundraTemperature to 1
mglobal.tundraTemperature = 0.35 -- tundra: snowTemperature to tundraTemperature
mglobal.snowTemperature = 0.20 -- snow: 0 to snowTemperature
mglobal.treesMinTemperature = 0.20 -- trees: treesMinTemperature to 1
mglobal.forestRandomPercent = 0.05 -- Percent of barren flatland which randomly gets a forest
mglobal.forestTundraPercent = 0.25 -- Percent of barren tundra which randomly gets a forest



-- Water
mglobal.riverPercent = 0.2 -- Percent of river junctions that are large enough to become rivers.
mglobal.riverRainCheatFactor = 0.9 -- Values greater than one favor watershed size. Values less than one favor actual rain amount.
mglobal.minWaterTemp = 0.10 -- Sets water temperature compression that creates the land/sea seasonal temperature differences that cause monsoon winds.
mglobal.maxWaterTemp = 0.60
mglobal.geostrophicFactor = 1.87 -- Strength of latitude climate versus monsoon climate.
mglobal.geostrophicLateralWindStrength = 0.6
mglobal.lakeSize = 10 -- read-only; cannot change lake sizes with a map script
mglobal.oceanMaxWander = 2 -- number of tiles a rift can randomly wander from its intended path
mglobal.oceanElevationWeight = 0.375 -- higher numbers make oceans avoid continents
mglobal.oceanRiftWidth = math.max(3, Round(mapW/40)) -- minimum number of ocean tiles in a rift

-- percent of map width:
mglobal.atlanticSize = 0.15 -- size near poles
mglobal.atlanticBulge = 0 -- size increase at equator
mglobal.atlanticCurve = 0.04 -- S-curve distance
mglobal.pacificSize = 0 -- size near poles
mglobal.pacificBulge = 0.24 -- size increase at equator
mglobal.pacificCurve = 0 -- S-curve distance


mglobal.atlanticSize = math.min(4, Round(mglobal.atlanticSize * mapW))
mglobal.pacificBulge = Round(mglobal.pacificBulge * mapW)
mglobal.atlanticCurve = math.min(5, Round(mglobal.atlanticCurve * mapW))
mglobal.pacificCurve = math.min(3, Round(mglobal.pacificCurve * mapW))


-- Resources
mglobal.fishTargetFertility = 46 -- fish appear to create this average city fertility


-- Quality vs Performance
-- Lowering these reduces map quality and creation time.
-- Try reducing these slightly if you experience crashes on huge maps
mglobal.tempBlendMaxRange = 9 -- range to smooth temperature map
mglobal.elevationBlendRange = 9 -- range to smooth elevation map








--[[

MAP OPTIONS

1 - world_age
2 - temperature
3 - rainfall
4 - sea_level
5 - resources
6 - Players Start
7 - Ocean Rifts
8 - Ocean Rift width

--]]

do

local oWorldAge = Map.GetCustomOption(1)
if oWorldAge == 4 then oWorldAge = 1 + Map.Rand(3, "Communitas random world age - Lua") end
if oWorldAge == 1 then
print("Map Age: New")
mglobal.belowMountainPercent = 1 - (1 - mglobal.belowMountainPercent) * 1.5
mglobal.flatPercent = 1 - (1 - mglobal.flatPercent) * 1.5
mglobal.landMinScatter = mglobal.landMinScatter / 1.5
mglobal.landMaxScatter = mglobal.landMaxScatter / 1.5
mglobal.coastScatter = mglobal.coastScatter / 1.5
mglobal.mountainScatter = mglobal.mountainScatter
elseif oWorldAge == 3 then
print("Map Age: Old")
mglobal.belowMountainPercent = 1 - (1 - mglobal.belowMountainPercent) / 1.5
mglobal.flatPercent = 1 - (1 - mglobal.flatPercent) / 1.5
mglobal.landMinScatter = mglobal.landMinScatter * 1.5
mglobal.landMaxScatter = mglobal.landMaxScatter * 1.5
mglobal.coastScatter = mglobal.coastScatter * 1.5
mglobal.mountainScatter = mglobal.mountainScatter
else
print("Map Age: Normal")
end
mglobal.mountainScatter = mglobal.mountainScatter * 0.00001


local oTemp = Map.GetCustomOption(2)
if oTemp == 4 then oTemp = 1 + Map.Rand(3, "Communitas random temperature - Lua") end
if oTemp == 1 then
print("Map Temp: Cool")
mglobal.tropicLatitudes = mglobal.tropicLatitudes / 1.5
mglobal.horseLatitudes = mglobal.horseLatitudes / 1.5
mglobal.iceLatitude = mglobal.iceLatitude / 3
mglobal.polarFrontLatitude = mglobal.polarFrontLatitude / 1.5
mglobal.tundraTemperature = mglobal.tundraTemperature * 1.25
--mglobal.snowTemperature = mglobal.snowTemperature * 1.25 -- snow is just horrible
elseif oTemp == 3 then
print("Map Temp: Hot")
mglobal.tropicLatitudes = mglobal.tropicLatitudes * 1.5
mglobal.horseLatitudes = mglobal.horseLatitudes * 1.5
mglobal.iceLatitude = 60
mglobal.polarFrontLatitude = 65
mglobal.tundraTemperature = mglobal.tundraTemperature / 1.25
mglobal.snowTemperature = mglobal.snowTemperature / 1.25
else
print("Map Temp: Normal")
end


local oRainfall = Map.GetCustomOption(3)
if oRainfall == 4 then oRainfall = 1 + Map.Rand(3, "Communitas random rain - Lua") end
if oRainfall == 1 then
print("Map Rain: Arid")
mglobal.riverPercent = mglobal.riverPercent / 1.5
mglobal.featurePercent = mglobal.featurePercent / 1.5
mglobal.marshPercent = mglobal.marshPercent / 1.5
mglobal.junglePercent = 1 - (1 - mglobal.junglePercent) / 1.5
mglobal.zeroTreesPercent = mglobal.zeroTreesPercent * 1.5
mglobal.plainsPercent = mglobal.plainsPercent * 1.25
mglobal.desertPercent = mglobal.desertPercent * 2
elseif oRainfall == 3 then
print("Map Rain: Wet")
mglobal.featurePercent = 0.9 -- should not go above 90%
mglobal.riverPercent = mglobal.riverPercent * 1.5
mglobal.marshPercent = mglobal.marshPercent * 1.5
mglobal.junglePercent = 1 - (1 - mglobal.junglePercent) * 1.5
mglobal.zeroTreesPercent = mglobal.zeroTreesPercent / 1.5
mglobal.plainsPercent = mglobal.plainsPercent / 1.5
mglobal.desertPercent = mglobal.desertPercent / 1.5
else
print("Map Rain: Normal")
end


local oSeaLevel = Map.GetCustomOption(4)
if oSeaLevel == 4 then oSeaLevel = 1 + Map.Rand(3, "Communitas random sea level - Lua") end
if oSeaLevel == 1 then
print("Map Seas: Low")
mglobal.landPercent = mglobal.landPercent * 1.25
elseif oSeaLevel == 3 then
print("Map Seas: High")
mglobal.landPercent = mglobal.landPercent / 1.25
else
print("Map Seas: Normal")
end


local oStarts = Map.GetCustomOption(6)
if oStarts == 1 then
print("Map Starts: Everywhere")
mglobal.offsetAtlanticPercent = 0.40 -- Percent of land to divide at the Atlantic Ocean (50% is usually halfway on the map)
--mglobal.offshoreCS = 0.50 -- no longer needed
else
print("Map Starts: Largest Continent")
mglobal.offsetAtlanticPercent = 0.45 -- Percent of land to divide at the Atlantic Ocean
mglobal.percentLargestContinent = 0.35 -- Eurasia must be this percent of total land (ensures citystates can appear there)
mglobal.terraConnectWeight = 10 -- if Eurasia is too small, connect sub-continents with this (size/distance) from Eurasia
--mglobal.offshoreCS = 0.75 -- no longer needed
mglobal.numNaturalWonders = Round (1.25 * mglobal.numNaturalWonders) -- extra wonders for larger map sizes
end


local oRiftWidth = Map.GetCustomOption(8)
--mglobal.oceanRiftWidth = mglobal.oceanRiftWidth * mapW
if oRiftWidth == 1 then
print("Map Ocean Width: Narrow")
mglobal.oceanRiftWidth = 1
mglobal.landPercent = mglobal.landPercent - 0.02
elseif oRiftWidth == 3 then
print("Map Ocean Width: Wide")
mglobal.oceanRiftWidth = math.max(4, Round(mapW/20))
mglobal.landPercent = mglobal.landPercent + 0.05
end

-- Ocean rift sizes

mglobal.oceanRiftWidth = Round(mglobal.oceanRiftWidth)

end




I stopped this text copy of the LUA file at line 320, it asks me not to edit below that, and I didnt so far.
 
Honestly I'm not too crazy about how your maps turned out. Your coast scatter values are probably too high, creating a lot of weird shapes and unnatural snakiness.

Also, your Isle Percentage values seem absurd. That's almost four times the number or Atolls/Isles as the regular Communitas map, which already has a lot. You also added a lot of extra fish (fish fertility value of 44 vs 40).

That's my opinion. You're of course free to modify it all you like for your personal use, but the current Communitas settings are fine with the ocean rift fixes applied.
 
Back
Top Bottom