Modders Guide to Civilization V

Anyone found where are the starting units?

my scenario start in 1500, yet it's a warrior popping lol.

Perhaps you already did this but have you given the civs all the necessary techs to really be in the renaissance. As far as I know you're current era is completely independent from the current year.
 
I AM biased, yes. But I didn"t become biased without a reason.

Personally, I've always found compilers to make life easier.

Granted, with Java I just use Notepad++ and commandprompt to compile, but that's because I'm too damn lazy to install the IDE. :lol:

Say I want the output directory to not be Packages but toto. How can I do that?
Say I want the output directory to be in All Users/Shared Documents instead of mine, how do I do that?

IIRC, the first isn't possible. But then, I have no interest in that amount of control in this case; I control the folder where the project is, so as long as I have that, I don't care what the hell it calls the folder it stores the built project in.

The second one isn't possible, because that's because there is only one location it works properly from.

The only way it makes life easier for me is the md5 generation.
For the rest, see above. Plus sometimes you just want to modify a single file but the IDE will not work if you do that. This particular IDE also duplicates files and spams the hard disk a lot: A script will be -where you put it first, - in the Build output directory, - in each user that would use it directory (rather than the shared documents or program file directroy once). The last point is more an issue with the game or maybe Steam, though. Now if I want to change my script while using the worldbuilder, I have to change the script in the directory used by the game, not the one used by ModdBuddy. And since the used script is an output, there's no way I can easily change it to point to the output script as an input. And I don't want to have to Build the project to test since I don't need it. Overall, for map scripting, ModBuddy is only useful for packaging the mod and uploading it.

Wait, you're making maps? Then yes, it's only really useful for packaging. You don't need it to generate files, you don't need it's syntax and error checking, the only thing you use is the package tool.

And how will the IDE not work if you modify a file?

I don't care what other IDEs do. And no, files aren't stored in the project directory. The Packages directory is not a sub directory of your project for instance. The modinfo file is an output put into the Build directory;

....Yes, they are. You have Documents\Firaxis ModBuddy\YOUR MOD NAME. Within that last folder, you have three subdirectories: One with your mod name, for the project files, one named Build, where it stores backups of old versions, and one named Packages, where it has the built civ5mod file.

A pain for me. So yes it is a pain for some users. And it won't be patched unless someone tells about the issue in the first place.

This much is true, yes.

This is still a reason, and a valid one, and I doubt the file size matters that much. On the other hand, I think the best thing would be not to distribute the sln but to have ModBuddy be able to open the civ5mod instead of sln. Unfortunately, it only sees a binary if you try.

I think there are plenty of valid reasons for it to NOT be distributed, that far outweigh a consideration based on shaving 3 minutes of a build time.

  1. The vast majority do not need the file, and it just contributes bloat as far as they're concerned.
  2. I see no reason my project file should be distributed unless I choose for it to be so, in which case it will be in my thread.
  3. Any information that can be gleaned from it is already in the modinfo file, and formatting of the mod.
Really, I'd be quite unhappy if the file was distributed. It's unnecessary and part of my private build files; I don't want or need it distributed. Having it open the civ5mod file would be useful... If you download it, and don't install it, after which the file is gone. :lol:

Better to load the modinfo file.
 
Hey folks,
I have finally had a chance to read over the mod tutorial (with it open) after playing around with the scenario builder for a number of days.

So, my first question:
What I need is a bunch of new/different Civs. In Civ IV, I would have just copied/pasted the old Civilization XML file and edited the lines, as needed to get the desired output.

However, from Kael's tutorial, it really sounds like I need to:
1. Make the existing civs "not playable"
2. Introduce/create the new civs...

Is this correct?


Second question:
To make the civs not playable, I just need to create an "update" element, correct? Where I say the civilization is not playable, and then I say "Where... [civilization]"

To make the new civilizations, I need to create a "row" element, correct? [basically copying the exact example Kael gives in the tutorial]

Once the civilizations are made, I will need to update/create new text (which is what I really care about since I want people to know who they are playing as and who they are talking to before the game starts).


