Bigger world sizes...Ok, how?

Adam7Eight

Emperor
Joined
Jun 19, 2002
Messages
1,262
Location
Wisconsin, USA
This post has now been edited appropriately. If you wish to edit some world sizes I've made this a little easier to understand than of having to read through the entire thread. :)

To edit XML files:

1. Make a backup of the original file.

2. Open up the file with either Wordpad or Notepad.

How to change/add map sizes...

To edit existing map sizes:

1. Open "CIV4WorldInfo.xml" file located in your "C:\Program Files\Firaxis Games\Sid Meier's Civilization 4\Assets\XML\GameInfo" folder.

2. Choose the existing map size you would like to change and find the appropriate tags to edit the grid heighth and width:

"<iGridWidth>32</iGridWidth>
<iGridHeight>20</iGridHeight>"

*Each grid cell consists of 4 tiles (plots), so a 32x20 map grid is actually 128x80 plots.

3. Enter desired grid values. I would recommend keeping the ratio to or around 1:6. Some people have not had problems throwing in random numbers, however, I have experienced crashes and lockups when trying to load a map that strays too far from this ratio.

4. Save the file and test it out.

Creating your own map from scratch involves a little more editing if you want it to appear a little more authentic.

To create a new map size:

1. Open "CIV4WorldInfo.xml" file located in your "C:\Program Files\Firaxis Games\Sid Meier's Civilization 4\Assets\XML\GameInfo" folder.

2. Copy an already existing map between the worldinfo tags (<worldinfo>bunch of text</worldinfo>)...

Code:
<WorldInfo>
			<Type>WORLDSIZE_HUGE</Type>
			<Description>TXT_KEY_WORLD_HUGE</Description>
			<Help>TXT_KEY_WORLD_HUGE_HELP</Help>
			<iDefaultPlayers>11</iDefaultPlayers>
			<iUnitNameModifier>0</iUnitNameModifier>
			<iTargetNumCities>6</iTargetNumCities>
			<iNumFreeBuildingBonuses>7</iNumFreeBuildingBonuses>
			<iBuildingClassPrereqModifier>100</iBuildingClassPrereqModifier>
			<iMaxConscriptModifier>75</iMaxConscriptModifier>
			<iWarWearinessModifier>-50</iWarWearinessModifier>
			<iGridWidth>32</iGridWidth>
			<iGridHeight>20</iGridHeight>
			<iTerrainGrainChange>1</iTerrainGrainChange>
			<iFeatureGrainChange>1</iFeatureGrainChange>
			<iResearchPercent>150</iResearchPercent>
			<iTradeProfitPercent>30</iTradeProfitPercent>
			<iDistanceMaintenancePercent>100</iDistanceMaintenancePercent>
			<iNumCitiesMaintenancePercent>15</iNumCitiesMaintenancePercent>
			<iNumCitiesAnarchyPercent>5</iNumCitiesAnarchyPercent>
		</WorldInfo>

...and then paste it below the one you copied:

Code:
<WorldInfo>
			<Type>WORLDSIZE_HUGE</Type>
			<Description>TXT_KEY_WORLD_HUGE</Description>
			<Help>TXT_KEY_WORLD_HUGE_HELP</Help>
			<iDefaultPlayers>11</iDefaultPlayers>
			<iUnitNameModifier>0</iUnitNameModifier>
			<iTargetNumCities>6</iTargetNumCities>
			<iNumFreeBuildingBonuses>7</iNumFreeBuildingBonuses>
			<iBuildingClassPrereqModifier>100</iBuildingClassPrereqModifier>
			<iMaxConscriptModifier>75</iMaxConscriptModifier>
			<iWarWearinessModifier>-50</iWarWearinessModifier>
			<iGridWidth>32</iGridWidth>
			<iGridHeight>20</iGridHeight>
			<iTerrainGrainChange>1</iTerrainGrainChange>
			<iFeatureGrainChange>1</iFeatureGrainChange>
			<iResearchPercent>150</iResearchPercent>
			<iTradeProfitPercent>30</iTradeProfitPercent>
			<iDistanceMaintenancePercent>100</iDistanceMaintenancePercent>
			<iNumCitiesMaintenancePercent>15</iNumCitiesMaintenancePercent>
			<iNumCitiesAnarchyPercent>5</iNumCitiesAnarchyPercent>
		</WorldInfo>
