Jesus Civs said:
Is it possible to edit the game so that the following might occur:
A civ discovers a tech which changes their name and flag during a game.
I was thinking about say having a tech called "Act of Union" which would change the name of England to The British Empire and also replace their flag with the Union Jack.
Would like to hear any comments/suggestions.
Here's on way to go about it if you're willing to hack the SDK. You'd want to change the player class to be able to set the civ id (which is called m_eID in the CvPlayer class). Then, make a duplicate civilization with the only changes being that civs name and flag.
Another way of doing this, which would help you have to make duplicate civs, is hack the CvCivilizationInfo class in the SDK to be able to both get
and set all the variables within (they typically only allow you to get them). The problem with this approach is that while you have more access to the individual Civ, if any other player has that same Civ as the one you're changing, theirs will change also.
I think you'll be hard pressed to find a non-sdk route. The easiest one to do would probably be the changing CvPlayer to an identical civ with a different flag and name. The reason is that the graphics engine will look at the values in the SDK, and there's no way to interrupt this process in python except for changing these values, except for forcing the c++ function that returns the value actually call a python script that can check what value to send back.
I'd go the first route, however. It should work if it's for a scenario, although everyone else is saying that there's a 18-Civ limit, so watch out.