This seems a little... involved to learn, but not too tricky.
Did I miss anything, or is there anything in particular that I need to be careful about?
thanks,
-Zen Blade
 
for some reason I cant seem to download your file. Could someone zip it and upload as attachement? Thanks in advance.
 
Wait, you're making maps? Then yes, it's only really useful for packaging. You don't need it to generate files, you don't need it's syntax and error checking, the only thing you use is the package tool.
Not maps. Map scripts. Which are lua files, and therefore benefit from syntax checking, etc. I use gvim which has nice syntax highlighting and is enough for my needs. There can't be useful error checking until running the actual script.
When running the map script, I run WorldBuilder, which is the only tool with a decent output. If only it had a decent output console, it would be a great tool. But it's not integrated with ModBuddy and not friendly with it.

IIRC, the first isn't possible. But then, I have no interest in that amount of control in this case; I control the folder where the project is, so as long as I have that, I don't care what the hell it calls the folder it stores the built project in.
It's not possible but you don't care. I do. It does remove form my ability to do what I want. Worse, it doesn't say explicitly where it stores the output and you have to manually search to find it. It doesn't help, it hinders. You can love the IDEs all you want, they do restrict the ability of users to do what they want, in part because it prevents them from doing stuff that won't work. But in the process, IDEs also prevent people from doing perfectly legit stuff.
 
Not maps. Map scripts. Which are lua files, and therefore benefit from syntax checking, etc. I use gvim which has nice syntax highlighting and is enough for my needs. There can't be useful error checking until running the actual script.
When running the map script, I run WorldBuilder, which is the only tool with a decent output. If only it had a decent output console, it would be a great tool. But it's not integrated with ModBuddy and not friendly with it.

I can't comment on making a mapscript.

It's not possible but you don't care. I do. It does remove form my ability to do what I want. Worse, it doesn't say explicitly where it stores the output and you have to manually search to find it. It doesn't help, it hinders. You can love the IDEs all you want, they do restrict the ability of users to do what they want, in part because it prevents them from doing stuff that won't work. But in the process, IDEs also prevent people from doing perfectly legit stuff.

See, I don't see how that affects what you want to do at all. It's the name of a folder. Big woop. Now, location may be different, but you CAN control that one, for the project as a whole at least.

And I still do not acknowledge that you have to search to find anything that is built. That is absolutely basic stuff. Built files go in the project directory; It functions that way near universally. Shouldn't even have to think about checking there, should just know it's there.
 
for some reason I cant seem to download your file. Could someone zip it and upload as attachement? Thanks in advance.

Just quoting myself
 
Just quoting myself

Did you try right clicking and "Saveing As...." ? I couldn't open it normally in Chrome (very sad... I don't think my Adobe Reader likes my Chrome), but I could open it fine in IE. However, right clicking and saving the target worked fine in Chrome.
 
Well, after wasting an entire evening, I can't get mod "Buddy" to work. I know how to type, and I can follow the example of what to type and how, but nothing works... there is no reported error, anywhere, and the effect [either removing a Civ or adding a Civ] never appears. I can download a working mod (Celts) and I can see that one take affect, but nothing I make with modbuddy works. I can load celts in worldbuilder, and the Celts appear... I load my mods in worldbuilder and nothing happens...

I "build" solutions within modbuddy and always get:

------ Build started: Project: Civ5Mod1, Configuration: Default x86 ------
========== Build: 1 succeeded or up-to-date, 0 failed, 0 skipped ==========

I assume this is a good thing, but who knows.

There are lots of people asking similar questions within the creation/customization forum. The lot of us are under the impression that we are following instructions properly, but clearly something is not right.
If something within the program could at least tell me if something is wrong, that would be nice.
This is very frustrating, and very disappointing considering how "easy" modbuddy was supposed to be.

And it isn't as if I just go around asking questions... I find some solutions, and I help where I can:
http://forums.civfanatics.com/showthread.php?p=9728223#post9728223

not a happy camper,
-Zen Blade
 
So in your MODS directory do you have a directory with your mod name followed by a number in brackets ? If you do, post the contents of the modinfo file from there.

