1.24.1 Released!

But even if you could combat dissent with espionage more effectively, it doesn't address the complaint that dissent dominates the game if you play for domination, because you're still gearing your entire civ toward dissent prevention. I like the proposal more where overall dissent increase for large empires is removed or significantly reduced, and instead more dissent is created by the presence of foreign culture. This would still punish rapid expansion with massive dissent, but if you expand slowly or just wait and build up for a while, you could lower dissent simply by the fact that you spread your own culture in the conquered areas. It's a good combination of existing mechanics and historical plausibility.
I agree that using foreign culture to generate dissent is probably a better solution than scaling dissent with city count. I think that multiculturalism would need to be changed, otherwise this mechanic would breakdown. The reason I bring up using the espionage slider to control dissent is that it would reduce micromanagement significantly. In a situation where you are managing 48 cities, it can be very tedious to hold your civ together. If a player is going for a domination victory they will probably have several other civs' capitals; so the foreign cultural in these cities will most likely generate an unmanageable amount of dissent if another mechanic to deal with dissent isn't introduced.

Currently you can use the cultural slider to indirectly manage dissent over time (more culture in a city, less dissent). This is more of a long-term solution though, and the rate of dissent drops very slowly. The espionage slider could be used in a way that has more of a short-term effect, similar to how golden ages are short term solutions to managing dissent.

A couple ways this could be implemented are:
1) Base dissent is reduced by the % the espionage slider is at. (This doesn't tie actual espionage point production to reducing dissent, so it will scale well, but espionage point produced won't matter) If base dissent scaling was removed and replaced with foreign culture causing dissent, then I think this would be the best method.

2) Total espionage points produced are multiplied by a constant, and the result is how much dissent is reduced by each turn. (Depending on how much total espionage production differ between small and large civs, this could have scaling problems. Perhaps maintenance costs will keep larger civ's espionage sliders lower however.)

edit: if maintenance costs keep large civs' espionage sliders low, my 1st way of implementing this probably wouldn't work, so I think the 2nd way is probably the best
 
Multiculturalism makes dissent nearly a non-issue when taking cities ... I think I would remove foreign culture reducing dissent, I think it breaks the dissent mechanic.

It's not unlocked until very late in the game, so this is okay. But, see below:

If the "foreign culture reduces dissent" was taken away from multiculturalism, I don't think scaling dissent with city count could would be needed. In order to maintain the idea that large states and colonies of a state are hard to maintain, it could be added that barbarian culture gain could be tied to distance from capital (this would work if foreign culture produces dissent, which I think is the case, correct me if I'm wrong).

Foreign culture doesn't generate dissent, it just means you get less dissent reduction from culture. If your city is 100% your culture, then it will reduce dissent by 100 each turn. But if 25% of the city is not your culture, then that city will only reduce dissent by 75 each turn. This dissent reduction is in addition to the -20 you get for each culture level.

I don't really see the tie between multiculturalism and prod anyways. I think it would make more sense if 50% trade route went to food (to represent immigration), and foreign culture influence from trade doubled.

It represents migrant labour. Food, while it makes sense as immigration, would make the civic considerably more powerful. That bonus is better used at Redistribution where it can be tempered with an appropriate penalty (no foreign trade).

Social Welfare is the strongest labour mechanic in almost every aspect. No unhappiness from corps, and unlimited doctors allow you to work more tiles/specialists than usual. This can make the production gain greater than industrialism, especially when considering that when industrialism becomes available, the factories begin to produce a lot of unhealthiness, making unlimited engineers very hard to utilize. Corporations also begin to take off around this time, making the unhealthiness situation even worse. To make this civic even better, it has low dissent.

Industrialism is a bit weak. I'll be lowering it's upkeep in 1.25 and see how it feels from there.

Sustainability is also way too powerful; no unhealthiness from pop or corps makes dissent even less relevant, and wind turbines and nature reserves produce commerce. The only way I can see this civic being justified in being this powerful, and low dissent is that free market is much better from a commerce point of view, so the opportunity cost is very high for not choosing it. I think this civic could be more balanced if it had some drawbacks, such as no access to coal.

It's available very late in a game and long after Free Market is unlocked. Between that and the opportunity cost I don't think it needs to be weakened.

