Gigantic maps?

guncrazy

Chieftain
Joined
Mar 16, 2004
Messages
71
I can't seem to find the mod that gives you gigantic maps. Huge is not enough for me and I do remember a few years ago playing a map on gigantic setting. Whats it called?
 
Hmm The more I think about it I don't think it was a mod persay, but I do remember selected something beyond huge. Possible an earth map or earthlike mapscript?
 
Hmm The more I think about it I don't think it was a mod persay, but I do remember selected something beyond huge. Possible an earth map or earthlike mapscript?

It might have been a map script. SmartMap and Planet Generator both have options to override the default map sizes, and I think Full of Resources does, too. Look for those in the map scripts subforum.

If, after that, you still can't find it, be aware that modding in a new mapsize takes about 5 minutes. Assuming all you want is a larger playable area, that may be the next best option.
 
Thats pretty much, I want a size catagory higher than Huge. Something that can comfortably fit 15 civs on it with room to add more. An earthlike planet would be best. As I have the most fun invading a mainland.
 
...would be to make your own mod...and then add the size in the appropriate file.

Path: you have a games-folder, I presume. On my PC it reads like this:

...Spill*/Firaxis Games/Sid Meier's Civilization 4 Complete/Beyond The Sword/Mods

*Spill is the Norwegian word meaning Game.

Inside this Mods folder create your own mod. Let's just call it BiggerMap.

So, in ...Mods/BiggerMap/Assets/XML/Gameinfo (you create these folders), you have to paste in the CIV4WorldInfo.xml that you have copied from the original game.

Then it's just a matter of opening the file with notepad, copying everything from <WorldInfo> to </WorldInfo> for the last of the Worldsizes (Huge) and pasting it as the next entry...

Now you can go into the new entry and change the WORLDSIZE_HUGE tag to WORLDSIZE_BIGGER (or some other fancy name). Find the tags <iGridWidth> and <iGridHeight>. Change the numbers to something appropriate. In my personal mod I have two worldsizes bigger than Huge. Mine are 40x25 and 48x30 in size. This translates into [(40x4)x(25x4)] plots on the map for the "smaller" of my worldsizes. That is 16 000 (16k) plots. A Huge map is 10k+ plots, so this is about 60% bigger than the Huge WorldSize in BtS. My "bigger" map is 23k+ in plots.

Remember to save this file without the standard [.txt] ending my notepad uses as default. Choose [all files *.*] as the filetype and save. Then it is just a matter of starting up the game, loading the mod BiggerMap and play away...

Now, in theory, when you start a game and decides to choose your own map-size you will notice that there are two choices for Huge map-size. That is because you didn't change the <Description> tag in the file you edited. You can do that later if you want. For now, just choose the second "Huge". If you edited the one placed at the bottom of the CIV4WorldInfo.xml file, then that is your Bigger map-size.

If 18 civilizations are too few for your taste...download a 40 or 50 civ dll from the download section of CivFanatics. A simple search should point you to the right location of these files. Put this dll-file in you mod's Assets-folder. It should then replace the original game's dll upon loading your mod.

I have no clue as to what is the "best" way to do this, but the easier way of making your own mod is more than good enough for me...



Yours Sincerely

Kjotleik of Norway:)


PS! If this sounds annoyingly childish (or simple) to you because you know a lot more about PC's and stuff than I, then I apologize. It's always hard for me to know what people on these forums actually KNOW.
 
Should maybe be mentioned that this modder right above this post made 2 pretty big maps of europe and eurasia ;).

:mischief:

...would be to make your own mod...and then add the size in the appropriate file.

Path: you have a games-folder, I presume. On my PC it reads like this:

...Spill*/Firaxis Games/Sid Meier's Civilization 4 Complete/Beyond The Sword/Mods

*Spill is the Norwegian word meaning Game.

Inside this Mods folder create your own mod. Let's just call it BiggerMap.

So, in ...Mods/BiggerMap/Assets/XML/Gameinfo (you create these folders), you have to paste in the CIV4WorldInfo.xml that you have copied from the original game.

Then it's just a matter of opening the file with notepad, copying everything from <WorldInfo> to </WorldInfo> for the last of the Worldsizes (Huge) and pasting it as the next entry...