The MODS directory is normally under your Documents folder under My Games, then Sid Meiers Civilzation V.
 
So in your MODS directory do you have a directory with your mod name followed by a number in brackets ? If you do, post the contents of the modinfo file from there.

The MODS directory is normally under your Documents folder under My Games, then Sid Meiers Civilzation V.

I do have the item: testjapan (v1).modinfo It's a 2KB file.
I had to find a program to open it. Here's what it says:

Spoiler :
<?xml version="1.0" encoding="utf-8"?>
<Mod id="39807664-656c-4434-adc7-7d9153642e72" version="1">
<Properties>
<Name>testjapan</Name>
<Stability>Alpha</Stability>
<Description>testing testing</Description>
<Authors>Zen Blade</Authors>
<AffectsSavedGames>1</AffectsSavedGames>
<MinCompatibleSaveVersion>0</MinCompatibleSaveVersion>
<SupportsSinglePlayer>1</SupportsSinglePlayer>
<SupportsMultiplayer>1</SupportsMultiplayer>
<SupportsMac>1</SupportsMac>
<ReloadLandmarkSystem>1</ReloadLandmarkSystem>
<ReloadUnitSystem>1</ReloadUnitSystem>
</Properties>
<Dependencies />
<References />
<Blocks />
<Files>
<File md5="60CA49275358A2AFFBF5BAF6AC4E22C5">XML/Civilizations/CivVCivilizations.xml</File>
<File md5="E79B6A834520DA2C46540D0E541A522D">XML/Civilizations/Game1.xml</File>
<File md5="91687FCE7781215DFE911B8BE28B9153">XML/NewText/Game2.xml</File>
<File md5="D9AD9FC4EA04EBEFDA87BFBD50BCB496">XML/NewText/GameText.xml</File>
</Files>
<Actions>
<OnModActivated>
<UpdateDatabase>XML/Civilizations/Game1.xml</UpdateDatabase>
<UpdateDatabase>XML/NewText/Game2.xml</UpdateDatabase>
</OnModActivated>
</Actions>
</Mod>


Only the Game1 and Game2 files are uploaded. They are remade files from the two non-loaded files. "Game1" + "Game2" should be sufficient for bringing in the Civ + needed text for the civ.

thanks,
-Zen Blade
 
That all looks fine. Can you post the 2 XML files ? I've had no issues so far with modding stuff.

The other tool that is useful is either the SQLite plugin for Firefox, or there is a sqlitebrowser application available from here.

Run the game, activate your mod and start a new game (with any civ). Quit.

Open the sqlitebrowser and open the database from the cache folder under the Civ folder in My Games. You will probably want to try the Debug one first, then the ordinary one.

You can then check the tables that are being updated by your sql to ensure that they are correct.

Also check the database.txt file in the logs folder for any errors.
 
Did you try right clicking and "Saveing As...." ? I couldn't open it normally in Chrome (very sad... I don't think my Adobe Reader likes my Chrome), but I could open it fine in IE. However, right clicking and saving the target worked fine in Chrome.

No save as option in my firefox. Maybe I should try witg Explorer then? Thanks for the help anywat
 
@Zen_Blade
I'll quote myself :p

If you load your mod consisting only of XML Files, the game doesnt tell you if anything is wrong (spelling-errors, missing "_" etc). It just won't load if any errors are encountered.
So if you type "buidlings" instead of "buildings", the mod will appear to load fine (nothing in the error log-files), but it wont.

The only thing i can suggest is removing elements of your mod step by step until it works ingame, and/or check every single line of your code again and again.
 
That all looks fine. Can you post the 2 XML files ? I've had no issues so far with modding stuff.

The other tool that is useful is either the SQLite plugin for Firefox, or there is a sqlitebrowser application available from here.

Also check the database.txt file in the logs folder for any errors.


