mirror of
https://github.com/yairm210/Unciv.git
synced 2025-01-20 01:07:40 +07:00
1067 lines
31 KiB
HTML
1067 lines
31 KiB
HTML
|
|
<!doctype html>
|
|
<html lang="en" class="no-js">
|
|
<head>
|
|
|
|
<meta charset="utf-8">
|
|
<meta name="viewport" content="width=device-width,initial-scale=1">
|
|
|
|
|
|
|
|
<link rel="icon" href="../../assets/images/favicon.png">
|
|
<meta name="generator" content="mkdocs-1.2.3, mkdocs-material-8.2.1">
|
|
|
|
|
|
|
|
<title>Uniques - My Docs</title>
|
|
|
|
|
|
|
|
<link rel="stylesheet" href="../../assets/stylesheets/main.e8d9bf0c.min.css">
|
|
|
|
|
|
<link rel="stylesheet" href="../../assets/stylesheets/palette.e6a45f82.min.css">
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
|
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:300,400,400i,700%7CRoboto+Mono&display=fallback">
|
|
<style>:root{--md-text-font:"Roboto";--md-code-font:"Roboto Mono"}</style>
|
|
|
|
|
|
|
|
<script>__md_scope=new URL("../..",location),__md_get=(e,_=localStorage,t=__md_scope)=>JSON.parse(_.getItem(t.pathname+"."+e)),__md_set=(e,_,t=localStorage,a=__md_scope)=>{try{t.setItem(a.pathname+"."+e,JSON.stringify(_))}catch(e){}}</script>
|
|
|
|
|
|
|
|
|
|
|
|
</head>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<body dir="ltr" data-md-color-scheme="" data-md-color-primary="none" data-md-color-accent="none">
|
|
|
|
|
|
|
|
<input class="md-toggle" data-md-toggle="drawer" type="checkbox" id="__drawer" autocomplete="off">
|
|
<input class="md-toggle" data-md-toggle="search" type="checkbox" id="__search" autocomplete="off">
|
|
<label class="md-overlay" for="__drawer"></label>
|
|
<div data-md-component="skip">
|
|
|
|
|
|
<a href="#overview" class="md-skip">
|
|
Skip to content
|
|
</a>
|
|
|
|
</div>
|
|
<div data-md-component="announce">
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<header class="md-header" data-md-component="header">
|
|
<nav class="md-header__inner md-grid" aria-label="Header">
|
|
<a href="../.." title="My Docs" class="md-header__button md-logo" aria-label="My Docs" data-md-component="logo">
|
|
|
|
|
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 8a3 3 0 0 0 3-3 3 3 0 0 0-3-3 3 3 0 0 0-3 3 3 3 0 0 0 3 3m0 3.54C9.64 9.35 6.5 8 3 8v11c3.5 0 6.64 1.35 9 3.54 2.36-2.19 5.5-3.54 9-3.54V8c-3.5 0-6.64 1.35-9 3.54z"/></svg>
|
|
|
|
</a>
|
|
<label class="md-header__button md-icon" for="__drawer">
|
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M3 6h18v2H3V6m0 5h18v2H3v-2m0 5h18v2H3v-2z"/></svg>
|
|
</label>
|
|
<div class="md-header__title" data-md-component="header-title">
|
|
<div class="md-header__ellipsis">
|
|
<div class="md-header__topic">
|
|
<span class="md-ellipsis">
|
|
My Docs
|
|
</span>
|
|
</div>
|
|
<div class="md-header__topic" data-md-component="header-topic">
|
|
<span class="md-ellipsis">
|
|
|
|
Uniques
|
|
|
|
</span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
|
|
<label class="md-header__button md-icon" for="__search">
|
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.516 6.516 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5z"/></svg>
|
|
</label>
|
|
<div class="md-search" data-md-component="search" role="dialog">
|
|
<label class="md-search__overlay" for="__search"></label>
|
|
<div class="md-search__inner" role="search">
|
|
<form class="md-search__form" name="search">
|
|
<input type="text" class="md-search__input" name="query" aria-label="Search" placeholder="Search" autocapitalize="off" autocorrect="off" autocomplete="off" spellcheck="false" data-md-component="search-query" required>
|
|
<label class="md-search__icon md-icon" for="__search">
|
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.516 6.516 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5z"/></svg>
|
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 11v2H8l5.5 5.5-1.42 1.42L4.16 12l7.92-7.92L13.5 5.5 8 11h12z"/></svg>
|
|
</label>
|
|
<nav class="md-search__options" aria-label="Search">
|
|
|
|
<button type="reset" class="md-search__icon md-icon" aria-label="Clear" tabindex="-1">
|
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12 19 6.41z"/></svg>
|
|
</button>
|
|
</nav>
|
|
|
|
</form>
|
|
<div class="md-search__output">
|
|
<div class="md-search__scrollwrap" data-md-scrollfix>
|
|
<div class="md-search-result" data-md-component="search-result">
|
|
<div class="md-search-result__meta">
|
|
Initializing search
|
|
</div>
|
|
<ol class="md-search-result__list"></ol>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
</nav>
|
|
|
|
</header>
|
|
|
|
<div class="md-container" data-md-component="container">
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<main class="md-main" data-md-component="main">
|
|
<div class="md-main__inner md-grid">
|
|
|
|
|
|
|
|
<div class="md-sidebar md-sidebar--primary" data-md-component="sidebar" data-md-type="navigation" >
|
|
<div class="md-sidebar__scrollwrap">
|
|
<div class="md-sidebar__inner">
|
|
|
|
|
|
|
|
<nav class="md-nav md-nav--primary" aria-label="Navigation" data-md-level="0">
|
|
<label class="md-nav__title" for="__drawer">
|
|
<a href="../.." title="My Docs" class="md-nav__button md-logo" aria-label="My Docs" data-md-component="logo">
|
|
|
|
|
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 8a3 3 0 0 0 3-3 3 3 0 0 0-3-3 3 3 0 0 0-3 3 3 3 0 0 0 3 3m0 3.54C9.64 9.35 6.5 8 3 8v11c3.5 0 6.64 1.35 9 3.54 2.36-2.19 5.5-3.54 9-3.54V8c-3.5 0-6.64 1.35-9 3.54z"/></svg>
|
|
|
|
</a>
|
|
My Docs
|
|
</label>
|
|
|
|
<ul class="md-nav__list" data-md-scrollfix>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../.." class="md-nav__link">
|
|
Welcome to MkDocs
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../Credits/" class="md-nav__link">
|
|
Icon Credits
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../Game%20Making%20Tips/" class="md-nav__link">
|
|
Tips and tricks for making a LibGDX game
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../unique%20parameters/" class="md-nav__link">
|
|
Unique parameters
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../../uniques/" class="md-nav__link">
|
|
Uniques
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item md-nav__item--active md-nav__item--nested">
|
|
|
|
|
|
<input class="md-nav__toggle md-toggle" data-md-toggle="__nav_6" type="checkbox" id="__nav_6" checked>
|
|
|
|
|
|
|
|
|
|
<label class="md-nav__link" for="__nav_6">
|
|
Wiki
|
|
<span class="md-nav__icon md-icon"></span>
|
|
</label>
|
|
|
|
<nav class="md-nav" aria-label="Wiki" data-md-level="1">
|
|
<label class="md-nav__title" for="__nav_6">
|
|
<span class="md-nav__icon md-icon"></span>
|
|
Wiki
|
|
</label>
|
|
<ul class="md-nav__list" data-md-scrollfix>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../Audiovisual-Mods/" class="md-nav__link">
|
|
Audiovisual Mods
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../Building-locally-without-Android-Studio/" class="md-nav__link">
|
|
Building locally without Android Studio
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../Civilization-related-JSON-files/" class="md-nav__link">
|
|
Civilization related JSON files
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../Coding-standards/" class="md-nav__link">
|
|
Coding standards
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../Creating-a-custom-tileset/" class="md-nav__link">
|
|
How to make Unciv use your custom tileset
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../Force-rating-calculation/" class="md-nav__link">
|
|
Force rating
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../From-code-to-deployment/" class="md-nav__link">
|
|
From code to deployment
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../Getting-Started/" class="md-nav__link">
|
|
Getting Started
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../Home/" class="md-nav__link">
|
|
Home
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../Installing-on-macOS/" class="md-nav__link">
|
|
Installing on macOS
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../JSON-files-for-mods/" class="md-nav__link">
|
|
JSON files for mods
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../Making-a-new-Civilization/" class="md-nav__link">
|
|
Making a new Civilization
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../Map-related-JSON-files/" class="md-nav__link">
|
|
Map related JSON files
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../Miscellaneous-JSON-files/" class="md-nav__link">
|
|
Miscellaneous JSON files
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../Mods/" class="md-nav__link">
|
|
Mods
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../Project-structure-and-major-classes/" class="md-nav__link">
|
|
Project structure
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../Regions/" class="md-nav__link">
|
|
Regions
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../Translating/" class="md-nav__link">
|
|
Translating
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../Translations%2C-mods%2C-and-modding-freedom-in-Open-Source/" class="md-nav__link">
|
|
Translations, mods, and modding freedom in Open Source
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item md-nav__item--active">
|
|
|
|
<input class="md-nav__toggle md-toggle" data-md-toggle="toc" type="checkbox" id="__toc">
|
|
|
|
|
|
|
|
<label class="md-nav__link md-nav__link--active" for="__toc">
|
|
Uniques
|
|
<span class="md-nav__icon md-icon"></span>
|
|
</label>
|
|
|
|
<a href="./" class="md-nav__link md-nav__link--active">
|
|
Uniques
|
|
</a>
|
|
|
|
|
|
|
|
<nav class="md-nav md-nav--secondary" aria-label="Table of contents">
|
|
|
|
|
|
|
|
|
|
<label class="md-nav__title" for="__toc">
|
|
<span class="md-nav__icon md-icon"></span>
|
|
Table of contents
|
|
</label>
|
|
<ul class="md-nav__list" data-md-component="toc" data-md-scrollfix>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#overview" class="md-nav__link">
|
|
Overview
|
|
</a>
|
|
|
|
<nav class="md-nav" aria-label="Overview">
|
|
<ul class="md-nav__list">
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#generated-documentation" class="md-nav__link">
|
|
Generated Documentation
|
|
</a>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#unique-locations" class="md-nav__link">
|
|
Unique locations
|
|
</a>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#parameter-types" class="md-nav__link">
|
|
Parameter types
|
|
</a>
|
|
|
|
<nav class="md-nav" aria-label="Parameter types">
|
|
<ul class="md-nav__list">
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#stats" class="md-nav__link">
|
|
stats
|
|
</a>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#tilefilter" class="md-nav__link">
|
|
tileFilter
|
|
</a>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#unitfilter" class="md-nav__link">
|
|
unitFilter
|
|
</a>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#cityfilter" class="md-nav__link">
|
|
cityFilter
|
|
</a>
|
|
|
|
</li>
|
|
|
|
</ul>
|
|
</nav>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#constructionfilter" class="md-nav__link">
|
|
constructionFilter
|
|
</a>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#conditionals" class="md-nav__link">
|
|
Conditionals
|
|
</a>
|
|
|
|
</li>
|
|
|
|
</ul>
|
|
</nav>
|
|
|
|
</li>
|
|
|
|
</ul>
|
|
|
|
</nav>
|
|
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../Unit-related-JSON-files/" class="md-nav__link">
|
|
Unit related JSON files
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../_Footer/" class="md-nav__link">
|
|
Footer
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../_Sidebar/" class="md-nav__link">
|
|
[Home](.)
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
</ul>
|
|
</nav>
|
|
</li>
|
|
|
|
|
|
|
|
</ul>
|
|
</nav>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
|
|
<div class="md-sidebar md-sidebar--secondary" data-md-component="sidebar" data-md-type="toc" >
|
|
<div class="md-sidebar__scrollwrap">
|
|
<div class="md-sidebar__inner">
|
|
|
|
|
|
<nav class="md-nav md-nav--secondary" aria-label="Table of contents">
|
|
|
|
|
|
|
|
|
|
<label class="md-nav__title" for="__toc">
|
|
<span class="md-nav__icon md-icon"></span>
|
|
Table of contents
|
|
</label>
|
|
<ul class="md-nav__list" data-md-component="toc" data-md-scrollfix>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#overview" class="md-nav__link">
|
|
Overview
|
|
</a>
|
|
|
|
<nav class="md-nav" aria-label="Overview">
|
|
<ul class="md-nav__list">
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#generated-documentation" class="md-nav__link">
|
|
Generated Documentation
|
|
</a>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#unique-locations" class="md-nav__link">
|
|
Unique locations
|
|
</a>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#parameter-types" class="md-nav__link">
|
|
Parameter types
|
|
</a>
|
|
|
|
<nav class="md-nav" aria-label="Parameter types">
|
|
<ul class="md-nav__list">
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#stats" class="md-nav__link">
|
|
stats
|
|
</a>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#tilefilter" class="md-nav__link">
|
|
tileFilter
|
|
</a>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#unitfilter" class="md-nav__link">
|
|
unitFilter
|
|
</a>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#cityfilter" class="md-nav__link">
|
|
cityFilter
|
|
</a>
|
|
|
|
</li>
|
|
|
|
</ul>
|
|
</nav>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#constructionfilter" class="md-nav__link">
|
|
constructionFilter
|
|
</a>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#conditionals" class="md-nav__link">
|
|
Conditionals
|
|
</a>
|
|
|
|
</li>
|
|
|
|
</ul>
|
|
</nav>
|
|
|
|
</li>
|
|
|
|
</ul>
|
|
|
|
</nav>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
<div class="md-content" data-md-component="content">
|
|
<article class="md-content__inner md-typeset">
|
|
|
|
|
|
|
|
|
|
<h1>Uniques</h1>
|
|
|
|
<ul>
|
|
<li><a href="#overview">Overview</a></li>
|
|
<li><a href="#generated-documentation">Generated Documentation</a></li>
|
|
<li><a href="#unique-locations">Unique locations</a></li>
|
|
<li><a href="#parameter-types">Parameter types</a><ul>
|
|
<li><a href="#stats">stats</a></li>
|
|
<li><a href="#tilefilter">tileFilter</a></li>
|
|
<li><a href="#unitfilter">unitFilter</a></li>
|
|
<li><a href="#cityfilter">cityFilter</a></li>
|
|
<li><a href="#constructionfilter">buildingFilter</a></li>
|
|
</ul>
|
|
</li>
|
|
</ul>
|
|
<h2 id="overview">Overview</h2>
|
|
<p>Every type of object has some traits that are shared across all, or most, objects of its kind. For example, a building's stat increase, cost and required tech; a unit's type, movement and attack; a resource's type, improvement and bonus stats from improvement. All such traits have their own fields in the said object types.</p>
|
|
<p>But there are also other traits, that are only in a small subset of objects will have. Units that can see submarines from more than one tile away, or can move after attacking, or has a combat bonus against a certain other type of unit. Buildings that give a free great person, or improve stats dependent on the population of a city, or provide extra yield to certain tiles. These traits cannot be given their own fields due to the huge number of them.</p>
|
|
<p>Instead, every special trait that an object has is encoded into a single parameter: the list of unique traits, or "uniques".</p>
|
|
<p>In the json files, this looks something like <code>"uniques": ["Requires a [Market] in all cities", "Cost increases by [30] per owned city"]</code>.</p>
|
|
<p>As seen in the above example, in order to provide flexibility and generalization, Uniques have certain <em>parameters</em>, marked by the fact that they are inside square braces. These parameters can be changed, and the game will recognize the text inside them and act accordingly.</p>
|
|
<p>A list of all available uniques can be found <a href="https://github.com/yairm210/Unciv/blob/master/docs/uniques.md">here</a>.</p>
|
|
<h3 id="generated-documentation">Generated Documentation</h3>
|
|
<p>This part of the wiki is human-edited and partially out of date. However, we now have automatically generated documentation, complete for all Uniques that have been updated to the new UniqueType system. It is part of the main source tree and <a href="/docs/uniques.md">can be found here.</a>. This version should always be up-to-date with the uniques and conditionals currently supported in the game.</p>
|
|
<h3 id="unique-locations">Unique locations</h3>
|
|
<p>Most uniques are "Global uniques" - meaning, they can be put in one of these places:
|
|
- Nation uniques - Always active for a specific Nation
|
|
- Policy uniques - Active once the policy has been chosen
|
|
- Building uniques - Active once the building has been constructed in any city
|
|
- Tech uniques - Active once the tech has been researched
|
|
- Era uniques - Active once in the specified era
|
|
- Religion uniques - Founder & Enhancer beliefs from your religion</p>
|
|
<p>Most uniques are <em>ongoing</em> - they describe something continuous. Some, however, are one-time actions (free technology, free unit, etc) - these cannot be put in a Nation unique, since unlike the other categories, there is no specific time to activate them. Such uniques will be marked in the documentation as "one time effect".</p>
|
|
<h3 id="parameter-types">Parameter types</h3>
|
|
<p>Parameters come in various types, and will be addressed as such inside the [square brackets].</p>
|
|
<ul>
|
|
<li>amount - This indicates a whole number, possibly with a + or - sign, such as "2", "+13", or "-3".</li>
|
|
<li>unitName, buildingName, improvementName etc - Rather self explanatory. Examples: "Warrior", "Library", and "Mine", accordingly.</li>
|
|
<li>stat - This is one of the 7 major stats in the game - "Gold", "Science", "Production", "Food", "Happiness", "Culture" and "Faith". Note that the stat names need to be capitalized!</li>
|
|
<li>stats, tileFilter, unitFilter, cityFilter, constructionFilter/buildingFilter - these are more complex and are addressed individually</li>
|
|
</ul>
|
|
<h4 id="stats">stats</h4>
|
|
<p>This indicates a text comprised of specific stats and is slightly more complex.</p>
|
|
<p>Each stats is comprised of several stat changes, each in the form of "+{amount} {stat}", where 'stat' is one of the seven major stats mentioned above.
|
|
For example: "+1 Science".</p>
|
|
<p>These can be strung together with ", " between them, for example: "+2 Production, +3 Food".</p>
|
|
<p>A full example would be, for the "[stats] from every [buildingName]" unique:</p>
|
|
<p>"[+1 Culture, +1 Gold] from every [Barracks]"</p>
|
|
<h4 id="tilefilter">tileFilter</h4>
|
|
<p>TileFilters are split up into two parts: terrainFilters and improvementFilters. TerrainFilters only check if the tile itself has certain characteristics, while the improvementFilters only checks the improvement on a tile. Using the tileFilter itself will check both of these.</p>
|
|
<p>terrainFilters allow us to specify tiles according to a number of different aspects:</p>
|
|
<ul>
|
|
<li>A filter names a specific json attribute (by name):<ul>
|
|
<li>Base terrain</li>
|
|
<li>Terrain features</li>
|
|
<li>Base terrain uniques</li>
|
|
<li>Terrain feature uniques</li>
|
|
<li>Resource</li>
|
|
<li>Natural wonder</li>
|
|
</ul>
|
|
</li>
|
|
<li>Or the filter is a constant string choosing a derived test:<ul>
|
|
<li>"All"</li>
|
|
<li>"Water", "Land"</li>
|
|
<li>"Coastal" (at least one direct neighbor is a coast)</li>
|
|
<li>"River" (as in all 'river on tile' contexts, it means 'adjacent to a river on at least one side')</li>
|
|
<li>"Open terrain", "Rough terrain" (note all terrain not having the rough unique is counted as open)</li>
|
|
<li>"Friendly Land" - land belonging to you, or other civs with open borders to you</li>
|
|
<li>"Foreign Land" - any land that isn't friendly land</li>
|
|
<li>"Enemy land" - any land belonging to a civ you are at war with</li>
|
|
<li>"Water resource", "Strategic resource", "Luxury resource", "Bonus resource"</li>
|
|
<li>"Natural Wonder" (as opposed to above which means testing for a specific Natural Wonder by name, this tests for any of them)</li>
|
|
</ul>
|
|
</li>
|
|
</ul>
|
|
<p>Please note all of these are <em>case-sensitive</em>.</p>
|
|
<p>Also note: Resource filters depend on whether a viewing civ is known in the context where the filter runs. Water and specific tests require a viewing civ, and if the resource needs a tech to be visible, that tech to be researched by the viewing civ. The other resource category tests can succeed without a known viewing civ only for resources not requiring any tech. So - test your mod!</p>
|
|
<p>So for instance, the unique "[stats] from [tileFilter] tiles [cityFilter]" can match several cases:
|
|
- "[+2 Food] from [Lakes] tiles [in this city]"
|
|
- "[+1 Gold] from [Water] tiles [in all cities]"
|
|
- "[+1 Production] from [Forest] tiles [in all coastal cities]"</p>
|
|
<p>Please note that using resources is most use cases, but not in combat ones.</p>
|
|
<p>This is due to the fact that resources can be visible to some civs while invisible to others - so if you're attacking with a +10% combat bonus from Coal, while the enemy can't see coal, it could get weird.</p>
|
|
<p>improvementFilters only check for the improvements on a tile. The following are implemented:
|
|
- improvement name (Note that "Road" and "Railroad" <em>do</em> work as improvementFilters, but not as tileFilters at the moment.)
|
|
- "All"
|
|
- "Great Improvements", "Great"
|
|
- "All Road" - for Roads & Railroads</p>
|
|
<h4 id="unitfilter">unitFilter</h4>
|
|
<p>unitFilters allow us to activate uniques for specific units, based on:</p>
|
|
<ul>
|
|
<li>unit name</li>
|
|
<li>unit type - e.g. Melee, Ranged, WaterSubmarine, etc.</li>
|
|
<li>"Land", "Water", "Air"</li>
|
|
<li>"land units", "water units", "air units"</li>
|
|
<li>"non-air" for non-air non-missile units</li>
|
|
<li>"Military", "military units"</li>
|
|
<li>"Civilian", "civilian units"</li>
|
|
<li>"All"</li>
|
|
<li>"Melee"</li>
|
|
<li>"Ranged"</li>
|
|
<li>"Nuclear Weapon"</li>
|
|
<li>"Great Person", "Great"</li>
|
|
<li>"Embarked"</li>
|
|
<li>"Wounded", "wounded units"</li>
|
|
<li>"Barbarians", "Barbarian"</li>
|
|
<li>"City-State"</li>
|
|
<li>Any exact unique the unit has</li>
|
|
<li>Any exact unique the unit type has</li>
|
|
<li>Any combination of the above (will match only if all match). The format is "{filter1} {filter2}" and can match any number of filters. For example: "[{Military} {Water}]" units, "[{Wounded} {Armor}]" units, etc. No space or other text is allowed between the "[" and the first "{".</li>
|
|
</ul>
|
|
<h4 id="cityfilter">cityFilter</h4>
|
|
<p>cityFilters allow us to choose the range of cities affected by this unique:</p>
|
|
<ul>
|
|
<li>"in this city"</li>
|
|
<li>"in all cities"</li>
|
|
<li>"in other cities"</li>
|
|
<li>"in all coastal cities"</li>
|
|
<li>"in capital"</li>
|
|
<li>"in all non-occupied cities" - all cities that are not puppets and don't have extra unhappiness from being recently conquered</li>
|
|
<li>"in all cities with a world wonder"</li>
|
|
<li>"in all cities connected to capital"</li>
|
|
<li>"in all cities with a garrison"</li>
|
|
<li>"in non-enemy foreign cities" - In all cities owned by civs other than you that you are not at war with</li>
|
|
<li>"in foreign cities"</li>
|
|
<li>"in annexed cities"</li>
|
|
<li>"in holy cities"</li>
|
|
<li>"in City-State cities"</li>
|
|
<li>"in cities following this religion" - Should only be used in pantheon/follower uniques for religions</li>
|
|
<li>"in all cities in which the majority religion is a major religion"</li>
|
|
<li>"in all cities in which the majority religion is a enhanced religion"</li>
|
|
</ul>
|
|
<h3 id="constructionfilter">constructionFilter</h3>
|
|
<p>ConstructionFilters allow us to activate uniques while constructing certain buildings or units.
|
|
For units, the UnitFilter is called. For Buildings, the following options are implemented:</p>
|
|
<ul>
|
|
<li>"All"</li>
|
|
<li>"Buildings", "Building"</li>
|
|
<li>"Wonders", "Wonders"</li>
|
|
<li>"National Wonder"</li>
|
|
<li>"World Wonder" -- All wonders that are not national wonders</li>
|
|
<li>building name</li>
|
|
<li>The name of the building it replaces (so for example uniques for libraries will apply to paper makers as well)</li>
|
|
<li>an exact unique the building has (e.g.: "spaceship part")</li>
|
|
<li>"Culture", "Gold", etc. if the building is "stat-related" for that stat. Stat-related buildings are defined as one of the following:</li>
|
|
<li>Provides that stat directly (e.g. +1 Culture)</li>
|
|
<li>Provides a percentage bonus for that stat (e.g. +10% Production)</li>
|
|
<li>Provides that stat as a bonus for resources (e.g. +1 Food for Wheat)</li>
|
|
<li>Provides that stat per some amount of population (e.g. +1 Science for every 2 population [cityFilter])</li>
|
|
</ul>
|
|
<h3 id="conditionals">Conditionals</h3>
|
|
<p>Some uniques also allow for the placing of conditionals. These are conditions that need to be met for the unique to be active. In the unique "[+10]% Growth \<when at war>", the <code><when at war></code> part is a conditional, denoted by the pointy brackets. Making a building with this unique will provide a 10% Growth boost to cities with this building, but only as long as the empire is at war.</p>
|
|
<p>Multiple conditionals can be applied to the same unique, for example, you can have a promotion with the following unique:
|
|
"[+33]% Strength \<vs [Armored] units> \<in [Open terrain] tiles>"
|
|
Which will only apply the strength boost when fighting armored units in open terrain.</p>
|
|
<p>This system is currently in development, so only a small amount of conditionals exist, and only a few uniques can have conditionals for now. It will be expanded greatly, improving the amount of combinations that can be made and therefore the amount of different uniques that exist.
|
|
Uniques that support conditionals will be denoted with a "©" sign for now.
|
|
"Quantity of Resources gifted by City-States increased by 100%" - Replaced with "Quantity of Resources gifted by City-States increased by [amount]%"</p>
|
|
|
|
|
|
</article>
|
|
</div>
|
|
</div>
|
|
|
|
</main>
|
|
|
|
<footer class="md-footer">
|
|
|
|
<nav class="md-footer__inner md-grid" aria-label="Footer">
|
|
|
|
|
|
<a href="../Translations%2C-mods%2C-and-modding-freedom-in-Open-Source/" class="md-footer__link md-footer__link--prev" aria-label="Previous: Translations, mods, and modding freedom in Open Source" rel="prev">
|
|
<div class="md-footer__button md-icon">
|
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 11v2H8l5.5 5.5-1.42 1.42L4.16 12l7.92-7.92L13.5 5.5 8 11h12z"/></svg>
|
|
</div>
|
|
<div class="md-footer__title">
|
|
<div class="md-ellipsis">
|
|
<span class="md-footer__direction">
|
|
Previous
|
|
</span>
|
|
Translations, mods, and modding freedom in Open Source
|
|
</div>
|
|
</div>
|
|
</a>
|
|
|
|
|
|
|
|
<a href="../Unit-related-JSON-files/" class="md-footer__link md-footer__link--next" aria-label="Next: Unit related JSON files" rel="next">
|
|
<div class="md-footer__title">
|
|
<div class="md-ellipsis">
|
|
<span class="md-footer__direction">
|
|
Next
|
|
</span>
|
|
Unit related JSON files
|
|
</div>
|
|
</div>
|
|
<div class="md-footer__button md-icon">
|
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M4 11v2h12l-5.5 5.5 1.42 1.42L19.84 12l-7.92-7.92L10.5 5.5 16 11H4z"/></svg>
|
|
</div>
|
|
</a>
|
|
|
|
</nav>
|
|
|
|
<div class="md-footer-meta md-typeset">
|
|
<div class="md-footer-meta__inner md-grid">
|
|
<div class="md-copyright">
|
|
|
|
|
|
Made with
|
|
<a href="https://squidfunk.github.io/mkdocs-material/" target="_blank" rel="noopener">
|
|
Material for MkDocs
|
|
</a>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
</div>
|
|
</footer>
|
|
|
|
</div>
|
|
<div class="md-dialog" data-md-component="dialog">
|
|
<div class="md-dialog__inner md-typeset"></div>
|
|
</div>
|
|
<script id="__config" type="application/json">{"base": "../..", "features": [], "translations": {"clipboard.copy": "Copy to clipboard", "clipboard.copied": "Copied to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Search", "search.result.placeholder": "Type to start searching", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents", "search.result.more.one": "1 more on this page", "search.result.more.other": "# more on this page", "search.result.term.missing": "Missing", "select.version.title": "Select version"}, "search": "../../assets/javascripts/workers/search.bd0b6b67.min.js"}</script>
|
|
|
|
|
|
<script src="../../assets/javascripts/bundle.8aa65030.min.js"></script>
|
|
|
|
|
|
</body>
|
|
</html> |