Mods don't have any effects in-game

mart9203

Chieftain
Joined
Dec 27, 2019
Messages
4
I have a very weird and elusive problem, I have been looking around, but have come up empty handed.

The mods I create don’t seem to have an effect in-game. I even tried the built-in “Starter - New Government Policy”, but nothing happens.

I can enable them in the modmanager, but they don’t appear in-game.

Please tell me it’s something simple I have overlooked, I am very frustrated.
 
I can enable them in the modmanager, but they don’t appear in-game.
Do you mean the game's Additional Content --> Mods menu ?

Are you starting a new game when you attempt to activate a new mod ?

Have you looked in Database.log to see if you are getting error messages related to your mod(s) ?

Have you looked in Modding.log to see if you are getting error messages related to your mod(s) ?

Datrabase.log and Modding.log (as well as all other error report logs) are located at:
\Documents\My Games\Sid Meier's Civilization VI\Logs

Are you actually telling the game to do anything with the files you add to a mod ? Are you creating InGameActions or FrontEndActions in Modbuddy and specifying within these Actions what the game should do with the files within your mod?

Without one of the mods you've created that appears not to be working to look at it is impossible to give more advice on what to look into.

  1. Zip the entire folder for the mod as you find it in
    \Documents\My Games\Sid Meier's Civilization VI\Mods
  2. Attach the resulting zip archive to a forum post. There's a button to do this on the page where you create a post on a thread, or even when you create a thread
  3. If the total size of the zip is too large for the forum to accept, upload the zip to a file-sharing site such as google docs drive or dropbox. Mediafire can also be used but it is rife with spam and other kludge and in general I won't even follow a link to a mediafire page anymore.
 
Last edited:
Thanks for the patient and thorough reply.

I haven’t debugged a mod before, thanks for providing the location of the logs.

I found this:
Code:
[1286005.981] Applying Component - AustraliaArt (UpdateArt)
[1286005.984] ModArtLoader - Loading DLC3.dep
[1286005.985] Applying Component - AustraliaGameplay (UpdateDatabase)
[1286005.987] UpdateDatabase - Loading Data/Australia_Civilizations.xml
[1286006.007] UpdateDatabase - Loading Data/Australia_Features.xml
[1286006.024] UpdateDatabase - Loading Data/Australia_Improvements.xml
[1286006.034] UpdateDatabase - Loading Data/Australia_Leaders.xml
[1286006.057] UpdateDatabase - Loading Data/Australia_Units.xml
[1286006.068] Applying Component - Text (UpdateText)
[1286006.069] Creating database save point.
[1286006.069] Successfully released save point.
[1286006.069] Applying Component - Gameplay (UpdateDatabase)
[1286006.069] Applying Component - Icons (UpdateIcons)
[1286006.070] Applying Component - Expansion1_MajorArt (UpdateArt)
[1286006.073] ModArtLoader - Loading Expansion1.dep
[1286006.073] Applying Component - Expansion1_PlayerColors (UpdateColors)
[1286006.073] UpdateColors - Loading Data/Expansion1_PlayerColors.xml
[1286006.076] Applying Component - Expansion1_MajorContent (UpdateDatabase)

The mod are these:
[1286006.068] Applying Component - Text (UpdateText)
[1286006.069] Applying Component - Gameplay (UpdateDatabase)
[1286006.069] Applying Component - Icons (UpdateIcons)
How is it supposed to look?

I have attached the mod, but it is literally the plug-n-play example of a policy card that comes built-in to ModBuddy.
 

Attachments

  • NewPolicy1.zip
    2.7 KB · Views: 60
It's as I expected it might be
Code:
  <InGameActions>
    <UpdateDatabase id="Gameplay">
      <File>NewPolicy_Gameplay.xml</File>
    </UpdateDatabase>
    <UpdateIcons id="Icons">
      <File>NewPolicy_Icons.xml</File>
    </UpdateIcons>
    <UpdateText id="Text">
      <File>NewPolicy_Text.xml</File>
    </UpdateText>
  </InGameActions>
  <Files>
    <File>NewPolicy1_Gameplay.xml</File>
    <File>NewPolicy1_Icons.xml</File>
    <File>NewPolicy1_Text.xml</File>
  </Files>
Note that the Filenames in the actions do not match to the filenames in the <Files> section.

This is because there is a bug with all of the templates provided with ModBuddy by Firaxis. When you select to use a "pre-filled" template, your mod is given a different name than that of the original template, and all of the filenames are updated to reflect this, hence the filenames within your mod are
Code:
    <File>NewPolicy1_Gameplay.xml</File>
    <File>NewPolicy1_Icons.xml</File>
    <File>NewPolicy1_Text.xml</File>
But Modbuddy does not update the names of the files within the Actions that activate these files. The original names of the files as they were in the template are not updated to match to the names of the files in your mod
Code:
  <InGameActions>
    <UpdateDatabase id="Gameplay">
      <File>NewPolicy_Gameplay.xml</File>
    </UpdateDatabase>
    <UpdateIcons id="Icons">
      <File>NewPolicy_Icons.xml</File>
    </UpdateIcons>
    <UpdateText id="Text">
      <File>NewPolicy_Text.xml</File>
    </UpdateText>
  </InGameActions>
This does not cause an error "building" the mod in Modbuddy, but does cause the game to do nothing since there is no file within the mod called for example "NewPolicy_Gameplay.xml".

You have to go into the Mod's Properties --> InGameActions "tab"
You have to select the Actions one at a time and delete (ie, use the "remove" button) the filenames within these actions and then use the "Add" button to add the correct and updated filename to each of the actions.

If you are unsure of how to do this, download my Civ6 modding guide (top link in my signature) and see the section on creating a simple building mod using modbuddy. I demonstrate how to deal with Actions in Modbuddy.

----------------------------------------

The "empty" mods that you can use as templates do not have this sort of behavior because they are literally empty -- there are no files, no sub-folders, no pre-generated Actions.
 
Thanks for the help. It worked straight away. I also got the example unit to work, but I have once again got into trouble. I don’t know why but my code doesn’t work even though it’s almost identical to the examples.

I’m trying to add a spotter unit, which acts like an early observation balloon, but I can’t get it in-game, even as a stripped-down version, with only Types and Units like in the example unit.

I am once again very frustrated.

Can you or someone else look through and see why the * this doesn’t work.

P.S. In SQL does it stop midway through files if it hits a hurtle?
 

Attachments

  • Tweaks and Spotter.zip
    6.7 KB · Views: 69
I found what was wrong, it was riddled with tiny syntax errors. I went through the long and tedious process of slowly and methodically commenting in and out code throughout the files to fix it. So the gameplay files are now bug free.
Another question: Is it possible to do localization in SQL?
 
Yes, you can code your files writing to BaseGameText or LocalizedText using SQL instead of XML if you desire. You just cannot even with SQL attempt commands that would pull data from tables used in other ActionTypes, such as tables Players or Units, since either such table would bridge across to a separate database, which can never be done.
 
Top Bottom