I think a good start would be if player could weight espionage points on themselves to reduce overall dissent, and also could use these points on their own cities to reduce dissent. This way, a player going for domination will need to maintain a strong enough economy to fund their espionage if they want to maintain stability.

A way that might be easier to implement is if the espionage generated by a civ (without weighting themselves) contributed to reducing dissent in all cities. So you could adjust the espionage slider when dissent begins to get out of hand. This way there's no need to modify how espionage works. Currently I don't think the slider has any effect on dissent in a city. I think its only base espionage generated from buildings in the city.

The espionage slider does help reduce dissent. Dissent is reduced by 1 for every point of espionage a city generates, after all modifiers are applied (including the slider). The more espionage infrastructure you have in a city, the more effective the slider will be.

I don't think HR is set up to convert barbarian culture to breakaway state's culture.

It does as of 1.24.

There is not a need for another economic challenge for a large civ, particularly if trying to absorb conquered cities.

I disagree. The problem with Civ4 is that once a civ gets sufficiently ahead in terms of territory, it's rare that it will lose or that other civs can catch up. More territory = more yield = more progress towards victory. This is much less of a problem than in other versions of Civ because maintenance and upkeep stops such leads becoming exponential, but past a certain point they are just slowing the inevitable. I designed the dissent system to address this and to try and create more of a 'leapfrogging' situation, where civs are more likely to rise and fall throughout the game and making foregone conclusions less likely.

The dissent system does make a Domination Victory tougher though, because it relies on actual territory and not as much on the yield from it. But there is a mechanic already in game that helps to mitigate that problem – vassal states, which allow you to obtain territory without increasing your dissent. This is why I keep imploring you to make use of them. Domination victories are all but impossible without them, because to balance it otherwise means dissent would be much too weak to achieve the goal of dynamic gameplay for the other victory types.

Dissent scales quickly with extra cities; this is the single biggest problem I have with it.

I think it would improve the balancing if the dissent was not tied to the number of cities. I think the biggest problem is the different map sizes and types make it difficult to scale the base dissent.

Scaling is tricky to get right. Currently dissent is too harsh on maps with high land area (e.g. Pangaeas) and on lower difficulty levels. I'll try to address these in 1.25. I don't think untying dissent from number of cities entirely will work, because that's at cross purposes to what the system is trying to achieve (as described above).

tldr;
I think that if players could weight espionage on themselves and passively reduce their dissent, it would help to balance the scaling of dissent in large civs.

This was my original plan for how espionage would interact with dissent. However it requires a fair bit of AI coding, and it was far easier to just have raw espionage generation apply instead. Incidentally, I'm still pondering whether to rename espionage points as "Security" (with a new symbol). This might fit better with how HR has come to use the system.

But even if you could combat dissent with espionage more effectively, it doesn't address the complaint that dissent dominates the game if you play for domination, because you're still gearing your entire civ toward dissent prevention. I like the proposal more where overall dissent increase for large empires is removed or significantly reduced, and instead more dissent is created by the presence of foreign culture. This would still punish rapid expansion with massive dissent, but if you expand slowly or just wait and build up for a while, you could lower dissent simply by the fact that you spread your own culture in the conquered areas. It's a good combination of existing mechanics and historical plausibility.

I agree that using foreign culture to generate dissent is probably a better solution than scaling dissent with city count.

I originally intended foreign culture to cause dissent directly but it led to captured cities rebelling far to often. That's why I connected it to dissent reduction instead.

Currently you can use the cultural slider to indirectly manage dissent over time (more culture in a city, less dissent). This is more of a long-term solution though, and the rate of dissent drops very slowly. The espionage slider could be used in a way that has more of a short-term effect, similar to how golden ages are short term solutions to managing dissent.

It already can be, but it helps to have espionage infrastructure in the cities you want it to affect.

