Resource icon

PerfectWorld6 7

I have found that this fertility is often on the other side of a mountain range that you can't even get to until late game.

Incas can climb mountains in early game, they will really enjoy that :D
 
Yep, the extraneous folder with all the files is in the Steam download for me. Hopefully this issue won't persist when we re-upload it with your changes. Out of curiosity, what's your ETA? Just so I know when I should have the map settings updated by.
 
Well, I would like to check out the changes in game. I'm not quite there yet, maybe in a week I'll be ready for actual testing.
 
Well, I would like to check out the changes in game. I'm not quite there yet, maybe in a week I'll be ready for actual testing.

Perfect - I was worried you were planning on it like tomorrow or something :D I've been very busy so this gives me more time. Thanks.
 
If you are correct pokiehl it could hold things up. Continents seem to be more important now, and I might have to roll my own once I know what it's supposed to do.
If you figure out how to do that let me know, I can read the results of the stamped named continents but the stamper itself isn't LUA and I didn't see any methods to assign continent IDs, only to read them.

I can't find any recent postings from Seven05. Where has he gone?
I'm hiding from you because if I starting messing with your heightmaps I get sucked into a bottomless pit of tweaking and adjusting and trying to force the game to accept more terrain types. I probably wouldn't eat and I might lose my day job. :)

Anyway, everything you want is in TerrainGenerator.lua:
Code:
function AddTerrainFromContinents(plotTypes, terrainTypes, world_age, iW, iH, iContinentBoundaryPlots)
If you see unexplained hills or mountains this will be the culprit as it completely ignores the world settings used by the rest of the map and has the potential to create an excessive amount of extra hills and mountains.

Within that function you can easily stop them from adding hills & mountains and just use volcanoes. Honestly though, if it's anything like the old perfect world you will have much better data to place volcanoes than that and you won't have to deal with their wonky straight boundaries or cases when they have narrow bands of named continents for no good reason. Oh, fissures are in there too but they're discrete enough that they don't really impact the overall map so much.

They also jacked up jungle placement to fix their old problem with heavy banding at the equator so you'll either need to drastically increase your jungle percentages or override their function entirely.

The coastal lowlands are a breeze, they just scan coastal tiles and mark some of them as 1, 2 or 3 meter lowlands. They have a couple safety checks in there for things like the Dead Sea natural wonder but it's pretty straight forward and it's isolated in it's own lua file. You can just add: MarkCoastalLowlands(); to your map generator just before resource placement and it will work (well, also include "CoastalLowlands" in your mapscript lua).

It looked messy at first but I was able to convert all of my maps over pretty easily. The biggest headache was the change to load orders, I had to alter my modinfo with:
Code:
    <Components>
        <ImportFiles id="DW_Import">
            <Properties>
                <LoadOrder>100</LoadOrder>
            </Properties>
            <Items>
                <File>Maps/DWArchipelago.lua</File>
                <File>Maps/DWContinents.lua</File>
                <File>Maps/DWFractal.lua</File>
                <File>Maps/DWPangaea.lua</File>
                <File>Maps/DWSmallContinents.lua</File>
                <File>Maps/DWMixedLand.lua</File>
                <File>Maps/DWMixedIslands.lua</File>
                <File>Maps/Utility/FeatureGenerator.lua</File>
                <File>Maps/Utility/MapUtilities.lua</File>
                <File>Maps/Utility/MountainsCliffs.lua</File>
                <File>Maps/Utility/RiversLakes.lua</File>
                <File>Maps/Utility/TerrainGenerator.lua</File>
            </Items>
        </ImportFiles>
        <UpdateDatabase />
    </Components>
 
Seven05! It's been a long time. Good to hear from you.

Thanks for the info. I have been though most of the relevant LUA, and I think I know what to do. I am not happy with the continent stamping situation. Even in RF, it was highly mysterious and didn't work well for PW. I would settle a new city, next to all my others, and end up as the 'first' civ to settle on such n such continent, even though there was no discernible barrier between the rest of my cities and the new city.

In the old days, Firaxis would provide us with references to native game objects so we could call into them. Can anyone here figure out the interface between lua and native code? There are many useful functions there, such as Map.GetPlotDistance(plot, plot) if we only knew about them. Maybe there is a 'SetContinent' function in there somewhere? Does anyone here know any Firaxians that could help us out? If we knew what StampContinents did exactly, we could trick into doing what we want maybe.

EDIT: I have to say though, this version of the Continents map(and others I suppose) is vastly superior to previous versions. It's nice to have mountain ranges, however you get them.
 
