The defaultciv7-official-resourcesarchive excludes movies,data/icons/, fonts, and common media files (e.g..mp4,.dds,.png) while retainingAssets/schemafor reference. Use thefullprofile when extracting if you need the pruned media directories.
Base Game Assets and Schemas
The foundational database schemas and asset management files that define how the game stores and organizes data.Core Gameplay Schema
File Path:<GAME_RESOURCES>/Base/Assets/schema/gameplay/01_GameplaySchema.sql
This file defines the core gameplay database structure, containing the primary tables that store game mechanics, entities, and relationships. This is the foundation for all gameplay elements and should be the first reference when understanding how data is organized in Civilization VII.
Key components include:
- Civilization definitions
- Leader properties
- Unit specifications
- Building and improvement data structures
- Gameplay mechanics relationships
Modding Framework Schema
File Path:<GAME_RESOURCES>/Base/Assets/schema/modding/schema-modding-10.sql
This schema defines how mods are structured and loaded into the game. Understanding this schema is crucial for properly packaging and deploying mods.
Key components include:
Icon Management Schema
File Path:<GAME_RESOURCES>/Base/Assets/schema/icons/IconManager.sql
This schema defines how the game manages icons for various game elements. For modders, this is essential when adding custom icons for civilizations, units, buildings, or other visual elements.
Key components include:
World Builder Map Schema
File Path:<GAME_RESOURCES>/Base/Assets/schema/worldbuilder/MapSchema.sql
This schema defines the structure for map generation, world building, and age transitions. Understanding this schema is important for mods that affect world generation or implement custom map features.
Key components include:
Localization Schema
File Path:<GAME_RESOURCES>/Base/Assets/schema/loc/schema-loc-10.sql and <GAME_RESOURCES>/Base/Assets/schema/loc/schema-loc-20-languages.sql
These files define how text is stored and displayed in different languages, essential for ensuring your mod supports multiple languages properly.
Key aspects include:
- Language definitions
- Text string storage
- Tag-based text referencing
- Localization contexts
Frontend Schema
File Path:<GAME_RESOURCES>/Base/Assets/schema/frontend/
This directory contains multiple SQL files defining the game’s frontend and UI functionality:
schema-frontend-10-setup-parameters.sql: Game setup and configuration parametersschema-frontend-20-keybindings.sql: Keyboard control mappingsschema-frontend-30-hof.sql: Hall of Fame and achievement trackingschema-frontend-40-misc.sql: Miscellaneous frontend featuresschema-frontend-50-setup-data.sql: Game setup data structuresschema-frontend-60-xr.sql: Extended reality supportschema-frontend-70-metagaming.sql: Metagame features and progression
Age-Specific Modules
Civilization VII introduces a significant innovation with its Age system. The game is divided into three distinct Ages (Antiquity, Exploration, and Modern), each with its own set of civilizations, units, buildings, and mechanics. Each Age is implemented as a separate module in the game files.Common Age Module Structure
All three Age modules share a similar structure with the following elements:Configuration File
File Path:<GAME_RESOURCES>/Base/modules/age-[name]/config/config.xml
This XML file defines the core properties of each Age, including available civilizations, unique abilities, units, and buildings, as well as leader-civilization compatibility.
Module Definition File
File Path:<GAME_RESOURCES>/Base/modules/age-[name]/age-[name].modinfo
This file defines the Age as a module within the game system, specifying actions, file paths, and dependencies.
Common Data Directories
Each Age module includes these standard directories:- civilizations/: Civilization-specific properties and abilities
- leaders/: Leader attributes and compatibilities
- units/: Unit definitions for the Age
- buildings/: Building specifications
- progressions/: Tech and civic trees
- icons/: Visual assets for UI elements
civilization-icons.xml: Civilization symbolsunit-icons.xml: Unit representationsbuilding-icons.xml: Building symbolsresource-icons.xml: Resource imagery
Antiquity Age (3000 BCE - 500 CE)
File Path:<GAME_RESOURCES>/Base/modules/age-antiquity/
The Antiquity Age represents ancient civilizations and early empire development.
Unique Features
- Civilizations: Egypt, Rome, Greece, Persia, Han, Aksum, Khmer, Maurya, Maya, Mississippian
- Unique Content:
- wonders/: Ancient wonders like the Pyramids and Colosseum
- religion/: Early religious systems (plays a minor role in this Age)
- independent-powers/: Early tribal and city-state entities
Exploration Age (500 CE - 1700 CE)
File Path:<GAME_RESOURCES>/Base/modules/age-exploration/
The Exploration Age represents the era of global navigation, colonization, and cultural exchange.
Unique Features
- Civilizations: Spain, Norman, Ming, Abbasid, Chola, Hawaii, Inca, Majapahit, Mongolia, Songhai
- Unique Content:
- religion/: Enhanced religious mechanics that become a major gameplay driver
- naval/: Advanced naval exploration and combat units
- trade/: Expanded trade routes and mechanics
- legacies/: Age transition legacy bonuses from Antiquity
- distant-lands/: Expanded map areas accessible through naval exploration
Modern Age (1700 CE - Present)
File Path:<GAME_RESOURCES>/Base/modules/age-modern/
The Modern Age represents industrialization, global conflicts, and technological advancement.
Unique Features
- Civilizations: America, Russia, Prussia, French Empire, Mexico, Mughal, Meiji, Qing, Buganda, Siam
- Unique Content:
- victories/: Victory condition definitions and requirements
- global-systems/: World Congress, Climate Change, etc.
- advanced-units/: Aircraft, tanks, and modern military units
- projects/: Space race and other advanced projects
- diplomacy/: Enhanced diplomatic options and alliances
Age Transitions
The game’s Age system is designed to address issues with traditional Civilization gameplay such as snowballing, micromanagement, and civilization balance. Each Age transition provides:- Civilization Selection: Choose a new civilization suited to the new Age
- Legacy Bonuses: Benefits carried forward from completing Legacy Paths
- Persistent Elements:
- Leaders remain the same across Ages
- Wonders and unique Quarters persist as “Ageless” structures
- Commander units maintain attributes and experience
- Traditions unlocked from Civic trees remain available
Base-Standard Module
The base-standard module is the foundational module for Civilization VII, containing age-agnostic mechanics and definitions that apply throughout the entire game. This module serves as the backbone for all gameplay, regardless of which Age the player is in. File Path:<GAME_RESOURCES>/Base/modules/base-standard/
Core Structure
The base-standard module has a similar structure to the age-specific modules but contains more fundamental elements:- Module Definition File:
<GAME_RESOURCES>/Base/modules/base-standard/base-standard.modinfo - Package Definition:
<GAME_RESOURCES>/Base/modules/base-standard/package.json
Definitions Folder
File Path:<GAME_RESOURCES>/Base/modules/base-standard/definitions/
This is one of the most important directories for modders, containing the database schemas that define core game objects. These files are essential reference points when creating new civilizations, leaders, units, or other game elements.
Key Definition Files for Civilization Modding:
civilization.civdb
File Path:<GAME_RESOURCES>/Base/modules/base-standard/definitions/civilization.civdb
This file defines the structure of civilizations in the game. Key components include:
- Civilization Types: Basic civilization identifiers and properties
- Civilization Tags: Categorization (Military, Economic, etc.)
- Unique Abilities: Special bonuses and traits
- Unique Units: Civilization-specific military and civilian units
- Unique Infrastructure: Special buildings, quarters, and improvements
leader.civdb
File Path:<GAME_RESOURCES>/Base/modules/base-standard/definitions/leader.civdb
This file defines leader properties and mechanics. Leaders in Civilization VII are distinct from civilizations and can be paired with different civilizations across Ages.
Key components include:
- Leader Types: Basic leader identifiers and properties
- Leader Attributes: Strengths, weaknesses, and preferred gameplay styles
- Leader Agendas: AI behavior patterns and diplomatic priorities
- Leader Abilities: Special bonuses and traits
- Civilization Compatibility: Which civilizations a leader can lead
unit.civdb
File Path:<GAME_RESOURCES>/Base/modules/base-standard/definitions/unit.civdb
This file defines unit mechanics and properties. When creating unique units for your civilization, you’ll reference this structure.
Key components include:
- Unit Types: Basic unit identifiers and properties
- Unit Classes: Categories of units (Military, Civilian, Support)
- Unit Abilities: Special bonuses and traits
- Combat Statistics: Attack, defense, and movement values
- Production Costs: Resources and turns required
constructible.civdb
File Path:<GAME_RESOURCES>/Base/modules/base-standard/definitions/constructible.civdb
This file defines buildings, improvements, and other constructible elements. When creating unique infrastructure for your civilization, you’ll reference this structure.
Key components include:
- Building Types: Basic building identifiers and properties
- Building Effects: Yield bonuses and special benefits
- Production Costs: Resources and turns required
- Urban/Rural Classification: Whether it’s a district or improvement
- Maintenance Costs: Ongoing gold or resource costs
Other Important Definition Files:
- modifier-system.civdb: Defines how buffs, debuffs, and other modifiers work
- victory.civdb: Victory condition definitions
- diplomacy.civdb: Diplomatic relationships and options
- age.civdb: Age mechanics and transitions
- culture.civdb: Cultural mechanics and systems
- religion.civdb: Religious systems and mechanics
Implementation Patterns
When implementing a new civilization, you’ll need to follow certain patterns established in the base game:Civilization Implementation Flow
- Define the Civilization Type: Create a unique identifier and basic properties
- Assign Age Category: Determine which Age the civilization belongs to (Antiquity, Exploration, or Modern)
- Define Unique Ability: Create a special trait that reflects the civilization’s historical strengths
- Create Unique Units: Design military and civilian units specific to the civilization
- Design Unique Infrastructure: Create special buildings, quarters, or improvements
- Establish Leader Compatibility: Define which leaders work well with the civilization
- Create Visual Assets: Design civilization symbols, unit graphics, and building models
- Write Localization Text: Create text entries for names, descriptions, and historical information
Leader-Civilization Compatibility
In Civilization VII, leaders and civilizations are designed to be mixed and matched, but with historical preferences. When implementing a custom leader, consider:- Historical Accuracy: Assign higher compatibility to leaders with historical connections
- Gameplay Synergy: Consider how leader abilities complement civilization bonuses
- Geographic Proximity: Leaders from nearby regions often have higher compatibility
Data Structure for Gameplay Elements
File Path:<GAME_RESOURCES>/Base/modules/base-standard/data/
This directory contains the implementation of game mechanics defined in the definitions folder. Key subdirectories include:
- civilizations.xml: Core civilization definitions
- leaders.xml: Leader properties and compatibility
- units.xml: Unit specifications and balancing
- constructibles.xml: Building and improvement properties
- progression-trees.xml: Tech and civic progression
- effects.xml: Special bonuses and gameplay effects
Icon Sets and Visual Assets
File Path:<GAME_RESOURCES>/Base/modules/base-standard/data/icons/
This directory contains XML files defining icons for various game elements. When creating a civilization mod, you’ll need to reference or extend these files:
- civilization-icons.xml: Civilization symbols and banners
- leader-icons.xml: Leader portraits and UI elements
- unit-icons.xml: Military and civilian unit icons
- building-icons.xml: Building and improvement icons
- Reference existing game icons using the blp: path prefix
- Include custom images in your mod package and reference them with relative paths
Practical Implementation Considerations
When creating a custom civilization mod:- Study Similar Civilizations: Look at existing civilizations from the appropriate Age for patterns
- Balance Unique Abilities: Ensure abilities fit the Age and aren’t overpowered
- Age Compatibility: Define how your civilization transitions to later Ages (what civilizations it can unlock)
- Historical Accuracy: Research the civilization’s history to inform ability and unit design
- Visual Consistency: Follow the game’s artistic style for icons and assets
DLC Reference
Official DLC (Downloadable Content) for Civilization VII serves as excellent examples for modders, demonstrating how to properly implement new civilizations, leaders, and other content in a way that integrates seamlessly with the base game. File Path:<GAME_RESOURCES>/DLC/
DLC Structure
Each official DLC follows a structure similar to mods but with tighter integration with the base game:- [DLC_Name]/: Main directory for the DLC content
- [DLC_Name].modinfo: Definition file for the DLC
- data/: Main data files implementing the DLC content
- ui/: UI assets specific to the DLC
- text/: Localization files
- icons/: Visual assets and icons
- Content DLC: Contains the actual gameplay content (e.g.,
great-britain/) - Shell DLC: Contains metadata for platforms and storefronts (e.g.,
great-britain-shell/)
Leader Implementation Examples
DLCs like those for Ada Lovelace, Napoleon, and Tecumseh provide excellent references for implementing new leaders: File Path:<GAME_RESOURCES>/DLC/ada-lovelace/data/leaders/
Leaders are defined through a set of interrelated files:
- leader_[name].xml: Basic leader definition
- leader_[name]_traits.xml: Leader’s unique abilities
- leader_[name]_agenda.xml: AI behavior patterns
- leader_[name]_agendas.xml: Leader’s preferences and dislikes
Civilization Implementation Examples
DLCs such as Great Britain, Carthage, and Bulgaria demonstrate how to implement new civilizations: File Path:<GAME_RESOURCES>/DLC/great-britain/data/civilizations/
Civilizations are defined through:
- civilization_[name].xml: Basic civilization definition
- civilization_[name]_traits.xml: Civilization’s unique abilities
- civilization_[name]_units.xml: Unique units
- civilization_[name]_buildings.xml: Unique buildings/infrastructure
Integration with Age System
DLC content in Civilization VII demonstrates how to properly integrate with the Age system:-
Age Assignment: DLC civilizations are assigned to specific Ages
-
Age Transitions: DLC civilizations define how they unlock civilizations in later Ages
Localization Implementation
DLCs show how to properly implement translations for in-game text: File Path:<GAME_RESOURCES>/DLC/[name]/text/
Localization files are organized by language with XML files containing string entries:
Visual Asset Implementation
DLCs provide examples of how to package and reference visual assets: File Path:<GAME_RESOURCES>/DLC/[name]/icons/
Icon definitions follow this pattern:
Best Practices from DLC
When creating your own civilization mods, these DLCs demonstrate several best practices:- Complete Implementation: DLCs provide full sets of files for each feature (leaders, civilizations, units)
- Cross-references: Content is well-integrated with appropriate references between files
- Proper Scoping: Content is properly scoped to specific Ages
- Age Continuity: Civilization transitions are logically defined
- Historical Authenticity: Abilities and units are designed to reflect historical attributes
- Visual Consistency: Visual assets follow the game’s art style
- Thorough Localization: Text is properly tagged and organized for all supported languages
Natural Wonder DLCs
Some DLCs, like “mountain-natural-wonders”, focus on adding new map features rather than civilizations. These demonstrate how to implement:- Natural features and wonders
- Special terrain types
- New game effects tied to map elements
Official DLC Structure
The game includes several DLCs that follow a standard structure. Studying these can provide valuable insights for modders.DLC Module Structure
File Path:<GAME_RESOURCES>/DLC/[dlc-name]/
Each DLC follows this general pattern:
- Module Definition File:
<GAME_RESOURCES>/DLC/[dlc-name]/[dlc-name].modinfo - Package Definition:
<GAME_RESOURCES>/DLC/[dlc-name]/package.json
- civilizations/: Added civilizations
- leaders/: Added leaders
- units/: Added units
- constructibles/: Added buildings and improvements
- text/: Localization for new content
- assets/: Visual assets (icons, models, textures)
Example DLC Structure: “Crossroads of the World” Collection
This official DLC adds several civilizations and leaders across all Ages. The structure is particularly valuable as a reference for modders:Mod Organization and Installation
User Mod Directory
The correct location for installing mods: macOS:Recommended Mod Structure
Based on the game’s conventions and official DLCs, the following structure is recommended for civilization mods:ModInfo File Structure
The .modinfo file is a crucial component of any mod, defining its properties, dependencies, and the files it contains. Example structure:Module Layout and Dependency Files
Official modules store content underdata/, text/, icons/, and similar folders. Each module also ships a companion .dep file describing art and library dependencies. Include a .dep file alongside your .modinfo when your mod relies on custom art or libraries.
Conclusion
This reference guide provides the essential information needed to understand Civilization VII’s modding architecture and create custom civilizations. By studying the game’s file structure, you can develop mods that properly integrate with the game’s systems and provide a seamless experience for players. For more detailed guides on implementing specific modding tasks, refer to the following documents:- Exploring the map system:
civ7-map-system.md - Creating new civilizations:
civ7-creating-civilizations.md - Creating new leaders:
civ7-creating-leaders.md - Modifying existing content:
civ7-modifying-content.md - Using TypeScript modding tools:
civ7-typescript-overview.md