2) Total espionage points produced are multiplied by a constant, and the result is how much dissent is reduced by each turn. (Depending on how much total espionage production differ between small and large civs, this could have scaling problems. Perhaps maintenance costs will keep larger civ's espionage sliders lower however.)

That's roughly how it works already, just in individual cities rather than civilization-wide.
 
Industrialism is a bit weak. I'll be lowering it's upkeep in 1.25 and see how it feels from there.
I still feel like the biggest issue with the labour civics is that social welfare has a much bigger impact on dissent indirectly, than directly. I think the best way to show this is with the impact of corporations. Corporations produce +2 unhappiness, and +2 unhealthiness each. If happiness/health totals are positive, then the dissent offset changes by -5 per unhappiness/unhealthiness. Otherwise if the happiness/health totals are not positive, then dissent generation increases by 17.

So we can say per corporation the dissent generation is:
+20 dissent minimum
+68 dissent maximum

Social Welfare and Sustainability both halve this (sustainability decreases dissent even further by making population not count towards unhealthiness)

I think the imbalance here is either with the negatives of corporations, or with the social welfare civic.

I disagree. The problem with Civ4 is that once a civ gets sufficiently ahead in terms of territory, it's rare that it will lose or that other civs can catch up. More territory = more yield = more progress towards victory. This is much less of a problem than in other versions of Civ because maintenance and upkeep stops such leads becoming exponential, but past a certain point they are just slowing the inevitable. I designed the dissent system to address this and to try and create more of a 'leapfrogging' situation, where civs are more likely to rise and fall throughout the game and making foregone conclusions less likely.
The dissent system does make a Domination Victory tougher though, because it relies on actual territory and not as much on the yield from it. But there is a mechanic already in game that helps to mitigate that problem – vassal states, which allow you to obtain territory without increasing your dissent. This is why I keep imploring you to make use of them. Domination victories are all but impossible without them, because to balance it otherwise means dissent would be much too weak to achieve the goal of dynamic gameplay for the other victory types.
I agree with this in general; however in my experience, the AI can be very hard to force into capitulation. sometimes they will only have 1 city left when they finally cap, so vassals might not be a feasible way to go for domination. If you play with a lot of AI on a large map, you would need to make nearly every civ your vassal. It might make sense in HR if 100% (or >50%) of vassals' land contributed to domination victories.

I originally intended foreign culture to cause dissent directly but it led to captured cities rebelling far to often. That's why I connected it to dissent reduction instead.
Using foreign culture might still be feasible if there was a cap on how much dissent foreign culture produced, and if military units reduced dissent in a city.

The espionage slider does help reduce dissent. Dissent is reduced by 1 for every point of espionage a city generates, after all modifiers are applied (including the slider). The more espionage infrastructure you have in a city, the more effective the slider will be.
I stand corrected. This addresses all of the reasoning I had behind using the espionage slider to control dissent. I'll probably use this in my future HR games, but the espionage points are usually not very useful in my opinion because you can't get your spies around the map efficiently, unless you're playing on Pangaea. Perhaps could it be changed that spies can use airports to fly to rival cities?
 
On a domination victory: In one game i merely control nearly all land on planet by vasaling but it has still not enof to domination victory. And they idiots break up one after another. So i vent for conquest. But for Ai is different its is ennof.

On dissent reduction:
-One think can be military itself. Like 1 per unit and (civic, tents, tenets, wonders or tech) can improve or decrease the number.
-On second it can be the number (Number of cites * current game dissent constant per one city)) can not be constant but change from distance from capital or seasoning palace. (But still whit the only maximal number that is currently as constant) So no hardcore overseas rebellions on small civc.
And if we are on it it can be possible to rethink the maintenance costs from distance. Aim okey that overseas colony cost more or the colony whit diferent culture cost more. But not small colony (just constructed) that have imidietly 50% barbarian culture.

Barracks: I dunno but, i have felling that it will be nice if it give one free support on "stationed"/garrisoned unit.

Tactic trail: I still feel it no need no cots for upgrade, but at last 10% for upgrade or 1% but no none.

Martial Law: Ability that if start turn all commerce, research, spy and production to anti dissent battle. Cannot be undone until dissent bar dint decrease by one level. Or some turns dint pass.
-But it directly cause unhappiness (1*(size of city/10)) And reduction on espionage resistance. Maybe fortification penalty.
-after it end one unhappy for number of turn that law has occurred as (we remember what you did)
-but when it fail the rebels it will have double garrison of new generated units and population loos by (1*(size of city/10))
-a event of rebellion can be triggered, or just "resistant come to hills" (barbarians: they spawn near city. as Civ2). Or if its city of other empire a free draft on its capital as a crusade to liberate holly city. Or protest against martial law cause bulding down, units damage, improves of titles down, or increase dissent in nearly city.
 
