Unciv/docs/wiki/Civilization-related-JSON-files.md
will-ca a78fa5dc12
Repo wiki resync. — Requires #5854. (#6024)
* Initial Home page

Updated Home (markdown)

Updated Getting Started (markdown)

Created Project structure overview (markdown)

Initial Home page

Updated Project structure overview (markdown)

Updated Project structure overview (markdown)

Created Making a new Civilization (markdown)

Updated Getting Started (markdown)

Updated Home (markdown)

Updated Project structure overview (markdown)

Created From code to deployment (markdown)

Updated Project structure overview (markdown)

Updated Major classes (markdown)

Updated Project structure and major classes (markdown)

Updated Getting Started (markdown)

Updated Project structure and major classes (markdown)

Updated From code to deployment (markdown)

Created Translating (markdown)

Updated Translating (markdown)

Updated Translating (markdown)

Updated Translating (markdown)

Updated Translating (markdown)

Created Coding standards (markdown)

Updated Home (markdown)

Added "why do we clone on NextTurn" explanation

Created Mods (markdown)

Updated Mods (markdown)

Updated Mods (markdown)

Updated Mods (markdown)

Updated Translating (markdown)

New translation files location

Updated Mods (markdown)

Updated Mods (markdown)

Updated Mods (markdown)

Updated Mods (markdown)

Updated Mods (markdown)

Updated Mods (markdown)

Updated Translating (markdown)

Added mod file location on chromebook

Created Scenarios (markdown)

Updated Scenarios (markdown)

Updated Scenarios (markdown)

Updated Scenarios (markdown)

Updated Scenarios (markdown)

Updated Scenarios (markdown)

Updated Mods (markdown)

Updated Mods (markdown)

Updated Mods (markdown)

Updated Mods (markdown)

Updated Scenarios (markdown)

Updated Mods (markdown)

Added itch.io release

Updated Mods (markdown)

Updated Mods (markdown)

Updated Mods (markdown)

Updated Mods (markdown)

Updated Mods (markdown)

Updated Project structure and major classes (markdown)

Updated Mods (markdown)

Created Uniques (markdown)

Updated Uniques (markdown)

Updated Uniques (markdown)

Updated Uniques (markdown)

Updated Uniques (markdown)

Updated Uniques (markdown)

Updated Uniques (markdown)

Updated Uniques (markdown)

Updated Uniques (markdown)

Updated Uniques (markdown)

Updated Uniques (markdown)

Updated Uniques (markdown)

Updated Uniques (markdown)

Updated Uniques (markdown)

Updated Uniques (markdown)

Updated Uniques (markdown)

Updated Uniques (markdown)

Updated Uniques (markdown)

Updated Uniques (markdown)

Updated Uniques (markdown)

Updated Uniques (markdown)

Updated Uniques (markdown)

Updated Uniques (markdown)

Updated Uniques (markdown)

Updated Uniques (markdown)

Updated Uniques (markdown)

Updated Uniques (markdown)

Added link to Uniques

Updated Uniques (markdown)

Added 'triggers victory' unique

Updated Making a new Civilization (markdown)

Created Building locally without Android Studio (markdown)

Updated Translating (markdown)

Updated Uniques (markdown)

Updated Mods (markdown)

Updated Mods (markdown)

Updated Mods (markdown)

Updated Uniques (markdown)

Added improvement uniques

Updated Uniques (markdown)

Updated Uniques (markdown)

Updated Uniques (markdown)

Updated Uniques (markdown)

Updated Mods (markdown)

Updated Mods (markdown)

Updated Mods (markdown)

Updated Mods (markdown)

Updated Uniques (markdown)

Updated Uniques (markdown)

Updated Uniques (markdown)

Updated Uniques (markdown)

Updated Uniques (markdown)

I thought a tutorial on how to create a custom tileset in the first place could not hurt

Moved the sentence to the "Creating a custom tileset" page

Updated Making a new Civilization (markdown)

Updated Mods Making a new Civilization (markdown)

Updated Mods Making a new Civilization (markdown)

Updated Uniques (markdown)

Updated Uniques (markdown)

