Quick Modding Questions Thread

I used the mod buddy from the Civ VI tools and edited the "new unit" example as a base, just keeping the unit_text file and adding in the rows relating to the GDR. I figured that was better than just editing the game files especially if I started wanting to add more units or change other things.

Its names and descriptions that I havent changed which are showing as spanish. Eg the GDR description, LOC_UNIT_GIANT_DEATH_ROBOT_DESCRIPTION started showing as spanish in the tech tree view in game, so I added that as an exact copy and it now shows fine as below, but now the yield bonus in Robotics shows in spanish.


Code:
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="12.0" DefaultTargets="Default" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <PropertyGroup>
    <Configuration Condition=" '$(Configuration)' == '' ">Default</Configuration>
    <Name>Rename GDR</Name>
    <Guid>e2a8a546-3481-444d-a33b-db941764fa73</Guid>
    <ProjectGuid>04774aa4-6605-4604-8ba6-941543e62f02</ProjectGuid>
    <ModVersion>2</ModVersion>
    <Teaser>Renames GDR</Teaser>
    <Description>Renames GDR unit to Titan.</Description>
    <AffectsSavedGames>true</AffectsSavedGames>
    <SupportsSinglePlayer>true</SupportsSinglePlayer>
    <SupportsMultiplayer>true</SupportsMultiplayer>
    <SupportsHotSeat>true</SupportsHotSeat>
    <CompatibleVersions>1.2,2.0</CompatibleVersions>
    <InGameActionData><![CDATA[
      <InGameActions>
        <UpdateText id="Text">
          <File>Rename_GDR_Text.xml</File>
        </UpdateText>
      </InGameActions>
      ]]></InGameActionData>
    <AssemblyName>Rename GDR</AssemblyName>
    <RootNamespace>Rename GDR</RootNamespace>
  </PropertyGroup>
  <PropertyGroup Condition=" '$(Configuration)' == 'Default' ">
    <OutputPath>.</OutputPath>
  </PropertyGroup>
  <ItemGroup>
    <Content Include="Rename_GDR_Text.xml" />
  </ItemGroup>
  <Import Project="$(MSBuildLocalExtensionPath)Civ6.targets" />
</Project>


<?xml version="1.0" encoding="utf-8"?>
<GameData>
  <EnglishText>
    <!-- Unit Name -->
    <Row Tag="LOC_UNIT_GIANT_DEATH_ROBOT_NAME">
      <Text>Titan</Text>
    </Row>
    <Row Tag="LOC_UNIT_GIANT_DEATH_ROBOT_DESCRIPTION">
      <Text>Information Era Super-Unit. Able to move and fight in water. Resistant to Weapons of Mass Destruction. Combat abilities can be upgraded by researching future technologies.</Text>
    </Row>
    <!-- Civilopedia -->
    <Row Tag="LOC_PEDIA_CONCEPTS_PAGE_DEDICATIONS_CHAPTER_CONTENT_PARA_13">
      <Text>Automaton Warfare: Gain +1 Era Score each time you kill a non-Barbarian unit with a Titan unit. If chosen at the start of a Golden Age, gain a Titan in your capital. Receive 3 [ICON_Resource_Uranium] Uranium per turn. [ICON_Resource_Uranium] Uranium mines accumulate +1 more resource per turn. Information and Future Era.</Text>
    </Row>
    <Row Tag="LOC_PEDIA_UNITS_PAGE_UNIT_GIANT_DEATH_ROBOT_CHAPTER_HISTORY_PARA_1">
      <Text>Almost no one calls them Gunnery Deployment Rigs, because pop culture anticipated the rise of the bipedal combat platform for more than fifty years prior to the first operational deployment of a GDR, and has given them dozens of evocative names: Mechs, walkers, Giant Death Robots, and so forth. There is something psychologically affecting about seeing one stride across the landscape—reassuring for friendly forces, and terrifying for enemies. There is a certain purity to the GDR, a recapitulation of the human form, as well as an improvement on it.</Text>
    </Row>
    <Row Tag="LOC_PEDIA_UNITS_PAGE_UNIT_GIANT_DEATH_ROBOT_CHAPTER_HISTORY_PARA_2">
      <Text>The Titan is not a stealthy weapon, but it is an effective one. The use of a roughly-human anatomy allows pilots a more intuitive grasp of the weapon and defensive systems, and allows motion feedback systems to tap into human locomotion to assist. Indeed, some people regard the locomotion controls of the GDR to be the most impressive advancement in the entire system.</Text>
    </Row>
    <!-- Technologies -->
    <Row Tag="LOC_TECH_ADVANCED_AI_DESCRIPTION">
      <Text>Unlocks Titan upgrade: Drone Air Defense[NEWLINE]+100 [ICON_AntiAir_Large] Anti-Air Strength.</Text>
    </Row>
    <Row Tag="LOC_TECH_ADVANCED_POWER_CELLS_DESCRIPTION" >
      <Text>CO2 emissions from units reduced by 50%. Unlocks Titan upgrade: Particle Beam Siege Cannon[NEWLINE]Ranged attacks against Cities and Encampments are 100% effective and gain +30 [ICON_Ranged] Ranged Strength.</Text>
    </Row>
    <Row Tag="LOC_TECH_CYBERNETICS_DESCRIPTION" >
      <Text>Unlocks Titan upgrade: Enhanced Mobility[NEWLINE]+3 [ICON_Movement] Movement. Can perform a Jump action to cross over mountain terrain.</Text>
    </Row>
    <Row Tag="LOC_TECH_SMART_MATERIALS_DESCRIPTION" >
      <Text>Unlocks Titan upgrade: Reinforced Armor Plating[NEWLINE]+10 [ICON_Strength] Combat Strength when defending against land and naval units.</Text>
    </Row>
  </EnglishText>