One think can be military itself. Like 1 per unit and (civic, tents, tenets, wonders or tech) can improve or decrease the number.
I think 1 per unit would be too low maybe 5 per unit? Then if excess happiness stays a 5 dissent reduction per turn, authoritarian players would get -10 dissent per military unit.
Tactic trail: I still feel it no need no cots for upgrade, but at last 10% for upgrade or 1% but no none.
I agree I think that the tactical trait should still require players to spend some gold on upgrades. On large maps, a single tech like rifling can grant a tactical civ thousands of gold worth of upgrades, and allows that civ to skip the slow transition between military technologies after the technology has become available.
And if we are on it it can be possible to rethink the maintenance costs from distance. Aim okey that overseas colony cost more or the colony whit diferent culture cost more. But not small colony (just constructed) that have imidietly 50% barbarian culture.
I think the distance maintenance costs is alright where it is now. Usually these high costs are offset by the benefits of being one of the first to colonize a continent, such as more luxury/industrial resources. Also, there is always the option to use Confederation, which takes maintenance costs from distance to capital down to 0.
 
Corporations produce +2 unhappiness, and +2 unhealthiness each. If happiness/health totals are positive, then the dissent offset changes by -5 per unhappiness/unhealthiness. Otherwise if the happiness/health totals are not positive, then dissent generation increases by 17.
Code:
        self.iHappyDissent                    = -5                                    # Dissent change per excess happiness in city
        self.iUnhappyDissent                = 15                                    # Dissent change per excess unhappiness in city
        self.iHealthyDissent                = -5                                    # Dissent change per excess health in city
        self.iUnhealthyDissent                = 15                                    # Dissent change per excess unhealthiness in city
I looked in the CivilWar.py file to check my numbers I got from from dividing dissent from happiness by excess happiness (and same for healthiness) and its off by 2 when not in surplus (is 17, not 15). Any idea why?
 
I think 1 per unit would be too low maybe 5 per unit?
I think From start of the game 5 will be to much. But for simplicity is possible. But for balance the effect unhappiness and unhealthiness can be increased

I looked in the CivilWar.py file to check my numbers I got from from dividing dissent from happiness by excess happiness (and same for healthiness) and its off by 2 when not in surplus (is 17, not 15). Any idea why?

Insist that for difficulty? *
Code:
class CivilWar:
    def __init__(self):
        self.SpeedModifier                     = 50 * (CyGame().getGameSpeedType() + 1) *here
        self.iEscalationTurns                = 25 * (CyGame().getGameSpeedType() + 1) *and here
 
It might make sense in HR if 100% (or >50%) of vassals' land contributed to domination victories.

I can change this for Windows but not Mac, which makes things messy. Will have to leave it as is and make adjustments elsewhere.

Using foreign culture might still be feasible if there was a cap on how much dissent foreign culture produced, and if military units reduced dissent in a city.

I don't want military units reducing dissent other than under Authoritarianism.

Martial Law: Ability that if start turn all commerce, research, spy and production to anti dissent battle. Cannot be undone until dissent bar dint decrease by one level. Or some turns dint pass.

This is what the Authoritarian civic is for.

Perhaps could it be changed that spies can use airports to fly to rival cities?

Not something I can code unfortunately.

Tactic trail: I still feel it no need no cots for upgrade, but at last 10% for upgrade or 1% but no none.

I agree I think that the tactical trait should still require players to spend some gold on upgrades. On large maps, a single tech like rifling can grant a tactical civ thousands of gold worth of upgrades, and allows that civ to skip the slow transition between military technologies after the technology has become available.

I'm considering lowering upgrade costs across the board in 1.25, which would make this bonus less powerful. If I leave them as is, I might revert the bonus to 50%.

I looked in the CivilWar.py file to check my numbers I got from from dividing dissent from happiness by excess happiness (and same for healthiness) and its off by 2 when not in surplus (is 17, not 15). Any idea why?

They're modified by difficulty level.
 