Updated Uniques (markdown)

Updated Uniques (markdown)

Updated Uniques (markdown)

Updated Uniques (markdown)

Updated Uniques (markdown)

Destroyed Scenarios (markdown)

Updated Uniques (markdown)

Changed Travis documentation to Github actions documentation

Updated Translating (markdown)

Updated Translating (markdown)

Updated From code to deployment (markdown)

Removed "working on templated rule variants" because we currently don't

Updated Uniques (markdown)

Updated uniques based on everything done during the policy update

Misplaced a unique

Updated Making a new Civilization (markdown)

Updated Making a new Civilization (markdown)

Updated Translating (markdown)

Updated Uniques (markdown)

Removed [pending] messages for PR's that were no longer pending

Added uniques from telecommuncations/advanced balistics

Added all the uniques from my PR's (telecommunicatoins -- shrines); added uniques I deprecated at some point

Updated Uniques (markdown)

Added missing deprecated unique

Added uniques changed in #4292

Updated Uniques (markdown)

Added uniques from #4311 and #4301

Added uniques from #4331

Added Discord webhook message

Created page with basic information

Typo

Made information not incorrect

Added units.json

Manual new lines was a terrible idea

Updated JSON files for mods (markdown)

Added link to JSON files for mods explanation

Added eras.json

capitalization

Added a header

Improved example

Added Buildings.json

hmmm

Doesn't work, sad

Added information on Specialists.json

Updated JSON files for mods (markdown)

Added uniques from #4372

Updated Uniques (markdown)

Updated uniques after #4393

Updated uniques after #4423

Add new and deprecated uniques of #4487, #4459

add wonder images

Fixed mod directory

Updated Uniques (markdown)

Updated uniques after #4530, #4505, #4419

Reworked the passages on tileFilter, terrainFilter and improvementFilter from code inspection

Added a more indept guide on how to install UnCiv on macOS

Updated Uniques (markdown)

Created Credits.md (markdown)

Destroyed Credits.md (markdown)

Added installing from source method

Improve Sound chapter, added Civilopedia text chapter

Added after #4619

Added unitTypes.json

Added beliefs.json

Updated Translating (markdown)

Added eras:unitBaseBuyCost

Added after #4568

Added ruins.json

Added after #4771

Added rudimentary Difficulties.json doc

Added ruin-specfic uniques explanation

Added TOC and Nations

Detailed Techs chapter

Fix 1 line - tech uniques

Added Quests.json

Added ModOptions

Added ModOptions

Added UnitPromotions, structured TOC

Added Policies

Added crosslinks

Fixed broken links

Added TileResources

Added more crosslinks

Small fix resource tile graphix aren't toggle-able

Added TileImprovements

Added Terrains

Updated JSON files for mods (markdown)

Updated Getting Started (markdown)

Updated Getting Started (markdown)

Updated Getting Started (markdown)

Updated JSON files for mods (markdown)

Updated Translating (markdown)

Created Civilization-related JSON files (markdown)

Created Map-related JSON files (markdown)

Double title

Double title

Created Unit-related JSON files (markdown)

Moved sounds

Updated Unit related JSON files (markdown)

Moved Stats

Created Miscellaneous JSON files (markdown)

Removed content that has been moved to separate pages, update TOC

Created _Sidebar (markdown)

Updated Uniques (markdown)

test

Fixed broken links. Apparently the way 'preview' links to pages differs from how it links when you view them on a saved page for some reason

Updated Uniques (markdown)

Fix relative `..` link suddenly leaving the wiki

Updated Miscellaneous JSON files (markdown)

Fix relative links

Fix era links to Units.json

Updated Uniques (markdown)

Updated From code to deployment (markdown)

Added uniques & cityFilters up to #4995

Mass deprecation as per 422607

Fixed broken link to redirect to Unit Uniques in Wiki

Fixed broken link to redirect to Unit Uniques in Wiki table

Updated Uniques (markdown)

Updated Getting Started (markdown)

Updated Uniques (markdown)

Added uniques & filters up to #5094

Removed a deprecated unique

Moved some uniques to better sections, removed an outdated unique