Spoiler :
<?xml version="1.0" encoding="utf-8"?>
<!-- Created by ModBuddy on 10/5/2010 11:09:51 PM -->
<GameData>
<Civilizations>
<Row>
<Type>CIVILIZATION_ODA</Type>
<Description>TXT_KEY_CIV_ODA_DESC</Description>
<ShortDescription>TXT_KEY_CIV_ODA_SHORT_DESC</ShortDescription>
<Adjective>TXT_KEY_CIV_ODA_ADJECTIVE</Adjective>
<Civilopedia>TXT_KEY_CIV_ODA_PEDIA</Civilopedia>
<CivilopediaTag>TXT_KEY_CIV5_ODA</CivilopediaTag>
<DefaultPlayerColor>PLAYERCOLOR_JAPAN</DefaultPlayerColor>
<ArtDefineTag>ART_DEF_CIVILIZATION_JAPAN</ArtDefineTag>
<ArtStyleType>ARTSTYLE_ASIAN</ArtStyleType>
<ArtStyleSuffix>_ASIA</ArtStyleSuffix>
<ArtStylePrefix>ASIAN</ArtStylePrefix>
<PortraitIndex>13</PortraitIndex>
<IconAtlas>CIV_COLOR_ATLAS</IconAtlas>
<AlphaIconAtlas>CIV_ALPHA_ATLAS</AlphaIconAtlas>
<MapImage>MapJapan512.dds</MapImage>
<DawnOfManQuote>TXT_KEY_CIV5_DAWN_JAPAN_TEXT</DawnOfManQuote>
<DawnOfManImage>DOM_Oda.dds</DawnOfManImage>
<DawnOfManAudio>AS2D_DOM_SPEECH_JAPAN</DawnOfManAudio>
</Row>
</Civilizations>
<Civilization_CityNames>
<Row>
<CivilizationType>CIVILIZATION_ODA</CivilizationType>
<CityName>TXT_KEY_CITY_NAME_OWARI</CityName>
</Row>
<Row>
<CivilizationType>CIVILIZATION_ODA</CivilizationType>
<CityName>TXT_KEY_CITY_NAME_KIYOSU</CityName>
</Row>
</Civilization_CityNames>
<Civlization_FreeBuildingClasses>
<Row>
<CivilizationType>CIVILIZATION_ODA</CivilizationType>
<BUILDINGCLASSTYPE>BUILDINGCLASS_PALACE</BUILDINGCLASSTYPE>
</Row>
</Civlization_FreeBuildingClasses>
<Civilization_FreeTechs>
<Row>
<CivilizationType>CIVILIZATION_ODA</CivilizationType>
<TechType>TECH_AGRICULTURE</TechType>
</Row>
</Civilization_FreeTechs>
<Civilization_FreeUnits>
<Row>
<CivilizationType>CIVILIZATION_ODA</CivilizationType>
<UnitClassType>UNITCLASS_SETTLER</UnitClassType>
<Count>1</Count>
<UnitAIType>UNITAI_SETTLE</UnitAIType>
</Row>
</Civilization_FreeUnits>
<Civilization_Leaders>
<Row>
<CivilizationType>CIVILIZATION_ODA</CivilizationType>
<LeaderheadType>LEADER_ODA_NOBUNAGA</LeaderheadType>
</Row>
</Civilization_Leaders>
<Civilization_Start_Region_Priority>
<Row>
<CivilizationType>CIVILIZATION_ODA</CivilizationType>
<RegionType>REGION_FOREST</RegionType>
</Row>
</Civilization_Start_Region_Priority>
</GameData>


Spoiler :
<?xml version="1.0" encoding="utf-8"?>
<!-- Created by ModBuddy on 10/5/2010 11:11:53 PM -->
<GameData>
<Language_en_US>
<Row Tag="TXT_KEY_CITY_NAME_OWARI">
<Text>Owari</Text>
</Row>
<Row Tag="TXT_KEY_CITY_NAME_KIYOSU">
<Text>Kiyosu</Text>
</Row>
<Row Tag="TXT_KEY_CIV_ODA_ADJECTIVE">
<Text>Oda</Text>
</Row>
<Row Tag="TXT_KEY_CIV_ODA_DESC">
<Text>Clan Oda</Text>
</Row>
<Row Tag="TXT_KEY_CIV_ODA_SHORT_DESC">
<Text>Clan Oda</Text>
</Row>
<Row Tag="TXT_KEY_CIV5_ODA_HEADING_1">
<Text>History of the Oda Clan</Text>
</Row>
<Row Tag="TXT_KEY_CIV5_ODA_TEXT_1">
<Text>The Oda were vassals of... They rose to their greatest power under Oda Nobunaga.</Text>
</Row>
</Language_en_US>
</GameData>