</GameData>

  1. You posted a Modbuddy project file, which doesn't actually help much in finding the problem. You want to be looking at and perhaps posting the contents of the modinfo file found in the built version of the mod which is sent to the game's Mods subfolder at
    ~\Documents\My Games\Sid Meier's Civilization VI\Mods
  2. Don't use <EnglishText>. Use <LocalizedText>:
    Code:
    <GameData>
      <LocalizedText>
        <!-- Unit Name -->
        <Row Tag="LOC_UNIT_GIANT_DEATH_ROBOT_NAME" Language="en_US">
          <Text>Titan</Text>
        </Row>
        <Row Tag="LOC_UNIT_GIANT_DEATH_ROBOT_DESCRIPTION" Language="en_US">
          <Text>Information Era Super-Unit. Able to move and fight in water. Resistant to Weapons of Mass Destruction. Combat abilities can be upgraded by researching future technologies.</Text>
        </Row>
        <!-- Civilopedia -->
        <Row Tag="LOC_PEDIA_CONCEPTS_PAGE_DEDICATIONS_CHAPTER_CONTENT_PARA_13" Language="en_US">
          <Text>Automaton Warfare: Gain +1 Era Score each time you kill a non-Barbarian unit with a Titan unit. If chosen at the start of a Golden Age, gain a Titan in your capital. Receive 3 [ICON_Resource_Uranium] Uranium per turn. [ICON_Resource_Uranium] Uranium mines accumulate +1 more resource per turn. Information and Future Era.</Text>
        </Row>
        <Row Tag="LOC_PEDIA_UNITS_PAGE_UNIT_GIANT_DEATH_ROBOT_CHAPTER_HISTORY_PARA_1" Language="en_US">
          <Text>Almost no one calls them Gunnery Deployment Rigs, because pop culture anticipated the rise of the bipedal combat platform for more than fifty years prior to the first operational deployment of a GDR, and has given them dozens of evocative names: Mechs, walkers, Giant Death Robots, and so forth. There is something psychologically affecting about seeing one stride across the landscape—reassuring for friendly forces, and terrifying for enemies. There is a certain purity to the GDR, a recapitulation of the human form, as well as an improvement on it.</Text>
        </Row>
        <Row Tag="LOC_PEDIA_UNITS_PAGE_UNIT_GIANT_DEATH_ROBOT_CHAPTER_HISTORY_PARA_2" Language="en_US">
          <Text>The Titan is not a stealthy weapon, but it is an effective one. The use of a roughly-human anatomy allows pilots a more intuitive grasp of the weapon and defensive systems, and allows motion feedback systems to tap into human locomotion to assist. Indeed, some people regard the locomotion controls of the GDR to be the most impressive advancement in the entire system.</Text>
        </Row>
        <!-- Technologies -->
        <Row Tag="LOC_TECH_ADVANCED_AI_DESCRIPTION" Language="en_US">
          <Text>Unlocks Titan upgrade: Drone Air Defense[NEWLINE]+100 [ICON_AntiAir_Large] Anti-Air Strength.</Text>
        </Row>
        <Row Tag="LOC_TECH_ADVANCED_POWER_CELLS_DESCRIPTION" Language="en_US">
          <Text>CO2 emissions from units reduced by 50%. Unlocks Titan upgrade: Particle Beam Siege Cannon[NEWLINE]Ranged attacks against Cities and Encampments are 100% effective and gain +30 [ICON_Ranged] Ranged Strength.</Text>
        </Row>
        <Row Tag="LOC_TECH_CYBERNETICS_DESCRIPTION" Language="en_US">
          <Text>Unlocks Titan upgrade: Enhanced Mobility[NEWLINE]+3 [ICON_Movement] Movement. Can perform a Jump action to cross over mountain terrain.</Text>
        </Row>
        <Row Tag="LOC_TECH_SMART_MATERIALS_DESCRIPTION" Language="en_US">
          <Text>Unlocks Titan upgrade: Reinforced Armor Plating[NEWLINE]+10 [ICON_Strength] Combat Strength when defending against land and naval units.</Text>
        </Row>
      </LocalizedText>
    </GameData>
    Use of <EnglishText> is likely the root of your problem. <EnglishText> is really only intended for use by Firaxis as it is not a true table and everything placed within it is handled at the end of the Localization process in a manner different than anything added by modders in table <LocalizedText>.

    The Expansion's Text is generally not directly accessable to modding because of the issues with the way <EnglishText> and <BaseGameText> are used.

    The method most of use is to redirect the LOC_TAG of an expansion element within an UpdateDatabase action XML or SQL file, like this
    Code:
    <GameData>
    	<Units>
    		<Update>
    			<Where UnitType="UNIT_GIANT_DEATH_ROBOT" />
    			<Set Name="LOC_UNIT_GIANT_DEATH_ROBOT_NAME_NEW" Description="LOC_UNIT_GIANT_DEATH_ROBOT_DESCRIPTION_NEW" />
    		</Update>
    	</Units>
    </GameData>
    And then in an UpdateText Action we do as:
    Code:
    <GameData>
      <LocalizedText>
        <!-- Unit Name -->
        <Row Tag="LOC_UNIT_GIANT_DEATH_ROBOT_NAME_NEW" Language="en_US">
          <Text>Titan</Text>
        </Row>
        <Row Tag="LOC_UNIT_GIANT_DEATH_ROBOT_DESCRIPTION_NEW" Language="en_US">
          <Text>Information Era Super-Unit. Able to move and fight in water. Resistant to Weapons of Mass Destruction. Combat abilities can be upgraded by researching future technologies.</Text>
        </Row>
      </LocalizedText>
    </GameData>
    You need to ensure that your UpdateDatabase Action loads after the Gathering Storm code, so you will need that action to have a LoadOrder property of at least 300.
 