fixed a typo

Updated Uniques (markdown)

eras.json is now required

Removed outdated religion section

Added missing terrain uniques

Added resource uniques

Fixed resource unique link

Added missing unique for tile improvements

Fixed broken link

"Disappearing" translations explained

Updated Home (markdown)

Some atlas info, leader portraits

Created Force rating calculation (markdown)

"Not yet" for Image atlas distribution in mods

Updated uniques after #5259

Added information on conditionals

Updated growth unique

Added conditional support up to #5270

Typo

Escape html tags

Add conditionals to table of contents

Updated _Sidebar (markdown)

Created Audiovisual Mods (markdown)

Audiovisual Mods, move Graphics-only info

Updated Audiovisual Mods (markdown)

Audiovisual Mods - Draft done.

Documented translation method

Updated Translations, mods, and modding freedom in Open Source (markdown)

Fix Typos and Links

New Terrain uniques / 2 sections

Atlas control via multiple Images.x folders is now live

Link to atlas paragraph

startBias clarification

Missing bracket

Added uniques & conditionals up to #5345 (my PR's only)

Updated Force rating calculation (markdown)

Updated Getting Started (markdown => asciidoc)

Undid renaming

Updated Getting Started (asciidoc => markdown)

Added fix for Gradle sync fail

Updated Project structure and major classes (markdown)

Bump Java version from JDK 8 to JDK 11 due to gradle upgrade

Updated uniques & conditionals up to #5618 from my PR's

Created Regions (markdown)

Updated Uniques (markdown)

Updated Uniques (markdown)

Mention docs/uniques.md, emphasized Stat capitalization

* Base wiki state.

* Move wiki files into `/docs/wiki`.

Migrate inter-Markdown links.

Fix pre-existing broken links and anchors.

Standardize repository links for AS linting.

Add wiki footer.

Updated Uniques (markdown)

Updated Mods Making a new Civilization (markdown)

Updated Making a new Civilization (markdown)

Add GH Action for updating wiki.

Play it safer, and don't `push -f`. (Should be the same either way though.)

* Base wiki migration state.

* Author: Xander Lenstra <71121390+xlenstra@users.noreply.github.com>  2022-01-02 11:04:38
Committer: Xander Lenstra <71121390+xlenstra@users.noreply.github.com>  2022-01-02 11:04:38
Parent: 8fe9385ee644a74b1c3ae3c6d1fa8200cc952a3f (Mention docs/uniques.md, emphasized Stat capitalization)
Child:  7463af24381cc6b94b949b4419841d303af6bb93 (Expanded documentation on constructionFilters)
Branches: master, remotes/origin/master
Follows:
Precedes:

    Added construction filter in the header

* Author: Xander Lenstra <71121390+xlenstra@users.noreply.github.com>  2022-01-02 11:06:59
Committer: Xander Lenstra <71121390+xlenstra@users.noreply.github.com>  2022-01-02 11:06:59
Parent: 49654ec91dcf565685fd6e4ca966456484c578bd (Added construction filter in the header)
Child:  d48da00f4fa03f61891ec7396a5d0ba9109f44df (Added actual steps I take when releasing a version)
Branches: master, remotes/origin/master
Follows:
Precedes:

    Expanded documentation on constructionFilters

* Author: Yair Morgenstern <yairm210@>  2022-01-02 18:15:10
Committer: Yair Morgenstern <yairm210@>  2022-01-02 18:15:10
Parent: 7463af24381cc6b94b949b4419841d303af6bb93 (Expanded documentation on constructionFilters)
Child:  e7873b135204510742017be455c8b73862bb1d75 (Updated From code to deployment (markdown))
Branches: master, remotes/origin/master
Follows:
Precedes:

    Added actual steps I take when releasing a version

* Author: Yair Morgenstern <yairm210@>  2022-01-02 19:54:18
Committer: Yair Morgenstern <yairm210@>  2022-01-02 19:54:18
Parent: d48da00f4fa03f61891ec7396a5d0ba9109f44df (Added actual steps I take when releasing a version)
Child:  84a6eb3a44ed2504f157d55e90cfe2363bb70659 (Added buildingFilter and reworded a bit of generated documentation)
Branches: master, remotes/origin/master
Follows:
Precedes:

    Updated From code to deployment (markdown)