Last edited:
Seven05! It's been a long time. Good to hear from you.
You too, I've been around just busy. February is pretty slow at work so I actually have time to do things like visit Cvifanatics :)

EDIT: I have to say though, this version of the Continents map(and others I suppose) is vastly superior to previous versions. It's nice to have mountain ranges, however you get them.
Yep, that's why I said what I did when pokiehl quoted me from steam. It's a hack, but it's a brilliant hack and I wish I was the one who thought of it. It's useless on islands and similar maps but it works really well on continents. It can be a bit extreme on Pangaea though, but I think I have that fixed for my next update.
 
I don't know the viabiability of this, but it would be great to see more than just the strict coastal tiles be considered as low land coastal. Sea level rise only affecting the outermost tiles is a bit underwhelming, especially on larger land masses
 
I don't know the viabiability of this, but it would be great to see more than just the strict coastal tiles be considered as low land coastal. Sea level rise only affecting the outermost tiles is a bit underwhelming, especially on larger land masses

From what I've seen, this should be possible. Very shocking I imagine to see land swallowed up for two or three tiles. In fact, if I use my elevation map as the guide, this could happen rather easily.
 
Awesome. Also, HS, I just realized you make the perfectWorld for DF(aka I read your sig)
 
Could you 3 stop posting please, the more you post and the more it's difficult to wait :D
 
If you figure out how to do that let me know, I can read the results of the stamped named continents but the stamper itself isn't LUA and I didn't see any methods to assign continent IDs, only to read them.
Code:
TerrainBuilder.SetContinentType(plot, continentTypeID)
 
While there are many specialists here I have a question disturbing me since the first trailer of GS. Are there different 'ages' for volcanoes with youngs having more activity than olders ?
 
Code:
TerrainBuilder.SetContinentType(plot, continentTypeID)
That is awesome. Any idea what the continentTypeID is, just an integer?

Thanks for that bit of information. I have something else I can mess with now :)
 
That's great info Gedemon, thanks for that. How did you figure that out? Trial and error? I couldn't find that in any of the existing lua. Maybe I searched in the wrong place.

pokiehl, I am ready to begin testing, so whenever you have time, go ahead and post the configs.

I don't know what my issue is with the uploader, but it could have something to do with Google Sync, because I once had my documents folder synced, but I turned it off.
 
That's great info Gedemon, thanks for that. How did you figure that out? Trial and error? I couldn't find that in any of the existing lua. Maybe I searched in the wrong place.
may have found it when doing some dumps using the firetuner (see https://forums.civfanatics.com/threads/lua-objects.601146/), don't remember exactly when, but it's a part of YnAMP since some time (but not the first versions, those had randomly generated continent name)

IIRC for TerrainBuilder and a few other tables that can be found in the base Lua files, this simple line is enough to get all the available methods name :
Code:
for k, v in pairs(TerrainBuilder) do print(k,v) end

after that it's trial/error for the parameters without examples, but in that case there is a similar method used by the WB: WorldBuilder.MapManager():SetContinentType using the same arguments
 
Glad to hear the continent stamping isn't causing any issues. FYI, here is what Seven05 said verbatim about it:

The changes Firaxis made are still in. They cheated, and I wish I would have thought of that method myself. When they "stamp" the continent zones, which is mostly random, they then use those borders to raise hills, mountains and volcanoes. It's backwards since those continents don't influence the landmasses but it works.

After doing some tests on starting games on vanilIa maps think the idea is not so brillant and can grantly break any immersion and interest of playing different civs and leaders.

Continents are too small and so their number is too important, for example it makes England overpowered due to the facility to find continents, they can have a free land unit in all city and one more naval unit in each coastal town.

Second, each of these small continent seems to have a lot of different tiles so civs needing vaste lands of one type are killd ( for example the ones needing larges plains to make horses running or building wonders on flats terrain) and the advantage that may have some civs is reduced (for example Germany because every civ have many hills to make production or Korea because every civ has enough mountains to have a lot of science).

Just an impression after generating 30 vanilla maps but the game became flat due to that problem.
 
I get the feeling the continent stamper uses the chokepoints found to also create something of a barrier to divide continents, and in pw it can result in quite a few tiny continents since there can be very many chokepoints. How should continents be divided? Should mountain ranges play a role?
 
Attached the new version Cephalo. Modinfo is up-to-date as well; all you gotta do is update your map script :)

If updating PW6 to Gathering Storm may make the map incompatible with Rise and Fall, I can easily make it so that you can keep the old version of the script and then include the new version for Gathering Storm.

Another option is to do like Seven05 did and upload a new version, but it's up to your preference what to do.
 

Attachments

Back
Top Bottom