What is a "DerivativeCiv"?

Wolfshanze

CFC Historian
Joined
Nov 12, 2001
Messages
5,689
Location
Florida
I noticed the "DerivativeCiv" tag in the Civ4CivilizationInfos.xml.

For instance, Portugal has "America" listed as a DerivativeCiv.

What the heck is a DerivativeCiv? What does this tag do or mean?
 
Quite obviously, it is the civ that will spawn, when a colony is founded - if the DerivativeCiv is/was not in the game yet. Otherwise a random Civ will be spawned.
 
I'd heard some complaints by people they're sick of seeing America as the colony most often founded. What happens if that field is blank? Does it select from anyone?
 
I'd heard some complaints by people they're sick of seeing America as the colony most often founded. What happens if that field is blank? Does it select from anyone?
If it's blank, it's random... or better yet, just change it to something that makes more sense.

After being alerted to what this field was, I took a deeper look.... for some reason, America is the most often used derivative civ, and even as an American I'm not fond of that!

For me, I want civs that spawn a colony to spawn a civ that is similar in culture... it doesn't need to be America every darn time... so I went-in and changed it on my end... Asian countries prefer to spawn asian civs... Middle East civs tend to spawn Middle East civs... African civs tend to spawn other African civs... so on and so on... (Germany spawns Austria in mine now, instead of being blank... I was also tired of Germany spawning a civ like Korea or something crazy like that).
 
I always get very annoyed when a AI spaws a Colony (That Colony usually ends up being America w ith Washington, et al), even though America ALREADY EXISTS in the game as Lincoln etc..

So Basically 2 "America" Civs are then in the game.
Except that shouldn't happen. If the derivative civ already exists, it should found a random civ. I think it's a known bug.

They did go a little overboard with America there. As far as I can determine, any civilization that once possessed territory in or near the present day United States (excluding, it seems, Alaska) gets America as their derivative civ. I would personally attribute this to a lack of former colonies amongst the available civs.
 
Can a Civ have more than one "Derivative Civ"? For example, have England colonize either America, India, or Australia?
 
Can a Civ have more than one "Derivative Civ"? For example, have England colonize either America, India, or Australia?
It would be nice to list multiples... but I dunno if you can do that or not... I just figured out what this tag does (guess I should dig into the XML more often then I do).
 
At present, there's only one tag. I would think it would be possible to add more with some SDK modding, but the present set up won't let you add more.

As I said last time this came up, though, even with just one option this feature has such a small effect that I question whether extras would be even noticeable.
 
I always get very annoyed when a AI spaws a Colony (That Colony usually ends up being America w ith Washington, et al), even though America ALREADY EXISTS in the game as Lincoln etc..

So Basically 2 "America" Civs are then in the game.

This is fixed by Bhruic's unofficial patch. (Or it might also be fixed by the most recent patch from Firaxis. Can't remember. Either way, make sure you have both.)
 
At present, there's only one tag. I would think it would be possible to add more with some SDK modding, but the present set up won't let you add more.

As I said last time this came up, though, even with just one option this feature has such a small effect that I question whether extras would be even noticeable.

What he said. ^^^ This would be nice to have as an option, though.
 
(Germany spawns Austria in mine now

Shouldn't that be the other way around? lol

For the future, I have it in my mind to create a sort of second-tier of civilizations that can ONLY be played as colonies, so that England could spawn (for instance) Canada, or France would spawn Quebec. Not sure how much work would be involved in it, but I know that there are tags in the Civilization infos XML. Might just be as simple as playing around with those...as long as the AI could still play them when they're spawned later.
 
Shouldn't that be the other way around? lol
What I'm getting-at is keeping colonies to similar cultures... nothing crazier then seeing Germany spawn a Chinese civ... or the Zulu spawn the Russians... I would say the Germans and Austrians have very similar cultures and heritage, so it would make sense for them to spawn each-other (and vice versa). African civs spawn other African civs... Asian civs spawn other Asian civs... so-on, and so-on.
 
What I'm getting-at is keeping colonies to similar cultures... nothing crazier then seeing Germany spawn a Chinese civ... or the Zulu spawn the Russians... I would say the Germans and Austrians have very similar cultures and heritage, so it would make sense for them to spawn each-other (and vice versa). African civs spawn other African civs... Asian civs spawn other Asian civs... so-on, and so-on.

Yeah, I know what you meant; it was just a little historical joke.
 
Civ-specific derivative Civ:

Maybe this will work:

Let's assume Canada as a derivative civ of England.

Create Canada civilization (there is a tutorial for creating civs)
Set Canada as the derivative civ of England in CivilizationsInfo.xml

Make Canada unplayable for AI and human player:
Change in CivilizationsInfo.xml

<bPlayable>0</bPlayable>
<bAIPlayable>0</bAIPlayable>

As England spawns a colony it should be Canada, not playable by AI or human player.

Note I haven't tested this so it might not work. It's just an idea...
 
Devil's advocate here...

While it sounds good on paper, if you spawn a civ, isn't it controlled by the AI? So if you flag Canada as "not playable by the AI", how would the AI take-over a new colony that isn't playable by the AI?

:confused: :crazyeye: :lol:
 
It requires some testing. It might or might not work :dunno:
Easy enough to test in World Builder... but you would need to add new civs, which is the more labor-intense part.
 
Civ-specific derivative Civ:

Maybe this will work:

Let's assume Canada as a derivative civ of England.

Create Canada civilization (there is a tutorial for creating civs)
Set Canada as the derivative civ of England in CivilizationsInfo.xml

Make Canada unplayable for AI and human player:
Change in CivilizationsInfo.xml

<bPlayable>0</bPlayable>
<bAIPlayable>0</bAIPlayable>

As England spawns a colony it should be Canada, not playable by AI or human player.

Note I haven't tested this so it might not work. It's just an idea...


I tried this a few days ago. It doesn't work. If bPlayable is set to 0, no one can play it. If bAIPlayable is set to 0, the Human can select the civ, but the AI can never play it, so it doesn't get picked when the colony is spawned. (Not with Canada, of course, but just by testing it with England and America).
 
Back
Top Bottom