Dom Pedro II
Modder For Life
I think of this more as a module than a modification... since it will be an addition to the regular game without making any changes to it, and I hope it will fit into other people's modifications without need for change or at the very least only slight changes necessary.
Anyway, the idea behind this is that it would create a history of your civilization from the very beginning of the game to the very end. Think of it as a textual expanded version of the simulation that runs at the end of the game.
I'd like to make it accessible through the Civilopedia, but if that's not possible, then I'll opt for some other way. It would be readable at any point in the game and would be added to as new events occur.
It wouldn't be a simple list like this:
No no... that would defeat the purpose of it. It would look something more like this:
The Chinese people were a group of hunter-gatherers in the Yangtzi river valley that settled down and formed their first urban center of Beijing around the year 4000 BC. The Yangtzi river with its rich silts proved a fertile location for China's fledgling agriculture. The next Chinese settlement was the city of Shanghai founded in the Gobi desert region of China. This city's economy centered around shepharding and horse breeding.
The Persian Invasion - 3000 BC - 2500 BC
In 3000 BC, the armies of Persia invaded China. The Persian horse archers had some early successes around the city of Guangzhou. In 2800 BC, the Chinese launched an offensive against the city of Tyre. The Chinese captured the city of Tyre in 2800 BC and quickly appointed a new territorial governor to rule over it. Having lost several cities to the Chinese army, the Persian sued for peace in 2600 BC, which Qin Shi Huang accepted.
Foundation of Taoism
Historians generally agree that prior to 2700 BC, Judaism was little more than a collection of folklore and rituals. In 2700 BC, local religious leaders in the city of Tyre under Chinese occupation, gathered to set the belief and law of the Jewish faith down in writing and set 2700 BC as year 0 in the Jewish calendar. Judaism quickly spread from conquered Tyre to the rest of the Chinese Empire reaching Beijing in 2500 BC. Emperor Qin Shi Huang's adoption of slavery and persecution of the Taoists actually aided the spread of the faith to Chinese cities.
Adoption of Slavery
In spite of having been successful against the armies of Persia in the Persian Invasion, the people of China were exhausted and their resources depleted from years of fighting. For that reason, Emperor Qin Shi Huang adopted slavery to make use of the plentiful supply of Persian labor in the lands of Tyre.
So how can this be done? Simple: using variables and XML text banks. It would work much in the same way as the diplomacy screen does. A Python events script would check for certain events as well as multiple values being true or false at once, and select an appropriate line of text from the XML file.
The data would be broken down into sentences rather than paragraphs or even longer lengths of text so that they can be fit and refit together to not only make events more specific, but also to keep it from seeming repetitive from game to game. So if the civic Slavery, for example, is adopted in the middle of a war that's being won, it produces one sentence, if it's in the middle of a war being lost, it produces another. If the war is over yet another. If there hasn't been any war, it creates still another.
Time consuming? Absolutely, but the content contained in the XML files is by far the easiest part of the process.
What will be more difficult is the Python events script. I personally don't have experience with Python specifically though I do have experience with programming logic, which is somewhat universal even if the syntax is different.
But basically, I'm looking for people who want to go in this project with me, and I'd like to use this thread as a place to hash out ideas, determine what works and what doesn't work, and find ways to streamline the whole thing if and when possible. Any help from people with programming experience would be greatly appreciated.
If you are actually interested in a more hands-on part in the creation of this (with all due credit of course) then convo me and we'll get cracking on it.
At the moment, I'm thinking the easiest way to do this would be to have the game create a new XML file for storing the full text that could then be simply spit out on the screen when someone wants to view it rather than setting up a complex script to display the information stored. Naturally, there are advantages and disadvantages to both, but I think having the game run the condition checks and write the text from the XML banks to a single new XML file every turn would be the best way to go.
Anyway, that's my idea thus far. Comments, criticisms and compliments are welcome
Anyway, the idea behind this is that it would create a history of your civilization from the very beginning of the game to the very end. Think of it as a textual expanded version of the simulation that runs at the end of the game.
I'd like to make it accessible through the Civilopedia, but if that's not possible, then I'll opt for some other way. It would be readable at any point in the game and would be added to as new events occur.
It wouldn't be a simple list like this:
Chinese civilization founded in 4000 BC.
China goes to war with Persia in 3000 BC.
Judaism founded in Tyre (China) in 2700 BC.
China adopts Slavery in 2500 BC.
No no... that would defeat the purpose of it. It would look something more like this:
Spoiler In-game History :
The Chinese people were a group of hunter-gatherers in the Yangtzi river valley that settled down and formed their first urban center of Beijing around the year 4000 BC. The Yangtzi river with its rich silts proved a fertile location for China's fledgling agriculture. The next Chinese settlement was the city of Shanghai founded in the Gobi desert region of China. This city's economy centered around shepharding and horse breeding.
The Persian Invasion - 3000 BC - 2500 BC
In 3000 BC, the armies of Persia invaded China. The Persian horse archers had some early successes around the city of Guangzhou. In 2800 BC, the Chinese launched an offensive against the city of Tyre. The Chinese captured the city of Tyre in 2800 BC and quickly appointed a new territorial governor to rule over it. Having lost several cities to the Chinese army, the Persian sued for peace in 2600 BC, which Qin Shi Huang accepted.
Foundation of Taoism
Historians generally agree that prior to 2700 BC, Judaism was little more than a collection of folklore and rituals. In 2700 BC, local religious leaders in the city of Tyre under Chinese occupation, gathered to set the belief and law of the Jewish faith down in writing and set 2700 BC as year 0 in the Jewish calendar. Judaism quickly spread from conquered Tyre to the rest of the Chinese Empire reaching Beijing in 2500 BC. Emperor Qin Shi Huang's adoption of slavery and persecution of the Taoists actually aided the spread of the faith to Chinese cities.
Adoption of Slavery
In spite of having been successful against the armies of Persia in the Persian Invasion, the people of China were exhausted and their resources depleted from years of fighting. For that reason, Emperor Qin Shi Huang adopted slavery to make use of the plentiful supply of Persian labor in the lands of Tyre.
So how can this be done? Simple: using variables and XML text banks. It would work much in the same way as the diplomacy screen does. A Python events script would check for certain events as well as multiple values being true or false at once, and select an appropriate line of text from the XML file.
The data would be broken down into sentences rather than paragraphs or even longer lengths of text so that they can be fit and refit together to not only make events more specific, but also to keep it from seeming repetitive from game to game. So if the civic Slavery, for example, is adopted in the middle of a war that's being won, it produces one sentence, if it's in the middle of a war being lost, it produces another. If the war is over yet another. If there hasn't been any war, it creates still another.
Time consuming? Absolutely, but the content contained in the XML files is by far the easiest part of the process.
What will be more difficult is the Python events script. I personally don't have experience with Python specifically though I do have experience with programming logic, which is somewhat universal even if the syntax is different.
But basically, I'm looking for people who want to go in this project with me, and I'd like to use this thread as a place to hash out ideas, determine what works and what doesn't work, and find ways to streamline the whole thing if and when possible. Any help from people with programming experience would be greatly appreciated.
If you are actually interested in a more hands-on part in the creation of this (with all due credit of course) then convo me and we'll get cracking on it.

At the moment, I'm thinking the easiest way to do this would be to have the game create a new XML file for storing the full text that could then be simply spit out on the screen when someone wants to view it rather than setting up a complex script to display the information stored. Naturally, there are advantages and disadvantages to both, but I think having the game run the condition checks and write the text from the XML banks to a single new XML file every turn would be the best way to go.
Anyway, that's my idea thus far. Comments, criticisms and compliments are welcome
