mirror of
https://github.com/MarioSpore/Grinch-AP.git
synced 2025-10-21 20:21:32 -06:00

* Init * remove submodule * Init * Update docs * Fix tests * Update to use apcivvi * Update Readme and codeowners * Minor changes * Remove .value from options (except starting hint) * Minor updates * remove unnecessary property * Cleanup Rules and Region * Fix output file generation * Implement feedback * Remove 'AP' tag and fix issue with format strings and using same quotes * Update worlds/civ_6/__init__.py Co-authored-by: Scipio Wright <scipiowright@gmail.com> * Minor docs changes * minor updates * Small rework of create items * Minor updates * Remove unused variable * Move client to Launcher Components with rest of similar clients * Revert "Move client to Launcher Components with rest of similar clients" This reverts commit f9fd5df9fdf19eaf4f1de54e21e3c33a74f02364. * modify component * Fix generation issues * Fix tests * Minor change * Add improvement and test case * Minor options changes * . * Preliminary Review * Fix failing test due to slot data serialization * Format json * Remove exclude missable boosts * Update options (update goody hut text, make research multiplier a range) * Update docs punctuation and slot data init * Move priority/excluded locations into options * Implement docs PR feedback * PR Feedback for options * PR feedback misc * Update location classification and fix client type * Fix typings * Update research cost multiplier * Remove unnecessary location priority code * Remove extrenous use of items() * WIP PR Feedback * WIP PR Feedback * Add victory event * Add option set for death link effect * PR improvements * Update post fill hint to support items with multiple classifications * remove unnecessary len * Move location exclusion logic * Update test to use set instead of accidental dict * Update docs around progressive eras and boost locations * Update docs for options to be more readable * Fix issue with filler items and prehints * Update filler_data to be static * Update links in docs * Minor updates and PR feedback * Update boosts data * Update era required items * Update existing techs * Update existing techs * move boost data class * Update reward data * Update prereq data * Update new items and progressive districts * Remove unused code * Make filler item name func more efficient * Update death link text * Move Civ6 to the end of readme * Fix bug with hidden locations and location.name * Partial PR Feedback Implementation * Format changes * Minor review feedback * Modify access rules to use list created in generate_early * Modify boost rules to precalculate requirements * Remove option checks from access rules * Fix issue with pre initialized dicts * Add inno setup for civ6 client * Update inno_setup.iss --------- Co-authored-by: Scipio Wright <scipiowright@gmail.com> Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com> Co-authored-by: Exempt-Medic <ExemptMedic@Gmail.com> Co-authored-by: NewSoupVi <57900059+NewSoupVi@users.noreply.github.com>
436 lines
10 KiB
Python
436 lines
10 KiB
Python
from typing import TYPE_CHECKING, List
|
|
|
|
if TYPE_CHECKING:
|
|
from ..Data import ExistingItemData
|
|
|
|
|
|
existing_civics: List["ExistingItemData"] = [
|
|
{
|
|
"Type": "CIVIC_CODE_OF_LAWS",
|
|
"Name": "Code of Laws",
|
|
"Cost": 20,
|
|
"EraType": "ERA_ANCIENT",
|
|
"UITreeRow": 0,
|
|
},
|
|
{
|
|
"Type": "CIVIC_CRAFTSMANSHIP",
|
|
"Name": "Craftsmanship",
|
|
"Cost": 40,
|
|
"EraType": "ERA_ANCIENT",
|
|
"UITreeRow": -2,
|
|
},
|
|
{
|
|
"Type": "CIVIC_FOREIGN_TRADE",
|
|
"Name": "Foreign Trade",
|
|
"Cost": 40,
|
|
"EraType": "ERA_ANCIENT",
|
|
"UITreeRow": 2,
|
|
},
|
|
{
|
|
"Type": "CIVIC_MILITARY_TRADITION",
|
|
"Name": "Military Tradition",
|
|
"Cost": 50,
|
|
"EraType": "ERA_ANCIENT",
|
|
"UITreeRow": -3,
|
|
},
|
|
{
|
|
"Type": "CIVIC_STATE_WORKFORCE",
|
|
"Name": "State Workforce",
|
|
"Cost": 70,
|
|
"EraType": "ERA_ANCIENT",
|
|
"UITreeRow": 0,
|
|
},
|
|
{
|
|
"Type": "CIVIC_EARLY_EMPIRE",
|
|
"Name": "Early Empire",
|
|
"Cost": 70,
|
|
"EraType": "ERA_ANCIENT",
|
|
"UITreeRow": 1,
|
|
},
|
|
{
|
|
"Type": "CIVIC_MYSTICISM",
|
|
"Name": "Mysticism",
|
|
"Cost": 50,
|
|
"EraType": "ERA_ANCIENT",
|
|
"UITreeRow": 3,
|
|
},
|
|
{
|
|
"Type": "CIVIC_GAMES_RECREATION",
|
|
"Name": "Games Recreation",
|
|
"Cost": 110,
|
|
"EraType": "ERA_CLASSICAL",
|
|
"UITreeRow": -2,
|
|
},
|
|
{
|
|
"Type": "CIVIC_POLITICAL_PHILOSOPHY",
|
|
"Name": "Political Philosophy",
|
|
"Cost": 110,
|
|
"EraType": "ERA_CLASSICAL",
|
|
"UITreeRow": 0,
|
|
},
|
|
{
|
|
"Type": "CIVIC_DRAMA_POETRY",
|
|
"Name": "Drama and Poetry",
|
|
"Cost": 110,
|
|
"EraType": "ERA_CLASSICAL",
|
|
"UITreeRow": 2,
|
|
},
|
|
{
|
|
"Type": "CIVIC_MILITARY_TRAINING",
|
|
"Name": "Military Training",
|
|
"Cost": 120,
|
|
"EraType": "ERA_CLASSICAL",
|
|
"UITreeRow": -3,
|
|
},
|
|
{
|
|
"Type": "CIVIC_DEFENSIVE_TACTICS",
|
|
"Name": "Defensive Tactics",
|
|
"Cost": 175,
|
|
"EraType": "ERA_CLASSICAL",
|
|
"UITreeRow": -1,
|
|
},
|
|
{
|
|
"Type": "CIVIC_RECORDED_HISTORY",
|
|
"Name": "Recorded History",
|
|
"Cost": 175,
|
|
"EraType": "ERA_CLASSICAL",
|
|
"UITreeRow": 1,
|
|
},
|
|
{
|
|
"Type": "CIVIC_THEOLOGY",
|
|
"Name": "Theology",
|
|
"Cost": 120,
|
|
"EraType": "ERA_CLASSICAL",
|
|
"UITreeRow": 3,
|
|
},
|
|
{
|
|
"Type": "CIVIC_NAVAL_TRADITION",
|
|
"Name": "Naval Tradition",
|
|
"Cost": 220,
|
|
"EraType": "ERA_MEDIEVAL",
|
|
"UITreeRow": -2,
|
|
},
|
|
{
|
|
"Type": "CIVIC_FEUDALISM",
|
|
"Name": "Feudalism",
|
|
"Cost": 300,
|
|
"EraType": "ERA_MEDIEVAL",
|
|
"UITreeRow": -1,
|
|
},
|
|
{
|
|
"Type": "CIVIC_CIVIL_SERVICE",
|
|
"Name": "Civil Service",
|
|
"Cost": 300,
|
|
"EraType": "ERA_MEDIEVAL",
|
|
"UITreeRow": 1,
|
|
},
|
|
{
|
|
"Type": "CIVIC_MERCENARIES",
|
|
"Name": "Mercenaries",
|
|
"Cost": 340,
|
|
"EraType": "ERA_MEDIEVAL",
|
|
"UITreeRow": -3,
|
|
},
|
|
{
|
|
"Type": "CIVIC_MEDIEVAL_FAIRES",
|
|
"Name": "Medieval Faires",
|
|
"Cost": 420,
|
|
"EraType": "ERA_MEDIEVAL",
|
|
"UITreeRow": -1,
|
|
},
|
|
{
|
|
"Type": "CIVIC_GUILDS",
|
|
"Name": "Guilds",
|
|
"Cost": 420,
|
|
"EraType": "ERA_MEDIEVAL",
|
|
"UITreeRow": 1,
|
|
},
|
|
{
|
|
"Type": "CIVIC_DIVINE_RIGHT",
|
|
"Name": "Divine Right",
|
|
"Cost": 340,
|
|
"EraType": "ERA_MEDIEVAL",
|
|
"UITreeRow": 3,
|
|
},
|
|
{
|
|
"Type": "CIVIC_EXPLORATION",
|
|
"Name": "Exploration",
|
|
"Cost": 440,
|
|
"EraType": "ERA_RENAISSANCE",
|
|
"UITreeRow": -3,
|
|
},
|
|
{
|
|
"Type": "CIVIC_HUMANISM",
|
|
"Name": "Humanism",
|
|
"Cost": 600,
|
|
"EraType": "ERA_RENAISSANCE",
|
|
"UITreeRow": -1,
|
|
},
|
|
{
|
|
"Type": "CIVIC_DIPLOMATIC_SERVICE",
|
|
"Name": "Diplomatic Service",
|
|
"Cost": 600,
|
|
"EraType": "ERA_RENAISSANCE",
|
|
"UITreeRow": 1,
|
|
},
|
|
{
|
|
"Type": "CIVIC_REFORMED_CHURCH",
|
|
"Name": "Reformed Church",
|
|
"Cost": 440,
|
|
"EraType": "ERA_RENAISSANCE",
|
|
"UITreeRow": 3,
|
|
},
|
|
{
|
|
"Type": "CIVIC_MERCANTILISM",
|
|
"Name": "Mercantilism",
|
|
"Cost": 720,
|
|
"EraType": "ERA_RENAISSANCE",
|
|
"UITreeRow": -1,
|
|
},
|
|
{
|
|
"Type": "CIVIC_THE_ENLIGHTENMENT",
|
|
"Name": "The Enlightenment",
|
|
"Cost": 720,
|
|
"EraType": "ERA_RENAISSANCE",
|
|
"UITreeRow": 1,
|
|
},
|
|
{
|
|
"Type": "CIVIC_COLONIALISM",
|
|
"Name": "Colonialism",
|
|
"Cost": 800,
|
|
"EraType": "ERA_INDUSTRIAL",
|
|
"UITreeRow": -3,
|
|
},
|
|
{
|
|
"Type": "CIVIC_CIVIL_ENGINEERING",
|
|
"Name": "Civil Engineering",
|
|
"Cost": 1010,
|
|
"EraType": "ERA_INDUSTRIAL",
|
|
"UITreeRow": -1,
|
|
},
|
|
{
|
|
"Type": "CIVIC_NATIONALISM",
|
|
"Name": "Nationalism",
|
|
"Cost": 1010,
|
|
"EraType": "ERA_INDUSTRIAL",
|
|
"UITreeRow": 0,
|
|
},
|
|
{
|
|
"Type": "CIVIC_OPERA_BALLET",
|
|
"Name": "Opera and Ballet",
|
|
"Cost": 800,
|
|
"EraType": "ERA_INDUSTRIAL",
|
|
"UITreeRow": 2,
|
|
},
|
|
{
|
|
"Type": "CIVIC_NATURAL_HISTORY",
|
|
"Name": "Natural History",
|
|
"Cost": 1050,
|
|
"EraType": "ERA_INDUSTRIAL",
|
|
"UITreeRow": -3,
|
|
},
|
|
{
|
|
"Type": "CIVIC_SCORCHED_EARTH",
|
|
"Name": "Scorched Earth",
|
|
"Cost": 1210,
|
|
"EraType": "ERA_INDUSTRIAL",
|
|
"UITreeRow": 2,
|
|
},
|
|
{
|
|
"Type": "CIVIC_URBANIZATION",
|
|
"Name": "Urbanization",
|
|
"Cost": 1210,
|
|
"EraType": "ERA_INDUSTRIAL",
|
|
"UITreeRow": -1,
|
|
},
|
|
{
|
|
"Type": "CIVIC_CONSERVATION",
|
|
"Name": "Conservation",
|
|
"Cost": 1540,
|
|
"EraType": "ERA_MODERN",
|
|
"UITreeRow": -3,
|
|
},
|
|
{
|
|
"Type": "CIVIC_CAPITALISM",
|
|
"Name": "Capitalism",
|
|
"Cost": 1580,
|
|
"EraType": "ERA_MODERN",
|
|
"UITreeRow": -2,
|
|
},
|
|
{
|
|
"Type": "CIVIC_NUCLEAR_PROGRAM",
|
|
"Name": "Nuclear Program",
|
|
"Cost": 1715,
|
|
"EraType": "ERA_MODERN",
|
|
"UITreeRow": -2,
|
|
},
|
|
{
|
|
"Type": "CIVIC_MASS_MEDIA",
|
|
"Name": "Mass Media",
|
|
"Cost": 1540,
|
|
"EraType": "ERA_MODERN",
|
|
"UITreeRow": -1,
|
|
},
|
|
{
|
|
"Type": "CIVIC_MOBILIZATION",
|
|
"Name": "Mobilization",
|
|
"Cost": 1540,
|
|
"EraType": "ERA_MODERN",
|
|
"UITreeRow": 1,
|
|
},
|
|
{
|
|
"Type": "CIVIC_IDEOLOGY",
|
|
"Name": "Ideology",
|
|
"Cost": 1640,
|
|
"EraType": "ERA_MODERN",
|
|
"UITreeRow": -1,
|
|
},
|
|
{
|
|
"Type": "CIVIC_SUFFRAGE",
|
|
"Name": "Suffrage",
|
|
"Cost": 1640,
|
|
"EraType": "ERA_MODERN",
|
|
"UITreeRow": 0,
|
|
},
|
|
{
|
|
"Type": "CIVIC_TOTALITARIANISM",
|
|
"Name": "Totalitarianism",
|
|
"Cost": 1640,
|
|
"EraType": "ERA_MODERN",
|
|
"UITreeRow": 2,
|
|
},
|
|
{
|
|
"Type": "CIVIC_CLASS_STRUGGLE",
|
|
"Name": "Class Struggle",
|
|
"Cost": 1640,
|
|
"EraType": "ERA_MODERN",
|
|
"UITreeRow": 3,
|
|
},
|
|
{
|
|
"Type": "CIVIC_COLD_WAR",
|
|
"Name": "Cold War",
|
|
"Cost": 2185,
|
|
"EraType": "ERA_ATOMIC",
|
|
"UITreeRow": -1,
|
|
},
|
|
{
|
|
"Type": "CIVIC_PROFESSIONAL_SPORTS",
|
|
"Name": "Professional Sports",
|
|
"Cost": 2185,
|
|
"EraType": "ERA_ATOMIC",
|
|
"UITreeRow": 2,
|
|
},
|
|
{
|
|
"Type": "CIVIC_CULTURAL_HERITAGE",
|
|
"Name": "Cultural Heritage",
|
|
"Cost": 1955,
|
|
"EraType": "ERA_ATOMIC",
|
|
"UITreeRow": -3,
|
|
},
|
|
{
|
|
"Type": "CIVIC_RAPID_DEPLOYMENT",
|
|
"Name": "Rapid Deployment",
|
|
"Cost": 2415,
|
|
"EraType": "ERA_ATOMIC",
|
|
"UITreeRow": -1,
|
|
},
|
|
{
|
|
"Type": "CIVIC_SPACE_RACE",
|
|
"Name": "Space Race",
|
|
"Cost": 2415,
|
|
"EraType": "ERA_ATOMIC",
|
|
"UITreeRow": 1,
|
|
},
|
|
{
|
|
"Type": "CIVIC_GLOBALIZATION",
|
|
"Name": "Globalization",
|
|
"Cost": 2880,
|
|
"EraType": "ERA_INFORMATION",
|
|
"UITreeRow": 0,
|
|
},
|
|
{
|
|
"Type": "CIVIC_SOCIAL_MEDIA",
|
|
"Name": "Social Media",
|
|
"Cost": 2880,
|
|
"EraType": "ERA_INFORMATION",
|
|
"UITreeRow": 2,
|
|
},
|
|
{
|
|
"Type": "CIVIC_FUTURE_CIVIC",
|
|
"Name": "Future Civic",
|
|
"Cost": 3500,
|
|
"EraType": "ERA_FUTURE",
|
|
"UITreeRow": 1,
|
|
},
|
|
{
|
|
"Type": "CIVIC_ENVIRONMENTALISM",
|
|
"Name": "Environmentalism",
|
|
"Cost": 2880,
|
|
"EraType": "ERA_INFORMATION",
|
|
"UITreeRow": -2,
|
|
},
|
|
{
|
|
"Type": "CIVIC_CORPORATE_LIBERTARIANISM",
|
|
"Name": "Corporate Libertarianism",
|
|
"Cost": 3000,
|
|
"EraType": "ERA_INFORMATION",
|
|
"UITreeRow": 0,
|
|
},
|
|
{
|
|
"Type": "CIVIC_DIGITAL_DEMOCRACY",
|
|
"Name": "Digital Democracy",
|
|
"Cost": 3000,
|
|
"EraType": "ERA_INFORMATION",
|
|
"UITreeRow": 1,
|
|
},
|
|
{
|
|
"Type": "CIVIC_SYNTHETIC_TECHNOCRACY",
|
|
"Name": "Synthetic Technocracy",
|
|
"Cost": 3000,
|
|
"EraType": "ERA_INFORMATION",
|
|
"UITreeRow": 2,
|
|
},
|
|
{
|
|
"Type": "CIVIC_NEAR_FUTURE_GOVERNANCE",
|
|
"Name": "Near Future Governance",
|
|
"Cost": 3100,
|
|
"EraType": "ERA_INFORMATION",
|
|
"UITreeRow": -1,
|
|
},
|
|
{
|
|
"Type": "CIVIC_GLOBAL_WARMING_MITIGATION",
|
|
"Name": "Global Warming Mitigation",
|
|
"Cost": 3200,
|
|
"EraType": "ERA_FUTURE",
|
|
"UITreeRow": -2,
|
|
},
|
|
{
|
|
"Type": "CIVIC_SMART_POWER_DOCTRINE",
|
|
"Name": "Smart Power Doctrine",
|
|
"Cost": 3200,
|
|
"EraType": "ERA_FUTURE",
|
|
"UITreeRow": -1,
|
|
},
|
|
{
|
|
"Type": "CIVIC_INFORMATION_WARFARE",
|
|
"Name": "Information Warfare",
|
|
"Cost": 3200,
|
|
"EraType": "ERA_FUTURE",
|
|
"UITreeRow": 0,
|
|
},
|
|
{
|
|
"Type": "CIVIC_EXODUS_IMPERATIVE",
|
|
"Name": "Exodus Imperative",
|
|
"Cost": 3200,
|
|
"EraType": "ERA_FUTURE",
|
|
"UITreeRow": 1,
|
|
},
|
|
{
|
|
"Type": "CIVIC_CULTURAL_HEGEMONY",
|
|
"Name": "Cultural Hegemony",
|
|
"Cost": 3200,
|
|
"EraType": "ERA_FUTURE",
|
|
"UITreeRow": 2,
|
|
},
|
|
]
|