Hi

Long story short. Before I create an extensive new thread I want to know if it is possible to create a AI bonus which cumulate over time. Same like the standard bonus which the AI gets for higher difficulties but starting with for example 20% Bonus for science/culture in the first age, raising to 40% bonus in the second age and so on.

Longer version

I'm using douzens of mods (from much more talented modders than I am ^^) combined and modfied them for my needs with special attention to make the AI stronger in tactical/strategical decisions and economic/military growth but the result is always the same. In most games it takes not longer than renaissance/industrial age before the AI can't compete anymore with me.

I looked through a lot more mods but couldn't find one with the specific conditions I want to have.

I reached the point where I struggle in the early game with everything, be it hordes of barbariens which nearly kill me or technological superior civilisations and I can't extend this more cause the game becomes a pain in the a** for the first 100-200 rounds. (I'm also losing a lot of this games early cause fighting against 6 barbarians while I can't even finish my first unit in my first city is at some point simply impossible)

And thats not why I play the game. I like the normal relaxed game path where you can build and expand peacefully (at least at the very beginning) but it becomes boring rly fast cause on this difficulty cause the AI is the equivalent of fighting a lvl 1 magikarp -.-

My idea is to shift the strong bonuses the AI gets at the start to later centuries and increasing it significantly to compensate the loss at the start, making my gamestart smoother without removing a competition in lategame. I would also like to add a lot of other modifiers with this mechanic to make a more rounded package of AI boosts but at first I need to know if its even possible to do so.

