1. We have added a Gift Upgrades feature that allows you to gift an account upgrade to another member, just in time for the holiday season. You can see the gift option when going to the Account Upgrades screen, or on any user profile screen.
    Dismiss Notice

[GS] Custom Civ Crash On DoM

Discussion in 'Mod Creation Help' started by OnlyHeStandsHere, Feb 14, 2020.

  1. OnlyHeStandsHere

    OnlyHeStandsHere Chieftain

    Joined:
    May 4, 2018
    Messages:
    23
    I recently started dabbling in modding a custom civilization for Civ 6, and I've run into a wall. To try and isolate the issue, I restarted with the Jasper-Kitty template that comes with ModBuddy. The issue is the same with the other, more complicated, project I've putting together. I can select the custom civ from the menu, but when I get to the DoM/Loading Screen none of the proper info (civ name, unique ability, etc) display right. And the game then hard-crashes shortly after sean bean starts speaking.
    jasperkitty01.jpg jasperkitty02.jpg

    The only thing that I've changed in the ModBuddy file is to edit the NewLeader_config.xml to make the civ playable in Gathering Storm:
    Code:
    <Domain>Players:Expansion2_Players</Domain>
    The Database.Log file hasn't been telling me anything I can decipher either. I get these every time I start the game, mod or no:
    Code:
    [1141805.135] [Localization]: StartupErrorMessages.xml
    [1141805.135] [Localization]: Input XML does not contain database entry tags. GameData, GameInfo or Database
    [1141809.559] [Localization]: Validating Foreign Key Constraints...
    [1141809.559] [Localization]: Passed Validation.
    [1141809.635] [Configuration]: Validating Foreign Key Constraints...
    [1141809.636] [Configuration]: Passed Validation.
    [1141819.059] [FullTextSearch]: Initializing FullTextSearch
    [1141819.823] [Gameplay]: Validating Foreign Key Constraints...
    [1141819.837] [Gameplay]: Passed Validation.
    [1141822.679] [Configuration]: Validating Foreign Key Constraints...
    [1141822.680] [Configuration]: Passed Validation.
    [1141824.275] [HallofFame]: Database found. Checking versions...
    [1141824.281] [HallofFame]: Database is up-to-date!
    [1141840.446] [FullTextSearch]: FTS - Creating Context
    [1141878.620] [Configuration]: Validating Foreign Key Constraints...
    [1141878.621] [Configuration]: Passed Validation.
    [1141888.937] [Gameplay]: Validating Foreign Key Constraints...
    [1141888.969] [Gameplay]: Passed Validation.
    
    My best guess is that my mod is either lacking something the game expects (most likely to do with art and/or audio files), or there's something invalid that stops the game from continuing on as normal with loading the proper assets and information. But honestly, I have no idea and the logs aren't pointing me in the right direction.

    Is this something known about the template civ? And has anyone seen a similar issue and knows the root cause? I'd appreciate even some advice on tracking down the crash log (which I can't seem to get or find).

    EDIT: I forgot to mention that the template DOES work on standard rulesets. However my other, messier project gets this problem regardless of ruleset.
     
    Last edited: Feb 14, 2020
  2. LeeS

    LeeS Imperator

    Joined:
    Jul 23, 2013
    Messages:
    6,519
    Location:
    Illinois, USA
    Without the mod to look at there is nothing for anyone to do except take wild guesses.

    It may be necessary to look at the entire Modbuddy project at some point, but it's better to just start with the mod as it is packaged-up by Modbuddy and sent to the game's Mods folder.
    1. Find your mod folder within
      Code:
      ~\Documents\My Games\Sid Meier's Civilization VI\Mods
    2. Zip the entire folder of the mod
    3. Attach to a forum message using the "Upload a File" button
    If the end zipped product is too large for the forum to accept, upload the mod to a file sharing site such as google or dropbox and provide a link so it can be downloaded.
     
  3. OnlyHeStandsHere

    OnlyHeStandsHere Chieftain

    Joined:
    May 4, 2018
    Messages:
    23
    That certainly makes sense. Here's the zipped mod file.

    I did some more digging through the various logs and I DID find something in the UserInterface.log file:
    Code:
    [DataError] IconManager is unable to find the icon "ICON_CIVILIZATION_FELINE"
    So it seems like it's not able to load the icons/art properly. Which I guess goes to show that simply telling the mod to work in Gathering Storm isn't the same as making it actually work in that new ruleset. Though I don't have the experience or a complete-enough example of a GS mod to know what's missing. Thanks so much for the help, by the way. You seem to be everywhere at once here!
     

    Attached Files:

  4. LeeS

    LeeS Imperator

    Joined:
    Jul 23, 2013
    Messages:
    6,519
    Location:
    Illinois, USA
    I did ask for the zip of the mod as it is in the mods folder. I'm having a problem attempting to use the modbuddy project you supplied when creating a usable mod out of it -- I am not sure if the issue is on my end but I think it is.
     
  5. OnlyHeStandsHere

    OnlyHeStandsHere Chieftain

    Joined:
    May 4, 2018
    Messages:
    23
    Ah, yes, I am a fool. A fool who doesn't read properly. This should be the packaged mod file you asked for.

    In other news, I got my more complicated project to run on the Standard Ruleset, so that's good. This is me half-asking and half-pondering-aloud, but: Does Gathering Storm not make use of the vanilla ICON_ATLAS_CIVILIZATIONS? I'm trying to think why it wouldn't be able to find the icon as defined by the modbuddy project. Though, I suppose it could just as reasonably had something else go wrong that prevented it from getting to that step. I might still experiment with replacing the icon definitions with ones from the dlc civs and see if anything at all changes from that.

    EDIT: Heeey! I actually was able to get an error log from it:
    Code:
    [Database] ERROR: FOREIGN KEY constraint failed
    [1206266.740] [Database]: While executing - 'insert into IconDefinitions('Name', 'Atlas', 'Index') values (?, ?, ?);'
    [1206266.740] [Database]: In XMLSerializer while inserting row into table insert into IconDefinitions('Name', 'Atlas', 'Index') with  values (ICON_CIVILIZATION_FELINE, ICON__CIVILIZATIONS, 0, ).
     

    Attached Files:

    Last edited: Feb 15, 2020
  6. LeeS

    LeeS Imperator

    Joined:
    Jul 23, 2013
    Messages:
    6,519
    Location:
    Illinois, USA
    In Modbuddy, go through all your Actions (FrontEnd and InGame) and get rid of the "Criteria" settings.

    You don't need them and in this case (or ever really for a new leader or civilization) and they are borking you.

    The Criteria that Modbuddy generates into the modinfo file is
    Code:
        <Criteria id="LeaderCriteria">
          <LeaderPlayable>StandardPlayers::LEADER_JASPER_KITTY</LeaderPlayable>
        </Criteria>
    But in order to get a leader or civ to appear in GS you need a designation (as you have) of
    Code:
    <GameData>
    	<Players>
    		<Row>
    			<Domain>Players:Expansion2_Players</Domain>
    So the mod works in Vanilla and crashes in GS.

    This is because none of your actions are loading in GS because they all have these Criteria settings:
    Code:
      <InGameActions>
        <UpdateDatabase id="Gameplay">
          <Criteria>LeaderCriteria</Criteria>
    And since LEADER_JASPER_KITTY is not existing as a leader in the "StandardPlayers" on the FrontEnd none of the Ingame code ever loads, which means on the Ingame side (after you press "start game") the game cannot find the leader/civ you selected in the setup menu, and thus you get to look at your desktop when you try to run the mod.

    Saun at Firaxis put that LeaderCriteria stuff in the template when he made it but I for one wish he had never done so -- all it has ever done is cause people problems.

    The name of the "standard" civilization-icons atlas is "ICON_ATLAS_CIVILIZATIONS" but according to the error message you are getting in database.log somewhere or other you are attempting to use ICON__CIVILIZATIONS. Are you sure you do not have another failed version of the mod also running when you attempt to run your mod ? Because I do not see anywhere in the mod you zipped where you are referencing anything called ICON__CIVILIZATIONS.

    Further, I would advise just adding extra rows in the FrontEnd ("Config") file to establish that the civilization/leader is valid for all three expansions, and many of your problems will also go away
    Code:
    <GameData>
    	<Players>
    		<Row>
    			<Domain>Players:StandardPlayers</Domain>
    			<CivilizationType>CIVILIZATION_FELINE</CivilizationType>
    			<LeaderType>LEADER_JASPER_KITTY</LeaderType>
    			<CivilizationName>LOC_CIVILIZATION_FELINE_NAME</CivilizationName>
    			<CivilizationIcon>ICON_CIVILIZATION_FELINE</CivilizationIcon>
    			<LeaderName>LOC_LEADER_JASPER_KITTY_NAME</LeaderName>
    			<LeaderIcon>ICON_LEADER_JASPER_KITTY</LeaderIcon>
    			<CivilizationAbilityName>LOC_TRAIT_CIVILIZATION_FELINE_NAME</CivilizationAbilityName>
    			<CivilizationAbilityDescription>LOC_TRAIT_CIVILIZATION_FELINE_DESCRIPTION</CivilizationAbilityDescription>
    			<CivilizationAbilityIcon>ICON_CIVILIZATION_FELINE</CivilizationAbilityIcon>
    			<LeaderAbilityName>LOC_TRAIT_LEADER_JASPER_KITTY_NAME</LeaderAbilityName>
    			<LeaderAbilityDescription>LOC_TRAIT_LEADER_JASPER_KITTY_DESCRIPTION</LeaderAbilityDescription>
    			<LeaderAbilityIcon>ICON_LEADER_JASPER_KITTY</LeaderAbilityIcon>
    			<Portrait>LEADER_JASPER_KITTY_NEUTRAL</Portrait>
    		</Row>
    		<Row>
    			<Domain>Players:Expansion1_Players</Domain>
    			<CivilizationType>CIVILIZATION_FELINE</CivilizationType>
    			<LeaderType>LEADER_JASPER_KITTY</LeaderType>
    			<CivilizationName>LOC_CIVILIZATION_FELINE_NAME</CivilizationName>
    			<CivilizationIcon>ICON_CIVILIZATION_FELINE</CivilizationIcon>
    			<LeaderName>LOC_LEADER_JASPER_KITTY_NAME</LeaderName>
    			<LeaderIcon>ICON_LEADER_JASPER_KITTY</LeaderIcon>
    			<CivilizationAbilityName>LOC_TRAIT_CIVILIZATION_FELINE_NAME</CivilizationAbilityName>
    			<CivilizationAbilityDescription>LOC_TRAIT_CIVILIZATION_FELINE_DESCRIPTION</CivilizationAbilityDescription>
    			<CivilizationAbilityIcon>ICON_CIVILIZATION_FELINE</CivilizationAbilityIcon>
    			<LeaderAbilityName>LOC_TRAIT_LEADER_JASPER_KITTY_NAME</LeaderAbilityName>
    			<LeaderAbilityDescription>LOC_TRAIT_LEADER_JASPER_KITTY_DESCRIPTION</LeaderAbilityDescription>
    			<LeaderAbilityIcon>ICON_LEADER_JASPER_KITTY</LeaderAbilityIcon>
    			<Portrait>LEADER_JASPER_KITTY_NEUTRAL</Portrait>
    		</Row>
    		<Row>
    			<Domain>Players:Expansion2_Players</Domain>
    			<CivilizationType>CIVILIZATION_FELINE</CivilizationType>
    			<LeaderType>LEADER_JASPER_KITTY</LeaderType>
    			<CivilizationName>LOC_CIVILIZATION_FELINE_NAME</CivilizationName>
    			<CivilizationIcon>ICON_CIVILIZATION_FELINE</CivilizationIcon>
    			<LeaderName>LOC_LEADER_JASPER_KITTY_NAME</LeaderName>
    			<LeaderIcon>ICON_LEADER_JASPER_KITTY</LeaderIcon>
    			<CivilizationAbilityName>LOC_TRAIT_CIVILIZATION_FELINE_NAME</CivilizationAbilityName>
    			<CivilizationAbilityDescription>LOC_TRAIT_CIVILIZATION_FELINE_DESCRIPTION</CivilizationAbilityDescription>
    			<CivilizationAbilityIcon>ICON_CIVILIZATION_FELINE</CivilizationAbilityIcon>
    			<LeaderAbilityName>LOC_TRAIT_LEADER_JASPER_KITTY_NAME</LeaderAbilityName>
    			<LeaderAbilityDescription>LOC_TRAIT_LEADER_JASPER_KITTY_DESCRIPTION</LeaderAbilityDescription>
    			<LeaderAbilityIcon>ICON_LEADER_JASPER_KITTY</LeaderAbilityIcon>
    			<Portrait>LEADER_JASPER_KITTY_NEUTRAL</Portrait>
    		</Row>
    	</Players>
    	<PlayerItems>
    		<Row>
    			<Domain>Players:StandardPlayers</Domain>
    			<CivilizationType>CIVILIZATION_FELINE</CivilizationType>
    			<LeaderType>LEADER_JASPER_KITTY</LeaderType>
    			<Type>BUILDING_LITTER_BOX</Type>
    			<Name>LOC_BUILDING_LITTER_BOX_NAME</Name>
    			<Description>LOC_BUILDING_LITTER_BOX_DESCRIPTION</Description>
    			<Icon>ICON_BUILDING_LITTER_BOX</Icon>
    			<SortIndex>10</SortIndex>
    		</Row>
    		<Row>
    			<Domain>Players:Expansion1_Players</Domain>
    			<CivilizationType>CIVILIZATION_FELINE</CivilizationType>
    			<LeaderType>LEADER_JASPER_KITTY</LeaderType>
    			<Type>BUILDING_LITTER_BOX</Type>
    			<Name>LOC_BUILDING_LITTER_BOX_NAME</Name>
    			<Description>LOC_BUILDING_LITTER_BOX_DESCRIPTION</Description>
    			<Icon>ICON_BUILDING_LITTER_BOX</Icon>
    			<SortIndex>10</SortIndex>
    		</Row>
    		<Row>
    			<Domain>Players:Expansion2_Players</Domain>
    			<CivilizationType>CIVILIZATION_FELINE</CivilizationType>
    			<LeaderType>LEADER_JASPER_KITTY</LeaderType>
    			<Type>BUILDING_LITTER_BOX</Type>
    			<Name>LOC_BUILDING_LITTER_BOX_NAME</Name>
    			<Description>LOC_BUILDING_LITTER_BOX_DESCRIPTION</Description>
    			<Icon>ICON_BUILDING_LITTER_BOX</Icon>
    			<SortIndex>10</SortIndex>
    		</Row>
    	</PlayerItems>
    </GameData>
     
  7. OnlyHeStandsHere

    OnlyHeStandsHere Chieftain

    Joined:
    May 4, 2018
    Messages:
    23
    Thanks so much! It runs perfectly now. I had no idea that criteria stuff was even a thing since it's minimized by default. And I was able to track down that ICON__CIVILIZATIONS typo in one of my files. Not sure why it wasn't in the zipped files, but it's fixed now either way.

    And yeah, I'll likely make it compatible with all three versions once I get it more fleshed out. I was just afraid I might add more errors on top of the one I was trying to sort out.
     

Share This Page