(On a side note, how does one check the AI extended flipzones in the builder? I learned the above not by examining flipzones and stability maps, but when one of my cities flipped to Canada during my latest game as America).
WB -> Mapmode -> View flipzones (eye icon, bottom left of the menu).
The pink area is the area for the human player. The red area is the additional area for the AI.
Not intentional, can you give me coordinates or label the tiles on a screenshot?
Thanks. However, I should point out the data there is incomplete - according to that, Canada doesn't have an extended flip zone for the AI.
Also, how do the values in the War Map view work, exactly?
dChangedBirthArea = {
iPersia : ((74, 37), (85, 44)), # includes Assyria and Anatolia
iSpain : ((49, 43), (55, 46)), # includes Catalonia
iInca : ((26, 19), (31, 24)),
iMongolia : ((81, 45), (105, 54)), # 6 more west, 1 more south
iTurkey : ((67, 41), (76, 48)), # 2 more west
iArgentina : ((29, 3), (35, 13)), # includes Chile
}
According to the code, Canada doesn't have an extended flipzone for the AI. The script auto detects if a civ has an extended core if it is in the list below. (Areas.py)
Spoiler :Code:dChangedBirthArea = { iPersia : ((74, 37), (85, 44)), # includes Assyria and Anatolia iSpain : ((49, 43), (55, 46)), # includes Catalonia iInca : ((26, 19), (31, 24)), iMongolia : ((81, 45), (105, 54)), # 6 more west, 1 more south iTurkey : ((67, 41), (76, 48)), # 2 more west iArgentina : ((29, 3), (35, 13)), # includes Chile }
The warmap is how much the AI want to conquer that tile. Non colored tiles aren't valued by the AI. From low to high importance, it's red, orange, yellow, light green, dark green, (blue). Blue is between brackets because only a few civs have warvalues that high.
# Leoreth: Canada also flips English/American/French cities in the Canada region
if iPlayer == iCanada:
lCanadaCities = []
lCanadaCities.extend(utils.getCityList(iFrance))
lCanadaCities.extend(utils.getCityList(iEngland))
lCanadaCities.extend(utils.getCityList(iAmerica))
for city in lCanadaCities:
if city.getRegionID() == rCanada and city.getX() < Areas.getCapital(iCanada)[0]:
lCities.append(city)
Actually yeah, I prefer peaks as being part of their region.
As for the Canadian flip, it's a special rule in RiseAndFall.getConvertedCities():
Apparently the regions are not perfectly aligned with the stability maps.Code:# Leoreth: Canada also flips English/American/French cities in the Canada region if iPlayer == iCanada: lCanadaCities = [] lCanadaCities.extend(utils.getCityList(iFrance)) lCanadaCities.extend(utils.getCityList(iEngland)) lCanadaCities.extend(utils.getCityList(iAmerica)) for city in lCanadaCities: if city.getRegionID() == rCanada and city.getX() < Areas.getCapital(iCanada)[0]: lCities.append(city)
I'm correcting Alaska right now, but you're right about the area around Minnesota. Do you have a save where those cities flip?That would explain X:10, Y:60 through X:10, Y:64, as those are marked as Canada and not Alaska in the Region Map, but X:20, Y:50 through X:24, Y:51 is (correctly) marked as part of the United States there, yet still flips.
Me too. The problem is still there.
Please describe a way for me to reproduce this.
Tested it with a caravel, no problems for me. So it's clearly not broken in every situation. I need a specific situation to reproduce from, preferably a save.Any game, sleep after movement bug.
I'm correcting Alaska right now, but you're right about the area around Minnesota. Do you have a save where those cities flip?
elif self.iMapType == self.RELIGION_MAP:
#(iNone, iMinority, iPeriphery, iHistorical, iCore) = range(5)
lColors = ["", "COLOR_PLAYER_ORANGE", "COLOR_YELLOW", "COLOR_GREEN", "COLOR_CYAN"]
for x in range(con.iWorldX):
for y in range(con.iWorldY):
plot = gc.getMap().plot(x, y)
if plot.isPeak() or plot.isWater(): continue
iFactor = plot.getSpreadFactor(self.iSubSelect)
if iFactor <= 0: continue
iColor = gc.getInfoTypeForString(lColors[iFactor])
screen.minimapFlashPlot(x, y, iColor, -1)
I don't know if it's an error on my end, but it seems that the initialization of the spreadfactor of Judaism and Orthodoxy is bugged. (Only in the 3000 BC and 600 AD scenarios)
I created a small tool to view certain maps from the infoscreen. One of them is the spreadfactor map of religions. That one shows the maps of Judaism and Ortodoxy are incorrect.
It is not consistent with all scenarios. In the 1700 AD scenario, all religion maps work fine. In the 600 AD scenario, only Orthodoxy shows an incorrect map and in the 3000 BC map both the Jewish and Orthodox maps are incorrect. All cases in which the map is incorrect show a map like in the screenshot.
Spoiler :![]()
All other religions have correct maps in all scenarios.
I tried to verify if it's my tool or the game by slightly modifying the CNM view tool of the WB, but that gives the same result.
If it helps, this is (a part of) the code I use for the tool. self.iSubselect is the selected iReligion.
Spoiler :Code:elif self.iMapType == self.RELIGION_MAP: #(iNone, iMinority, iPeriphery, iHistorical, iCore) = range(5) lColors = ["", "COLOR_PLAYER_ORANGE", "COLOR_YELLOW", "COLOR_GREEN", "COLOR_CYAN"] for x in range(con.iWorldX): for y in range(con.iWorldY): plot = gc.getMap().plot(x, y) if plot.isPeak() or plot.isWater(): continue iFactor = plot.getSpreadFactor(self.iSubSelect) if iFactor <= 0: continue iColor = gc.getInfoTypeForString(lColors[iFactor]) screen.minimapFlashPlot(x, y, iColor, -1)