- Joined
- Jan 12, 2004
- Messages
- 1,281
Some of our users are asking for CEP and EUI compatibility, so I took some time to look at CEP files 3.14.1, and it seems there may not be that many issues to solve:
- First thing is that CEP adds custom yields in the base Yields database table, causing compatibility problems because the game's DLL does not handle these unknown yields gracefully.
This is done in "Communitas AI and Tools (v 3)\Tools\YieldLibrary", specifically YL_Data.xml adds YIELD_HAPPINESS_CITY, YIELD_HAPPINESS_NATIONAL, YIELD_GREAT_PEOPLE, YIELD_EXPERIENCE, YIELD_LAW, YIELD_CS_MILITARY, YIELD_CS_GREAT_PEOPLE, YIELD_POPULATION
==> proposed solution: duplicate the game's Yields table by SQL statement: SELECT * INTO CEP_Yields FROM Yields, then add the yields CEP needs. The lua scripts must be modified accordingly, but it's only a matter of replacing Yields with CEP_Yields where appropriate.
- TechTree.lua / TechTree.xml : these will overwrite EUI's, but without user specifically disabling EUI's techtree module this will create a bug with the big tech selection button
==> please add the game's TechPopup.lua and TechPopup.xml base files in your distribution for simple compatibility with EUI
- InfoTooltipInclude.lua : CEP deviates from the standard game API, adding new functions. That won't work with EUI because its own "InfoTooltipInclude.lua" is loaded pregame and may not be overwritten by CEP's in many cases
==> proposed solution: make a dedicated CEP_InfoTooltipInclude.lua and "include" that one in CEP lua scripts, plus make an "InfoTooltipInclude.lua" stub for compatibility with the base game which Includes "CEP_InfoTooltipInclude.lua" and only translates the standard game API calls
- CityView.lua / .xml / _small.xml / ProductionPopup.lua : these will overwrite EUI's...
==> recommendation: please add the unmodded ProductionPopup.xml in your distribution since EUI will make changes in the future and an otherwise partial CEP overwrite will result in a fail
- TechButtonInclude.lua / TechHelpInclude.lua / TurnProcessing.lua / UnitFlagManager.lua : EUI does not currently mod these files
==> recommendation: please add their .xml buddies in your distribution for future proofing