Registered here just to give some feedback:
1. Thank you for very nice mod, it has interesting balance and is not too overwhelming like some others. Actually was first mod on which i played complete game without dropping :)
2. On my playthrough game was consistently crashing when entering Global era (same bug as reported here I believe https://forums.civfanatics.com/threads/game-crash.621542/ ). Was able to circumvent this only by advancing myself to Digital era directly with WorldBuilder.
3. Ability to settle Labourers in a city is ridiculously overpowered. If you just build Labourers and settle all of then it basically allows you to double city's industrial output in a number of turns equal to Labourer's cost in hammers (even faster with production bonuses). Then double it again. And again, as many times as you want. Without any unhappiness/unhealthiness/dissent. Even worse if you get some type of commerce per specialist from civics/traits. It was so out of place that i actually felt compelled to remove just this before starting a game.
4. When i remove all citizens from city squares (+) buttons on all specialists become inactive which means i can't transfer citizens to artists for example. Also sometimes when adding some type of specialist it draws not from unemployed citizens but from some other type of specialist tho i'm not sure how to reproduce this behavior (maybe it depends on what city advisor considers best at this moment?).
5. Doctor specialist is weird. All it does (without extra bonuses from civics/traits) is producing 1 food (while eating 2 and increasing unhealth from population by 1) and GPP towards Great Doctor (which is actually ok since it produces more food, don't eat any, don't count for unhealth and also gives science). And it's kinda strange to have doctors produce food anyway (i can understand Great Priests doing some kind of miracles or just humbly working in the fields, but why doctors?). Shouldn't doctors produce health instead (and at least 2)? It would be a nice way to deal with unhealthiness (of course, just producing more food offsets loss to unhealthiness, but dissent and random climate changes remain). It seems that you are even already using mod component that allows specialists to modify happiness/health (since there are iHealth and iHappiness fields in xml), tho I don't know if it's possible to teach AI to use this properly (well, maybe make it produce 1 food and 1 health then?).
 
Registered here just to give some feedback:
1. Thank you for very nice mod, it has interesting balance and is not too overwhelming like some others. Actually was first mod on which i played complete game without dropping :)

Welcome to CFC! Glad to hear you've been enjoying HR!

