Fixed broken doc links

This commit is contained in:
yairm210
2024-10-11 16:43:15 +03:00
parent 6f0babb393
commit 8c676271be

View File

@ -8,34 +8,34 @@ This file defines the difficulty levels a player can choose when starting a new
Each difficulty level has the following structure: Each difficulty level has the following structure:
| Attribute | Type | Default | Notes | | Attribute | Type | Default | Notes |
|-----------------------------------|------------------|----------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| |-----------------------------------|-----------------|----------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| name | String | Required | | | name | String | Required | |
| baseHappiness | Integer | 0 | | | baseHappiness | Integer | 0 | |
| extraHappinessPerLuxury | Float | 0 | | | extraHappinessPerLuxury | Float | 0 | |
| researchCostModifier | Float | 1 | | | researchCostModifier | Float | 1 | |
| unitCostModifier | Float | 1 | | | unitCostModifier | Float | 1 | |
| unitSupplyBase | Integer | 5 | | | unitSupplyBase | Integer | 5 | |
| unitSupplyPerCity | Integer | 2 | | | unitSupplyPerCity | Integer | 2 | |
| buildingCostModifier | Float | 1 | | | buildingCostModifier | Float | 1 | |
| policyCostModifier | Float | 1 | | | policyCostModifier | Float | 1 | |
| unhappinessModifier | Float | 1 | | | unhappinessModifier | Float | 1 | |
| barbarianBonus | Float | 0 | | | barbarianBonus | Float | 0 | |
| barbarianSpawnDelay | Integer | 0 | | | barbarianSpawnDelay | Integer | 0 | |
| playerBonusStartingUnits | List of Strings | empty | Can also be 'Era Starting Unit', maps to `startingMilitaryUnit` of the Eras file. All other units must be in [Units.json](4-Unit-related-JSON-files.md#Units.json). Applies only to human player civs | | playerBonusStartingUnits | List of Strings | empty | Can also be 'Era Starting Unit', maps to `startingMilitaryUnit` of the Eras file. All other units must be in [Units.json](4-Unit-related-JSON-files#Units.json). Applies only to human player civs |
| aiCityGrowthModifier | Float | 1 | | | aiCityGrowthModifier | Float | 1 | |
| aiUnitCostModifier | Float | 1 | | | aiUnitCostModifier | Float | 1 | |
| aiBuildingCostModifier | Float | 1 | | | aiBuildingCostModifier | Float | 1 | |
| aiWonderCostModifier | Float | 1 | | | aiWonderCostModifier | Float | 1 | |
| aiBuildingMaintenanceModifier | Float | 1 | | | aiBuildingMaintenanceModifier | Float | 1 | |
| aiUnitMaintenanceModifier | Float | 1 | | | aiUnitMaintenanceModifier | Float | 1 | |
| aiUnitSupplyModifier | Integer | 5 | | | aiUnitSupplyModifier | Integer | 5 | |
| aiFreeTechs | List of Strings | empty | Must be in [Techs.json](2-Civilization-related-JSON-files.md#techsjson) | | aiFreeTechs | List of Strings | empty | Must be in [Techs.json](2-Civilization-related-JSON-files#techsjson) |
| aiMajorCivBonusStartingUnits | List of Strings | empty | Same rules as playerBonusStartingUnits, See above. Applies only to AI major civs | | aiMajorCivBonusStartingUnits | List of Strings | empty | Same rules as playerBonusStartingUnits, See above. Applies only to AI major civs |
| aiCityStateBonusStartingUnits | List of Strings | empty | Same rules as playerBonusStartingUnits, See above. Applies only to city-state civs | | aiCityStateBonusStartingUnits | List of Strings | empty | Same rules as playerBonusStartingUnits, See above. Applies only to city-state civs |
| aiUnhappinessModifier | Float | 1 | | | aiUnhappinessModifier | Float | 1 | |
| turnBarbariansCanEnterPlayerTiles | Integer | 0 | | | turnBarbariansCanEnterPlayerTiles | Integer | 0 | |
| clearBarbarianCampReward | Integer | 25 | | | clearBarbarianCampReward | Integer | 25 | |
## Eras.json ## Eras.json
@ -45,26 +45,26 @@ This file should contain all the era's you want to use in your mod.
Each era can have the following attributes: Each era can have the following attributes:
| Attribute | Type | Default | Notes | | Attribute | Type | Default | Notes |
|---------------------------|----------------------------------------|-----------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| |---------------------------|----------------------------------------|-----------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| name | String | Required | | | name | String | Required | |
| researchAgreementCost | Integer (≥0) | 300 | Cost of research agreements when the most technologically advanced civ is in this era | | researchAgreementCost | Integer (≥0) | 300 | Cost of research agreements when the most technologically advanced civ is in this era |
| iconRGB | [List of 3× Integer](#rgb-colors-list) | white | RGB color that icons for technologies of this era should have in the Tech screen | | iconRGB | [List of 3× Integer](#rgb-colors-list) | white | RGB color that icons for technologies of this era should have in the Tech screen |
| startingSettlerCount | Integer (≥0) | 1 | Amount of settler units that should be spawned when starting a game in this era (setting this to zero is discouraged [^1]) | | startingSettlerCount | Integer (≥0) | 1 | Amount of settler units that should be spawned when starting a game in this era (setting this to zero is discouraged [^1]) |
| startingSettlerUnit | String | "Settler" | Name of the unit that should be used for the previous field. Must be in [Units.json](4-Unit-related-JSON-files.md#unitsjson), or a unit with the "Founds a new city" unique must exist | | startingSettlerUnit | String | "Settler" | Name of the unit that should be used for the previous field. Must be in [Units.json](4-Unit-related-JSON-files#unitsjson), or a unit with the "Founds a new city" unique must exist |
| startingWorkerCount | Integer (≥0) | 0 | Amount of worker units that should be spawned when starting a game in this era | | startingWorkerCount | Integer (≥0) | 0 | Amount of worker units that should be spawned when starting a game in this era |
| startingWorkerUnit | String | "Worker" | Name of the unit that should be used for the previous field. If startingWorkerCount>0, then it must exist in [Units.json](4-Unit-related-JSON-files.md#unitsjson), or a unit with the "Can build [filter] improvements on tiles" unique must exist | | startingWorkerUnit | String | "Worker" | Name of the unit that should be used for the previous field. If startingWorkerCount>0, then it must exist in [Units.json](4-Unit-related-JSON-files#unitsjson), or a unit with the "Can build [filter] improvements on tiles" unique must exist |
| startingMilitaryUnitCount | Integer (≥0) | 1 | Amount of military units that should be spawned when starting a game in this era | | startingMilitaryUnitCount | Integer (≥0) | 1 | Amount of military units that should be spawned when starting a game in this era |
| startingMilitaryUnit | String | "Warrior" | Name of the unit that should be used for the previous field. Must be in [Units.json](4-Unit-related-JSON-files.md#unitsjson) | | startingMilitaryUnit | String | "Warrior" | Name of the unit that should be used for the previous field. Must be in [Units.json](4-Unit-related-JSON-files#unitsjson) |
| startingGold | Integer (≥0) | 0 | Amount of gold each civ should receive when starting a game in this era | | startingGold | Integer (≥0) | 0 | Amount of gold each civ should receive when starting a game in this era |
| startingCulture | Integer (≥0) | 0 | Amount of culture each civ should receive when starting a game in this era | | startingCulture | Integer (≥0) | 0 | Amount of culture each civ should receive when starting a game in this era |
| settlerPopulation | Integer (>0) | 1 | Amount of population each city should have when settled when starting a game in this era | | settlerPopulation | Integer (>0) | 1 | Amount of population each city should have when settled when starting a game in this era |
| settlerBuildings | List of Strings | empty | Buildings that should automatically be built whenever a city is settled when starting a game in this era | | settlerBuildings | List of Strings | empty | Buildings that should automatically be built whenever a city is settled when starting a game in this era |
| startingObsoleteWonders | List of Strings | empty | Wonders (and technically buildings) that should be impossible to built when starting a game in this era. Used in the base game to remove all wonders older than 2 era's | | startingObsoleteWonders | List of Strings | empty | Wonders (and technically buildings) that should be impossible to built when starting a game in this era. Used in the base game to remove all wonders older than 2 era's |
| baseUnitBuyCost | Integer | 200 | Default value used for the unique `Can be purchased with [stat] [cityFilter]` | | baseUnitBuyCost | Integer | 200 | Default value used for the unique `Can be purchased with [stat] [cityFilter]` |
| embarkDefense | Integer | 3 | Default defense for embarked unit in this era | | embarkDefense | Integer | 3 | Default defense for embarked unit in this era |
| startPercent | Integer | 0 | When starting, percentage (\[0\]%-\[100\]%) of turns skipped in total turns specified in [Speed.json](#speedsjson) | | startPercent | Integer | 0 | When starting, percentage (\[0\]%-\[100\]%) of turns skipped in total turns specified in [Speed.json](#speedsjson) |
| citySound | String | "cityClassical" | Sound used when city is founded in this era | | citySound | String | "cityClassical" | Sound used when city is founded in this era |
[^1]: Successfully setting startingSettlerCount to zero in a mod (idea: conquer or die) is not easy. Some player-controlled settings require at least one Settler, through any source (see difficulties for other possible settler sources), or you won't be able to start a game: Once City Challenge requires one for all players, and allowing any city-states requires one for those. Would also affect defeat rules. [^1]: Successfully setting startingSettlerCount to zero in a mod (idea: conquer or die) is not easy. Some player-controlled settings require at least one Settler, through any source (see difficulties for other possible settler sources), or you won't be able to start a game: Once City Challenge requires one for all players, and allowing any city-states requires one for those. Would also affect defeat rules.
@ -123,7 +123,7 @@ Events allow users to choose between options of triggers to activate.
| name | String | Required | Used for triggering via "Triggers a [event] event" unique | | name | String | Required | Used for triggering via "Triggers a [event] event" unique |
| text | String | None | Flavor text displayed to user | | text | String | None | Flavor text displayed to user |
| presentation | One of: "None", "Alert", "Floating" | Alert | "Alert" indicates a regular popup, "None" means the choice is made randomly, "Floating" is for tutorial-style indicators | | presentation | One of: "None", "Alert", "Floating" | Alert | "Alert" indicates a regular popup, "None" means the choice is made randomly, "Floating" is for tutorial-style indicators |
| civilopediaText | List | Optional | See [civilopediaText chapter](5-Miscellaneous-JSON-files.md#civilopedia-text) | | civilopediaText | List | Optional | See [civilopediaText chapter](5-Miscellaneous-JSON-files#civilopedia-text) |
| choices | List of EventChoices | | User can choose to trigger one of the viable choices | | choices | List of EventChoices | | User can choose to trigger one of the viable choices |
@ -137,7 +137,7 @@ Event choices are comprised of:
| triggeredUniques | List of trigger uniques | Required | The triggers that this choice activates upon being chosen | | triggeredUniques | List of trigger uniques | Required | The triggers that this choice activates upon being chosen |
| conditions | List of conditional uniques | Empty list | If any conditional is not met, this option becomes unpickable (not shown) | | conditions | List of conditional uniques | Empty list | If any conditional is not met, this option becomes unpickable (not shown) |
| keyShortcut | key to select (name) | none | Key names see [Gdx.Input.Keys](https://github.com/libgdx/libgdx/blob/master/gdx/src/com/badlogic/gdx/Input.java#L69) | | keyShortcut | key to select (name) | none | Key names see [Gdx.Input.Keys](https://github.com/libgdx/libgdx/blob/master/gdx/src/com/badlogic/gdx/Input.java#L69) |
| civilopediaText | List | Optional | See [civilopediaText chapter](5-Miscellaneous-JSON-files.md#civilopedia-text) | | civilopediaText | List | Optional | See [civilopediaText chapter](5-Miscellaneous-JSON-files#civilopedia-text) |
Here, civilopediaText is shown outside the active Button, before the triggeredUniques. Here, civilopediaText is shown outside the active Button, before the triggeredUniques.
@ -150,7 +150,7 @@ This file is a little different:
- Does not exist in Vanilla ruleset - Does not exist in Vanilla ruleset
- Is entirely optional but will be created after downloading a mod - Is entirely optional but will be created after downloading a mod
Note that this file controls _declarative mod compatibility_ (Work in progress) - e.g. there's [uniques](../../uniques.md#modoptions-uniques) to say your Mod should only or never be used as 'Permanent audiovisual mod'. Note that this file controls _declarative mod compatibility_ (Work in progress) - e.g. there's [uniques](../../uniques#modoptions-uniques) to say your Mod should only or never be used as 'Permanent audiovisual mod'.
Incompatibility filtering works so far between extension and base mods, but feel free to document known extension-to-extension incompatibilities using the same Unique now. Stay tuned! Incompatibility filtering works so far between extension and base mods, but feel free to document known extension-to-extension incompatibilities using the same Unique now. Stay tuned!
The file can have the following attributes, not including the values Unciv sets automatically: The file can have the following attributes, not including the values Unciv sets automatically:
@ -158,11 +158,11 @@ The file can have the following attributes, not including the values Unciv sets
| Attribute | Type | default | Notes | | Attribute | Type | default | Notes |
|-------------------|---------|---------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| |-------------------|---------|---------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| isBaseRuleset | Boolean | false | Replaces vanilla ruleset if true | | isBaseRuleset | Boolean | false | Replaces vanilla ruleset if true |
| uniques | List | empty | Mod-wide specials, [see here](../../uniques.md#modoptions-uniques) | | uniques | List | empty | Mod-wide specials, [see here](../../uniques#modoptions-uniques) |
| techsToRemove | List | empty | List of [Technologies](2-Civilization-related-JSON-files.md#techsjson) or [technologyFilter](../../Unique-parameters.md#technologyfilter) to remove (isBaseRuleset=false only) | | techsToRemove | List | empty | List of [Technologies](2-Civilization-related-JSON-files#techsjson) or [technologyFilter](../../Unique-parameters#technologyfilter) to remove (isBaseRuleset=false only) |
| buildingsToRemove | List | empty | List of [Buildings or Wonders](2-Civilization-related-JSON-files.md#buildingsjson) or [buildingFilter](../../Unique-parameters.md#buildingfilter) to remove (isBaseRuleset=false only) | | buildingsToRemove | List | empty | List of [Buildings or Wonders](2-Civilization-related-JSON-files#buildingsjson) or [buildingFilter](../../Unique-parameters#buildingfilter) to remove (isBaseRuleset=false only) |
| unitsToRemove | List | empty | List of [Units](4-Unit-related-JSON-files.md#unitsjson) or [unitFilter](../../Unique-parameters.md#baseunitfilter) to remove (isBaseRuleset=false only) | | unitsToRemove | List | empty | List of [Units](4-Unit-related-JSON-files#unitsjson) or [unitFilter](../../Unique-parameters#baseunitfilter) to remove (isBaseRuleset=false only) |
| nationsToRemove | List | empty | List of [Nations](2-Civilization-related-JSON-files.md#nationsjson) or [nationFilter](../../Unique-parameters.md#nationfilter) to remove (isBaseRuleset=false only) | | nationsToRemove | List | empty | List of [Nations](2-Civilization-related-JSON-files#nationsjson) or [nationFilter](../../Unique-parameters#nationfilter) to remove (isBaseRuleset=false only) |
| constants | Object | empty | See [ModConstants](#modconstants) | | constants | Object | empty | See [ModConstants](#modconstants) |
| tileset | String | empty | Only applicable for base rulesets | | tileset | String | empty | Only applicable for base rulesets |
| unitset | String | empty | Only applicable for base rulesets | | unitset | String | empty | Only applicable for base rulesets |
@ -285,7 +285,7 @@ The formula for the gold cost of a unit upgrade is (rounded down to a multiple o
max((`base` + `perProduction` \* (new_unit_cost - old_unit_cost)), 0) max((`base` + `perProduction` \* (new_unit_cost - old_unit_cost)), 0)
\* (1 + eraNumber \* `eraMultiplier`) \* `civModifier` \* (1 + eraNumber \* `eraMultiplier`) \* `civModifier`
) ^ `exponent` ) ^ `exponent`
With `civModifier` being the multiplicative aggregate of ["\[relativeAmount\]% Gold cost of upgrading"](../../uniques.md#global-uniques) uniques that apply. With `civModifier` being the multiplicative aggregate of ["\[relativeAmount\]% Gold cost of upgrading"](../../uniques#global-uniques) uniques that apply.
## GlobalUniques.json ## GlobalUniques.json
@ -308,7 +308,7 @@ Each tutorial has the following structure:
| Attribute | Type | Default | Notes | | Attribute | Type | Default | Notes |
|-----------------|-----------------|----------|-------------------------------------------------------------------------------| |-----------------|-----------------|----------|-------------------------------------------------------------------------------|
| name | String | Required | Entry name | | name | String | Required | Entry name |
| civilopediaText | List | Optional | See [civilopediaText chapter](5-Miscellaneous-JSON-files.md#civilopedia-text) | | civilopediaText | List | Optional | See [civilopediaText chapter](5-Miscellaneous-JSON-files#civilopedia-text) |
| steps | List of Strings | Optional | Plain text | | steps | List of Strings | Optional | Plain text |
If an entry contains both `steps` and `civilopediaText` attributes, the `civilopediaText` is shown first. If an entry contains both `steps` and `civilopediaText` attributes, the `civilopediaText` is shown first.