* Author: Xander Lenstra <71121390+xlenstra@users.noreply.github.com>  2022-01-07 11:48:11
Committer: Xander Lenstra <71121390+xlenstra@users.noreply.github.com>  2022-01-07 11:48:11
Parent: e7873b135204510742017be455c8b73862bb1d75 (Updated From code to deployment (markdown))
Child:  2a4a0add3728a676012ce51bc3f825c8a5c04c84 (Slightly improved wording)
Branches: master, remotes/origin/master
Follows:
Precedes:

    Added buildingFilter and reworded a bit of generated documentation

* Author: Xander Lenstra <71121390+xlenstra@users.noreply.github.com>  2022-01-07 11:51:18
Committer: Xander Lenstra <71121390+xlenstra@users.noreply.github.com>  2022-01-07 11:51:18
Parent: 84a6eb3a44ed2504f157d55e90cfe2363bb70659 (Added buildingFilter and reworded a bit of generated documentation)
Child:  d4b91ed84a0989ea5205a77390543d268f7a8b22 (Removed a deprecated field)
Branches: master, remotes/origin/master
Follows:
Precedes:

    Slightly improved wording

* Author: Xander Lenstra <71121390+xlenstra@users.noreply.github.com>  2022-01-17 16:59:32
Committer: Xander Lenstra <71121390+xlenstra@users.noreply.github.com>  2022-01-17 16:59:32
Parent: 2a4a0add3728a676012ce51bc3f825c8a5c04c84 (Slightly improved wording)
Child:  3cd48433f279bcceaaab4f63c2c48606781c059f (Updated belief type valed values)
Branches: master, remotes/origin/master
Follows:
Precedes:

    Removed a deprecated field

* Author: Xander Lenstra <71121390+xlenstra@users.noreply.github.com>  2022-01-17 17:00:14
Committer: Xander Lenstra <71121390+xlenstra@users.noreply.github.com>  2022-01-17 17:00:14
Parent: d4b91ed84a0989ea5205a77390543d268f7a8b22 (Removed a deprecated field)
Child:  2f076df75fc5d112146902c88f240a3ebdac8849 (Updated Getting Started (markdown))
Branches: master, remotes/origin/master
Follows:
Precedes:

    Updated belief type valed values

* Author: Yair Morgenstern <yairm210@>  2022-01-22 19:40:43
Committer: Yair Morgenstern <yairm210>  2022-01-22 19:40:43
Parent: 3cd48433f279bcceaaab4f63c2c48606781c059f (Updated belief type valed values)
Child:  5d60469df68e0416ffa815e1366aef191583c451 (Updated Getting Started (markdown))
Branches: master, remotes/origin/master
Follows:
Precedes:

    Updated Getting Started (markdown)

* Author: Yair Morgenstern <yairm210@>  2022-01-22 19:46:03
Committer: Yair Morgenstern <yairm210@>  2022-01-22 19:46:03
Parent: 2f076df75fc5d112146902c88f240a3ebdac8849 (Updated Getting Started (markdown))
Child:  73475b37b28934478dc05830d3aeb61cf8ee6b69 (Updated Getting Started (markdown))
Branches: master, remotes/origin/master
Follows:
Precedes:

    Updated Getting Started (markdown)

* Normalize some links.

* Author: Yair Morgenstern <yairm210@>  2022-01-22 19:54:23
Committer: Yair Morgenstern <yairm210@>  2022-01-22 19:54:23
Parent: 5d60469df68e0416ffa815e1366aef191583c451 (Updated Getting Started (markdown))
Branches: master, remotes/origin/master
Follows:
Precedes:

    Updated Getting Started (markdown)

Co-authored-by: Yair Morgenstern <yairm210@hotmail.com>
2022-01-24 10:58:00 +02:00

13 KiB

Beliefs.json

link to original

This file contains the beliefs that can be chosen for religions in your mod.