2. On my playthrough game was consistently crashing when entering Global era (same bug as reported here I believe https://forums.civfanatics.com/threads/game-crash.621542/ ). Was able to circumvent this only by advancing myself to Digital era directly with WorldBuilder.

I need a proper crash report to solve that particular issue, as I can't reproduce it from that saved game (and they posted dump files rather than a crash report). If it happens again in your next game, please post the saved game and crash report and I'll try to solve it.

3. Ability to settle Labourers in a city is ridiculously overpowered. If you just build Labourers and settle all of then it basically allows you to double city's industrial output in a number of turns equal to Labourer's cost in hammers (even faster with production bonuses). Then double it again. And again, as many times as you want. Without any unhappiness/unhealthiness/dissent. Even worse if you get some type of commerce per specialist from civics/traits. It was so out of place that i actually felt compelled to remove just this before starting a game.

Valid points. I'd kinda forgotten about settled labourers and didn't consider them when adding new specialist bonuses. Will address for 1.25.

4. When i remove all citizens from city squares (+) buttons on all specialists become inactive which means i can't transfer citizens to artists for example.

I can replicate this, seems to be an interface bug. Good catch! I'll have this fixed in 1.25.

Also sometimes when adding some type of specialist it draws not from unemployed citizens but from some other type of specialist tho i'm not sure how to reproduce this behavior (maybe it depends on what city advisor considers best at this moment?).

I've noticed this happen occasionally. Almost certainly related to the city advisor AI. Not likely to be something I'm able to fix, so luckily it can be worked around with a bit of trial and error.

5. Doctor specialist is weird. All it does (without extra bonuses from civics/traits) is producing 1 food (while eating 2 and increasing unhealth from population by 1) and GPP towards Great Doctor (which is actually ok since it produces more food, don't eat any, don't count for unhealth and also gives science). And it's kinda strange to have doctors produce food anyway (i can understand Great Priests doing some kind of miracles or just humbly working in the fields, but why doctors?). Shouldn't doctors produce health instead (and at least 2)? It would be a nice way to deal with unhealthiness (of course, just producing more food offsets loss to unhealthiness, but dissent and random climate changes remain). It seems that you are even already using mod component that allows specialists to modify happiness/health (since there are iHealth and iHappiness fields in xml), tho I don't know if it's possible to teach AI to use this properly (well, maybe make it produce 1 food and 1 health then?).

Ideally I would have Great Doctors generating health. The problem is that doing so is impossible on Mac (no custom DLL support) , and if I were to implement as a Windows-only feature I need to figure out how not to break things on the Mac – and vice-versa. So far, no success.
 
I need a proper crash report to solve that particular issue, as I can't reproduce it from that saved game (and they posted dump files rather than a crash report). If it happens again in your next game, please post the saved game and crash report and I'll try to solve it.
Well, i didn't delete that save but can you elaborate a bit what else is needed in crash report? Game logs? I tried to look there but nothing new seems to be written there on crash.

Edit: posted save and logs in Troubleshooting for now, say if you need something else.
 
Last edited:
On a side note, are values for faith/victory and faith/GP intended? 1 faith per victory feels incredibly irrelevant, while 5 faith per settled GP is very strong. This values are located next to each other in python so i wonder if there was some mixup.

And one more point for Tactical trait discussion above, some civ+leader combinations can abuse it by fiddling with their resource availability. Best example would be tactical leader + sumerians (needs Unrestricted Leaders). Sumerians have very cheap basic mounted unit that requires no resources to build, so if you have no access to horses and oil you can build it anytime, even in latest eras. Then, if you actually have oil but temporarily cut access to it by destroying own improvement or route (or just making a city not connected to network to begin with) you can produce a lot of this units, then get access to oil back and upgade them all to gunships for free. Which cost 9 times more hammers. So, changing this to 50% discount is imho definitely preferable to just lowering upgrade cost for everyone.
 
1 faith per victory feels incredibly irrelevant

In 1.25 the faith earned will be based on the defeated unit's experience.

while 5 faith per settled GP is very strong

Reduced to +3:religion: in 1.25.

And one more point for Tactical trait discussion above, some civ+leader combinations can abuse it by fiddling with their resource availability. Best example would be tactical leader + sumerians (needs Unrestricted Leaders). Sumerians have very cheap basic mounted unit that requires no resources to build, so if you have no access to horses and oil you can build it anytime, even in latest eras. Then, if you actually have oil but temporarily cut access to it by destroying own improvement or route (or just making a city not connected to network to begin with) you can produce a lot of this units, then get access to oil back and upgade them all to gunships for free. Which cost 9 times more hammers. So, changing this to 50% discount is imho definitely preferable to just lowering upgrade cost for everyone.

Noted, thanks.
 
I don't know if it's already changed in future patch (since there was some discussions on both general topics), but will post anyway just in case.
1. Found minor bug when reading python code for corporations - selectExpansionCity returns iCost for last city checked, not nesessarily (and unlikely) for one that it chooses for expansion. Also, i believe there is nothing actually stopping corporation from expanding to city with competitor's headquarters (it generally wouldn't want to, but if a city is really good it can actually overcome penalties to appeal), so what will happen if it actually expands there? It seems to use dll-function for setting corporation and when i looked in it's source it seems to replace competitors corporations in all cities if headquarters are being replaced (and also destroys it's executives).
2. Pollution protects from climate changes (since it's implemented as a feature). Also, it targets squares that are already desert. Well, maybe that is intended, since there could be an improvement that will be destroyed in this case, but it definitely don't have to make messages when changing empty desert to empty desert.
 
Found minor bug when reading python code for corporations - selectExpansionCity returns iCost for last city checked, not nesessarily (and unlikely) for one that it chooses for expansion.

Good catch! Will fix.

Also, i believe there is nothing actually stopping corporation from expanding to city with competitor's headquarters (it generally wouldn't want to, but if a city is really good it can actually overcome penalties to appeal), so what will happen if it actually expands there? It seems to use dll-function for setting corporation and when i looked in it's source it seems to replace competitors corporations in all cities if headquarters are being replaced (and also destroys it's executives).

