I think you have done plenty already. You deserve to take the remainder of the year off!Is there anything you need from me?
So all the unit discounts have been done in XML already? Not only the unit type specific ones, but the combat type ones also?Finally Baldyr, I've found a quick and pretty clean way to change unit train times for XML. You know how missionaries and explorers are SPECIALUNITTYPE_PEOPLE, well you can make more special unit types and name them what you want and then tie production to the trait. This means that all of the special powers that are a bonus to building a type of unit can be done through XML instead of Python. Should I just go ahead and do that, would that prevent lag and other things that you mentioned about Python?
As pointed out in another thread, this would invite an exploit where you change all specialists to Priests any time a unit is about to be completed. Micromanagement hell?Priest specialists grant +1 experience to units trained in the city -- PYTHON
iUnitDiscountPercent = 20
iArabianFood = 2
iArabianCommerce = 1
iCarthageVassalXP = 1
iCarthageVassalGold = 50
eCelticCivic = eHereditary Rule
eChineseCivic = eBureaucracy
iEnglandMoves = 1
tHolyRomanEras = (False, True, False, True, False, False, False) # Classical & Renaissance
iIncaFood = 1
iIndiaCitySize = 2
iIndiaSurplusPercent = 10
iIndianCivic = ePacifism
iJapaneseProbability = 20
maliTechMessage = "Choose a free starting Tech!"
iMayanProbability = 25
iNetherlandsInterest = 3
iGermanProbability = 50
iGermanGold = 25
iOttomanProbability = 50
iOttomanGold = 50
iOttomanCulture = 100
tPersianDomains = eLand, eSea
iPersianMoves = 1
iRomanConstructionDiscount = 20
iRomanUpgradeDiscount = 50
iSpainGoldBonus = 50
iVikingBonus = 100
startingCivicDict = { "Celt": eCelticCivic,
"China": eChineseCivic,
"India": eIndianCivic
}
As pointed out in another thread, this would invite an exploit where you change all specialists to Priests any time a unit is about to be completed. Micromanagement hell?
It should probably be something like "make the city generate free XP with running Priests over time", but that would involve updating a new custom value keeping track of how many Priest turns the city has in on every turn for every Polynesian city. (Still doable though.)
A more useful approach might even be to "add free XP to the city pool for running Priests" so that running those specialists all the time would actually make a difference. Then all units built would get some amount of the free XP deducted from that pool - perhaps up to 50% of the available XP - depending on how much has been accumulated. But this also involves updating a value for every city on every turn.
And there would still not be any interface for showing what the actual bonus/amount is. But, this could probably also be done - the question is if you even want such a feature?
With the exception of the Polynesian power (see above) I'm now finished with a draft of all the Python based powers. This is what the settings look like, by the way:
Spoiler:
Next up is the testing. I might upgrade some of the utilities I did earlier though - otherwise I'll just end up testing everything multiple times. Unfortunately I don't have a copy of my original CvEventManager module, so I have to start over on scratch on that.
So all the unit discounts have been done in XML already? Not only the unit type specific ones, but the combat type ones also?![]()