1. We have added a Gift Upgrades feature that allows you to gift an account upgrade to another member, just in time for the holiday season. You can see the gift option when going to the Account Upgrades screen, or on any user profile screen.
    Dismiss Notice

Balanced (starting terrain) Biases 1.0

Certain civs will spawn in terrain with direct synergies with their kit more often.

  1. Edaka

    Edaka King

    Joined:
    Jul 14, 2015
    Messages:
    703
    This is an attempt to make certain civs spawn more often in terrain that directly compliments their unique kits. For example, ideally, the Inca should always spawn on hilly terrain due to their terrace farms, the Netherlands - on terrain with plenty of fresh water due to their polders, etc.

    Vox Populi already does a decent job at doing this. However, it could seem that some areas could use some more love.

    This effort was inspired by this thread, so special thanks to all who participated. I hope that this mod will address some, if not all, of your worries, and I will welcome any feedback.

    I initially added a lot more terrain biases than made the cut, but my limited testing showed that they were frequently ignored. It may be that too many biases overlap, and therefore compete, with each other too much. I had to leave only the biases that are directly tied to gameplay and cut out all the rest (e.g., real world historical, geographical terrain biases). You may still find those old biases in the 'More Thematic (WIP).sql' file.

    The basics of start biases:
    Spoiler :

    --Copy-paste of notes to modders from Civ5Civiliations.xml:

    -- NOTE TO MODDERS: Each Civ can belong to only one of the four Start Bias categories, listed below.
    -- If a Civ has entries in any of the four following tables, any entries in later tables will end up being ignored.
    -- So... Coastal bias trumps River bias trumps Region Priority trumps Region Avoid.
    -- The best practice is to pick only one of the four types (or none), for each civilization.

    -- NOTE TO MODDERS: Both single and multiple entries for Region Priority (per Civ) are supported!
    -- If a Civ has one Priority, then on maps without a region of that type, fallback methods apply.
    -- The fallback methods will match the given civ with a region that has the most tiles of the priority terrain type.
    -- For instance, if Russia is set for Tundra priority but a map has no Tundra regions, they will look for a region that has some tundra.
    -- If a Civ is given multiple priorities, fallbacks are not used: the bias isn't applied when a map has none of those region types.

    -- NOTE TO MODDERS: Both single and multiple entries for Region Avoid (per Civ) are supported!
    -- Region Avoid only kicks in for Civs that do not have a Coast, River or Priority need.
    -- If a civ cannot avoid being placed in types it tries to avoid, the Avoid has to be ignored.
    Available regions to pick from:
    --REGION_DESERT, REGION_TUNDRA, REGION_PLAINS, REGION_GRASS, REGION_FOREST, REGION_JUNGLE, REGION_HILLS, REGION_HYBRID, REGION_UNDEFINED


    How VP handles biases (as of version 4/20):
    Spoiler :

    --As of VP version 4/20, there are the following starting biases:

    --StartFirstAlongOcean (1):
    --CIVILIZATION_VENICE
    --Comment: fair enough.

    --StartAlongOcean (8):
    --CIVILIZATION_ENGLAND
    --CIVILIZATION_POLYNESIA
    --CIVILIZATION_DENMARK
    --CIVILIZATION_CARTHAGE
    --CIVILIZATION_SPAIN
    --CIVILIZATION_PORTUGAL
    --CIVILIZATION_VENICE
    --CIVILIZATION_NETHERLANDS

    --Comments: all of these seem fair. Venice is redundant since it has StartFirstAlongOcean.
    --However, the Netherlands can only either have this (coastal) bias or a river one. Hmmm...
    --Spain is debatable. It only has one part of its UA tied to coasts, whereas other civs here have more than one (UU+UA, etc.)
    --Conquistador is kinda related to coasts, but not much? Idk.
    --Furthermore, buying ships with faith can be done in non-capital cities with little detriment.

    --StartAlongRiver (7):
    --CIVILIZATION_SONGHAI
    --CIVILIZATION_NETHERLANDS
    --CIVILIZATION_EGYPT
    --CIVILIZATION_INDIA
    --CIVILIZATION_BABYLON
    --CIVILIZATION_CHINA
    --CIVILIZATION_ASSYRIA

    --Comments: only Songhai, the Netherlands and, to some extent, India have gameplay mechanics that justify this bias.
    --India is tricky since the Harappan reservoir buffs farms, flood plains, oases and lakes - this could call for either river or desert bias (floodplains/oases).
    --Unfortunately, only one can be chosen - either rivers or deserts.

    --StartRegionPriority (22):
    --CIVILIZATION_ARABIA REGION_DESERT
    --CIVILIZATION_AZTEC REGION_JUNGLE
    --CIVILIZATION_IROQUOIS REGION_FOREST
    --CIVILIZATION_INCA REGION_HILLS
    --CIVILIZATION_NETHERLANDS REGION_GRASS
    --CIVILIZATION_BRAZIL REGION_JUNGLE
    --CIVILIZATION_MONGOL REGION_PLAINS
    --CIVILIZATION_MONGOL REGION_PLAINS
    --CIVILIZATION_MOROCCO REGION_DESERT
    --CIVILIZATION_OTTOMAN REGION_HILLS
    --CIVILIZATION_GREECE REGION_HILLS
    --CIVILIZATION_AMERICA REGION_FOREST
    --CIVILIZATION_SIAM REGION_JUNGLE
    --CIVILIZATION_SIAM REGION_FOREST
    --CIVILIZATION_SIAM REGION_JUNGLE
    --CIVILIZATION_HUNS REGION_PLAINS
    --CIVILIZATION_ZULU REGION_PLAINS
    --CIVILIZATION_POLAND REGION_GRASS
    --CIVILIZATION_POLAND REGION_PLAINS
    --CIVILIZATION_SHOSHONE REGION_GRASS
    --CIVILIZATION_MAYA REGION_JUNGLE
    --CIVILIZATION_EGYPT REGION_DESERT

    --Comments:
    --Duplicates: the Mongols, Siam. Whoops.
    --Desert. Only Morocco, Arabia and Egypt has this bias - looks good, not much of an overlap.
    -- Arabia is debatable, but there's a synergy between the UB + Petra. Also theme.
    --Tundra. None, all good.
    --Forest. The Iroquois, America, Siam. America obviously doesn't need to be here. The rest is good.
    -- For Siam jungle may be preferable due to the current balance of forest vs jungle plantations. Also theme is better maybe?
    --Jungle. The Aztec, Brazil, Siam, Maya. All seem good.
    -- For the Aztec a river bias could be considered due to the UB synergy. This is a UB vs UU dilemma.
    --Grass. The Netherlands, Poland, the Shoshone. The Netherlands to be removed due to redundancy.
    --Plains. The Mongols, the Huns, the Zulu, Poland. Seems good.
    --Question: does a grass or a plains bias exclude forests/jungle and hills? Doesn't seem so, as I've started in jungle as the Mongols.

    --StartRegionAvoid (8):
    --CIVILIZATION_EGYPT REGION_JUNGLE
    --CIVILIZATION_EGYPT REGION_FOREST
    --CIVILIZATION_SONGHAI REGION_TUNDRA
    --CIVILIZATION_ASSYRIA REGION_TUNDRA
    --CIVILIZATION_BABYLON REGION_TUNDRA
    --CIVILIZATION_HUNS REGION_FOREST
    --CIVILIZATION_HUNS REGION_JUNGLE
    --CIVILIZATION_ZULU REGION_JUNGLE

    --Comments: here should be the civs that are somehow restricted by certain terrain, e.g., the Huns, the Shoshone (UI).
    --Egypt, Songhai are redundant due to overriding biases. Assyria and Babylon - idk, only theme. The Huns - good. The Zulu - idk?


    The tl;dr version of changes (more detailed explanation can be found below in the long version):
    Spoiler :

    --(Remember that a civ can only have one of the four types of bias, e.g., you can't set both a coastal and a river bias at the same time),
    --Venice, England, Polynesia, Denmark, Carthage, Spain, Portugal with a coastal bias (removed the Netherlands),
    --Songhai, the Netherlands with a river bias (removed Egypt, Babylon, Assyria, China, India),
    --Arabia, Morocco, Egypt, India with a desert bias (Egypt actually never had this properly, as it was trumped by its river bias),
    --the Inca and the Celts with a hill bias (removed Greece and the Ottomans),
    --the Maya, the Aztecs, Brazil, Siam and the Iroquois all with both a jungle and a forest bias - a failsafe measure,
    --Russia has a forest bias for Ostrog reasons,
    --the Shoshone and the Huns avoid hills, desert and tundra - bad for their UIs,
    --France avoids desert and tundra - same reason,
    --Mongolia avoids forests and jungle for horse reasons.
    --For everyone else: no bias.


    The long version of changes:
    Spoiler :

    --Morocco, Arabia. Bias is desert, seems good (only Morocco, Arabia and Egypt has this bias - not much of an overlap).

    --Egypt. Bias is rivers and desert and avoiding jungle and forest.
    --Since the river bias makes everything else redundant, and the UB synergises with deserts more than it does with rivers, let's fix that.
    DELETE FROM Civilization_Start_Along_River WHERE CivilizationType = 'CIVILIZATION_EGYPT';

    --India. Bias is rivers. This one's tricky - both rivers and desert have synergies with the unique parts of the UB (farms and floodplains).
    --However, I think desert has more (floodplains). Let's change to deserts, making it 4 civs with this bias.
    DELETE FROM Civilization_Start_Along_River WHERE CivilizationType = 'CIVILIZATION_INDIA';

    INSERT INTO Civilization_Start_Region_Priority (CivilizationType, RegionType)
    VALUES ('CIVILIZATION_INDIA', 'REGION_DESERT');

    --The Netherlands. Bias is coasts, rivers, grass. Since only one can be chosen, rivers seem the best due to the synergy with the UI.
    --Coastal bias is also a good candidate, but Polders>Sea Beggars. Grassland bias is redundant anyway, might as well leave it there.

    DELETE FROM Civilization_Start_Along_Ocean WHERE CivilizationType = 'CIVILIZATION_NETHERLANDS';

    --China. Bias is rivers. Not needed - no synergies, make space for others.

    DELETE FROM Civilization_Start_Along_River WHERE CivilizationType = 'CIVILIZATION_CHINA';

    --Assyria, Babylon. Bias is rivers and avoid tundra.
    --Let's remove rivers - there's no gameplay justification and the rivers you usually get with this bias don't scream 'Mesopotamia' anyway.
    --Let's remove avoid tundra, too, as there are civs that need this more.
    DELETE FROM Civilization_Start_Along_River WHERE CivilizationType = 'CIVILIZATION_ASSYRIA';
    DELETE FROM Civilization_Start_Along_River WHERE CivilizationType = 'CIVILIZATION_BABYLON';
    DELETE FROM Civilization_Start_Region_Avoid WHERE CivilizationType = 'CIVILIZATION_ASSYRIA' AND RegionType = 'REGION_TUNDRA';
    DELETE FROM Civilization_Start_Region_Avoid WHERE CivilizationType = 'CIVILIZATION_BABYLON' AND RegionType = 'REGION_TUNDRA';

    --Songhai. Bias is rivers and avoid tundra. Rivers are good, tundra is redundant. It can stay.

    --Greece. Bias is hills - unnecessary, let's clean up for the Inca who really need it and start without hills frequently.
    DELETE FROM Civilization_Start_Region_Priority WHERE CivilizationType = 'CIVILIZATION_GREECE' AND RegionType = 'REGION_HILLS';

    --The Ottomans. Bias is hills. Remove - no overt synergy, make space for the ones who need hils.
    DELETE FROM Civilization_Start_Region_Priority WHERE CivilizationType = 'CIVILIZATION_OTTOMAN' AND RegionType = 'REGION_HILLS';

    --The Inca. Bias is hills. Seems good.

    --The Celts. No bias. I'd add a hills bias for the UU, that would make it 2 civs with it: the Celts and the Inca.
    INSERT INTO Civilization_Start_Region_Priority (CivilizationType, RegionType)
    VALUES ('CIVILIZATION_CELTS', 'REGION_HILLS');

    --The Huns. Bias is plains and avoid jungle and forest.
    --I'm not entirely sure if just setting a plains or a grass bias excludes hills by itself, and doing so makes StartRegionAvoid redundant.
    --Therefore let's remove plains bias, add avoid hills, tundra and desert (all bad for the Eki) and remove avoid jungle and forest (not needed).
    DELETE FROM Civilization_Start_Region_Priority WHERE CivilizationType = 'CIVILIZATION_HUNS' AND RegionType = 'REGION_PLAINS';
    DELETE FROM Civilization_Start_Region_Avoid WHERE CivilizationType = 'CIVILIZATION_HUNS' AND RegionType = 'REGION_JUNGLE';
    DELETE FROM Civilization_Start_Region_Avoid WHERE CivilizationType = 'CIVILIZATION_HUNS' AND RegionType = 'REGION_FOREST';

    INSERT INTO Civilization_Start_Region_Avoid (CivilizationType, RegionType)
    VALUES ('CIVILIZATION_HUNS', 'REGION_HILLS'), ('CIVILIZATION_HUNS', 'REGION_TUNDRA'), ('CIVILIZATION_HUNS', 'REGION_DESERT');

    --The Shoshone. Bias is grass.
    --As with the Huns, I'm not sure that a grass bias excludes hills and tundra/desert, so let's exclude those.
    --Forests and deserts are probably okay, since they don't necessarily imply uneven terrain.
    DELETE FROM Civilization_Start_Region_Priority WHERE CivilizationType = 'CIVILIZATION_SHOSHONE' AND RegionType = 'REGION_GRASS';

    INSERT INTO Civilization_Start_Region_Avoid (CivilizationType, RegionType)
    VALUES ('CIVILIZATION_SHOSHONE', 'REGION_HILLS'), ('CIVILIZATION_SHOSHONE', 'REGION_DESERT'), ('CIVILIZATION_SHOSHONE', 'REGION_TUNDRA');

    --France. No bias. Let's take the same approach as with the Huns and the Shoshone, i.e., exclude terrain that makes the UI worse.

    INSERT INTO Civilization_Start_Region_Avoid (CivilizationType, RegionType)
    VALUES ('CIVILIZATION_FRANCE', 'REGION_DESERT'), ('CIVILIZATION_FRANCE', 'REGION_TUNDRA');

    --The Zulus. Bias is plains and avoid jungle. The former makes the latter redundant.
    --Idk, leave it at that?

    --Mongolia. Bias is plains.
    --If we want them to spawn on unforested/jungleless terrain, we should exclude everything it.
    --Should help with getting horses early, which arguably nobody else in the game needs as much.
    DELETE FROM Civilization_Start_Region_Priority WHERE CivilizationType = 'CIVILIZATION_MONGOL' AND RegionType = 'REGION_PLAINS';

    INSERT INTO Civilization_Start_Region_Avoid (CivilizationType, RegionType)
    VALUES ('CIVILIZATION_MONGOL', 'REGION_JUNGLE'), ('CIVILIZATION_MONGOL', 'REGION_FOREST');

    --Poland. Bias is grass and plains. I don't think Poland is intended to spawn in jungle, tundra or desert. Therefore, let's exclude them.
    --Idk, leave it at that?

    --Carthage, England, Venice, Denmark, Isabella, Portugal, Polynesia. Bias is coasts. A little too many, but all of them need it.

    --The Maya, Brazil. Bias is jungle. Seems good, but let's add forests as a failsafe. Not terribly thematic, but gameplay demands it.
    INSERT INTO Civilization_Start_Region_Priority (CivilizationType, RegionType)
    VALUES ('CIVILIZATION_MAYA', 'REGION_FOREST'), ('CIVILIZATION_BRAZIL', 'REGION_FOREST');

    --The Aztecs. Bias is jungle. It's unclear whether jungle bias is better due to the UU or a river one due to the UB.
    --Replacing jungle with rivers would free up some jungle bias free estate, at the same time populating the now sparse rirer bias space.
    --Still, jungle is probably more accurate overall and synergises with the UA more, since it's warfare oriented. So leave as is.
    --Let's add forests as a failsafe. Not terribly thematic, but gameplay demands it.
    INSERT INTO Civilization_Start_Region_Priority (CivilizationType, RegionType)
    VALUES ('CIVILIZATION_AZTEC', 'REGION_FOREST');

    --The Iroquois. Bias is forests. Seems good, but let's add jungle as a failsafe.
    INSERT INTO Civilization_Start_Region_Priority (CivilizationType, RegionType)
    VALUES ('CIVILIZATION_IROQUOIS', 'REGION_JUNGLE');

    --Siam. Bias is jungle and forests. Seems good.

    --America. Bias is forests. Not needed - remove, make space for others.
    DELETE FROM Civilization_Start_Region_Priority WHERE CivilizationType = 'CIVILIZATION_AMERICA' AND RegionType = 'REGION_FOREST';

    --Russia. No bias. Let's add forest for the sake of the UB, which buffs lumbermills and mines.
    --While you will have a certain amount of mines with any start, making lumbermills work requires adjacency bonus, and therefore large forests.

    INSERT INTO Civilization_Start_Region_Priority (CivilizationType, RegionType)
    VALUES ('CIVILIZATION_RUSSIA', 'REGION_FOREST');

    --Rome, Germany, Russia, Persia, Indonesia, Sweden, Ethiopia, Japan, Korea, Byzantium. No bias. Seems good.
    --Don't forget America, China, Greece, the Ottomans, Assyria, Babylon, as they now also have no bias.


    P.S. When choosing the name for this mod, I didn't mean to imply that VP's starting biases were imbalanced. It was a petty attempt at keeping the theme of recurrent initial letters. :)
     
    Last edited: May 8, 2019

Share This Page