This actually happened to me in a test game a few months ago. Have fixed it for 1.25, but thank you for taking the time to go through the code and reporting it. The Organisations code is the most complex I've ever written so there's bound to be bugs and oversights in it. Please let me know if you find any more.

Pollution protects from climate changes (since it's implemented as a feature). Also, it targets squares that are already desert. Well, maybe that is intended, since there could be an improvement that will be destroyed in this case, but it definitely don't have to make messages when changing empty desert to empty desert.

The current implementation of Climate Change in HR is temporary. It's a component I merged almost as-is as a replacement for the terrible BTS rendition, and until I can write something more suitable. That won't be for 1.25 unfortunately. These are easy fixes though, I'll add them to my todo list.
 
Last edited:
One more report - when using option to regenerate map on game start, extra peak hammers remain from initial map layout, granting seemingly random +2 hammers to all sorts of terrains (water and ice included), while peaks produce nothing. Extra yields from natural wonders probably remain as well (had natural wonders turned off).

Actually, one more thing. There is some code in getCultureTransfer function that is supposed to reduce transferred amount if source city is larger than recipient. But since multiplier (which is calculated first) is always less than 1 in this case, it is rounded to 0 and no culture is transferred at all.
 
Last edited:
While this is an extreme example, I agree that Tactical is very powerful.
Even without any special effort to exploit the trait, one immediately has the most up to date military, without having to spend any money.

Immediately getting some benefit of a new military tech can be big deal.
The vast amount of money saved over the course of a game, can be used for other useful things.
Also the bigger ones military the more powerful is the Tactical trait.

Saving 50% rather than 100% would be much more balanced; however, it is possible that in that case, one might need to add some other small advantage.

On a side note, are values for faith/victory and faith/GP intended? 1 faith per victory feels incredibly irrelevant, while 5 faith per settled GP is very strong. This values are located next to each other in python so i wonder if there was some mixup.

And one more point for Tactical trait discussion above, some civ+leader combinations can abuse it by fiddling with their resource availability. Best example would be tactical leader + sumerians (needs Unrestricted Leaders). Sumerians have very cheap basic mounted unit that requires no resources to build, so if you have no access to horses and oil you can build it anytime, even in latest eras. Then, if you actually have oil but temporarily cut access to it by destroying own improvement or route (or just making a city not connected to network to begin with) you can produce a lot of this units, then get access to oil back and upgade them all to gunships for free. Which cost 9 times more hammers. So, changing this to 50% discount is imho definitely preferable to just lowering upgrade cost for everyone.
 
One more report - when using option to regenerate map on game start, extra peak hammers remain from initial map layout, granting seemingly random +2 hammers to all sorts of terrains (water and ice included), while peaks produce nothing. Extra yields from natural wonders probably remain as well (had natural wonders turned off).

Unfortunately there is no way to detect when the map has been regenerated (as far as I know), and thus no way to fix these problems. Regenerating the map can cause all sorts of issues in mods, not just HR. Best to never use it.

Actually, one more thing. There is some code in getCultureTransfer function that is supposed to reduce transferred amount if source city is larger than recipient. But since multiplier (which is calculated first) is always less than 1 in this case, it is rounded to 0 and no culture is transferred at all.

Which multiplier are you referring to here?

While this is an extreme example, I agree that Tactical is very powerful.
Even without any special effort to exploit the trait, one immediately has the most up to date military, without having to spend any money.

Immediately getting some benefit of a new military tech can be big deal.
The vast amount of money saved over the course of a game, can be used for other useful things.
Also the bigger ones military the more powerful is the Tactical trait.

Saving 50% rather than 100% would be much more balanced; however, it is possible that in that case, one might need to add some other small advantage.

It'll be 50% in 1.25.
 
Code:
if iExportCitySize > iImportCitySize:
                iCultureTransfer *= iImportCitySize / iExportCitySize
This one. iImportCitySize / iExportCitySize is calculated first and if condition is true it's always less than 1, so it is rounded down to 0 (or to nearest? not familiar enough with python, my city was more than twice as large anyway). Suggesting changing to full form (worked for me):
Code:
if iExportCitySize > iImportCitySize:
               iCultureTransfer = (iCultureTransfer * iImportCitySize) / iExportCitySize
 
Last edited:
Top Bottom