Quick Modding Questions Thread

I have question about features, i will hope that someone know to answer me:

Are there any specific values &#8203;&#8203;for <iAppearance> tag in CIV4FeatureInfos or i can use an arbitrary value?
 
Any.
It determines how frequent features will spawn on empty plots like forests do
 
Any.
It determines how frequent features will spawn on empty plots like forests do

Thank you Golden Python :)

ps do someone know mod with lots of ERA's i have problem with turns and ERA's and i want to see other works.

Look Spoiler:
Spoiler :
PHP:
MY EXAMPLE (NORMAL GAME SPEED):
				<GameTurnInfo>
					<iMonthIncrement>480</iMonthIncrement>
					<iTurnsPerIncrement>75</iTurnsPerIncrement>
				</GameTurnInfo>
				<GameTurnInfo>
					<iMonthIncrement>300</iMonthIncrement>
					<iTurnsPerIncrement>60</iTurnsPerIncrement>
				</GameTurnInfo>
				<GameTurnInfo>
					<iMonthIncrement>240</iMonthIncrement>
					<iTurnsPerIncrement>25</iTurnsPerIncrement>
				</GameTurnInfo>
				<GameTurnInfo>
					<iMonthIncrement>120</iMonthIncrement>
					<iTurnsPerIncrement>50</iTurnsPerIncrement>
				</GameTurnInfo>
				<GameTurnInfo>
					<iMonthIncrement>60</iMonthIncrement>
					<iTurnsPerIncrement>60</iTurnsPerIncrement>
				</GameTurnInfo>
				<GameTurnInfo>
					<iMonthIncrement>24</iMonthIncrement>
					<iTurnsPerIncrement>50</iTurnsPerIncrement>
				</GameTurnInfo>
				<GameTurnInfo>
					<iMonthIncrement>12</iMonthIncrement>
					<iTurnsPerIncrement>230</iTurnsPerIncrement>
				</GameTurnInfo>
				<GameTurnInfo>
					<iMonthIncrement>10</iMonthIncrement>
					<iTurnsPerIncrement>120</iTurnsPerIncrement>
				</GameTurnInfo>
				<GameTurnInfo>
					<iMonthIncrement>9</iMonthIncrement>
					<iTurnsPerIncrement>100</iTurnsPerIncrement>
				</GameTurnInfo>
				<GameTurnInfo>
					<iMonthIncrement>6</iMonthIncrement>
					<iTurnsPerIncrement>70</iTurnsPerIncrement>
				</GameTurnInfo>
				<GameTurnInfo>
					<iMonthIncrement>4</iMonthIncrement>
					<iTurnsPerIncrement>60</iTurnsPerIncrement>
				</GameTurnInfo>
				<GameTurnInfo>
					<iMonthIncrement>3</iMonthIncrement>
					<iTurnsPerIncrement>40</iTurnsPerIncrement>
				</GameTurnInfo>

MY ERA's:
ERA_ANCIENT 4000 BC
ERA_CLASSICAL turn 94, 525 BC
ERA_MEDIEVAL turn 235, 1625 AD
ERA_RENAISSANCE turn 347 , 1927 AD
ERA_INDUSTRIAL turn 470 , 2050 AD
ERA_MODERN turn 611, November 2180 AD
ERA_DIGITAL turn 752, July 2291 AD
ERA_NANO turn 799, July 2319 AD
ERA_SPACE turn 846, January 2342 AD
ERA_GALACTIC turn 893, September 2357 AD
ERA_FUTURE turn 940(Last turn, why last? In BTS for future era start in 400 turn from 500 turns), January 2370 AD

How i can know start date for all ERA's? (Some math formula or ? )
 
Eras don't start on dates or turns. They start when you research a tech that is of that era.