Now you can go into the new entry and change the WORLDSIZE_HUGE tag to WORLDSIZE_BIGGER (or some other fancy name). Find the tags <iGridWidth> and <iGridHeight>. Change the numbers to something appropriate. In my personal mod I have two worldsizes bigger than Huge. Mine are 40x25 and 48x30 in size. This translates into [(40x4)x(25x4)] plots on the map for the "smaller" of my worldsizes. That is 16 000 (16k) plots. A Huge map is 10k+ plots, so this is about 60% bigger than the Huge WorldSize in BtS. My "bigger" map is 23k+ in plots.

Remember to save this file without the standard [.txt] ending my notepad uses as default. Choose [all files *.*] as the filetype and save. Then it is just a matter of starting up the game, loading the mod BiggerMap and play away...

Now, in theory, when you start a game and decides to choose your own map-size you will notice that there are two choices for Huge map-size. That is because you didn't change the <Description> tag in the file you edited. You can do that later if you want. For now, just choose the second "Huge". If you edited the one placed at the bottom of the CIV4WorldInfo.xml file, then that is your Bigger map-size.

If 18 civilizations are too few for your taste...download a 40 or 50 civ dll from the download section of CivFanatics. A simple search should point you to the right location of these files. Put this dll-file in you mod's Assets-folder. It should then replace the original game's dll upon loading your mod.

I have no clue as to what is the "best" way to do this, but the easier way of making your own mod is more than good enough for me...



Yours Sincerely

Kjotleik of Norway:)


PS! If this sounds annoyingly childish (or simple) to you because you know a lot more about PC's and stuff than I, then I apologize. It's always hard for me to know what people on these forums actually KNOW.

This is pretty good, I would just add that I'm fond of a grid value of 40x25. It's what I use when designing big maps (unless I need a very wide projection, in which case I go 50x25), so I would suggest that as a starting point.
 
Thank you Kjotleik of Norway, it is always helpful to read posts like yours because it is not only the recipient who can read useful tips!

One question: how do you do then with all the .py files because I saw that many are defining things (even changing the map sizes) according to the pre-determined Worldsizes - you have to edit all of them as well, then?

Personnally, I opted to change the grid values for the WORLDSIZE_HUGE. It seemed easier to me.
 
Personally, I recommend XXL Worlds. It provides three new mapsizes and IIRC it made the necessary updates to the game's map scripts.

Note that introducing a new mapsize (or changing the gridsize of an existing one) without also adapting the mapscripts will often lead to odd results. Many map scripts check for specific mapsizes, or assume that the original values are unchanged, and confronting them with values they weren't written for can produce anything from odd maps to crashes. It's pretty easy to adapt the mapscripts and prevent this, but it does require some time to do it.

isenchine: Your change will have no effect at all on several mapscripts. For example, the "Pangea" mapscript simply overwrites the default gridsizes, i.e. it will always use its own values and never even look at the values you changed.
 
isenchine: Your change will have no effect at all on several mapscripts. For example, the "Pangea" mapscript simply overwrites the default gridsizes, i.e. it will always use its own values and never even look at the values you changed.

True. But then it's easy to change these mapscripts as well.
 
True. But then it's easy to change these mapscripts as well.

Correct. :) In the end, it depends on whether you want to keep the original "huge" size as an option. If you don't, then you can indeed save a bit of time by just replacing the respective values in Civ4WorldInfo.xml and in the mapscripts. If you however want to keep the "huge" size, then adding a new mapsize isn't that much more work.

Btw, since it may be of interest in the context of the thread, here's what I usually do to make sure that a mapscript works with non-standard mapsizes:

- Load the mapscript in any text editor (Notepad++ is nice since it color-codes the Python commands, but standard Notepad gets the job done too)
- If the Civ4WorldInfo.xml defines mapsizes beyond huge, then define constants for them at the beginning of the mapscript (see the scripts in the "XXL Worlds" mod for good examples, the author has marked all his changes to the original scripts)
- Search for the term "WORLDSIZE" in the script. Often it's just used in functions and calculations, these can usually be left alone. However, from time to time a script sets specific values depending on specific worldsizes. In such cases, the specific worldsizes (WORLDSIZE_LARGE, WORLDSIZE_HUGE etc.) will be mentioned in the script. These are the cases where either WORLDSIZE_HUGE needs to be adapted (if you simply changed the gridsize for huge worlds in Civ4WorldInfo.xml), or where additional worldsizes need to be added (if you added new worldsizes to Civ4WorldInfo.xml).