Each belief can have the following attributes:

attribute Type Optional or not notes
name String Required Name of the belief
type String Required The type of the belief. Valid values are: "Pantheon", "Follower", "Founder" and "Enhancer".
uniques List of Strings defaults to none The unique abilities this belief adds to cities following it. May be chosen from the list of building uniques here, as well as the general uniques on that page
civilopediaText List Default empty see civilopediaText chapter

Buildings.json

link to original

This file should contain all the buildings and wonders you want to use in your mod.

Each building can have the following attributes:

attribute Type Optional or not notes
name String required Name of the building
cost Integer (≥0) defaults to 0 Amount of production required to build the building
food Integer defaults to 0 Food produced by the building
production Integer defaults to 0 Production produced by the building
gold Integer defaults to 0 etc.
happiness Integer defaults to 0
culture Integer defaults to 0
science Integer defaults to 0
faith Integer defaults to 0
maintenance Integer (≥0) defaults to 0 Maintenance cost of the building
isWonder Boolean defaults to false Whether this building is a global wonder
isNationalWonder Boolean defaults to false Whether this building is a national wonder
requiredBuilding String defaults to none A building that has to be built before this building can be built. Must be in Buildings.json
cannotBeBuiltWith String defaults to none The building [cannotBeBuiltWith] and this building cannot exist in the same city together. Should be in Buildings.json
providesFreeBuilding String defaults to none When the building is built, [providesFreeBuilding] is also automatically added to the city
requiredTech String defaults to none The tech that should be researched before this building may be built. Must be in Techs.json
requiredResource String defaults to none The resource that is consumed when building this building. Must be in TileResources.json
requiredNearbyImprovedResources List of Strings defaults to none The building can only be built if any of the resources in this list are within the borders of this city and have been improved. Each resource must be in TileResources.json
replaces String defaults to none The name of a building that should be replaced by this building. Must be in Buildings.json
uniqueTo String defaults to none If supplied, only the nation with this name can build this building. Must be in Nations.json
xpForNewUnits Integer defaults to 0 XP granted automatically to units built in this city
cityStrength Integer defaults to 0 Strength bonus the city in which this building is built receives
cityHealth Integer defaults to 0 Health bonus the city in which this building is built receives
hurryCostModifier Integer defaults to 0 When this building is bought using gold or faith, the price is increased by this much percent
quote String defaults to none If this building is a (national) wonder, this string will be shown on the completion popup
uniques List of Strings defaults to none List of unique abilities this building has. Most of these can be found here
replacementTextForUniques String defaults to none If provided, this string will be shown instead of all of the uniques
percentStatBonus Object defaults to none Percentual bonus for stats provided by the building. Valid keys are the names of stats (production, gold, science, etc.), valid values are Integers (≥0)
greatPersonPoints Object defaults to none How many great person points for each type will be generated per turn. Valid keys are the names of great people (Great Scientist, Great Engineer, etc. .), valid values are Integers (≥0)
specialistSlots Object defaults to none Specialist slots provided by this building. Valid keys are the names of specialists (as defined in Specialists.json), valid values are Integers, the amount of slots provided for this specialist
civilopediaText List Default empty see civilopediaText chapter

Nations.json

Link to original

This file contains all the nations and city states, including Barbarians and Spectator.

Attribute Type Optional? Notes
name String Required
leaderName String Default empty Omit only for city states! If you want LeaderPortraits, the image file names must match exactly, including case.
style String Default empty Modifier appended to pixel unit image names
adjective String Default empty Currently unused
cityStateType Enum Default absent Distinguishes Major Civilizations from City States (Cultured, Maritime, Mercantile, Militaristic)
startBias List Default empty Zero or more of: terrainFilter or "Avoid [terrainFilter]". Two or more will be logically "and"-ed, and if the filters result in no choices, the entire attribute is ignored (e.g. "startBias": ["Snow","Tundra"] will never work).
preferredVictoryType Enum Default Neutral Neutral, Cultural, Diplomatic, Domination or Scientific
startIntroPart1 String Default empty Introductory blurb shown to Player on game start...
startIntroPart2 String Default empty ... second paragraph. NO "TBD"!!! Leave empty to skip that alert.
declaringWar String Default empty another greeting
attacked String Default empty another greeting
defeated String Default empty another greeting
introduction String Default empty another greeting
neutralHello String Default empty another greeting
hateHello String Default empty another greeting
tradeRequest String Default empty another greeting
innerColor 3x Integer Default black R, G, B for outer ring of nation icon
outerColor 3x Integer Required R, G, B for inner circle of nation icon
uniqueName String Default empty Decorative name for the special characteristic of this Nation
uniqueText String Default empty Replacement text for "uniques". If empty, uniques are listed individually.
uniques List Default empty Properties of the civilization - see here
cities List Default empty City names used sequentially for newly founded cities.
civilopediaText List Default empty see civilopediaText chapter