The turn to year mapping in the game speed info file is therefore not directly related to eras. However, the game speed affects the research cost of techs and therefore it is indirectly related. If you get one speed such that you are getting to an era at about the correct year, then you can adjust the other speeds' turn to year mappings based on the relative research modifiers and it will tend to be about right (but possibly not exact, there are other factors that can accumulate over many turns to push it off). On the other hand, just because you get to the era at about the right turn/year doesn't men it will be correct for other players. Anyone better at it than you will tend to research faster and get to the era change earlier, and anyone not as good will tend to get there later. There is also a lot of random variation, what with tech trading and resource availability and such things.

It is possible to artificially force eras if you have some specific reason to do so. One method is to set all techs to be in the first era and add one "dummy" tech that is in each era other than the first. These are hidden by placing them off the visible area of the tech tree and can not be researched. Then you can, via some Python, grant each specific "era" tech to a team when you think it is appropriate that they move to that era.
 
Simple Maths Formula:

Start Date = -4000 or whatever is defined
Add xxx iTurnsPerIncrement * yyy iMonthIncrement
Or in a sense, xxx iTurnsPerIncrement * (yyy/12) to be in years

@God-Emperor
That will affect Tech score I believe, since Tech score is based on Tech Era.
Gaining Stealth will become as low score as Mysticism
 
You can get the C2C erainfos.xml file and compare. We add new entries to both ends of the normal era span.

I am look at C2C erainfos (i have that mod on my PC), and i see these tags:

Look spoiler:
Spoiler :
PHP:
			<!-- BBAI start: effectively modify cost for all techs from this era.  Default: 18 -->
			<iTechCostModifier>18</iTechCostModifier>
			<!-- BBAI end -->

<iInitialCityMaintenancePercent>400</iInitialCityMaintenancePercent>

Eras don't start on dates or turns. They start when you research a tech that is of that era.

The turn to year mapping in the game speed info file is therefore not directly related to eras. However, the game speed affects the research cost of techs and therefore it is indirectly related. If you get one speed such that you are getting to an era at about the correct year, then you can adjust the other speeds' turn to year mappings based on the relative research modifiers and it will tend to be about right (but possibly not exact, there are other factors that can accumulate over many turns to push it off). On the other hand, just because you get to the era at about the right turn/year doesn't men it will be correct for other players. Anyone better at it than you will tend to research faster and get to the era change earlier, and anyone not as good will tend to get there later. There is also a lot of random variation, what with tech trading and resource availability and such things.

It is possible to artificially force eras if you have some specific reason to do so. One method is to set all techs to be in the first era and add one "dummy" tech that is in each era other than the first. These are hidden by placing them off the visible area of the tech tree and can not be researched. Then you can, via some Python, grant each specific "era" tech to a team when you think it is appropriate that they move to that era.

I read this. You are explain me, thank you, but i am little confused.

Simple Maths Formula:

Start Date = -4000 or whatever is defined
Add xxx iTurnsPerIncrement * yyy iMonthIncrement
Or in a sense, xxx iTurnsPerIncrement * (yyy/12) to be in years

@God-Emperor
That will affect Tech score I believe, since Tech score is based on Tech Era.
Gaining Stealth will become as low score as Mysticism

This attachment is for you.

I have question for all: When i use my ERA_FUTURE, why this era start in last turn? maybe put more of something similar to this

Look spoiler:
Spoiler :
PHP:
                <GameTurnInfo>
                    <iMonthIncrement>3</iMonthIncrement>
                    <iTurnsPerIncrement>40</iTurnsPerIncrement>
                </GameTurnInfo>
 

Attachments

I'm just trying to explain differently what was explained before by others.

The GameSpeedInfo file just tells the game how the years are passing by (your example):

The first 75 turns: each turn is 480 Months (40 Years) passed,

then next 60 turns: each turn is 300 Months (25 Years) passed, etc.

Nothing to do with Eras.

Eras are reached when the first Technology of the Era has been discovered.