<WorldInfo>
			<Type>WORLDSIZE_HUGE</Type>
			<Description>TXT_KEY_WORLD_HUGE</Description>
			<Help>TXT_KEY_WORLD_HUGE_HELP</Help>
			<iDefaultPlayers>11</iDefaultPlayers>
			<iUnitNameModifier>0</iUnitNameModifier>
			<iTargetNumCities>6</iTargetNumCities>
			<iNumFreeBuildingBonuses>7</iNumFreeBuildingBonuses>
			<iBuildingClassPrereqModifier>100</iBuildingClassPrereqModifier>
			<iMaxConscriptModifier>75</iMaxConscriptModifier>
			<iWarWearinessModifier>-50</iWarWearinessModifier>
			<iGridWidth>32</iGridWidth>
			<iGridHeight>20</iGridHeight>
			<iTerrainGrainChange>1</iTerrainGrainChange>
			<iFeatureGrainChange>1</iFeatureGrainChange>
			<iResearchPercent>150</iResearchPercent>
			<iTradeProfitPercent>30</iTradeProfitPercent>
			<iDistanceMaintenancePercent>100</iDistanceMaintenancePercent>
			<iNumCitiesMaintenancePercent>15</iNumCitiesMaintenancePercent>
			<iNumCitiesAnarchyPercent>5</iNumCitiesAnarchyPercent>
		</WorldInfo>

3 Edit the grid & heighth values:

"<iGridWidth>32</iGridWidth>
<iGridHeight>20</iGridHeight>"

As mentioned earlier, cach grid cell consists of 4 tiles (plots), and I recommend keeping the ratio to or around 1:6.

4. Change the first three tags to the desired name of your map size. Example, change this:

Code:
<Type>WORLDSIZE_HUGE</Type>
			<Description>TXT_KEY_WORLD_HUGE</Description>
			<Help>TXT_KEY_WORLD_HUGE_HELP</Help>

to this:

Code:
<Type>WORLDSIZE_OMG</Type>
			<Description>TXT_KEY_WORLD_OMG</Description>
			<Help>TXT_KEY_WORLD_OMG_HELP</Help>

5. Other tags are optional if you want to change them or not. I would suggest making a few small changes to keep them proportionate to the other map sizes. Just glance through at the map sizes and take note of what tags increase or decrease, while keeping the size of your map in mind.

6. Save file and close.

7. Now navigate to your "XML\Text" folder and open the "CIV4GameText_Help.xml" file.

8. Scroll about 1/4 of the way down until you see this:

Code:
<TEXT>
		<Tag>TXT_KEY_WORLDSIZE_HUGE_HELP</Tag>
		<English>If you are looking for a truly epic experience, this map size is for you.  It has room for you and 10 opponents.</English>
		<French>Si vous voulez vivre une v&#233;ritable &#233;pop&#233;e, cette carte est faite pour vous. Elle est immense et oppose 10 adversaires.</French>
		<German>Wenn Sie eine unvergessliche Erfahrung suchen, ist diese Karte Ihre erste Wahl. Immerhin treffen Sie hier auf bis zu 10 Gegner!</German>
		<Italian>Se sei alla ricerca di un'esperienza davvero epica, la dimensione di questa mappa &#232; quello che fa per te, poich&#233; oltre a te c'&#232; posto per altri dieci rivali.</Italian>
		<Spanish>Si quer&#233;is una experiencia &#233;pica de verdad, el tama&#241;o de este mapa es lo que and&#225;is buscando.  Tiene espacio suficiente para vos y para otros diez rivales.</Spanish>
	</TEXT>

Copy the above and then paste it right below it.

9. Now edit the line:
"<Tag>TXT_KEY_WORLDSIZE_HUGE_HELP</Tag>"

and change the name of the map to your new map name (as in this example "OMG"):
"<Tag>TXT_KEY_WORLDSIZE_OMG_HELP</Tag>"

10. Save file and close.

11. Now open up the "CIV4GameTextInfos_Objects.xml" file (located in XML\Text).

If you don't want to scroll all the way through this large file to find the right thing to copy, I'll just tell you what to add. I don't believe it will make a difference where the new code is added, just as long as it's in there.

12. Add the following to this file (without quotations of course and remember "OMG" is an example):

Code:
<TEXT>
		<Tag>TXT_KEY_WORLD_OMG</Tag>
		<English>OMG</English>
	</TEXT>