My modlist at the moment (not the original ones cause I changed them).

Adjust progress Costs to Difficulty
Armies of the AI
Balanced Difficulty
Easier Wonder Placement
Extended Techtree
Game Balancing (For a Better AI)
More Great Persons + GP Cost Balancing
No early City State Rush
Real Building Upgrades
Real Strategy (tested AI+ too but couldn't see a difference)
Real Tech Tree
Removable Districts
Steel and Thunder: Unique Units
Steel and Thunder: Unit Expansion
Strategic Forts
Wondrous Wonders
World Wonders for Everyone
Zee's Fewer Trade Offers
Zee's Normalized Climate Change
Zee's Strategic Resource Overhaul


Thanks for reading ^^
myx
 
I'm trying to create a new civilization but it only appears in the Civ list when I set Standard Rules. I'm using the "Starter - New Civilization and Leader" template with no change and the property is set to be compatible with "Gathering Storm" and "Rise and Fall - Spring Update"
 
You probably don't have entries in tables <Players> and <PlayerItems> for "Players:Expansion1_Players" and "Players:Expansion2_Players":
Code:
<GameData>
	<Players>
		<Row Domain="StandardPlayers" CivilizationType="CIVILIZATION_EXAMPLE_CIV" LeaderType="LEADER_EXAMPLE_GUY" CivilizationName="LOC_CIVILIZATION_EXAMPLE_CIV_NAME" CivilizationIcon="ICON_CIVILIZATION_EXAMPLE_CIV" LeaderName="LOC_LEADER_EXAMPLE_GUY_NAME" LeaderIcon="ICON_LEADER_EXAMPLE_GUY" CivilizationAbilityName="LOC_TRAIT_CIVILIZATION_EXAMPLE_TRAIT_NAME" CivilizationAbilityDescription="LOC_TRAIT_CIVILIZATION_EXAMPLE_TRAIT_DESCRIPTION" CivilizationAbilityIcon="ICON_CIVILIZATION_EXAMPLE_CIV" LeaderAbilityName="LOC_TRAIT_LEADER_EXAMPLE_NAME" LeaderAbilityDescription="LOC_TRAIT_LEADER_EXAMPLE_DESCRIPTION" LeaderAbilityIcon="ICON_LEADER_EXAMPLE_GUY" />
		<Row Domain="Players:Expansion1_Players" CivilizationType="CIVILIZATION_EXAMPLE_CIV" LeaderType="LEADER_EXAMPLE_GUY" CivilizationName="LOC_CIVILIZATION_EXAMPLE_CIV_NAME" CivilizationIcon="ICON_CIVILIZATION_EXAMPLE_CIV" LeaderName="LOC_LEADER_EXAMPLE_GUY_NAME" LeaderIcon="ICON_LEADER_EXAMPLE_GUY" CivilizationAbilityName="LOC_TRAIT_CIVILIZATION_EXAMPLE_TRAIT_NAME" CivilizationAbilityDescription="LOC_TRAIT_CIVILIZATION_EXAMPLE_TRAIT_DESCRIPTION" CivilizationAbilityIcon="ICON_CIVILIZATION_EXAMPLE_CIV" LeaderAbilityName="LOC_TRAIT_LEADER_EXAMPLE_NAME" LeaderAbilityDescription="LOC_TRAIT_LEADER_EXAMPLE_DESCRIPTION" LeaderAbilityIcon="ICON_LEADER_EXAMPLE_GUY" />
		<Row Domain="Players:Expansion2_Players" CivilizationType="CIVILIZATION_EXAMPLE_CIV" LeaderType="LEADER_EXAMPLE_GUY" CivilizationName="LOC_CIVILIZATION_EXAMPLE_CIV_NAME" CivilizationIcon="ICON_CIVILIZATION_EXAMPLE_CIV" LeaderName="LOC_LEADER_EXAMPLE_GUY_NAME" LeaderIcon="ICON_LEADER_EXAMPLE_GUY" CivilizationAbilityName="LOC_TRAIT_CIVILIZATION_EXAMPLE_TRAIT_NAME" CivilizationAbilityDescription="LOC_TRAIT_CIVILIZATION_EXAMPLE_TRAIT_DESCRIPTION" CivilizationAbilityIcon="ICON_CIVILIZATION_EXAMPLE_CIV" LeaderAbilityName="LOC_TRAIT_LEADER_EXAMPLE_NAME" LeaderAbilityDescription="LOC_TRAIT_LEADER_EXAMPLE_DESCRIPTION" LeaderAbilityIcon="ICON_LEADER_EXAMPLE_GUY" />
	</Players>
	<PlayerItems>
		<Row CivilizationType="CIVILIZATION_EXAMPLE_CIV" LeaderType="LEADER_EXAMPLE_GUY" Type="UNIT_EXAMPLE" Icon="ICON_UNIT_EXAMPLE" Name="LOC_UNIT_EXAMPLE_NAME" Description="LOC_UNIT_EXAMPLE_DESCRIPTION" SortIndex="10" />
		<Row CivilizationType="CIVILIZATION_EXAMPLE_CIV" LeaderType="LEADER_EXAMPLE_GUY" Type="BUILDING_EXAMPLE" Icon="ICON_BUILDING_EXAMPLE" Name="LOC_BUILDING_EXAMPLE_NAME" Description="LOC_BUILDING_EXAMPLE_DESCRIPTION" SortIndex="20" />

		<Row Domain="Players:Expansion1_Players" CivilizationType="CIVILIZATION_EXAMPLE_CIV" LeaderType="LEADER_EXAMPLE_GUY" Type="UNIT_EXAMPLE" Icon="ICON_UNIT_EXAMPLE" Name="LOC_UNIT_EXAMPLE_NAME" Description="LOC_UNIT_EXAMPLE_DESCRIPTION" SortIndex="10" />
		<Row Domain="Players:Expansion1_Players" CivilizationType="CIVILIZATION_EXAMPLE_CIV" LeaderType="LEADER_EXAMPLE_GUY" Type="BUILDING_EXAMPLE" Icon="ICON_BUILDING_EXAMPLE" Name="LOC_BUILDING_EXAMPLE_NAME" Description="LOC_BUILDING_EXAMPLE_DESCRIPTION" SortIndex="20" />
		
		<Row Domain="Players:Expansion2_Players" CivilizationType="CIVILIZATION_EXAMPLE_CIV" LeaderType="LEADER_EXAMPLE_GUY" Type="UNIT_EXAMPLE" Icon="ICON_UNIT_EXAMPLE" Name="LOC_UNIT_EXAMPLE_NAME" Description="LOC_UNIT_EXAMPLE_DESCRIPTION" SortIndex="10" />
		<Row Domain="Players:Expansion2_Players" CivilizationType="CIVILIZATION_EXAMPLE_CIV" LeaderType="LEADER_EXAMPLE_GUY" Type="BUILDING_EXAMPLE" Icon="ICON_BUILDING_EXAMPLE" Name="LOC_BUILDING_EXAMPLE_NAME" Description="LOC_BUILDING_EXAMPLE_DESCRIPTION" SortIndex="20" />
	</PlayerItems>
</GameData>
 
It's working now! Thank you very much! Is there anyway to make these lines get automatically generated when you start a new project?
 
So how to maintain Asset Editor stability when creating mod? Sometimes Asset (particularly, new units and attachments) modifying crashes it completely with this stinging error.
And is this error precluded that this mod project is doomed and a new (and more careful) project must be executed instead?

What does this error message means? It usually happens when my mod project becomes bigger (i.e. more and specialized assets including reskins)

Code:
System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.NotSupportedException: The given path's format is not supported.
  at System.Security.Permissions.FileIOPermission.EmulateFileIOPermissionChecks(String fullPath)
   at System.Security.Permissions.FileIOPermission.QuickDemand(FileIOPermissionAccess access, String fullPath, Boolean checkForDuplicates, Boolean needFullPath)
   at System.IO.File.InternalGetLastWriteTimeUtc(String path, Boolean checkHost)
   at System.IO.File.GetLastWriteTime(String path)
   at Firaxis.AssetBrowser.ViewModels.InstanceEntityViewModel..ctor(ICivTechService civTechSvc, String name, InstanceType type, Func`3 loadFunction)
   --- End of inner exception stack trace ---
   at System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor)
   at System.Reflection.RuntimeConstructorInfo.Invoke(BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
   at System.RuntimeType.CreateInstanceImpl(BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes, StackCrawlMark& stackMark)
   at System.Activator.CreateInstance(Type type, BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes)
   at System.Activator.CreateInstance(Type type, Object[] args)
   at Firaxis.AssetBrowser.ViewModels.InstanceEntityViewModel.Create(InstanceType type, ICivTechService civTechService, String name, Func`3 loadFunction)
   at Firaxis.AssetBrowser.ViewModels.AssetBrowserViewModel.BuildFilteredEntityCollection(IList`1 inputEntities)
   at Firaxis.AssetBrowser.ViewModels.AssetBrowserViewModel.LoadPageWork(Object args)
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.QueueUserWorkItemCallback.System.Threading.IThreadPoolWorkItem.ExecuteWorkItem()
   at System.Threading.ThreadPoolWorkQueue.Dispatch()
 
Is it possible to download previous version of the civ6 depot?
I've tried
Code:
download_depot 289070 289071 2945240870064206070
but it says that Manifest is not available.

Thanks for help
 
Is it possible to download previous version of the civ6 depot?
I've tried
Code:
download_depot 289070 289071 2945240870064206070
but it says that Manifest is not available.

Thanks for help
If it's only the previous version that you need, you can try the "ineedlegacyaccess" beta password

Spoiler :
upload_2020-5-21_11-38-31.png
 
Alright I've checked the beta build and it downloads version .328 from June Update, not .341 from September Update :/ Does anyone know how to download version .341?
 
Last edited:
Apparently, my City Original Owner Info mod is not working with the latest "Frontier Pass" updates.

I've stopped playing Civilization VI because I couldn't get my map script to work, and because Firaxis haven't provided a good World-like map script when it is perfectly possible and within their resources to create one. So I'm not planning on buying the expansion. I'd like to keep my mod updated, though.

Could someone with the latest "Frontier Pass" update see whether the relevant expansion folder includes a file called CityBannerManager.lua?

If it doesn't, then I'm guessing the compatible versions line in my mod's .modinfo file need to be updated:
Code:
    <CompatibleVersions>2.0</CompatibleVersions>
Does the "Frontier Pass" update use a new version number?
 
There was an update I think for all owners of Civ6, though. There may be an altered version of CityBannerManager.lua being used by the game depending on which expansion you are using.

You may need to grab the current version of CityBannerManager.lua for the GS expansion and re-add your changes at the appropriate lines of the file.
 
No it's the same since compatible versions only reference the base game and expansions, not DLC packs.
There was an update I think for all owners of Civ6, though. There may be an altered version of CityBannerManager.lua being used by the game depending on which expansion you are using.

You may need to grab the current version of CityBannerManager.lua for the GS expansion and re-add your changes at the appropriate lines of the file.
Thanks.

There were a few lines of code altered in the GS CityBannerManager.lua file with the new update.

So I've updated this file in my mod, and it all seems to be working okay.
 
Is there anyway to attach a Modifier to a Player/Unit using LUA (at runtime) instead at the start of the game through SQL?
 
Back
Top Bottom