mirror of
https://github.com/yairm210/Unciv.git
synced 2025-07-13 01:08:25 +07:00
Merge branch 'yairm210:master' into master
This commit is contained in:
@ -4,8 +4,8 @@ package com.unciv.build
|
|||||||
object BuildConfig {
|
object BuildConfig {
|
||||||
const val kotlinVersion = "1.8.21"
|
const val kotlinVersion = "1.8.21"
|
||||||
const val appName = "Unciv"
|
const val appName = "Unciv"
|
||||||
const val appCodeNumber = 998
|
const val appCodeNumber = 999
|
||||||
const val appVersion = "4.11.14"
|
const val appVersion = "4.11.14-patch1"
|
||||||
|
|
||||||
const val gdxVersion = "1.12.1"
|
const val gdxVersion = "1.12.1"
|
||||||
const val ktorVersion = "2.2.3"
|
const val ktorVersion = "2.2.3"
|
||||||
|
@ -471,7 +471,7 @@ open class UncivGame(val isConsoleMode: Boolean = false) : Game(), PlatformSpeci
|
|||||||
|
|
||||||
companion object {
|
companion object {
|
||||||
//region AUTOMATICALLY GENERATED VERSION DATA - DO NOT CHANGE THIS REGION, INCLUDING THIS COMMENT
|
//region AUTOMATICALLY GENERATED VERSION DATA - DO NOT CHANGE THIS REGION, INCLUDING THIS COMMENT
|
||||||
val VERSION = Version("4.11.14", 998)
|
val VERSION = Version("4.11.14-patch1", 999)
|
||||||
//endregion
|
//endregion
|
||||||
|
|
||||||
/** Global reference to the one Gdx.Game instance created by the platform launchers - do not use without checking [isCurrentInitialized] first. */
|
/** Global reference to the one Gdx.Game instance created by the platform launchers - do not use without checking [isCurrentInitialized] first. */
|
||||||
|
@ -270,6 +270,8 @@ class RulesetValidator(val ruleset: Ruleset) {
|
|||||||
|
|
||||||
uniqueValidator.checkUniques(nation, lines, true, tryFixUnknownUniques)
|
uniqueValidator.checkUniques(nation, lines, true, tryFixUnknownUniques)
|
||||||
|
|
||||||
|
if (nation.preferredVictoryType != Constants.neutralVictoryType && nation.preferredVictoryType !in ruleset.victories)
|
||||||
|
lines.add("${nation.name}'s preferredVictoryType is ${nation.preferredVictoryType} which does not exist!", sourceObject = nation)
|
||||||
if (nation.cityStateType != null && nation.cityStateType !in ruleset.cityStateTypes)
|
if (nation.cityStateType != null && nation.cityStateType !in ruleset.cityStateTypes)
|
||||||
lines.add("${nation.name} is of city-state type ${nation.cityStateType} which does not exist!", sourceObject = nation)
|
lines.add("${nation.name} is of city-state type ${nation.cityStateType} which does not exist!", sourceObject = nation)
|
||||||
if (nation.favoredReligion != null && nation.favoredReligion !in ruleset.religions)
|
if (nation.favoredReligion != null && nation.favoredReligion !in ruleset.religions)
|
||||||
@ -577,9 +579,6 @@ class RulesetValidator(val ruleset: Ruleset) {
|
|||||||
lines.add("${nation.name} can settle cities, but has no city names!", sourceObject = nation)
|
lines.add("${nation.name} can settle cities, but has no city names!", sourceObject = nation)
|
||||||
}
|
}
|
||||||
|
|
||||||
if (nation.preferredVictoryType != Constants.neutralVictoryType && nation.preferredVictoryType !in ruleset.victories)
|
|
||||||
lines.add("${nation.name}'s preferredVictoryType is ${nation.preferredVictoryType} which does not exist!", sourceObject = nation)
|
|
||||||
|
|
||||||
// https://www.w3.org/TR/WCAG20/#visual-audio-contrast-contrast
|
// https://www.w3.org/TR/WCAG20/#visual-audio-contrast-contrast
|
||||||
val constrastRatio = nation.getContrastRatio()
|
val constrastRatio = nation.getContrastRatio()
|
||||||
if (constrastRatio < 3) {
|
if (constrastRatio < 3) {
|
||||||
|
@ -408,7 +408,7 @@ class GameOptionsTable(
|
|||||||
}
|
}
|
||||||
|
|
||||||
private fun Table.addEraSelectBox() {
|
private fun Table.addEraSelectBox() {
|
||||||
if (ruleset.technologies.isEmpty()) return // mod with no techs
|
if (ruleset.eras.isEmpty()) return // mod with no techs
|
||||||
val eras = ruleset.eras.keys
|
val eras = ruleset.eras.keys
|
||||||
addSelectBox("{Starting Era}:", eras, gameParameters.startingEra)
|
addSelectBox("{Starting Era}:", eras, gameParameters.startingEra)
|
||||||
{ gameParameters.startingEra = it; null }
|
{ gameParameters.startingEra = it; null }
|
||||||
|
@ -92,3 +92,4 @@ You have a working mod, now it's time to go wild!
|
|||||||
- Expand the abilities of your civ by adding new [uniques](uniques.md)
|
- Expand the abilities of your civ by adding new [uniques](uniques.md)
|
||||||
- Add new civs, buildings or units
|
- Add new civs, buildings or units
|
||||||
- Expand into other game objects by exploring the rest of the [mod file structure](Mod-file-structure/1-Overview.md)
|
- Expand into other game objects by exploring the rest of the [mod file structure](Mod-file-structure/1-Overview.md)
|
||||||
|
- Try creating a base ruleset [from this template](https://github.com/yairm210/Unciv-minimal-base-ruleset)
|
||||||
|
@ -13,7 +13,7 @@ The game only knows how to recognize existing definitions, so you can't add *new
|
|||||||
There are three main kinds of mods:
|
There are three main kinds of mods:
|
||||||
|
|
||||||
- **Extension mods** - these add new nations/units/buildings/resources to a base ruleset - can be either to the default ruleset, or to a base ruleset mod. Easy to do and probably the better place to get started - for example, [creating a new Civilization](Making-a-new-Civilization.md)
|
- **Extension mods** - these add new nations/units/buildings/resources to a base ruleset - can be either to the default ruleset, or to a base ruleset mod. Easy to do and probably the better place to get started - for example, [creating a new Civilization](Making-a-new-Civilization.md)
|
||||||
- **Base Ruleset mods** - these replace the entire existing ruleset - tech tree, units, policies, nations etc - to give an entirely different experience than the base game. These generally require quite a bit of work, but give a whole new experience, and so are the most popular.
|
- **Base Ruleset mods** - these replace the entire existing ruleset - tech tree, units, policies, nations etc - to give an entirely different experience than the base game. These generally require quite a bit of work, but give a whole new experience, and so are the most popular. [A minimal example can be found here](https://github.com/yairm210/Unciv-minimal-base-ruleset) as a template to build off of ("Use this template" green button in top right, "Create a new repository")
|
||||||
- **Ruleset-agnostic mods** - these do not contain any ruleset-related jsons, but instead contain other affects. Audiovisual mods (including tilesets, unitsets, and UI skins) and map mods are in this category.
|
- **Ruleset-agnostic mods** - these do not contain any ruleset-related jsons, but instead contain other affects. Audiovisual mods (including tilesets, unitsets, and UI skins) and map mods are in this category.
|
||||||
|
|
||||||
Creating and editing mods from your phone is NOT RECOMMENDED - it's *much easier* using a desktop device!
|
Creating and editing mods from your phone is NOT RECOMMENDED - it's *much easier* using a desktop device!
|
||||||
|
Reference in New Issue
Block a user