13. Save and close.

Finally, this last bit will make it things much better looking when setting up a game. ;)

14. Navigate to your "XML\Interface" folder and open the "CIV4WorldPickerInfos.xml" file.

15. As you scroll through this file you'll see these lines of code added under a few of the different world types:

Code:
<Sizes>
				<Size>1.0</Size> <!-- Random -->
				<Size>0.3</Size> <!-- Duel -->
				<Size>0.6</Size> <!-- Tiny -->
				<Size>0.8</Size> <!-- Small -->
				<Size>1.0</Size> <!-- Standard -->
				<Size>1.4</Size> <!-- Large -->
				<Size>2.0</Size> <!-- Huge -->
			</Sizes>

The "<Size>x.x</Size>" tag just tells you how big (or small) the world will appear on the world setup screen. So all we're going to do is add one line for our "OMG" map which we'll assume bigger than huge. So...

16. Add in the size, like this:

Code:
<Sizes>
				<Size>1.0</Size> <!-- Random -->
				<Size>0.3</Size> <!-- Duel -->
				<Size>0.6</Size> <!-- Tiny -->
				<Size>0.8</Size> <!-- Small -->
				<Size>1.0</Size> <!-- Standard -->
				<Size>1.4</Size> <!-- Large -->
				<Size>2.0</Size> <!-- Huge -->
                                <Size>2.4</Size> <!-- OMG -->
			</Sizes>

Add this new line for each time you see this list of sizes under each map (aDebugMap, Archipelago, Continents, Lakes, Pangaea, Ice_Age, and Terra)

17. Save and close.

It's now complete. It seems like a lot of work for a simple thing, but it's easy and quick once you know what you're doing. Start a game to make sure it all works correctly and that you have an option for a new map size. Keep in mind that the bigger the map you make the longer it will take to load and enter Worldbuilder.

:king:
 
low, i'm trying to figure out your issue, but i haven't reproduced it yet -- i just tried 38 x 24, and it worked no problem... (replacing the numbers in the existing Huge)

can you try these, and theng ive me an example of numbers that don't work?

There might be a certain ratio we have to meet...
 
addendum: 38x24 may have issues with Worldbuilder, need to test further...
 
I've done a little more research into the world sizes. I'm paying particular attention to the ratio between width and height:

10 6 1.666666667
13 8 1.625
16 10 1.6
21 13 1.615384615
26 16 1.625
32 20 1.6


So the default game maps never stray from about 1.6.

With this in mind, 40 / 25 = 1.6, so if ratio is an issue, 40x25 should work. I'm giving it a try now.
 
Nice, Rayanth. I just tried 40x25 and played a few turns. Takes a little bit to load at start, but at least it worked. It did freeze up when I tried to access the World Builder though.
 
well, 40x25 loads the map, but WorldBuilder won't give me access to the whole map - I don't know if that's by a design flaw in world builder, or if it's the standard for a brand new Huge-ish game... input?

Meanwhile, this 40x25 game put me in an awesome spot, so i'm gonna actually play it out =)

Started on a 1-square jut-out into teh ocean, with a river on one side, my warriors one step away from a goody hut, deer adjacent to my city spot, and crabs also adjacent to my city spot.... wheat is two squares away.
 
it's definitely running slow. Civ4 is taking up PM of 300 megs, and VM of almost 600 megs with this 40x25 map loaded, and this is still turn 1. NOT for the faint of heart (or lacking in computer power)
 
OK I just built stonehenge to center my worldmap and tried WorldBuilder again -- the whole map DOES show up in worldbuilder... you just have to know (in game context) how big the worl dis before worldbuilder will show it all. I suspect the cheat-code posted in a sticky by Soren will fix this... dunno for sure.

However, for a 40x25 map, everything works. Worldbuilder IS giving me full access to the map, after i discovered stonehenge. it is beginning to run QUITE slow, hoever, so I would not say doing maps this huge is wise.

My basic system specs:

Athlon 2800+
radeon 9600/256mb
512mb of memory

as of right now, this Civ4 game is taking up 650 megs of virtual memory, and just shy of 300 megs of physical memory. it's HUGE.

Also, the zoomed-out Globe view of the map is somewhat distorted. it's possible we'll have to modify the zoom levels for this somehow, or something. the world looks like kind of egg-shaped.
 