If in doubt, look at Nevermind's changed mapscripts in the XXL Worlds mod. As said above, he has documented his changes very well, so they can be used as templates for changing other scripts.
 
One question: how do you do then with all the .py files because I saw that many are defining things (even changing the map sizes) according to the pre-determined Worldsizes - you have to edit all of them as well, then?

Now, that I haven't thought about.:sad:

I have just edited the xml-files up until now.

Psyringe said:
If in doubt, look at Nevermind's changed mapscripts in the XXL Worlds mod. As said above, he has documented his changes very well, so they can be used as templates for changing other scripts.

Just downloaded the XXL Worlds mod. I have to look into this.

One small issue, though. The farthest I have gotten in Python is to actually find it in the game by following Baldyr's guide in one of the threads. I started it up and made it say "Hello Kjotleik" to me by using the print command.:lol:

So, I guess I need some time to look through the mapscripts of the XXL World mod. As long as a simple Notepad can do the job, there should only be a matter of getting my brain into it's right mind!:confused:

I haven't really counted the tiles in my mod. Up until now I have only started a new game with my bigger World Sizes and played for about 10-15 turns. No problems detected so far... I have mostly been busy including some Civilizations I have downloaded from the New Civilizations thread.

I will try to figure it out by the end of the weekend, though.

Thanks for posting. I'm still learning this modding thing. Every day, it seems there is something new...


Yours Sincerely

Kjotleik of Norway:)
 
One small issue, though. The farthest I have gotten in Python is to actually find it in the game by following Baldyr's guide in one of the threads. I started it up and made it say "Hello Kjotleik" to me by using the print command.:lol:

So, I guess I need some time to look through the mapscripts of the XXL World mod. As long as a simple Notepad can do the job, there should only be a matter of getting my brain into it's right mind!:confused:

It shouldn't be much of a problem. Adding a new mapsize to an existing mapscript doesn't require Python knowledge, it's just a matter of pattern recognition and copy/pasting some stuff. The only non-obvious thing is that you need to add a comma to the end of an already existing line with WORLDSIZE_HUGE (if you add more worldsizes), because only the last item in a list goes without a comma. But again, checking one of Nevermind's altered scripts could tell you that. Just load one (for example, pangea.py) into notepad and search for the term "worldsize", you'll easily find NeverMind's added parts and see what he did. And if there are questions afterwards, just ask them, we're here. :)
 
Now I have checked the XXL World mod, and have found that not all mapscripts are changed. In the Fractal.py script there is no reference to Worldsizes at all, so that's unchanged. Maybe that is why I have not had any trouble playing with my new WorldSizes. I have always started my games with fractal...

I did test by starting one of my own Worldsizes with a Pangaea map. It simply stopped midway through the setup-process, and I had to end the game in Task Manager.

Looking through the mapscripts changed by the XXL World mod I found that there were three instances where it was changed. In the beginning of the scripts there were three lines like the one below: (Examples from Earth2.py)

WorldSizeTypes.WORLDSIZE_XXL=WorldSizeTypes.WORLDSIZE_HUGE+1

I believe that is the line that defines the new worldsize for this particular script?

My second encounter with changes were under something called:

def getGridSize(argsList):

It looks like a list defining the "new" worldsizes to be used by this mapscript instead of the standard sizes from CIV4WorldInfo.xml?

The third instance was in something called:

class EarthMultilayeredFractal(CvMapGeneratorUtil.MultilayeredFractal):

Here the different sizes were followed by either (3,2,1), (4,2,1) or (5,2,1). The smaller sizes with a "3", the new bigger ones with a "5". It is called a grain matrix. What does a grain matrix in a mapscript actually do?

Could I force each and every mapscript to use the standard sizes by just deleting the [def getGridSize(argsList):] entry in it's entirety?

In the case of an affirmative on the above paragraph, I would only have to set the definition of the WorldSize and the change in the [class EarthMulti...etc] entry.

I see that with a small amount of work, and a lot of spell-checking(!), I could easily do this job. I am about to look through all of the mapscripts, and copy the ones with WorldSize references in them to a new folder in my mod called PrivateMaps. That is the right foldername to use in mods, right? Then I intend to change them according to the example from the XXL World mod in order to be able to use my new WorldSizes.