For example in BtS, in the TechnologyInfo file, look for the tag entry: <Era>ERA_FUTURE</Era>. It is associated with Stealth, Genetics, Fusion and of course Future Tech. When you discover any one of these Technology, you enter the Era Future. It has nothing to do with the turns or the years of the game.
 
I think he is trying to figure out the years for era starts.
Like when you start a Future Era game, which turn does it start in.
 
That would be according to the <iStartPercent> tag of the EraInfos file. For example, in BtS, Future is set at 80 (%).

BtS Normal speed = 500 turns, so 400 turns done, 100 left, AD1980 according to the GameSpeedInfo turn/time table, technologies still to research: Stealth, Genetics, Fusion and Future Tech.
 
I think he is trying to figure out the years for era starts.
Like when you start a Future Era game, which turn does it start in.

Yes it is.

That would be according to the <iStartPercent> tag of the EraInfos file. For example, in BtS, Future is set at 80 (%).

BtS Normal speed = 500 turns, so 400 turns done, 100 left, AD1980 according to the GameSpeedInfo turn/time table, technologies still to research: Stealth, Genetics, Fusion and Future Tech.

Maybe is that problem in my ERA's. In ERA_SPACE <iStartPercent>90</iStartPercent>, in ERA_GALACTIC <iStartPercent>95</iStartPercent>, in ERA_FUTURE <iStartPercent>100</iStartPercent>
 
Then yes, with 100% you start at the end of the game!
 
Thank you Golden Python :)

ps do someone know mod with lots of ERA's i have problem with turns and ERA's and i want to see other works.

Look Spoiler:
Spoiler :
PHP:
MY EXAMPLE (NORMAL GAME SPEED):
				<GameTurnInfo>
					<iMonthIncrement>480</iMonthIncrement>
					<iTurnsPerIncrement>75</iTurnsPerIncrement>
				</GameTurnInfo>
				<GameTurnInfo>
					<iMonthIncrement>300</iMonthIncrement>
					<iTurnsPerIncrement>60</iTurnsPerIncrement>
				</GameTurnInfo>
				<GameTurnInfo>
					<iMonthIncrement>240</iMonthIncrement>
					<iTurnsPerIncrement>25</iTurnsPerIncrement>
				</GameTurnInfo>
				<GameTurnInfo>
					<iMonthIncrement>120</iMonthIncrement>
					<iTurnsPerIncrement>50</iTurnsPerIncrement>
				</GameTurnInfo>
				<GameTurnInfo>
					<iMonthIncrement>60</iMonthIncrement>
					<iTurnsPerIncrement>60</iTurnsPerIncrement>
				</GameTurnInfo>
				<GameTurnInfo>
					<iMonthIncrement>24</iMonthIncrement>
					<iTurnsPerIncrement>50</iTurnsPerIncrement>
				</GameTurnInfo>
				<GameTurnInfo>
					<iMonthIncrement>12</iMonthIncrement>
					<iTurnsPerIncrement>230</iTurnsPerIncrement>
				</GameTurnInfo>
				<GameTurnInfo>
					<iMonthIncrement>10</iMonthIncrement>
					<iTurnsPerIncrement>120</iTurnsPerIncrement>
				</GameTurnInfo>
				<GameTurnInfo>
					<iMonthIncrement>9</iMonthIncrement>
					<iTurnsPerIncrement>100</iTurnsPerIncrement>
				</GameTurnInfo>
				<GameTurnInfo>
					<iMonthIncrement>6</iMonthIncrement>
					<iTurnsPerIncrement>70</iTurnsPerIncrement>
				</GameTurnInfo>
				<GameTurnInfo>
					<iMonthIncrement>4</iMonthIncrement>
					<iTurnsPerIncrement>60</iTurnsPerIncrement>
				</GameTurnInfo>
				<GameTurnInfo>
					<iMonthIncrement>3</iMonthIncrement>
					<iTurnsPerIncrement>40</iTurnsPerIncrement>
				</GameTurnInfo>

