New Game Will not create

CharZ

Chieftain
Joined
Mar 3, 2017
Messages
31
I have been developing a mod for the Dutch, led by Johan De Witt, and I believed I was finished. Thus I booted up Civ 6 and tried to make a new game; the first red flag was that all the names were 'code names' (LOC_LEADER_JOHAN_DE_WITT_NAME, etc.) and the second red flag was that the game would not progress beyond that.
It would be a black screen with just the words 'Start Game' in the middle for a second before then returning to the main menu. I have no idea which file has the problem in it, So instead I've attached a ZIP file containing them.
 

Attachments

Check the debug.log file. I'm away from my pc now but it is likely you are reusing a text I'd that is already in use by the game or another mod.
Where is the debug log file located? I found a 'net_message_debug.log' and a 'net_connection_debug.log'.
 
you actually want to check the Database.log file within folder C:\Users\YourNameHere\Documents\My Games\Sid Meier's Civilization VI\Logs.

the symptoms you are describing means you have referenced something that you have not defined or which is not in the base-game with the "tag" you are trying to use.

If I do this:
Code:
	<BuildingReplaces>
		<Row CivUniqueBuildingType="BUILDING_FILMATION_STUDIO" ReplacesBuildingType="BUILDING_BROADCAST_CENTER"/>
	</BuildingReplaces>
Without also defining "BUILDING_FILMATION_STUDIO" in my mod, this is a reference to something that does not exist within the game and I would get the behavior you are seeing.

Syntax errors and non-unique violations within a file cause the game to stop reading-in new data from that file from the point where the error occured. So if there is a bunch of stuff defined after such a syntax error or non-unique violation within a file, you can also get the behavior you are describing.
 
Copying your text into modboddy is a good way to pick up missed sytax as well. It will probably be a little /> somewhere.
 
Also I forgot to mention a common problem that also causes the OP-described behavior is a modinfo action ID with a space in the ID name.

This is allowed:
Code:
<AddGameplayScripts id="LUA_Gameplay">
This is not:
Code:
<AddGameplayScripts id="LUA Gameplay">
Even if using the new modbuddy to create your mod, stating the unallowed one will both not work in-game and will not cause an error message within modbuddy.
 
This is what is present in my Database.log

[2514132.792] [Localization]: Validating Foreign Key Constraints...
[2514132.792] [Localization]: Passed Validation.
[2514132.833] [Configuration]: Validating Foreign Key Constraints...
[2514132.834] [Configuration]: Passed Validation.
[2514144.683] [FullTextSearch]: Initializing FullTextSearch
[2514145.849] [Gameplay]: Validating Foreign Key Constraints...
[2514145.864] [Gameplay]: Passed Validation.
[2514146.498] [Configuration]: Validating Foreign Key Constraints...
[2514146.499] [Configuration]: Passed Validation.
[2514167.527] [FullTextSearch]: FTS - Creating Context
[2514171.880] [FullTextSearch]: FTS - Creating Context
[2514215.800] [Configuration]: Validating Foreign Key Constraints...
[2514215.801] [Configuration]: Passed Validation.
[2514216.206] [Gameplay] ERROR: table TraitModifiers has no column named ModifierType
[2514216.206] [Gameplay]: In Query - insert into TraitModifiers('ModifierId', 'ModifierType', 'SubjectRequirementSetId') values (?, ?, ?);
[2514216.206] [Gameplay]: In XMLSerializer while updating table TraitModifiers from file TheNetherlands_Civilizations.xml.
[2514216.207] [Gameplay] ERROR: no such table: IconDefinitions
[2514216.207] [Gameplay]: In Query - insert into IconDefinitions('Name', 'Atlas', 'Index') values (?, ?, ?);
[2514216.207] [Gameplay]: In XMLSerializer while updating table IconDefinitions from file TheNetherlands_Icons.xml.
[2514216.216] [Gameplay] ERROR: table Districts has no column named TradeRouteCapacity
[2514216.216] [Gameplay]: In Query - insert into Districts('DistrictType', 'Name', 'Description', 'PrereqTech', 'PlunderType', 'PlunderAmount', 'AdvisorType', 'Cost', 'CostProgressionModel', 'CostProgressionParam1', 'RequiresPlacement', 'RequiresPopulation', 'Aqueduct', 'NoAdjacentCity', 'InternalOnly', 'ZOC', 'TradeRouteCapacity', 'CaptureRemovesBuildings', 'CaptureRemovesCityDefenses', 'MilitaryDomain', 'TravelTime', 'CityStrengthModifier', 'TraitType') values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?);
[2514216.216] [Gameplay]: In XMLSerializer while updating table Districts from file TheNetherlands_Districts.xml.
[2514216.216] [Gameplay] ERROR: FOREIGN KEY constraint failed
[2514216.216] [Gameplay] ERROR: FOREIGN KEY constraint failed
[2514216.216] [Gameplay]: Validating Foreign Key Constraints...
[2514216.220] [Gameplay] ERROR: Invalid Reference on DistrictReplaces.CivUniqueDistrictType - "DISTRICT_VOC" does not exist in Districts
[2514216.227] [Gameplay] ERROR: Invalid Reference on Traits.TraitType - "TRAIT_CIVILIZATION_IMPROVEMENT_WINDMILL" does not exist in Types
[2514216.230] [Gameplay]: Failed Validation.
[2514216.256] [Gameplay]: Validating Foreign Key Constraints...
[2514216.269] [Gameplay]: Passed Validation.
[2514217.637] [FullTextSearch]: FTS - Creating Context
[2514217.732] [Configuration]: Validating Foreign Key Constraints...
[2514217.733] [Configuration]: Passed Validation.
[2514232.112] [Configuration]: Validating Foreign Key Constraints...
[2514232.112] [Configuration]: Passed Validation.
[2514233.008] [Gameplay] ERROR: table TraitModifiers has no column named ModifierType
[2514233.008] [Gameplay]: In Query - insert into TraitModifiers('ModifierId', 'ModifierType', 'SubjectRequirementSetId') values (?, ?, ?);
[2514233.008] [Gameplay]: In XMLSerializer while updating table TraitModifiers from file TheNetherlands_Civilizations.xml.
[2514233.008] [Gameplay] ERROR: no such table: IconDefinitions
[2514233.008] [Gameplay]: In Query - insert into IconDefinitions('Name', 'Atlas', 'Index') values (?, ?, ?);
[2514233.008] [Gameplay]: In XMLSerializer while updating table IconDefinitions from file TheNetherlands_Icons.xml.
[2514233.010] [Gameplay] ERROR: table Districts has no column named TradeRouteCapacity
[2514233.010] [Gameplay]: In Query - insert into Districts('DistrictType', 'Name', 'Description', 'PrereqTech', 'PlunderType', 'PlunderAmount', 'AdvisorType', 'Cost', 'CostProgressionModel', 'CostProgressionParam1', 'RequiresPlacement', 'RequiresPopulation', 'Aqueduct', 'NoAdjacentCity', 'InternalOnly', 'ZOC', 'TradeRouteCapacity', 'CaptureRemovesBuildings', 'CaptureRemovesCityDefenses', 'MilitaryDomain', 'TravelTime', 'CityStrengthModifier', 'TraitType') values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?);
[2514233.010] [Gameplay]: In XMLSerializer while updating table Districts from file TheNetherlands_Districts.xml.
[2514233.010] [Gameplay] ERROR: FOREIGN KEY constraint failed
[2514233.010] [Gameplay] ERROR: FOREIGN KEY constraint failed
[2514233.010] [Gameplay]: Validating Foreign Key Constraints...
[2514233.014] [Gameplay] ERROR: Invalid Reference on DistrictReplaces.CivUniqueDistrictType - "DISTRICT_VOC" does not exist in Districts
[2514233.021] [Gameplay] ERROR: Invalid Reference on Traits.TraitType - "TRAIT_CIVILIZATION_IMPROVEMENT_WINDMILL" does not exist in Types
[2514233.024] [Gameplay]: Failed Validation.
[2514233.046] [Gameplay]: Validating Foreign Key Constraints...
[2514233.059] [Gameplay]: Passed Validation.
[2514234.182] [FullTextSearch]: FTS - Creating Context
[2514234.278] [Configuration]: Validating Foreign Key Constraints...
[2514234.278] [Configuration]: Passed Validation.
[2514240.220] [FullTextSearch]: FullTextSearch - Shutting down