Policies.json

Link to original

This file lists the available social policies that can be "bought" with culture.

They are organized in 'branches', each branch has an 'opener', one or more 'member' policies, and a 'finisher'. Therefore this file is organized using two levels - branch and member policy. The properties of the 'opener' are defined with the branch level, while the 'finisher' has an entry on the member level which must be named as branch name + " Complete", case sensitive.

Each policy branch can have the following properties:

Attribute Type Optional? Notes
name String Required
era String Required Unlocking era as defined in Eras.json
uniques List Default empty List of effects, see here
policies List Default empty List of member policies

Each member policy can have the following properties:

Attribute Type Optional? Notes
name String Required
row Integer Required Placement in UI, each unit approximately half the icon size
column Integer Required Placement in UI, each unit approximately half the icon size
requires List Default empty List of prerequisite policy names
uniques List Default empty List of effects, see here

Quests.json

Link to original

This file contains the Quests that may be given to major Civilizations by City States.

Attribute Type Optional? Notes
name String Required Unique identifier name of the quest, it is also shown
description String Required Description of the quest shown to players
type Enum Default Individual Individual or Global
influece Float Default 40 Influence reward gained on quest completion
duration Integer Default 0 Maximum number of turns to complete the quest, 0 if there's no turn limit
minimumCivs Integer Default 1 Minimum number of Civs needed to start the quest. It is meaningful only for type = Global

Religions.json

Link to original

This is just a list of Strings specifying all predefined Religion names. Corresponding icons must exist, that's all to it. After all, they're just containers for Beliefs.

Specialists.json

Link to original

This file should contain a list of all possible specialists that you want in your mod.

Each specialist can have the following attributes:

attribute type optional or not notes
name String required Name of the specialist
food Integer defaults to 0 Amount of food produced by this specialist
production Integer defaults to 0 Amount of production produced by this specialist
gold Integer defaults to 0 etc.
culture Integer defaults to 0
science Integer defaults to 0
faith Integer defaults to 0
color List of 3 Integers required Color of the image for this specialist
greatPersonPoints Object defaults to none Great person points generated by this specialist. Valid keys are the names of the great person(Great Scientist, Great Merachant, etc.), valid values are Integers (≥0)

Techs.json

Link to original

This file contains all the technologies. It is organized into an outer list of 'columns' which in turn contain one or more tech each.

Column structure

Attribute Type Optional? Notes
columnNumber Integer Required Horizontal placement in the Tech Tree.
era String Required References Eras.json.
techCost Integer Required Default cost of the techs in this column.
buildingCost Integer Required Default cost of buildings requiring this tech.
wonderCost Integer Required Default cost of wonders requiring this tech.
techs List of Techs Required List of techs as follows - pay attention to the nesting of {} and [].

Tech structure

Attribute Type Optional? Notes
name String Required The name of this Technology.
row Integer Defaults to 0 Vertical placement in the Tech Tree, must be unique per column.
cost Integer Defaults to column techCost The amount of science required to research this tech.
prerequisites List Default empty A list of the names of techs that are prerequisites of this tech. Only direct prerequisites are necessary.
quote String Default empty A nice story presented to the player when they research this tech.
uniques List Default empty Properties granted by the tech - see here.
civilopediaText List Default empty see civilopediaText chapter.