Those are the two files. I copied and pasted from ModBuddy.

Here is the database.txt file from logs
Spoiler :
[537091.318] Validating Foreign Key Constraints...
[537091.318] Invalid Reference on Civilizations.CivilopediaTag - "TXT_KEY_CIV5_UNITEDSTATES" does not exist in Language_en_US
[537091.318] Invalid Reference on Civilizations.CivilopediaTag - "TXT_KEY_CIV5_ARABIA" does not exist in Language_en_US
[537091.318] Invalid Reference on Civilizations.CivilopediaTag - "TXT_KEY_CIV5_AZTECS" does not exist in Language_en_US
[537091.318] Invalid Reference on Civilizations.CivilopediaTag - "TXT_KEY_CIV5_CHINA" does not exist in Language_en_US
[537091.318] Invalid Reference on Civilizations.CivilopediaTag - "TXT_KEY_CIV5_EGYPT" does not exist in Language_en_US
[537091.318] Invalid Reference on Civilizations.CivilopediaTag - "TXT_KEY_CIV5_ENGLAND" does not exist in Language_en_US
[537091.318] Invalid Reference on Civilizations.CivilopediaTag - "TXT_KEY_CIV5_FRANCE" does not exist in Language_en_US
[537091.318] Invalid Reference on Civilizations.CivilopediaTag - "TXT_KEY_CIV5_GERMANY" does not exist in Language_en_US
[537091.318] Invalid Reference on Civilizations.CivilopediaTag - "TXT_KEY_CIV5_GREECE" does not exist in Language_en_US
[537091.318] Invalid Reference on Civilizations.CivilopediaTag - "TXT_KEY_CIV5_INDIA" does not exist in Language_en_US
[537091.318] Invalid Reference on Civilizations.CivilopediaTag - "TXT_KEY_CIV5_IROQUOIS" does not exist in Language_en_US
[537091.318] Invalid Reference on Civilizations.CivilopediaTag - "TXT_KEY_CIV5_JAPAN" does not exist in Language_en_US
[537091.318] Invalid Reference on Civilizations.CivilopediaTag - "TXT_KEY_CIV5_OTTOMAN" does not exist in Language_en_US
[537091.318] Invalid Reference on Civilizations.CivilopediaTag - "TXT_KEY_CIV5_PERSIA" does not exist in Language_en_US
[537091.318] Invalid Reference on Civilizations.CivilopediaTag - "TXT_KEY_CIV5_ROME" does not exist in Language_en_US
[537091.318] Invalid Reference on Civilizations.CivilopediaTag - "TXT_KEY_CIV5_RUSSIA" does not exist in Language_en_US
[537091.318] Invalid Reference on Civilizations.CivilopediaTag - "TXT_KEY_CIV5_SIAM" does not exist in Language_en_US
[537091.318] Invalid Reference on Civilizations.CivilopediaTag - "TXT_KEY_CIV5_SONGHAI" does not exist in Language_en_US
[537091.318] Invalid Reference on Civilizations.Civilopedia - "TXT_KEY_CIV_AMERICA_PEDIA" does not exist in Language_en_US
[537091.318] Invalid Reference on Civilizations.Civilopedia - "TXT_KEY_CIV_ARABIA_PEDIA" does not exist in Language_en_US
[537091.318] Invalid Reference on Civilizations.Civilopedia - "TXT_KEY_CIV_AZTEC_PEDIA" does not exist in Language_en_US
[537091.318] Invalid Reference on Civilizations.Civilopedia - "TXT_KEY_CIV_CHINA_PEDIA" does not exist in Language_en_US
[537091.318] Invalid Reference on Civilizations.Civilopedia - "TXT_KEY_CIV_EGYPT_PEDIA" does not exist in Language_en_US
[537091.318] Invalid Reference on Civilizations.Civilopedia - "TXT_KEY_CIV_ENGLAND_PEDIA" does not exist in Language_en_US
[537091.318] Invalid Reference on Civilizations.Civilopedia - "TXT_KEY_CIV_FRANCE_PEDIA" does not exist in Language_en_US
[537091.318] Invalid Reference on Civilizations.Civilopedia - "TXT_KEY_CIV_GERMANY_PEDIA" does not exist in Language_en_US
[537091.318] Invalid Reference on Civilizations.Civilopedia - "TXT_KEY_CIV_GREECE_PEDIA" does not exist in Language_en_US
[537091.318] Invalid Reference on Civilizations.Civilopedia - "TXT_KEY_CIV_INDIA_PEDIA" does not exist in Language_en_US
[537091.318] Invalid Reference on Civilizations.Civilopedia - "TXT_KEY_CIV_IROQUOIS_PEDIA" does not exist in Language_en_US
[537091.318] Invalid Reference on Civilizations.Civilopedia - "TXT_KEY_CIV_JAPAN_PEDIA" does not exist in Language_en_US
[537091.318] Invalid Reference on Civilizations.Civilopedia - "TXT_KEY_CIV_OTTOMAN_PEDIA" does not exist in Language_en_US
[537091.318] Invalid Reference on Civilizations.Civilopedia - "TXT_KEY_CIV_PERSIA_PEDIA" does not exist in Language_en_US
[537091.318] Invalid Reference on Civilizations.Civilopedia - "TXT_KEY_CIV_ROME_PEDIA" does not exist in Language_en_US
[537091.318] Invalid Reference on Civilizations.Civilopedia - "TXT_KEY_CIV_RUSSIA_PEDIA" does not exist in Language_en_US
[537091.318] Invalid Reference on Civilizations.Civilopedia - "TXT_KEY_CIV_SIAM_PEDIA" does not exist in Language_en_US
[537091.318] Invalid Reference on Civilizations.Civilopedia - "TXT_KEY_CIV_SONGHAI_PEDIA" does not exist in Language_en_US
[537091.318] Invalid Reference on Civilizations.Civilopedia - "TXT_KEY_CIV_MINOR_PEDIA" does not exist in Language_en_US
[537091.318] Invalid Reference on Civilizations.Civilopedia - "TXT_KEY_CIV_BARBARIAN_PEDIA" does not exist in Language_en_US
[537091.333] Invalid Reference on Feature_YieldChanges.FeatureType - "FEATURE_RIVER" does not exist in Features
[537091.333] Invalid Reference on Feature_YieldChanges.FeatureType - "FEATURE_LAKE" does not exist in Features
[537091.333] Invalid Reference on Feature_YieldChanges.FeatureType - "FEATURE_LAKE" does not exist in Features
[537091.349] Failed Validation.
[537091.770]
-- SQLite Memory Statistics --
Memory Usage:
[Cur] [Max]
Malloc: 258312 2231464
PageCache: 2457 3432
LookAside: 26 1763
Scratch: 0 1

Static Buffer Overflows:
[TooLarge] [NoSpace]
PageCache: 0 0
Scratch: 0 0

Largest Allocations:
Malloc: 65280
PageCache: 1160
Scratch: 4984

Prepared Statements:
Current: 3
------------------------------


I installed SQlite and checked the files... I am not sure what I am looking for, and there are lots of different lines, but I have no idea if these are errors or reports or what.

progress?
thanks,
-Zen Blade
 
The only possible omission I can see is a lack of a definition for a leader for your civilization ?

I can see you have defined this

Code:
<Civilization_Leaders>
<Row>
<CivilizationType>CIVILIZATION_ODA</CivilizationType>
<LeaderheadType>LEADER_ODA_NOBUNAGA</LeaderheadType>
</Row>

But has LEADER_ODA_NOBUNAGA been defined somewhere as well ? See Page 36 of Kael's PDF for details on how to add a leader. Alternatively, for testing just change it to one of the existing leaders.
 
Top Bottom