I have used Punt, Persia, and the Celtics as my base civs along with the new civ template.

What I want for this Civ is:
Leader: Johan de Witt
Unique District: VOC Have (Harbor replacement. Available at currency; Provides an extra trade route, Great Scientist points, Great Artist points, and better adjacency bonuses)
Unique Improvement: Windmill (+1 food per adjacent [improved] wheat/farm, +1 production for adjacent windmills, +1 food and +2 production to tile, +1 production (or food) if built on marsh
Civ Ability: Colonial Trade (Settlers embark at Shipbuilding/Foreign Trade/Currency, Naval coastal tiles are better)
Leader Ability: Golden Age (Domestic Trade routes provide +1 food to both cities, Other civ's trade route to Netherlands provide +2 gold and +1 Production to them, and +2 gold +1 culture to Netherlands)
Unique Agenda: Grand Pensionary of Holland (Likes Civs with high gold, dislikes civs weaker in gold, tries to accumulate as much gold as possibe)

This does mean that I have to make Traders embark at Currency instead of Celest Nav, and currently the code says all units can embark at currency, not just settlers/civilian units.
Also, no clue how to do the Golden Age ability.
 
From your Database.log:
  1. Timestamps of [2514216.206] say that you have tried to use a column called ModifierType in table TraitModifiers. There is no such column name available for that table. The only valid column-names in that table are
    Code:
    "TraitType" TEXT NOT NULL,
    "ModifierId" TEXT NOT NULL

    TEXT NOT NULL means the column needs text data such as "TRAIT_CRAZY" instead of integers like "4" or booleans like "true", and that you must provide information for this column in every row you add to the table.

    Code:
    [2514216.206] [Gameplay] ERROR: table TraitModifiers has no column named ModifierType
     [2514216.206] [Gameplay]: In Query - insert into TraitModifiers('ModifierId', 'ModifierType', 'SubjectRequirementSetId') values (?, ?, ?);
     [2514216.206] [Gameplay]: In XMLSerializer while updating table TraitModifiers from file TheNetherlands_Civilizations.xml.
    The grouped error lines with the same time-stamp are almost always reports for the same error, and generally the final line will tell you which xml file the error was encountered within.

    SQL files however only ever generate one error line and don't tell you which file caused the error. They just report the syntax or wrong-column error.

    Your database.log shows multiple coding errors of attempting to use wrong column-names.
  2. Icons are not updated to the database in this manner in the modinfo file:
    Code:
    		<UpdateDatabase id="NETHERLANDS_COMPONENT">
    			<Items>
    				<File>TheNetherlands_Civilizations.xml</File>
    				<File>TheNetherlands_Icons.xml</File>
    				<File>TheNetherlands_Improvements.xml</File>
    				<File>TheNetherlands_Gossip.xml</File>
    				<File>TheNetherlands_Leaders.xml</File>
    				<File>TheNetherlands_PlayerColours.xml</File>
    				<File>TheNetherlands_Districts.xml</File>
    			</Items>
    		</UpdateDatabase>
    Like text that has to be treated in a special manner, the xml defining icons needs to be treated in a special manner in the modinfo file, like this for a manually-created mod (ie, not using the new Modbuddy utility):
    Code:
    	<Components>
    		<ImportFiles id="BASE_GAMEPLAY_IMPORT">
    			<Items>
    				<File>AnnoBuildings01Atlas256.dds</File>
    				<File>AnnoBuildings01Atlas128.dds</File>
           				<File>AnnoBuildings01Atlas80.dds</File>
    				<File>AnnoBuildings01Atlas50.dds</File>
    				<File>AnnoBuildings01Atlas38.dds</File>
           				<File>AnnoBuildings01Atlas32.dds</File>
    			</Items>
    		</ImportFiles>
            	<Icons id="BASE_GAMEPLAY_ICONS">
                		<Items>
                    		<File>BaseGamePlayMod_BuildingIcons.xml</File>
                		</Items>
            	</Icons>
    	</Components>
    The <ImportFiles id="BASE_GAMEPLAY_IMPORT"> section is an example for adding art dds files for icons into the game.
  3. This error
    Code:
    [2514216.220] [Gameplay] ERROR: Invalid Reference on DistrictReplaces.CivUniqueDistrictType - "DISTRICT_VOC" does not exist in Districts
    is probably being caused by the error with the timestamp of [2514216.216]
  4. This error
    Code:
    [2514216.227] [Gameplay] ERROR: Invalid Reference on Traits.TraitType - "TRAIT_CIVILIZATION_IMPROVEMENT_WINDMILL" does not exist in Types
    is being caused either by one of the previous errors or because you forgot to assign it a Type under table <Types>, like this:
    Code:
    	<Types>
    		<Row Type="TRAIT_CIVILIZATION_BUILDING_ROMAN_FORUM" Kind="KIND_TRAIT" />
    		<Row Type="BUILDING_ROMAN_FORUM" Kind="KIND_BUILDING"/>
    	</Types>
    	<Traits>
    		<Row TraitType="TRAIT_CIVILIZATION_BUILDING_ROMAN_FORUM" Name="LOC_TRAIT_CIVILIZATION_BUILDING_ROMAN_FORUM_NAME"/>
    	</Traits>
    	<CivilizationTraits>
    		<Row CivilizationType="CIVILIZATION_ROME" TraitType="TRAIT_CIVILIZATION_BUILDING_ROMAN_FORUM"/>
    	</CivilizationTraits>
  5. If your text file is defining items that are referred to by files under <Components> then your text file needs to be loaded into the Localized Text under <Components>. You can have the same file loaded under both <Components> and <Settings>. Just change all <Row>--</Row> commands to <Replace> -- </Replace> in such a text file.
  6. Adding a new improvement is going to require you to dig into the new art assets tool, I would think, at the very least. I have no earthly idea yet how to make use of any of that stuff.
 
Last edited:
Alright, after a bit of work and help from a friend I've shrunk the amount of issues, but I still haven't solved them all.
This is now my current Database.log
[2598816.927] [Localization]: Validating Foreign Key Constraints...
[2598816.928] [Localization]: Passed Validation.
[2598816.936] [Configuration]: Validating Foreign Key Constraints...
[2598816.937] [Configuration]: Passed Validation.
[2598828.327] [FullTextSearch]: Initializing FullTextSearch
[2598828.870] [Gameplay]: Validating Foreign Key Constraints...
[2598828.882] [Gameplay]: Passed Validation.
[2598829.368] [Configuration]: Validating Foreign Key Constraints...
[2598829.369] [Configuration]: Passed Validation.
[2598847.678] [FullTextSearch]: FTS - Creating Context
[2598856.569] [Configuration]: Validating Foreign Key Constraints...
[2598856.569] [Configuration]: Passed Validation.
[2598856.991] [Gameplay] ERROR: table Districts has no column named TradeRouteCapacity
[2598856.991] [Gameplay]: In Query - insert into Districts('DistrictType', 'Name', 'Description', 'PrereqTech', 'PlunderType', 'PlunderAmount', 'AdvisorType', 'Cost', 'CostProgressionModel', 'CostProgressionParam1', 'RequiresPlacement', 'RequiresPopulation', 'Aqueduct', 'NoAdjacentCity', 'InternalOnly', 'ZOC', 'TradeRouteCapacity', 'CaptureRemovesBuildings', 'CaptureRemovesCityDefenses', 'MilitaryDomain', 'TravelTime', 'CityStrengthModifier', 'TraitType') values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?);
[2598856.991] [Gameplay]: In XMLSerializer while updating table Districts from file TheNetherlands_Districts.xml.
[2598856.991] [Gameplay] ERROR: FOREIGN KEY constraint failed
[2598856.991] [Gameplay] ERROR: FOREIGN KEY constraint failed
[2598856.991] [Gameplay]: Validating Foreign Key Constraints...
[2598856.994] [Gameplay] ERROR: Invalid Reference on CivilizationTraits.TraitType - "TRAIT_CIVILIZATION_IMPROVEMENT_NETHERLANDS" does not exist in Traits
[2598856.995] [Gameplay] ERROR: Invalid Reference on DistrictReplaces.CivUniqueDistrictType - "DISTRICT_VOC" does not exist in Districts
[2598856.999] [Gameplay] ERROR: Invalid Reference on ModifierArguments.ModifierId - "TRAIT_COLONIAL_TRADE" does not exist in Modifiers
[2598856.999] [Gameplay] ERROR: Invalid Reference on ModifierArguments.ModifierId - "TRAIT_COLONIAL_TRADE" does not exist in Modifiers
[2598857.001] [Gameplay] ERROR: Invalid Reference on Traits.TraitType - "TRAIT_CIVILIZATION_IMPROVEMENT_WINDMILL" does not exist in Types
[2598857.002] [Gameplay] ERROR: Invalid Reference on TraitModifiers.TraitType - "MODIFIER_PLAYER_UNITS_ADJUST_VALID_TERRAIN" does not exist in Traits
[2598857.004] [Gameplay]: Failed Validation.
[2598857.031] [Gameplay]: Validating Foreign Key Constraints...
[2598857.043] [Gameplay]: Passed Validation.
[2598858.481] [FullTextSearch]: FTS - Creating Context
[2598858.578] [Configuration]: Validating Foreign Key Constraints...
[2598858.579] [Configuration]: Passed Validation.
[2598864.344] [FullTextSearch]: FullTextSearch - Shutting down

So what I need help with now is:
  • Getting the game to go past the world set up screen
  • Getting the names to show up properly
  • Making sure The VOC Have District works
  • Making sure the Colonial Trade ability works
  • Making sure the Golden Age ability works
  • Making it so Trader embarking stays with the Harbor in the tech tree

Attatched is the updated code. Please help me, this is the first mod I've ever made and I really don't want it to be the last.
 

Attachments

The reason your district is being rejected (and one of the several reasons you cannot get past the return to the main menus) is that you are still attempting to use a column that is invalid.
Code:
[2598856.991] [Gameplay] ERROR: table Districts has no column named TradeRouteCapacity
This mistake causes the game to cease attempting to load code from the file where this mistake is made, and causes your references to DISTRICT_VOC in table <DistrictReplaces> to fail.

each of these messages
Code:
[2598856.994] [Gameplay] ERROR: Invalid Reference on CivilizationTraits.TraitType - "TRAIT_CIVILIZATION_IMPROVEMENT_NETHERLANDS" does not exist in Traits
 [2598856.995] [Gameplay] ERROR: Invalid Reference on DistrictReplaces.CivUniqueDistrictType - "DISTRICT_VOC" does not exist in Districts
 [2598856.999] [Gameplay] ERROR: Invalid Reference on ModifierArguments.ModifierId - "TRAIT_COLONIAL_TRADE" does not exist in Modifiers
 [2598856.999] [Gameplay] ERROR: Invalid Reference on ModifierArguments.ModifierId - "TRAIT_COLONIAL_TRADE" does not exist in Modifiers
 [2598857.001] [Gameplay] ERROR: Invalid Reference on Traits.TraitType - "TRAIT_CIVILIZATION_IMPROVEMENT_WINDMILL" does not exist in Types
 [2598857.002] [Gameplay] ERROR: Invalid Reference on TraitModifiers.TraitType - "MODIFIER_PLAYER_UNITS_ADJUST_VALID_TERRAIN" does not exist in Traits
means that the item mentioned is not successfully being added to the game, and you therefore get the error message shown as well as the return to the main menu when you attempt to start a new game
 
The reason your district is being rejected (and one of the several reasons you cannot get past the return to the main menus) is that you are still attempting to use a column that is invalid.
Code:
[2598856.991] [Gameplay] ERROR: table Districts has no column named TradeRouteCapacity
This mistake causes the game to cease attempting to load code from the file where this mistake is made, and causes your references to DISTRICT_VOC in table <DistrictReplaces> to fail.

each of these messages
Code:
[2598856.994] [Gameplay] ERROR: Invalid Reference on CivilizationTraits.TraitType - "TRAIT_CIVILIZATION_IMPROVEMENT_NETHERLANDS" does not exist in Traits
 [2598856.995] [Gameplay] ERROR: Invalid Reference on DistrictReplaces.CivUniqueDistrictType - "DISTRICT_VOC" does not exist in Districts
 [2598856.999] [Gameplay] ERROR: Invalid Reference on ModifierArguments.ModifierId - "TRAIT_COLONIAL_TRADE" does not exist in Modifiers
 [2598856.999] [Gameplay] ERROR: Invalid Reference on ModifierArguments.ModifierId - "TRAIT_COLONIAL_TRADE" does not exist in Modifiers
 [2598857.001] [Gameplay] ERROR: Invalid Reference on Traits.TraitType - "TRAIT_CIVILIZATION_IMPROVEMENT_WINDMILL" does not exist in Types
 [2598857.002] [Gameplay] ERROR: Invalid Reference on TraitModifiers.TraitType - "MODIFIER_PLAYER_UNITS_ADJUST_VALID_TERRAIN" does not exist in Traits
means that the item mentioned is not successfully being added to the game, and you therefore get the error message shown as well as the return to the main menu when you attempt to start a new game
Yeah I did expect that to be the case and I have tried to figure it out myself. The problem is I don't know what to actually put in place of what is already there.
What I am trying to do with the VOC is for it to have +2 trade routes instead of +1 (Along with certain Great People points), and I have no idea how to pull off that and both Colonial Trade & Golden Age.
 
  1. This is what you are trying to use when you define your unique district:
    Code:
    <Row DistrictType="DISTRICT_VOC" Name="LOC_DISTRICT_VOC_NAME" Description="LOC_DISTRICT_VOC_DESCRIPTION" PrereqTech="TECH_CURRENCY"
    	PlunderType="PLUNDER_GOLD" PlunderAmount="60" AdvisorType="ADVISOR_GENERIC" Cost="30" CostProgressionModel="COST_PROGRESSION_NUM_UNDER_AVG_PLUS_TECH"
    	CostProgressionParam1="25" RequiresPlacement="true" RequiresPopulation="false" Aqueduct="true" NoAdjacentCity="false" InternalOnly="false" ZOC="false"
    	TradeRouteCapacity="2" CaptureRemovesBuildings="false" CaptureRemovesCityDefenses="false" MilitaryDomain="NO_DOMAIN" TravelTime="3" CityStrengthModifier="5"
    	TraitType="TRAIT_CIVILIZATION_DISTRICT_VOC"/>
    The beginning of the fourth line is
    Code:
    TradeRouteCapacity="2"
    The definition of table Districts is:
    Code:
    CREATE TABLE "Districts" (
    		"DistrictType" TEXT NOT NULL,
    		"Name" TEXT NOT NULL,
    		"PrereqTech" TEXT,
    		"PrereqCivic" TEXT,
    		"Coast" BOOLEAN NOT NULL CHECK (Coast IN (0,1)) DEFAULT 0,
    		"Description" TEXT,
    		"Cost" INTEGER NOT NULL DEFAULT 0,
    		"RequiresPlacement" BOOLEAN NOT NULL CHECK (RequiresPlacement IN (0,1)),
    		"RequiresPopulation" BOOLEAN NOT NULL CHECK (RequiresPopulation IN (0,1)) DEFAULT 1,
    		"NoAdjacentCity" BOOLEAN NOT NULL CHECK (NoAdjacentCity IN (0,1)),
    		"CityCenter" BOOLEAN NOT NULL CHECK (CityCenter IN (0,1)) DEFAULT 0,
    		"Aqueduct" BOOLEAN NOT NULL CHECK (Aqueduct IN (0,1)),
    		"InternalOnly" BOOLEAN NOT NULL CHECK (InternalOnly IN (0,1)),
    		"ZOC" BOOLEAN CHECK (ZOC IN (0,1)) DEFAULT 0,
    		"FreeEmbark" BOOLEAN NOT NULL CHECK (FreeEmbark IN (0,1)) DEFAULT 0,
    		"HitPoints" INTEGER DEFAULT 0,
    		"CaptureRemovesBuildings" BOOLEAN NOT NULL CHECK (CaptureRemovesBuildings IN (0,1)),
    		"CaptureRemovesCityDefenses" BOOLEAN NOT NULL CHECK (CaptureRemovesCityDefenses IN (0,1)),
    		"PlunderType" TEXT NOT NULL,
    		"PlunderAmount" INTEGER NOT NULL DEFAULT 0,
    		"TradeEmbark" BOOLEAN NOT NULL CHECK (TradeEmbark IN (0,1)) DEFAULT 0,
    		"MilitaryDomain" TEXT NOT NULL,
    		"CostProgressionModel" TEXT NOT NULL DEFAULT "NO_COST_PROGRESSION",
    		"CostProgressionParam1" INTEGER NOT NULL DEFAULT 0,
    		"TraitType" TEXT,
    		"Appeal" INTEGER NOT NULL DEFAULT 0,
    		"Housing" INTEGER NOT NULL DEFAULT 0,
    		"Entertainment" INTEGER NOT NULL DEFAULT 0,
    		"OnePerCity" BOOLEAN NOT NULL CHECK (OnePerCity IN (0,1)) DEFAULT 1,
    		"AllowsHolyCity" BOOLEAN NOT NULL CHECK (AllowsHolyCity IN (0,1)) DEFAULT 0,
    		"Maintenance" INTEGER NOT NULL DEFAULT 0,
    		"AirSlots" INTEGER NOT NULL DEFAULT 0,
    		"CitizenSlots" INTEGER,
    		"TravelTime" INTEGER NOT NULL DEFAULT -1,
    		"CityStrengthModifier" INTEGER NOT NULL DEFAULT 0,
    		"AdjacentToLand" BOOLEAN NOT NULL CHECK (AdjacentToLand IN (0,1)) DEFAULT 0,
    		"CanAttack" BOOLEAN NOT NULL CHECK (CanAttack IN (0,1)) DEFAULT 0,
    		"AdvisorType" TEXT,
    		PRIMARY KEY(DistrictType),
    		FOREIGN KEY (PrereqTech) REFERENCES Technologies(TechnologyType) ON DELETE SET DEFAULT ON UPDATE SET DEFAULT,
    		FOREIGN KEY (PrereqCivic) REFERENCES Civics(CivicType) ON DELETE SET DEFAULT ON UPDATE SET DEFAULT,
    		FOREIGN KEY (TraitType) REFERENCES Traits(TraitType) ON DELETE SET DEFAULT ON UPDATE SET DEFAULT,
    		FOREIGN KEY (DistrictType) REFERENCES Types(Type) ON DELETE CASCADE ON UPDATE CASCADE);
    Nowhere within that definition does it say that TradeRouteCapacity is a valid column for use within the table.

    You should also not attempt to define a district that is not an Aqueduct replacement as being Boolean true for being anAqueduct as you are doing here:
    Code:
    Aqueduct="true"

    You should follow much more closely the definition of the Harbor district and not add things to your new district that the Harbor does not have unless you are experienced enough in Civ6 modding to know this will not cause strange or undesired effects.
    Code:
    <Row DistrictType="DISTRICT_HARBOR" Name="LOC_DISTRICT_HARBOR_NAME" Description="LOC_DISTRICT_HARBOR_DESCRIPTION" PrereqTech="TECH_CELESTIAL_NAVIGATION"
    	PlunderType="PLUNDER_GOLD" PlunderAmount="50" AdvisorType="ADVISOR_GENERIC" Cost="60" CostProgressionModel="COST_PROGRESSION_NUM_UNDER_AVG_PLUS_TECH"
    	CostProgressionParam1="25" RequiresPlacement="true" RequiresPopulation="true" Coast="true" Aqueduct="false" FreeEmbark="true" NoAdjacentCity="false"
    	AdjacentToLand="true" InternalOnly="false" ZOC="false" TradeEmbark="true" CaptureRemovesBuildings="false" CaptureRemovesCityDefenses="false"
    	MilitaryDomain="DOMAIN_SEA" TravelTime="2" CityStrengthModifier="2"/>
    Very few of us are the level where we really understand whether a deviation from the way Firaxis did something will or will not cause bizarre or underdesirable effects. I still do not feel I am at that point.
  2. These designations to TRAIT_COLONIAL_TRADE
    Code:
    <TraitModifiers>
    	<Row>
    		<ModifierId>TRAIT_COLONIAL_TRADE</ModifierId>
    		<TraitType>MODIFIER_PLAYER_UNITS_ADJUST_VALID_TERRAIN</TraitType>
    		<!--<SubjectRequirementSetId>PLAYER_HAS_SHIPBUILDING_TECH</SubjectRequirementSetId> -->
    	</Row>	
    </TraitModifiers>
    	
    <ModifierArguments>
    	<Row>
    		<ModifierId>TRAIT_COLONIAL_TRADE</ModifierId>
    		<Name>TerrainType</Name>
    		<Value>TERRAIN_OCEAN</Value>
    	</Row>
    	<Row>
    		<ModifierId>TRAIT_COLONIAL_TRADE</ModifierId>
    		<Name>Valid</Name>
    		<Value>true</Value>
    	</Row>
    </ModifierArguments>
    do not match to the Traits defined earlier within the file:
    Code:
    <Traits>
    	<Row TraitType="TRAIT_CIVILIZATION_COLONIAL_TRADE" Name="LOC_TRAIT_CIVILIZATION_COLONIAL_TRADE_NAME"
    		Description="LOC_TRAIT_CIVILIZATION_COLONIAL_TRADE_DESCRIPTION"/>
    	<Row TraitType="TRAIT_CIVILIZATION_IMPROVEMENT_WINDMILL" Name="LOC_IMPROVEMENT_WINDMILL_NAME"
    		Description="LOC_IMPROVEMENT_WINDMILL_DESCRIPTION"/>
    	<Row TraitType="TRAIT_CIVILIZATION_DISTRICT_VOC" Name="LOC_DISTRICT_VOC_NAME"
    		Description="LOC_DISTRICT_VOC_DESCRIPTION"/>
    </Traits>
  3. This
    Code:
    <Traits>
    	<Row TraitType="TRAIT_CIVILIZATION_IMPROVEMENT_WINDMILL" Name="LOC_IMPROVEMENT_WINDMILL_NAME" Description="LOC_IMPROVEMENT_WINDMILL_DESCRIPTION"/>
    </Traits>
    does not match to this
    Code:
    <Types>
    	<Row Type="TRAIT_CIVILIZATION_BUILDING_WINDMILL" Kind="KIND_TRAIT" />
    </Types>
  4. I am also confused as to how you are getting both a TheNetherlands_V1.modinfo file and a CharZTheNetherlands.civ6proj file within the same folder. In my experience so far with the Civ6 modbuddy tool this is not possible. Nor was it possible in my rather more extensive experience with the Civ5 Modbuddy tool. If you are redirecting your modbuddy output back to the same folder as where you are creating the mod in modbuddy, you should not do this: you should send the output from modbuddy (ie, the completed mod) to your game's MODS folder, where it belongs.
 
Well they did change some stuff in the last patch so the column may have been valid in districts before the most recent patch. This is currently how the Harbor appears to be giving the trade route. This is new since the last time I looked at it (before the winter patch I think was the last time):
Code:
<DistrictModifiers>
	<Row>
		<DistrictType>DISTRICT_COMMERCIAL_HUB</DistrictType>
		<ModifierId>COMMERCIAL_HUB_TRADE_ROUTE_CAPACITY</ModifierId>
	</Row>
	<Row>
		<DistrictType>DISTRICT_HARBOR</DistrictType>
		<ModifierId>HARBOR_TRADE_ROUTE_CAPACITY</ModifierId>
	</Row>
	<Row>
		<DistrictType>DISTRICT_ROYAL_NAVY_DOCKYARD</DistrictType>
		<ModifierId>HARBOR_TRADE_ROUTE_CAPACITY</ModifierId>
	</Row>
</DistrictModifiers>
The definition of HARBOR_TRADE_ROUTE_CAPACITY would appear to be:
Code:
<Modifiers>
    <Row>
      <ModifierId>HARBOR_TRADE_ROUTE_CAPACITY</ModifierId>
      <ModifierType>MODIFIER_PLAYER_ADJUST_TRADE_ROUTE_CAPACITY</ModifierType>
      <SubjectRequirementSetId>HARBOR_TRADE_ROUTE_CAPACITY_REQUIREMENTS</SubjectRequirementSetId>
    </Row>
</Modifiers>
<ModifierArguments>
    <Row>
      <ModifierId>HARBOR_TRADE_ROUTE_CAPACITY</ModifierId>
      <Name>Amount</Name>
      <Value>1</Value>
    </Row>
</ModifierArguments>
<RequirementSets>
    <Row>
      <RequirementSetId>HARBOR_TRADE_ROUTE_CAPACITY_REQUIREMENTS</RequirementSetId>
      <RequirementSetType>REQUIREMENTSET_TEST_ALL</RequirementSetType>
    </Row>
</RequirementSets>
<RequirementSetRequirements>
    <Row>
      <RequirementSetId>HARBOR_TRADE_ROUTE_CAPACITY_REQUIREMENTS</RequirementSetId>
      <RequirementId>REQUIRES_NO_COMMERCIAL_HUB</RequirementId>
    </Row>
</RequirementSetRequirements>
You would have to make your own new set and change the names slightly from HARBOR_TRADE_ROUTE_CAPACITY and HARBOR_TRADE_ROUTE_CAPACITY_REQUIREMENTS so that your new definition with
Code:
<ModifierArguments>
    <Row>
      <ModifierId>[You need something new and unique here]</ModifierId>
      <Name>Amount</Name>
      <Value>2</Value>
    </Row>
</ModifierArguments>
is unique to the one used by the actual Harbor and Royal DockYard. You need to do so for all the tables shown above.

You still have the issue that after the latest patch you can only get 1 extra trade route from either of the Harbor (Dockyard) and the Commercial Hub within one city. So you'll have to examine the code currently being used by Firaxis in file C:\Program Files (x86)\Steam\SteamApps\common\Sid Meier's Civilization VI\Base\Assets\Gameplay\Data/Districts.xml to decide whether to give the standard harbor trade route plus an extra one with a modifier specific to your new VOC district that adds +1 trade route regardless of whether there is a Commercial Hub in the city.
 
  1. This is what you are trying to use when you define your unique district:
    Code:
    <Row DistrictType="DISTRICT_VOC" Name="LOC_DISTRICT_VOC_NAME" Description="LOC_DISTRICT_VOC_DESCRIPTION" PrereqTech="TECH_CURRENCY"
        PlunderType="PLUNDER_GOLD" PlunderAmount="60" AdvisorType="ADVISOR_GENERIC" Cost="30" CostProgressionModel="COST_PROGRESSION_NUM_UNDER_AVG_PLUS_TECH"
        CostProgressionParam1="25" RequiresPlacement="true" RequiresPopulation="false" Aqueduct="true" NoAdjacentCity="false" InternalOnly="false" ZOC="false"
        TradeRouteCapacity="2" CaptureRemovesBuildings="false" CaptureRemovesCityDefenses="false" MilitaryDomain="NO_DOMAIN" TravelTime="3" CityStrengthModifier="5"
        TraitType="TRAIT_CIVILIZATION_DISTRICT_VOC"/>
    The beginning of the fourth line is
    Code:
    TradeRouteCapacity="2"
    The definition of table Districts is:
    Code:
    CREATE TABLE "Districts" (
            "DistrictType" TEXT NOT NULL,
            "Name" TEXT NOT NULL,
            "PrereqTech" TEXT,
            "PrereqCivic" TEXT,
            "Coast" BOOLEAN NOT NULL CHECK (Coast IN (0,1)) DEFAULT 0,
            "Description" TEXT,
            "Cost" INTEGER NOT NULL DEFAULT 0,
            "RequiresPlacement" BOOLEAN NOT NULL CHECK (RequiresPlacement IN (0,1)),
            "RequiresPopulation" BOOLEAN NOT NULL CHECK (RequiresPopulation IN (0,1)) DEFAULT 1,
            "NoAdjacentCity" BOOLEAN NOT NULL CHECK (NoAdjacentCity IN (0,1)),
            "CityCenter" BOOLEAN NOT NULL CHECK (CityCenter IN (0,1)) DEFAULT 0,
            "Aqueduct" BOOLEAN NOT NULL CHECK (Aqueduct IN (0,1)),
            "InternalOnly" BOOLEAN NOT NULL CHECK (InternalOnly IN (0,1)),
            "ZOC" BOOLEAN CHECK (ZOC IN (0,1)) DEFAULT 0,
            "FreeEmbark" BOOLEAN NOT NULL CHECK (FreeEmbark IN (0,1)) DEFAULT 0,
            "HitPoints" INTEGER DEFAULT 0,
            "CaptureRemovesBuildings" BOOLEAN NOT NULL CHECK (CaptureRemovesBuildings IN (0,1)),
            "CaptureRemovesCityDefenses" BOOLEAN NOT NULL CHECK (CaptureRemovesCityDefenses IN (0,1)),
            "PlunderType" TEXT NOT NULL,
            "PlunderAmount" INTEGER NOT NULL DEFAULT 0,
            "TradeEmbark" BOOLEAN NOT NULL CHECK (TradeEmbark IN (0,1)) DEFAULT 0,
            "MilitaryDomain" TEXT NOT NULL,
            "CostProgressionModel" TEXT NOT NULL DEFAULT "NO_COST_PROGRESSION",
            "CostProgressionParam1" INTEGER NOT NULL DEFAULT 0,
            "TraitType" TEXT,
            "Appeal" INTEGER NOT NULL DEFAULT 0,
            "Housing" INTEGER NOT NULL DEFAULT 0,
            "Entertainment" INTEGER NOT NULL DEFAULT 0,
            "OnePerCity" BOOLEAN NOT NULL CHECK (OnePerCity IN (0,1)) DEFAULT 1,
            "AllowsHolyCity" BOOLEAN NOT NULL CHECK (AllowsHolyCity IN (0,1)) DEFAULT 0,
            "Maintenance" INTEGER NOT NULL DEFAULT 0,
            "AirSlots" INTEGER NOT NULL DEFAULT 0,
            "CitizenSlots" INTEGER,
            "TravelTime" INTEGER NOT NULL DEFAULT -1,
            "CityStrengthModifier" INTEGER NOT NULL DEFAULT 0,
            "AdjacentToLand" BOOLEAN NOT NULL CHECK (AdjacentToLand IN (0,1)) DEFAULT 0,
            "CanAttack" BOOLEAN NOT NULL CHECK (CanAttack IN (0,1)) DEFAULT 0,
            "AdvisorType" TEXT,
            PRIMARY KEY(DistrictType),
            FOREIGN KEY (PrereqTech) REFERENCES Technologies(TechnologyType) ON DELETE SET DEFAULT ON UPDATE SET DEFAULT,
            FOREIGN KEY (PrereqCivic) REFERENCES Civics(CivicType) ON DELETE SET DEFAULT ON UPDATE SET DEFAULT,
            FOREIGN KEY (TraitType) REFERENCES Traits(TraitType) ON DELETE SET DEFAULT ON UPDATE SET DEFAULT,
            FOREIGN KEY (DistrictType) REFERENCES Types(Type) ON DELETE CASCADE ON UPDATE CASCADE);
    Nowhere within that definition does it say that TradeRouteCapacity is a valid column for use within the table.

    You should also not attempt to define a district that is not an Aqueduct replacement as being Boolean true for being anAqueduct as you are doing here:
    Code:
    Aqueduct="true"

    You should follow much more closely the definition of the Harbor district and not add things to your new district that the Harbor does not have unless you are experienced enough in Civ6 modding to know this will not cause strange or undesired effects.
    Code:
    <Row DistrictType="DISTRICT_HARBOR" Name="LOC_DISTRICT_HARBOR_NAME" Description="LOC_DISTRICT_HARBOR_DESCRIPTION" PrereqTech="TECH_CELESTIAL_NAVIGATION"
        PlunderType="PLUNDER_GOLD" PlunderAmount="50" AdvisorType="ADVISOR_GENERIC" Cost="60" CostProgressionModel="COST_PROGRESSION_NUM_UNDER_AVG_PLUS_TECH"
        CostProgressionParam1="25" RequiresPlacement="true" RequiresPopulation="true" Coast="true" Aqueduct="false" FreeEmbark="true" NoAdjacentCity="false"
        AdjacentToLand="true" InternalOnly="false" ZOC="false" TradeEmbark="true" CaptureRemovesBuildings="false" CaptureRemovesCityDefenses="false"
        MilitaryDomain="DOMAIN_SEA" TravelTime="2" CityStrengthModifier="2"/>
    Very few of us are the level where we really understand whether a deviation from the way Firaxis did something will or will not cause bizarre or underdesirable effects. I still do not feel I am at that point.
  2. These designations to TRAIT_COLONIAL_TRADE
    Code:
    <TraitModifiers>
        <Row>
            <ModifierId>TRAIT_COLONIAL_TRADE</ModifierId>
            <TraitType>MODIFIER_PLAYER_UNITS_ADJUST_VALID_TERRAIN</TraitType>
            <!--<SubjectRequirementSetId>PLAYER_HAS_SHIPBUILDING_TECH</SubjectRequirementSetId> -->
        </Row>    
    </TraitModifiers>
        
    <ModifierArguments>
        <Row>
            <ModifierId>TRAIT_COLONIAL_TRADE</ModifierId>
            <Name>TerrainType</Name>
            <Value>TERRAIN_OCEAN</Value>
        </Row>
        <Row>
            <ModifierId>TRAIT_COLONIAL_TRADE</ModifierId>
            <Name>Valid</Name>
            <Value>true</Value>
        </Row>
    </ModifierArguments>
    do not match to the Traits defined earlier within the file:
    Code:
    <Traits>
        <Row TraitType="TRAIT_CIVILIZATION_COLONIAL_TRADE" Name="LOC_TRAIT_CIVILIZATION_COLONIAL_TRADE_NAME"
            Description="LOC_TRAIT_CIVILIZATION_COLONIAL_TRADE_DESCRIPTION"/>
        <Row TraitType="TRAIT_CIVILIZATION_IMPROVEMENT_WINDMILL" Name="LOC_IMPROVEMENT_WINDMILL_NAME"
            Description="LOC_IMPROVEMENT_WINDMILL_DESCRIPTION"/>
        <Row TraitType="TRAIT_CIVILIZATION_DISTRICT_VOC" Name="LOC_DISTRICT_VOC_NAME"
            Description="LOC_DISTRICT_VOC_DESCRIPTION"/>
    </Traits>
  3. This
    Code:
    <Traits>
        <Row TraitType="TRAIT_CIVILIZATION_IMPROVEMENT_WINDMILL" Name="LOC_IMPROVEMENT_WINDMILL_NAME" Description="LOC_IMPROVEMENT_WINDMILL_DESCRIPTION"/>
    </Traits>
    does not match to this
    Code:
    <Types>
        <Row Type="TRAIT_CIVILIZATION_BUILDING_WINDMILL" Kind="KIND_TRAIT" />
    </Types>
  4. I am also confused as to how you are getting both a TheNetherlands_V1.modinfo file and a CharZTheNetherlands.civ6proj file within the same folder. In my experience so far with the Civ6 modbuddy tool this is not possible. Nor was it possible in my rather more extensive experience with the Civ5 Modbuddy tool. If you are redirecting your modbuddy output back to the same folder as where you are creating the mod in modbuddy, you should not do this: you should send the output from modbuddy (ie, the completed mod) to your game's MODS folder, where it belongs.
For No. 1 It should be fixed, 2&3 fixed, No.4 is because I didn't realise it was automatically generated.
Now I'm getting this in my Database.log

[2608911.343] [Localization]: Validating Foreign Key Constraints...
[2608911.343] [Localization]: Passed Validation.
[2608911.351] [Configuration]: Validating Foreign Key Constraints...
[2608911.352] [Configuration]: Passed Validation.
[2608922.660] [FullTextSearch]: Initializing FullTextSearch
[2608923.190] [Gameplay]: Validating Foreign Key Constraints...
[2608923.203] [Gameplay]: Passed Validation.
[2608923.660] [Configuration]: Validating Foreign Key Constraints...
[2608923.660] [Configuration]: Passed Validation.
[2608941.888] [FullTextSearch]: FTS - Creating Context
[2608948.658] [Configuration]: Validating Foreign Key Constraints...
[2608948.658] [Configuration]: Passed Validation.
[2608949.031] [Gameplay] ERROR: UNIQUE constraint failed: ModifierArguments.ModifierId, ModifierArguments.Name
[2608949.031] [Gameplay]: While executing - 'insert into ModifierArguments('ModifierId', 'Name', 'Value') values (?, ?, ?);'
[2608949.031] [Gameplay]: In XMLSerializer while inserting row into table insert into ModifierArguments('ModifierId', 'Name', 'Value') with values (TRAIT_CIVILIZATION_COLONIAL_TRADE, TerrainType, TERRAIN_OCEAN, ).
[2608949.031] [Gameplay]: In XMLSerializer while updating table ModifierArguments from file TheNetherlands_Civilizations.xml.
[2608949.031] [Gameplay] ERROR: UNIQUE constraint failed: ModifierArguments.ModifierId, ModifierArguments.Name
[2608949.041] [Gameplay] ERROR: FOREIGN KEY constraint failed
[2608949.041] [Gameplay] ERROR: FOREIGN KEY constraint failed
[2608949.041] [Gameplay]: Validating Foreign Key Constraints...
[2608949.044] [Gameplay] ERROR: Invalid Reference on District_Adjacencies.YieldChangeId - "Commercial_Hub_Gold" does not exist in Adjacency_YieldChanges
[2608949.044] [Gameplay] ERROR: Invalid Reference on District_Adjacencies.YieldChangeId - "District_Gold_City_Centre" does not exist in Adjacency_YieldChanges
[2608949.054] [Gameplay]: Failed Validation.
[2608949.080] [Gameplay]: Validating Foreign Key Constraints...
[2608949.093] [Gameplay]: Passed Validation.
[2608950.386] [FullTextSearch]: FTS - Creating Context
[2608950.481] [Configuration]: Validating Foreign Key Constraints...
[2608950.481] [Configuration]: Passed Validation.
[2608956.689] [FullTextSearch]: FullTextSearch - Shutting down

And there is still the issue of the name incorrectly appearing on the Leader Select screen. I will provide a screenshot tomorrow of that.
Attached is the updated code.
 

Attachments

Alright I finally got the game to load a world! This did bring up some issues though...
  • VOC District has no icon in the tech tree
  • The 'Golden Age' Leader ability isn't working (With the current code I don't expect it to work, need help w/ that)
  • The Windmill Improvement cannot be built
  • My 2nd City was called 'Mecca' instead of one of the dutch city names
  • Naming issues in multiple occasions (As shown in these screen shots)

 