Having any slowdown in the standard huge size? Seems a bit odd that performance would deteriorate so quickly with an empty world map. I think the 1.6 ratio is right though. Try 22/35 and 23/37, see how they perform.
 
Well, I've tried every suggestion you guys have given and they all run fine for me. Even at the 40x25 I experienced no slowdown, but then again I only played 50-60 turns. My only complaint would be that it takes longer to load at start. :p

(Ahtlon64 3400+, 6800 Ultra 256MB, 1GB DDR RAM)

I think it's safe to assume that map sizes must stick to or near the 1:6 ratio. Great call on that Rayanth.

I have decided to create a new world size called "Gigantic" instead of editing the huge map, and I went with the 37x23. It isn't a whole lot bigger than huge, because I anticipate it being a little slower 200-400 turns down the road so I didn't want to create a trully 'gigantic' map just yet. I created the strings in the other text files so it looks and feels a little authentic when choosing it when starting a game.

However, there is still a problem when trying to enter Worldbuilder (without building Stonehenge of course). I predict that's a problem we won't be able to fix until the SDK comes out. Maybe I'm wrong, I don't know. Also, one other minor thing I'm looking into is changing the size of the world that's displayed when choosing "Gigantic" on the setup screen. I haven't found anything relating to that yet.
 
Ok, I figured out how to change the size of the world when selecting map size on the setup screen.

You would have to edit "CIV4WorldPickerInfos.xml" file located in the "interface" folder and you'll find a section like this:

Code:
<MapName>Archipelago</MapName> 
  <ModelFile>Art/Interface/Screens/WorldPicker/Globe.nif</ModelFile> 
- <Sizes>
  <Size>1.0</Size> 
- <!--  Random  --> 
  <Size>0.3</Size> 
- <!--  Duel  --> 
  <Size>0.6</Size> 
- <!--  Tiny  --> 
  <Size>0.8</Size> 
- <!--  Small  --> 
  <Size>1.0</Size> 
- <!--  Standard  --> 
  <Size>1.4</Size> 
- <!--  Large  --> 
  <Size>2.0</Size> 
- <!--  Huge  -->

All I had to do was add another size for the bigger map at the bottom, like so:

Code:
<MapName>Archipelago</MapName> 
  <ModelFile>Art/Interface/Screens/WorldPicker/Globe.nif</ModelFile> 
- <Sizes>
  <Size>1.0</Size> 
- <!--  Random  --> 
  <Size>0.3</Size> 
- <!--  Duel  --> 
  <Size>0.6</Size> 
- <!--  Tiny  --> 
  <Size>0.8</Size> 
- <!--  Small  --> 
  <Size>1.0</Size> 
- <!--  Standard  --> 
  <Size>1.4</Size> 
- <!--  Large  --> 
  <Size>2.0</Size> 
- <!--  Huge  --> 
  <Size>2.4</Size> 
- <!--  Gigantic -->

This would have to be done for each map type located in the XML file. It's not a major find. But it does make it look a lot better when you're setting up the game.

EDIT: It seems after these changes to the Worldpicker file that I'm able to go into Worldbuilder without any problems now. I've tried it a couple of different times and it works fine. :)
 
awesome, good find =) But does it fix the egg-shaped-world when fully zoomed out during a game using that map size?
 
If you guys want to try it out here you go...

I've put the 4 files in the appropriate folders for now, but leaving it up to you whether you decide to overwrite your default files and do it as a mod. If you do overwrite, remember to make a backup. :D

EDIT: File removed. Moving it to the correct folder.
 
Rayanth said:
awesome, good find =) But does it fix the egg-shaped-world when fully zoomed out during a game using that map size?

I didn't really take note. I just tested to see if I could get into Worldbuilder. I'll go try it now though.

EDIT: Looks fine to me.
 
Rayanth said:
Meanwhile, this 40x25 game put me in an awesome spot, so i'm gonna actually play it out =)

Started on a 1-square jut-out into teh ocean, with a river on one side, my warriors one step away from a goody hut, deer adjacent to my city spot, and crabs also adjacent to my city spot.... wheat is two squares away.
You've got crabs!! :eek: :crazyeye: :lol:
 
"I have decided to create a new world size called "Gigantic" instead of editing the huge map, and I went with the 37x23. It isn't a whole lot bigger than huge"

isnt the huge map 128plots X 80Plots?
 
Top Bottom