[MODCOMP] "1 treasure per Galleon" general fix

KJ Jansson

Prince
Joined
Oct 7, 2008
Messages
509
The basic Civ4Colonization game and various modes (AoD2 and Snoopy/Dale Unofficial Patch, maybe other, too) have the same the "1 treasure per Galleon" limit.

Where is this limitation is located and How to bypass this limit?

Let's open in Notepad the "CIV4UnitInfos.xml" file. This file is located in .../Assets/XML/Units directory.

Find the <Type>UNIT_TREASURE</Type> section. Here you see the information about the treasure unit.


In the end of this section find the line:

<iRequiredTransportSize>6</iRequiredTransportSize>

What it means? Right! It means that only ONE treasure can be transported.

Moreover, this treasure could be transported ONLY on Galleon because only Galleon has 6 cargo slots, see the line <iCargo>6</iCargo> in the

<Type>UNIT_GALLEON</Type> section.


Thus, "1 treasure per Galleon" limit can be very easy bypassed. Change "6" on "1" and you could load 6 treasures on one galleon:

<iRequiredTransportSize>1</iRequiredTransportSize>

Interesting to note, that after such changes you can load your treasures also on CARAVEL (2 cargo slots), MERCHANTMAN (4), PRIVATEER (2) and of course on GALLEON (6).

FRIGATE, SHIP_OF_THE_LINE and MAN_O_WAR have no open cargo slots and couldn't be used to transport treasures.

The king probably will be angry because he lost 50% income from each found treasure. But it's his problem.

To my opinion, much more real situation when the strong nations transported their treasures on galleons escorted by frigates, the poor nations used unprotected caravels that could be attaced by privateers.

And of course, it's much closer to reality than "a virtual king's galleon" that noboby see in the game and which could not be attaced by you or your opponents.

P.S. make backup copy "CIV4UnitInfos.xml" file before your changes.

 
The basic Civ4Colonization game and various modes (AoD2 and Snoopy/Dale Unofficial Patch, maybe other, too) have the same the "1 treasure per Galleon" limit.

No one else has pointed this out so I will incase others may read this. The basic game for me allows you to transport more than one treasure on a Galleon and I am not aware of any official patches that change this. But the unofficial patch does change this and I didn't like this change at all cause it was kinda silly to have a treasure unit of only 200 or so gold take up a whole galleon.

And to clear up just what the .xml means...

In the end of this section find the line:
<iRequiredTransportSize>6</iRequiredTransportSize> ]

What it means? Right! It means that only ONE treasure can be transported.


Moreover, this treasure could be transported ONLY on Galleon because only Galleon has 6 cargo slots, see the line]

This isn't correct. The "iRequiredTransportSize" tag means that the transport ship must have 6 cargo spaces in order to transport this unit. Lowering this to 1 means that any ship with a cargo space of 1 can transport this unit.
Thus the reason you say:
Interesting to note, that after such changes you can load your treasures also on CARAVEL (2 cargo slots), MERCHANTMAN (4), PRIVATEER (2) and of course on GALLEON (6).

To make it so that only Galleons can transport treasures but they can transport more than one you need to change the "<iBerthSize>6</iBerthSize>"
for the Treasure unit to "<iBerthSize>1</iBerthSize>". Berth determines the size of the of the unit to be transported. Six means it takes up six cargo spaces, thus once loaded nothing else can be loaded. Changeing this to 1 causes it to only take up 1 cargo spot thus leaving room for 5 more treasures.
 
The basic game for me allows you to transport more than one treasure on a Galleon and I am not aware of any official patches that change this. But the unofficial patch does change this and I didn't like this change at all cause it was kinda silly to have a treasure unit of only 200 or so gold take up a whole galleon.

And to clear up just what the .xml means...

Very strange indeed!

Open original CIV4UnitInfos.xml file dated 18.07.2008 (321 858 bytes).
Default location is here C:/Program Files/2K Games/Firaxis Games/Sid Meier's Civilization IV Colonization/Assets/XML/Units/CIV4UnitInfos.xml.

Find the <Type>UNIT_TREASURE</Type> section.

In the end of this section find the line:

<iRequiredTransportSize>6</iRequiredTransportSize>.

It means that each treasure required 6 slots. And 6 slots has only Galleon. That is only Galleon can be used to transport treasures in original version of CivIVCol.

Proposed fix removes this crazy (to my opinion) limitation. Everybody are free to apply this fix or not.