Seems like I forgot to include the database.log as well...

[2663204.832] [Localization]: Validating Foreign Key Constraints...
[2663204.833] [Localization]: Passed Validation.
[2663204.841] [Configuration]: Validating Foreign Key Constraints...
[2663204.842] [Configuration]: Passed Validation.
[2663216.237] [FullTextSearch]: Initializing FullTextSearch
[2663216.759] [Gameplay]: Validating Foreign Key Constraints...
[2663216.772] [Gameplay]: Passed Validation.
[2663217.223] [Configuration]: Validating Foreign Key Constraints...
[2663217.223] [Configuration]: Passed Validation.
[2663235.949] [FullTextSearch]: FTS - Creating Context
[2663241.702] [Configuration]: Validating Foreign Key Constraints...
[2663241.702] [Configuration]: Passed Validation.
[2663242.098] [Gameplay] ERROR: UNIQUE constraint failed: ModifierArguments.ModifierId, ModifierArguments.Name
[2663242.098] [Gameplay]: While executing - 'insert into ModifierArguments('ModifierId', 'Name', 'Value') values (?, ?, ?);'
[2663242.098] [Gameplay]: In XMLSerializer while inserting row into table insert into ModifierArguments('ModifierId', 'Name', 'Value') with values (TRAIT_CIVILIZATION_COLONIAL_TRADE, TerrainType, TERRAIN_OCEAN, ).
[2663242.098] [Gameplay]: In XMLSerializer while updating table ModifierArguments from file TheNetherlands_Civilizations.xml.
[2663242.098] [Gameplay] ERROR: UNIQUE constraint failed: ModifierArguments.ModifierId, ModifierArguments.Name
[2663242.134] [Gameplay]: Validating Foreign Key Constraints...
[2663242.147] [Gameplay]: Passed Validation.
[2663253.004] [FullTextSearch]: FTS - Creating Context
[2663253.253] [FullTextSearch]: FTS - Creating Context
[2663253.992] [FullTextSearch]: FTS - Creating Context
[2664182.608] [FullTextSearch]: FullTextSearch - Shutting down
 
Back
Top Bottom