Version 0.88w posted on the FP.
Includes a new component, DynamicCivNames, that renames civs based on their civics and status ... I think it's pretty cool, adds some flavor to the game without changing gameplay at all. Some tweaks and new features for Revolutions as well, including small revolts to warn you that a city is contemplating revolting. Also, for those who are merging this with other mods, there were important structural changes that should make this easier in the future.
Full change list:
Version 0.88w
Added DynamicCivNames component to make names of civs change with civics, status
Changed Python file locations to make Mod merging easier
Created RevolutionInit.py to handle all initialization of mod components so that CvCustomEventManager is less cluttered in merged mods
RevolutionInit also handles the active components popup and the missing config file popup
Initialization call from CvCustomEventManager now passes string for config file name to facilitate merging, better report missing config files
Added section [RevConfig] to Revolution.ini to clarify which are non-generic config file settings
Added clarifications to XML_FAQ which explains how civics XML settings impact revolutions
All python code is now tab free (uses spaces) to end display problems in different editors
Revolution:
- Added feature where cities in warning and danger states will occasionally fall into disorder for a turn, a "small revolt"
- Messages will now be entered in the event log
- Removed penalty for occupation for 1 turn remaining so small revolts don't cause situation to explode
- Increased penalty for occupation for 2+ turns remaining
- Increased penalty for cities not connected to capital
- Lowered threshold for unhappy cities to revolt
- Increased garrison effect from walls and castles now computed using the building defence XML variable
- Increased unhappiness penalty
- Increased extra happiness benefit, especially for 6 and up
- Small population now only benefits otherwise rebellious cities, doesn't overly stabilize stable ones
- Location effects cut in half for "government centers" (ie Forbidden Palace, Versailles cities)
- Location effect from courthouse now determined using cities maintenance modifier
- Flagged a few locations in the code as prime "multiplayer warning" spots
- Rebels troops will now usually spawn closer to city, next to city if possible
- Rebel reinforcements will now usually spawn closer to city, next to city if possible
- Rebel civs now given Motherland's map after map trading is enabled
- Increased amount of gold given to rebels
- Changed when rebel civs are set alive, rev turn recorded to support dynamic names
- General code cleanup, organization, improved code section comment delimiters
RevUtils:
- Fixed bug where cityless rebels with no cause were left in the field if they had any non-military unit, instead of just a settler
- Added isCommunism and isFreeSpeech to support DynamicCivNames
- Changed canDoElection to isCanDoElections
- Changes to player civics recording to support DynamicCivNames
- Component now registers events before Revolution to support DynamicCivNames
BarbarianCiv:
- Barb settling now recorded in event log
- Militaristic barbs now have 50% chance of getting a great general (up from 40%)
AIAutoPlay:
- CanCancel bool now stored in CyGame so if you're running automation and then need to load an autosave you can cancel it
- Added game load/start event handlers to support above change
TechDiffusion:
- Exposed 4 variables in the config file
- Teams without Alphabet can now receive diffusion is very far behind
- Fixed bug where effect was not properly decreased for civs that only just qualified for diffusion
- Small tweaks to diffusion formula
Tester:
- Cleaned up some unneeded test/debug code
- Removed active components popup logic now handled by RevolutionInit
- Ctrl-Shift-Q no longer shows what components are active
CvCustomEventManager:
- Changed to use new RevolutionInit class to handle initialization
RevolutionText.xml:
- Added TXT_KEY_REV_MESS_SMALL_REVOLT