I will await an answer to this post before I do the work. If it is possible to just delete the [def getGridSize(argsList):] without any other effects than the mapscript using the original values for width and height, then I will save some time.



Yours Sincerely

Kjotleik of Norway:)
 
In the Fractal.py script there is no reference to Worldsizes at all, so that's unchanged. Maybe that is why I have not had any trouble playing with my new WorldSizes. I have always started my games with fractal...
Yes, that's correct. Many mapscripts just take the gridsize (as specified in Civ4WorldInfo.xml) and don't require anything beyond that. Fractal belongs to these scripts.

WorldSizeTypes.WORLDSIZE_XXL=WorldSizeTypes.WORLDSIZE_HUGE+1

I believe that is the line that defines the new worldsize for this particular script?
Yes. All worldsizes up to (and including) WORLDSIZE_HUGE are automically defined for all scripts. The worldsizes beyond that aren't, so NeverMind chose to define these worldsizes in the scripts that worked with worldsize-specific settings.

My second encounter with changes were under something called:

def getGridSize(argsList):

It looks like a list defining the "new" worldsizes to be used by this mapscript instead of the standard sizes from CIV4WorldInfo.xml?
Yes. The gridsizes in the script override those specified in Civ4WorldInfo.xml. Usually there's a reason for that. For example, Pangea maps have a reduced amount of ocean, so they actually need a smaller gridsize to arrive at the same landmass per player ratio as (for example) a Fractal map with the same settings.

The third instance was in something called:

class EarthMultilayeredFractal(CvMapGeneratorUtil.MultilayeredFractal):

Here the different sizes were followed by either (3,2,1), (4,2,1) or (5,2,1). The smaller sizes with a "3", the new bigger ones with a "5". It is called a grain matrix. What does a grain matrix in a mapscript actually do?
I don't know. When I adapt a mapscript to work with bigger sizes, I just increase such values proportionally, but I'm not certain what they mean, and I never studied the scripts deep enough to understand that. My guess is that the grain size determines the size of mountain ranges, desert "blobs" etc. - meaning, the bigger the grain size, the bigger are the blobs consisting of one terrain type. But it's just a guess. I suggest asking this question in the Modding forum or in the Mapscripts subforum.

Could I force each and every mapscript to use the standard sizes by just deleting the [def getGridSize(argsList):] entry in it's entirety?
I'm afraid I don't understand mapscripts well enough to answer that question. I hope that someone in the forums dedicated to modding and/or mapscripts can help you further.
 
Testing of mapscript-changes to commence...during the coming week.

@Psyringe: Thank you for a very helpful reply. Now I've confirmed that my interpretation of the mapscript is not too far off, at least.

I will take the Pangaea mapscript and change that one first. I will maybe experiment with the grain matrix values to see what it does. Changing the first value from 5 to...say 50 or 100 should make me see some changes by just visually looking at the generated map, I hope.

Probably, I will not be able to post my results before the coming of the next weekend. But I will, eventually, tell you how it all works out...be patient, please.



Yours Sincerely

Kjotleik of Norway:)
 
1. Make a mod (I believe you know how to do this if you have read this far...).

2. Edit the CIV4WorldInfo.xml in YourMod/Assets/XML/Gameinfo to add new World Sizes.

3. Make the folder YourMod/PublicMaps and copy all mapscripts which has references to World Size in them into this folder.

4. Use the mapscripts from Nevermind's XXL Worlds mod as a reference for changing your own mapscripts.


THIS WORKS!

A BIG thanks to Psyringe for telling me about XXL Worlds, and a HUGE thanks to Nevermind for actually making his changes clearly visible in the mapscripts.

In my personal mod I have now added six sizes above Huge. The smallest a mere 124 % the size of huge, the biggest 400 % the size of Huge. Now...about those MAF's...:lol:



Yours Sincerely

Kjotleik of Norway:)


PS! I have no knowledge of python...and I still managed to copy/paste changes in the mapscripts that allow them to work...It couldn't have been easier. A bit time-consuming I admit, but easy...

PS2! I still don't KNOW what the grain matrix does, but it has to do with the creation of the map, somehow (too obvious?). I did tweak the number in the Pangaea.py to 50, and a lot of small islands appeared. Then I set it to 500, but most islands were not there...hmmm.
 
Back
Top Bottom