MY ERA's:
ERA_ANCIENT 4000 BC
ERA_CLASSICAL turn 94, 525 BC
ERA_MEDIEVAL turn 235, 1625 AD
ERA_RENAISSANCE turn 347 , 1927 AD
ERA_INDUSTRIAL turn 470 , 2050 AD
ERA_MODERN turn 611, November 2180 AD
ERA_DIGITAL turn 752, July 2291 AD
ERA_NANO turn 799, July 2319 AD
ERA_SPACE turn 846, January 2342 AD
ERA_GALACTIC turn 893, September 2357 AD
ERA_FUTURE turn 940(Last turn, why last? In BTS for future era start in 400 turn from 500 turns), January 2370 AD

How i can know start date for all ERA's? (Some math formula or ? )

It is really hard to get tech progression and era dates to line up well. You have to estimate how long it will take to complete one tech, and estimate how many techs are needed to get to the next era (not necessarily how many techs are in an era). After that it is trial and error as to fine-tuning the progression, there isn't any really good way to get it right on the first try.
 
I have a couple questions.
1. Is it possible to have several different types of cities OR
2. Is it possible to have a mod entirely without cities and have improvements generate culture, espionage, technology, etc.?
 
I have a couple questions.
1. Is it possible to have several different types of cities OR
2. Is it possible to have a mod entirely without cities and have improvements generate culture, espionage, technology, etc.?

Perhaps all of the above with extreme dll programming (c++) applications.
 
Is there a way to check gender of a leader chosen without using hard coded list? :D
 
I can't see anything in the SDK that differentiates between the sexes. Does the game UI make the distinction anywhere apart from the graphics and pre-defined text strings?

It would be simple enough to extend LeaderHeadInfos to add an isFemale() boolean defaulting to false that is exposed to Python, but I suspect you are looking for something that can be used without a custom DLL.
 
Indeed, so without SDK, I guess hard coded list is the only workable method
 
Then yes, with 100% you start at the end of the game!

Yes it is. I am try that and it's works. Thank you very much.

It is really hard to get tech progression and era dates to line up well. You have to estimate how long it will take to complete one tech, and estimate how many techs are needed to get to the next era (not necessarily how many techs are in an era). After that it is trial and error as to fine-tuning the progression, there isn't any really good way to get it right on the first try.

Yes i know, you must make good balance for that. That can be very hard job.

Thank you everyone for help.
 
Hi everyone! Well I've recently been making a lot of changes to the XML files which I'm quite happy with. Now I'm a bit stuck. I want to change the game so that ideally when Assembly Line is researched by any one civ, everyone has to pick from either Nazism, Communism or Capitalism, with specific civilisations always picking one e.g. America always picks Capitalism, Germany always picks Nazism, Russia Communism etc. And there'd be say +40 reputation between civs which have the same one, -40 between ones which have a different one, or maybe just permanent war.

I was looking at creating events and new religions to make this happen but I'm pretty stuck. So recently I've thought I would maybe just have to settle with removing all but 3 religions and edit their names (nazism, communism, capitalism), edit the religion relations + and - points to be extreme for each civ, then make 3 new building classes unique to the relevant civs, e.g. America and England get the same capitalist building, China and Russia get the same communist building etc, and give <prereqbuilding> to the relevant technology that will unlock the religion (not sure if it's possible to put a building prereq on a technology?), then finally remove religion prereq from temples and wherever the original ones come up in the xml files. Since I'm not sure if it's possible to have a religion or technology that is unique to certain civs?

I'm not sure if what I'm thinking of is the best way to go around this or if there's a much better way, or even if the event can easily be created where everyone must pick one, with certain civs always picking the same one, with war and permanent alliances following.

I would be grateful for any input, I'm not very experienced at modding I've only been changing the XML files for around a week and I've changed a lot of things already which I'm quite happy with so far, but this has become a bit too complex for me now!
 
Back
Top Bottom