This isn't correct. The "iRequiredTransportSize" tag means that the transport ship must have 6 cargo spaces in order to transport this unit. Lowering this to 1 means that any ship with a cargo space of 1 can transport this unit.

You are right here, but this line:

<iRequiredTransportSize>6</iRequiredTransportSize>

belongs to the <Type>UNIT_TREASURE</Type> section.
Please, read my first message ones again.


To make it so that only Galleons can transport treasures but they can transport more than one you need to change the "<iBerthSize>6</iBerthSize>"
for the Treasure unit to "<iBerthSize>1</iBerthSize>". Berth determines the size of the of the unit to be transported. Six means it takes up six cargo spaces, thus once loaded nothing else can be loaded. Changeing this to 1 causes it to only take up 1 cargo spot thus leaving room for 5 more treasures.

This line:

<iBerthSize>6</iBerthSize>

is absent in original CIV4UnitInfos.xml file at all!

This line appered only in one of mods, probably in Dale's AoDII 1.01.

Thus, the proposed fix removes the "1 treasure per Galleon" limit.

As result:

1. You can also load your treasures also on CARAVEL (2 cargo slots), MERCHANTMAN (4), PRIVATEER (2) and of course on GALLEON (6).

2. AI also used this possibility to transort treasures on caravels (2), merchantmans (4), privateers (2) and on galleons (6).
 
Dude, in vanilla Col there is no size-6 treasure. You can put 6 treasures on a galleon already in vanilla.

Why? Quite simple actually. The SDK is hard-coded so that every single unit takes only one berth on a ship. HARD-CODED! Which of course goes against everything Soren and Alex stood for (which is very strong proof indeed that Firaxis didn't really care about this game and put B-grade coders on it).

So basically, I fixed that "bug" by exposing a unit's berth size through the XML.

iRequiredTransportSize ONLY determines the size of ship required to load that unit.
iBerthSize ONLY determines how many slots the unit fills on the ship.

So............. this ModComp is redundant for vanilla Col players.
 
Thank you, Dale, for your comments and your mods.

Just couple short remarks.

Galleons are very expensive, especially in the beginning, when each treasure is very valuable. However, a caravel is available for each player. But you cannot transport your treasures on caravels in vanilla CivIVCol. Isn't it?

And the proposed fix removes this limit, too.

At least, everybody are playing his game and everybody are free to modify the codes as he/she want. Why not?
 
Dude, in vanilla Col there is no size-6 treasure. You can put 6 treasures on a galleon already in vanilla.

Why? Quite simple actually. The SDK is hard-coded so that every single unit takes only one berth on a ship. HARD-CODED! Which of course goes against everything Soren and Alex stood for (which is very strong proof indeed that Firaxis didn't really care about this game and put B-grade coders on it).

So basically, I fixed that "bug" by exposing a unit's berth size through the XML.

iRequiredTransportSize ONLY determines the size of ship required to load that unit.
iBerthSize ONLY determines how many slots the unit fills on the ship.

So............. this ModComp is redundant for vanilla Col players.

Ahh, kk, I didn't realize that the Berth was hard coded.. I just knew that in the vanilla game you can load more than one treasure on a Galleon but only on Galleons. I still don't like my treasure of 300 gold taking up one whole Galleon. I would suggest something like making it so that every 500 gold takes up one Berth size.. so a maximum of 3000 gold per Galleon would seem reasonable. I may do this for my own games.
 
Ahh, kk, I didn't realize that the Berth was hard coded.. I just knew that in the vanilla game you can load more than one treasure on a Galleon but only on Galleons. I still don't like my treasure of 300 gold taking up one whole Galleon. I would suggest something like making it so that every 500 gold takes up one Berth size.. so a maximum of 3000 gold per Galleon would seem reasonable. I may do this for my own games.

AoD2 for a while now has had 3 treasure per galleon. This means you can transport between 20-200% of a galleon's cost each trip. PatchMod is still at 1 per galleon, though that's more Snoopy's design than mine.
 
Thank you, Dale, for your comments and your mods.

Just couple short remarks.

Galleons are very expensive, especially in the beginning, when each treasure is very valuable. However, a caravel is available for each player. But you cannot transport your treasures on caravels in vanilla CivIVCol. Isn't it?

And the proposed fix removes this limit, too.

At least, everybody are playing his game and everybody are free to modify the codes as he/she want. Why not?

Yes, your change above allows other ships to move treasures, but that's a bit of a game-breaker as it makes galleons worthless completely.

Aside from that, I was addressing all of your other comments about the game/mods which, I hesitate to mention, were in err to how they actually work.
 
Top Bottom