您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
《Theresmore 继续解锁》资源计时器&手动资源点击器
当前为
// ==UserScript== // @name Theresmore Helper 继续解锁助手 // @namespace http://tampermonkey.net/ // @version 1.0 // @description 《Theresmore 继续解锁》资源计时器&手动资源点击器 // @author Ymmzy // @match https://www.theresmoregame.com/play/ // @match https://theresmoregame.g8hh.com/ // @icon https://www.theresmoregame.com/play/favicon.ico // @license MIT // @grant none // @run-at document-idle // ==/UserScript== (function () { 'use strict'; const PAGES = { BUILD: 'Build', RESEARCH: 'Research', POPULATION: 'Population', ARMY: 'Army', MARKETPLACE: 'Marketplace', MAGIC: 'Magic', DIPLOMACY: 'Diplomacy' }; const PAGES_INDEX = { [PAGES.BUILD]: 0, [PAGES.RESEARCH]: 1, [PAGES.POPULATION]: 2, [PAGES.ARMY]: 4, [PAGES.MARKETPLACE]: 6, [PAGES.MAGIC]: 3, [PAGES.DIPLOMACY]: 5 }; const SUBPAGES = { CITY: 'City', COLONY: 'Colony', RESEARCH: 'Research', SPELLS: 'Spells', PRAYERS: 'Prayers', ARMY: 'Army', EXPLORE: 'Explore', ATTACK: 'Attack', GARRISON: 'Garrison' }; const SUBPAGES_INDEX = { [SUBPAGES.CITY]: 0, [SUBPAGES.COLONY]: 1, [SUBPAGES.RESEARCH]: 0, [SUBPAGES.SPELLS]: 0, [SUBPAGES.PRAYERS]: 1, [SUBPAGES.ARMY]: 0, [SUBPAGES.EXPLORE]: 1, [SUBPAGES.ATTACK]: 3, [SUBPAGES.GARRISON]: 4 }; const TOOLTIP_PREFIX = { BUILDING: 'bui_', TECH: 'tech_', PRAYER: 'pray_', UNIT: 'uni_', FACTION_IMPROVE: 'improve_', FACTION_DELEGATION: 'delegation_' }; var CONSTANTS = { PAGES, SUBPAGES, PAGES_INDEX, SUBPAGES_INDEX, TOOLTIP_PREFIX }; // https://stackoverflow.com/a/55366435 数字格式转化 class NumberParser { constructor(locale) { const format = new Intl.NumberFormat(locale); const parts = format.formatToParts(12345.6); const numerals = Array.from({ length: 10 }).map((_, i) => format.format(i)); const index = new Map(numerals.map((d, i) => [d, i])); this._group = new RegExp(`[${parts.find(d => d.type === 'group').value}]`, 'g'); this._decimal = new RegExp(`[${parts.find(d => d.type === 'decimal').value}]`); this._numeral = new RegExp(`[${numerals.join('')}]`, 'g'); this._index = d => index.get(d); } parse(string) { let multiplier = 1; if (string.includes('K')) { multiplier = 1000; } else if (string.includes('M')) { multiplier = 1000000; } string = string.replace('K', '').replace('M', '').trim(); return (string = string.replace(this._group, '').replace(this._decimal, '.').replace(this._numeral, this._index)) ? +string * multiplier : NaN; } } const numberParser = new NumberParser(); const sleep = miliseconds => new Promise(resolve => setTimeout(resolve, miliseconds)); //建筑数据 var buildings = [ { id: "common_house", cat: "living_quarters", tab: 1, age: 1, req: [ { type: "resource", id: "wood", value: 15, multi: 1.3 }, { type: "resource", id: "stone", value: 10, multi: 1.3 }, { type: "tech", id: "housing", value: 1 } ], gen: [ { type: "resource", id: "food", value: -1 }, { type: "resource", id: "gold", value: 0.2 }, { type: "resource", id: "research", value: 0.3 }, { type: "population", id: "unemployed", value: 1 } ] }, { id: "house_workers", cat: "living_quarters", tab: 1, age: 100, req: [ { type: "resource", id: "wood", value: 45, multi: 1.3 }, { type: "resource", id: "stone", value: 30, multi: 1.3 }, { type: "tech", id: "house_of_workers", value: 1 } ], gen: [ { type: "resource", id: "food", value: -1.5 }, { type: "population", id: "farmer", value: 1 }, { type: "population", id: "lumberjack", value: 1 }, { type: "population", id: "quarryman", value: 1 }, { type: "population", id: "miner", value: 1 }, { type: "resource", id: "gold", value: 0.5 }, { type: "resource", id: "research", value: 0.5 }, { type: "population", id: "unemployed", value: 1 } ] }, { id: "monument", cat: "living_quarters", cap: 1, tab: 1, age: 100, req: [ { type: "resource", id: "gold", value: 10 }, { type: "resource", id: "stone", value: 10 }, { type: "tech", id: "monument_past", value: 1 } ], gen: [ { type: "resource", id: "gold", value: 1 }, { type: "resource", id: "research", value: 1 }, { type: "population", id: "unemployed", value: 2 } ] }, { id: "hall_of_the_dead", cat: "living_quarters", tab: 1, age: 100, req: [ { type: "resource", id: "stone", value: 1000, multi: 2 }, { type: "resource", id: "tools", value: 500, multi: 2 }, { type: "resource", id: "cow", value: 170, multi: 1.5 }, { type: "tech", id: "servitude", value: 1 }, { type: "legacy", id: "hall_dead", value: 1 } ], gen: [ { type: "population", id: "unemployed", value: 2 }, { type: "resource", id: "research", value: 0.6 } ] }, { id: "city_hall", cat: "living_quarters", tab: 1, age: 1, req: [ { type: "resource", id: "gold", value: 1200, multi: 1.3 }, { type: "resource", id: "wood", value: 1000, multi: 1.3 }, { type: "resource", id: "stone", value: 750, multi: 1.3 }, { type: "resource", id: "copper", value: 400, multi: 1.3 }, { type: "resource", id: "iron", value: 400, multi: 1.3 }, { type: "resource", id: "tools", value: 150, multi: 1.3 }, { type: "tech", id: "municipal_administration", value: 1 } ], gen: [ { type: "resource", id: "food", value: -1.5 }, { type: "cap", id: "research", value: 250 }, { type: "population", id: "unemployed", value: 2 } ] }, { id: "mansion", cat: "living_quarters", tab: 1, age: 2, req: [ { type: "resource", id: "gold", value: 4000, multi: 1.3 }, { type: "resource", id: "wood", value: 2000, multi: 1.3 }, { type: "resource", id: "stone", value: 1000, multi: 1.3 }, { type: "resource", id: "tools", value: 200, multi: 1.3 }, { type: "resource", id: "building_material", value: 100, multi: 1.3 }, { type: "tech", id: "architecture", value: 1 } ], gen: [ { type: "resource", id: "food", value: -3 }, { type: "cap", id: "research", value: 500 }, { type: "population", id: "unemployed", value: 4 } ] }, { id: "residential_block", cat: "living_quarters", tab: 1, age: 3, req: [ { type: "resource", id: "gold", value: 12000, multi: 1.3 }, { type: "resource", id: "tools", value: 2000, multi: 1.3 }, { type: "resource", id: "building_material", value: 1000, multi: 1.3 }, { type: "resource", id: "supplies", value: 600, multi: 1.3 }, { type: "tech", id: "economics", value: 1 } ], gen: [ { type: "resource", id: "food", value: -5 }, { type: "population", id: "unemployed", value: 5 } ] }, { id: "ministry_interior", cat: "living_quarters", tab: 1, age: 100, req: [ { type: "resource", id: "food", value: 8000, multi: 1.2 }, { type: "resource", id: "stone", value: 8000, multi: 1.2 }, { type: "resource", id: "building_material", value: 4000, multi: 1.2 }, { type: "resource", id: "supplies", value: 4000, multi: 1.2 }, { type: "tech", id: "ministry_interior_t", value: 1 } ], gen: [ { type: "population", id: "merchant", value: 1 }, { type: "population", id: "professor", value: 1 }, { type: "population", id: "supplier", value: 1 }, { type: "resource", id: "research", value: 6 }, { type: "resource", id: "gold", value: 3 }, { type: "resource", id: "supplies", value: 0.5 }, { type: "cap", id: "research", value: 8000 }, { type: "cap", id: "gold", value: 5000 }, { type: "cap", id: "supplies", value: 3000 }, { type: "population", id: "unemployed", value: 4 } ] }, { id: "gan_eden", cat: "living_quarters", tab: 1, age: 4, req: [ { type: "resource", id: "food", value: 2000, multi: 1.2 }, { type: "resource", id: "faith", value: 2000, multi: 1.2 }, { type: "resource", id: "mana", value: 2000, multi: 1.2 }, { type: "resource", id: "supplies", value: 800, multi: 1.2 }, { type: "resource", id: "cow", value: 600, multi: 1.1 }, { type: "resource", id: "natronite", value: 500, multi: 1.2 }, { type: "tech", id: "ecology", value: 1 } ], gen: [ { type: "population", id: "farmer", value: 1 }, { type: "resource", id: "food", value: 1 }, { type: "modifier", type_id: "population", id: "farmer", type_gen: "resource", gen: "food", value: 2, perc: true }, { type: "cap", id: "food", value: 500 }, { type: "population", id: "unemployed", value: 2 } ] }, { id: "ministry_development", cat: "living_quarters", tab: 1, age: 5, req: [ { type: "resource", id: "gold", value: 25000, multi: 1.2 }, { type: "resource", id: "tools", value: 10000, multi: 1.2 }, { type: "resource", id: "building_material", value: 10000, multi: 1.2 }, { type: "tech", id: "centralized_power", value: 1 } ], gen: [ { type: "resource", id: "food", value: -2 }, { type: "resource", id: "research", value: 1, perc: true }, { type: "resource", id: "gold", value: 1, perc: true }, { type: "cap", id: "research", value: 1000 }, { type: "cap", id: "gold", value: 1000 }, { type: "population", id: "unemployed", value: 3 } ] }, { id: "farm", cat: "resource", tab: 1, age: 1, req: [ { type: "resource", id: "gold", value: 10, multi: 1.4 }, { type: "resource", id: "wood", value: 24, multi: 1.4 }, { type: "tech", id: "agricolture", value: 1 } ], gen: [ { type: "population", id: "farmer", value: 1 }, { type: "modifier", type_id: "population", id: "farmer", type_gen: "resource", gen: "food", value: 1, perc: true }, { type: "cap", id: "food", value: 240 } ] }, { id: "granary", cat: "resource", tab: 1, age: 100, req: [ { type: "resource", id: "gold", value: 150, multi: 1.3 }, { type: "resource", id: "wood", value: 150, multi: 1.3 }, { type: "resource", id: "tools", value: 100, multi: 1.3 }, { type: "tech", id: "grain_surplus", value: 1 } ], gen: [ { type: "resource", id: "food", value: 0.2 }, { type: "resource", id: "food", value: 1, perc: true }, { type: "cap", id: "food", value: 200 } ] }, { id: "lumberjack_camp", cat: "resource", tab: 1, age: 1, req: [ { type: "resource", id: "gold", value: 25, multi: 1.4 }, { type: "resource", id: "wood", value: 18, multi: 1.4 }, { type: "resource", id: "stone", value: 5, multi: 1.4 }, { type: "tech", id: "wood_cutting", value: 1 } ], gen: [ { type: "population", id: "lumberjack", value: 1 }, { type: "modifier", type_id: "population", id: "lumberjack", type_gen: "resource", gen: "wood", value: 1, perc: true }, { type: "cap", id: "wood", value: 100 } ] }, { id: "sawmill", cat: "resource", tab: 1, age: 100, req: [ { type: "resource", id: "gold", value: 180, multi: 1.3 }, { type: "resource", id: "wood", value: 180, multi: 1.3 }, { type: "resource", id: "tools", value: 140, multi: 1.3 }, { type: "tech", id: "wood_saw", value: 1 } ], gen: [ { type: "resource", id: "wood", value: 0.7 }, { type: "resource", id: "wood", value: 1, perc: true }, { type: "cap", id: "wood", value: 750 } ] }, { id: "quarry", cat: "resource", tab: 1, age: 1, req: [ { type: "resource", id: "gold", value: 32, multi: 1.4 }, { type: "resource", id: "wood", value: 24, multi: 1.4 }, { type: "resource", id: "stone", value: 8, multi: 1.4 }, { type: "tech", id: "stone_masonry", value: 1 } ], gen: [ { type: "population", id: "quarryman", value: 1 }, { type: "modifier", type_id: "population", id: "quarryman", type_gen: "resource", gen: "stone", value: 1, perc: true }, { type: "cap", id: "stone", value: 100 } ] }, { id: "stonemason", cat: "resource", tab: 1, age: 100, req: [ { type: "resource", id: "gold", value: 180, multi: 1.3 }, { type: "resource", id: "stone", value: 180, multi: 1.3 }, { type: "resource", id: "tools", value: 140, multi: 1.3 }, { type: "tech", id: "stone_processing", value: 1 } ], gen: [ { type: "resource", id: "stone", value: 0.5 }, { type: "resource", id: "stone", value: 1, perc: true }, { type: "cap", id: "stone", value: 750 } ] }, { id: "mine", cat: "resource", tab: 1, age: 1, req: [ { type: "resource", id: "gold", value: 160, multi: 1.4 }, { type: "resource", id: "wood", value: 140, multi: 1.4 }, { type: "resource", id: "stone", value: 80, multi: 1.4 }, { type: "tech", id: "mining", value: 1 } ], gen: [ { type: "population", id: "miner", value: 1 }, { type: "modifier", type_id: "population", id: "miner", type_gen: "resource", gen: "copper", value: 1, perc: true }, { type: "modifier", type_id: "population", id: "miner", type_gen: "resource", gen: "iron", value: 1, perc: true }, { type: "cap", id: "copper", value: 100 }, { type: "cap", id: "iron", value: 100 } ] }, { id: "titan_work_area", cat: "resource", tab: 1, age: 100, req: [ { type: "resource", id: "gold", value: 1500, multi: 1.5 }, { type: "resource", id: "wood", value: 1000, multi: 1.5 }, { type: "resource", id: "stone", value: 800, multi: 1.5 }, { type: "resource", id: "copper", value: 200, multi: 1.5 }, { type: "resource", id: "iron", value: 150, multi: 1.5 }, { type: "resource", id: "tools", value: 100, multi: 1.5 }, { type: "tech", id: "architecture_titan_t", value: 1 } ], gen: [ { type: "resource", id: "wood", value: 5 }, { type: "resource", id: "stone", value: 5 }, { type: "resource", id: "copper", value: 2 }, { type: "resource", id: "iron", value: 2 }, { type: "resource", id: "tools", value: 1 }, { type: "cap", id: "wood", value: 25000 }, { type: "cap", id: "stone", value: 25000 }, { type: "cap", id: "copper", value: 15000 }, { type: "cap", id: "iron", value: 15000 }, { type: "cap", id: "tools", value: 15000 } ] }, { id: "stable", cat: "resource", tab: 1, age: 1, req: [ { type: "resource", id: "gold", value: 500, multi: 1.3 }, { type: "resource", id: "wood", value: 500, multi: 1.3 }, { type: "resource", id: "tools", value: 250, multi: 1.3 }, { type: "tech", id: "breeding", value: 1 } ], gen: [ { type: "population", id: "breeder", value: 1 }, { type: "modifier", type_id: "population", id: "farmer", type_gen: "resource", gen: "food", value: 2, perc: true }, { type: "cap", id: "cow", value: 80 }, { type: "cap", id: "horse", value: 40 } ] }, { id: "undead_herd", cat: "resource", tab: 1, age: 100, req: [ { type: "resource", id: "gold", value: 300, multi: 1.7 }, { type: "resource", id: "wood", value: 750, multi: 1.7 }, { type: "resource", id: "tools", value: 350, multi: 1.5 }, { type: "tech", id: "breeding", value: 1 }, { type: "legacy", id: "undead_herds", value: 1 } ], gen: [ { type: "resource", id: "cow", value: 0.3 }, { type: "resource", id: "horse", value: 0.2 }, { type: "modifier", type_id: "population", id: "farmer", type_gen: "resource", gen: "food", value: 3, perc: true }, { type: "cap", id: "cow", value: 120 }, { type: "cap", id: "horse", value: 80 } ] }, { id: "fiefdom", cat: "resource", tab: 1, age: 2, req: [ { type: "resource", id: "gold", value: 1500, multi: 1.4 }, { type: "resource", id: "wood", value: 1500, multi: 1.4 }, { type: "resource", id: "stone", value: 1000, multi: 1.4 }, { type: "resource", id: "copper", value: 500, multi: 1.4 }, { type: "resource", id: "iron", value: 500, multi: 1.4 }, { type: "resource", id: "tools", value: 500, multi: 1.4 }, { type: "tech", id: "feudalism", value: 1 } ], gen: [ { type: "population", id: "farmer", value: 1 }, { type: "modifier", type_id: "population", id: "farmer", type_gen: "resource", gen: "food", value: 3, perc: true }, { type: "modifier", type_id: "population", id: "breeder", type_gen: "resource", gen: "cow", value: 3, perc: true }, { type: "modifier", type_id: "population", id: "breeder", type_gen: "resource", gen: "horse", value: 3, perc: true }, { type: "cap", id: "food", value: 250 }, { type: "cap", id: "cow", value: 100 }, { type: "cap", id: "horse", value: 50 } ] }, { id: "foundry", cat: "resource", tab: 1, age: 2, req: [ { type: "resource", id: "gold", value: 1500, multi: 1.4 }, { type: "resource", id: "wood", value: 1200, multi: 1.4 }, { type: "resource", id: "stone", value: 1000, multi: 1.4 }, { type: "resource", id: "copper", value: 500, multi: 1.4 }, { type: "resource", id: "iron", value: 500, multi: 1.4 }, { type: "resource", id: "tools", value: 500, multi: 1.4 }, { type: "tech", id: "metal_casting", value: 1 } ], gen: [ { type: "population", id: "miner", value: 1 }, { type: "modifier", type_id: "population", id: "miner", type_gen: "resource", gen: "copper", value: 3, perc: true }, { type: "modifier", type_id: "population", id: "miner", type_gen: "resource", gen: "iron", value: 3, perc: true }, { type: "modifier", type_id: "population", id: "artisan", type_gen: "resource", gen: "tools", value: 3, perc: true }, { type: "cap", id: "copper", value: 250 }, { type: "cap", id: "iron", value: 250 }, { type: "cap", id: "tools", value: 250 } ] }, { id: "machines_of_gods", cat: "resource", tab: 1, age: 100, req: [ { type: "resource", id: "gold", value: 1400, multi: 1.8 }, { type: "resource", id: "wood", value: 800, multi: 1.8 }, { type: "resource", id: "stone", value: 600, multi: 1.8 }, { type: "resource", id: "copper", value: 100, multi: 1.8 }, { type: "resource", id: "iron", value: 50, multi: 1.8 }, { type: "resource", id: "tools", value: 150, multi: 1.8 }, { type: "tech", id: "metal_casting", value: 1 }, { type: "legacy", id: "machines_gods", value: 1 } ], gen: [ { type: "resource", id: "tools", value: 1.2 }, { type: "resource", id: "copper", value: 1.2 }, { type: "resource", id: "iron", value: 0.5 }, { type: "cap", id: "copper", value: 500 }, { type: "cap", id: "iron", value: 500 }, { type: "cap", id: "tools", value: 500 } ] }, { id: "carpenter_workshop", cat: "resource", tab: 1, age: 2, req: [ { type: "resource", id: "gold", value: 1000, multi: 1.4 }, { type: "resource", id: "wood", value: 800, multi: 1.4 }, { type: "resource", id: "stone", value: 600, multi: 1.4 }, { type: "resource", id: "iron", value: 500, multi: 1.4 }, { type: "resource", id: "tools", value: 500, multi: 1.4 }, { type: "tech", id: "architecture", value: 1 } ], gen: [ { type: "population", id: "carpenter", value: 1 }, { type: "modifier", type_id: "population", id: "carpenter", type_gen: "resource", gen: "building_material", value: 2, perc: true }, { type: "cap", id: "building_material", value: 150 } ] }, { id: "grocery", cat: "resource", tab: 1, age: 2, req: [ { type: "resource", id: "gold", value: 1200, multi: 1.4 }, { type: "resource", id: "tools", value: 500, multi: 1.4 }, { type: "resource", id: "building_material", value: 200, multi: 1.4 }, { type: "tech", id: "food_conservation", value: 1 } ], gen: [ { type: "population", id: "supplier", value: 1 }, { type: "modifier", type_id: "population", id: "supplier", type_gen: "resource", gen: "supplies", value: 2, perc: true }, { type: "cap", id: "supplies", value: 100 } ] }, { id: "steelworks", cat: "resource", tab: 1, age: 2, req: [ { type: "resource", id: "gold", value: 2400, multi: 1.4 }, { type: "resource", id: "tools", value: 500, multi: 1.4 }, { type: "resource", id: "building_material", value: 200, multi: 1.4 }, { type: "tech", id: "steeling", value: 1 } ], gen: [ { type: "population", id: "steelworker", value: 1 }, { type: "modifier", type_id: "population", id: "steelworker", type_gen: "resource", gen: "steel", value: 2, perc: true }, { type: "cap", id: "steel", value: 250 } ] }, { id: "guild_of_craftsmen", cat: "resource", tab: 1, age: 100, req: [ { type: "resource", id: "gold", value: 2500, multi: 1.5 }, { type: "resource", id: "wood", value: 1200, multi: 1.5 }, { type: "resource", id: "stone", value: 1200, multi: 1.5 }, { type: "resource", id: "tools", value: 500, multi: 1.5 }, { type: "tech", id: "craftsmen_guild", value: 1 } ], gen: [ { type: "resource", id: "building_material", value: 0.2 }, { type: "resource", id: "steel", value: 0.2 }, { type: "resource", id: "crystal", value: 0.1 }, { type: "resource", id: "supplies", value: 0.1 } ] }, { id: "alchemic_laboratory", cat: "resource", tab: 1, age: 3, req: [ { type: "resource", id: "gold", value: 8000, multi: 1.4 }, { type: "resource", id: "copper", value: 3500, multi: 1.4 }, { type: "resource", id: "iron", value: 3000, multi: 1.4 }, { type: "resource", id: "tools", value: 2000, multi: 1.4 }, { type: "tech", id: "chemistry", value: 1 } ], gen: [ { type: "population", id: "alchemist", value: 1 }, { type: "modifier", type_id: "population", id: "alchemist", type_gen: "resource", gen: "saltpetre", value: 2, perc: true }, { type: "cap", id: "saltpetre", value: 200 } ] }, { id: "builder_district", cat: "resource", tab: 1, age: 3, req: [ { type: "resource", id: "gold", value: 2500, multi: 1.4 }, { type: "resource", id: "wood", value: 2500, multi: 1.3 }, { type: "resource", id: "stone", value: 2500, multi: 1.3 }, { type: "resource", id: "building_material", value: 500, multi: 1.2 }, { type: "resource", id: "supplies", value: 500, multi: 1.2 }, { type: "tech", id: "manufactures", value: 1 } ], gen: [ { type: "population", id: "lumberjack", value: 1 }, { type: "population", id: "quarryman", value: 1 }, { type: "modifier", type_id: "population", id: "lumberjack", type_gen: "resource", gen: "wood", value: 3, perc: true }, { type: "modifier", type_id: "population", id: "quarryman", type_gen: "resource", gen: "stone", value: 3, perc: true }, { type: "cap", id: "wood", value: 800 }, { type: "cap", id: "stone", value: 800 } ] }, { id: "natronite_refinery", cat: "resource", tab: 1, age: 4, req: [ { type: "resource", id: "gold", value: 12000, multi: 1.2 }, { type: "resource", id: "mana", value: 1500, multi: 1.2 }, { type: "resource", id: "steel", value: 1200, multi: 1.2 }, { type: "resource", id: "saltpetre", value: 600, multi: 1.2 }, { type: "tech", id: "mana_engine", value: 1 } ], gen: [ { type: "population", id: "natro_refiner", value: 1 }, { type: "modifier", type_id: "population", id: "natro_refiner", type_gen: "resource", gen: "natronite", value: 2, perc: true }, { type: "cap", id: "natronite", value: 200 } ] }, { id: "industrial_plant", cat: "resource", tab: 1, age: 4, req: [ { type: "resource", id: "gold", value: 12000, multi: 1.3 }, { type: "resource", id: "steel", value: 1500, multi: 1.3 }, { type: "resource", id: "building_material", value: 1200, multi: 1.2 }, { type: "resource", id: "natronite", value: 500, multi: 1.2 }, { type: "tech", id: "mechanization", value: 1 } ], gen: [ { type: "population", id: "artisan", value: 1 }, { type: "modifier", type_id: "population", id: "artisan", type_gen: "resource", gen: "tools", value: 3, perc: true }, { type: "modifier", type_id: "population", id: "carpenter", type_gen: "resource", gen: "building_material", value: 3, perc: true }, { type: "modifier", type_id: "population", id: "steelworker", type_gen: "resource", gen: "steel", value: 3, perc: true }, { type: "modifier", type_id: "population", id: "supplier", type_gen: "resource", gen: "supplies", value: 3, perc: true } ] }, { id: "factory", cat: "resource", tab: 1, age: 5, req: [ { type: "resource", id: "gold", value: 25000, multi: 1.2 }, { type: "resource", id: "iron", value: 15000, multi: 1.2 }, { type: "resource", id: "steel", value: 7000, multi: 1.2 }, { type: "resource", id: "building_material", value: 7000, multi: 1.2 }, { type: "resource", id: "natronite", value: 5000, multi: 1.2 }, { type: "tech", id: "assembly_line", value: 1 } ], gen: [ { type: "resource", id: "building_material", value: 0.2 }, { type: "resource", id: "steel", value: 0.2 }, { type: "resource", id: "crystal", value: 0.2 }, { type: "resource", id: "supplies", value: 0.2 }, { type: "resource", id: "saltpetre", value: 0.1 }, { type: "resource", id: "natronite", value: 0.1 } ] }, { id: "school", cat: "science", tab: 1, age: 1, req: [ { type: "resource", id: "gold", value: 350, multi: 1.3 }, { type: "resource", id: "wood", value: 300, multi: 1.3 }, { type: "resource", id: "stone", value: 250, multi: 1.3 }, { type: "resource", id: "tools", value: 100, multi: 1.3 }, { type: "tech", id: "writing", value: 1 } ], gen: [ { type: "resource", id: "research", value: 0.4 }, { type: "resource", id: "research", value: 1, perc: true }, { type: "cap", id: "research", value: 1000 } ] }, { id: "hall_of_wisdom", cat: "science", tab: 1, age: 100, req: [ { type: "resource", id: "gold", value: 800, multi: 2 }, { type: "resource", id: "wood", value: 500, multi: 2 }, { type: "resource", id: "stone", value: 500, multi: 2 }, { type: "resource", id: "tools", value: 250, multi: 2 }, { type: "tech", id: "writing", value: 1 }, { type: "legacy", id: "hall_wisdom", value: 1 } ], gen: [ { type: "resource", id: "research", value: 1 }, { type: "resource", id: "research", value: 3, perc: true }, { type: "cap", id: "research", value: 2000 } ] }, { id: "library_of_theresmore", cat: "science", tab: 1, age: 100, req: [ { type: "resource", id: "gold", value: 300, multi: 1.6 }, { type: "resource", id: "wood", value: 400, multi: 1.6 }, { type: "resource", id: "stone", value: 300, multi: 1.6 }, { type: "resource", id: "tools", value: 100, multi: 1.6 }, { type: "tech", id: "remember_the_ancients", value: 1 } ], gen: [ { type: "resource", id: "gold", value: 2, perc: true }, { type: "resource", id: "wood", value: 2, perc: true }, { type: "resource", id: "stone", value: 2, perc: true }, { type: "resource", id: "copper", value: 2, perc: true }, { type: "resource", id: "iron", value: 2, perc: true }, { type: "resource", id: "tools", value: 2, perc: true }, { type: "resource", id: "faith", value: 2, perc: true }, { type: "resource", id: "mana", value: 2, perc: true } ] }, { id: "university", cat: "science", tab: 1, age: 2, req: [ { type: "resource", id: "gold", value: 3000, multi: 1.3 }, { type: "resource", id: "wood", value: 1000, multi: 1.3 }, { type: "resource", id: "stone", value: 750, multi: 1.3 }, { type: "resource", id: "tools", value: 500, multi: 1.3 }, { type: "resource", id: "building_material", value: 200, multi: 1.3 }, { type: "tech", id: "education", value: 1 } ], gen: [ { type: "population", id: "professor", value: 1 }, { type: "resource", id: "research", value: 2, perc: true }, { type: "cap", id: "research", value: 1500 }, { type: "cap", id: "crystal", value: 50 } ] }, { id: "statue_atamar", cat: "science", tab: 1, cap: 1, age: 2, req: [ { type: "resource", id: "stone", value: 4500 }, { type: "tech", id: "education", value: 1 } ], gen: [ { type: "resource", id: "research", value: 2 }, { type: "cap", id: "army", value: 15 }, { type: "building", id: "statue_firio", value: -1 }, { type: "building", id: "statue_lurezia", value: -1 } ] }, { id: "statue_firio", cat: "science", tab: 1, cap: 1, age: 2, req: [ { type: "resource", id: "stone", value: 4500 }, { type: "tech", id: "education", value: 1 } ], gen: [ { type: "resource", id: "research", value: 5 }, { type: "resource", id: "faith", value: 10 }, { type: "building", id: "statue_atamar", value: -1 }, { type: "building", id: "statue_lurezia", value: -1 } ] }, { id: "statue_lurezia", cat: "science", tab: 1, cap: 1, age: 2, req: [ { type: "resource", id: "stone", value: 4500 }, { type: "tech", id: "education", value: 1 } ], gen: [ { type: "resource", id: "research", value: 2 }, { type: "resource", id: "mana", value: 10 }, { type: "building", id: "statue_atamar", value: -1 }, { type: "building", id: "statue_firio", value: -1 } ] }, { id: "library_souls", cat: "science", tab: 1, cap: 1, age: 100, req: [ { type: "building", id: "books", value: 8, consume: true }, { type: "building", id: "souls", value: 8, consume: true } ], gen: [ { type: "resource", id: "fame", value: 150, fix: true }, { type: "resource", id: "food", value: 5 }, { type: "resource", id: "mana", value: 10 }, { type: "resource", id: "research", value: 5, perc: true }, { type: "resource", id: "food", value: 5, perc: true } ] }, { id: "books", cat: "science", tab: 1, cap: 8, age: 100, req: [ { type: "resource", id: "research", value: 15000 }, { type: "resource", id: "faith", value: 4000 }, { type: "tech", id: "library_of_souls", value: 1 } ] }, { id: "souls", cat: "science", tab: 1, cap: 8, age: 100, req: [ { type: "resource", id: "mana", value: 2800 }, { type: "resource", id: "crystal", value: 500 }, { type: "tech", id: "library_of_souls", value: 1 } ] }, { id: "observatory", cat: "science", tab: 1, age: 3, req: [ { type: "resource", id: "gold", value: 8000, multi: 1.4 }, { type: "resource", id: "stone", value: 3000, multi: 1.4 }, { type: "resource", id: "tools", value: 1500, multi: 1.4 }, { type: "resource", id: "building_material", value: 1000, multi: 1.3 }, { type: "tech", id: "astronomy", value: 1 } ], gen: [ { type: "population", id: "skymancer", value: 1 }, { type: "cap", id: "research", value: 2500 }, { type: "cap", id: "crystal", value: 100 } ] }, { id: "research_plant", cat: "science", tab: 1, age: 4, req: [ { type: "resource", id: "gold", value: 12000, multi: 1.3 }, { type: "resource", id: "stone", value: 4000, multi: 1.3 }, { type: "resource", id: "crystal", value: 1000, multi: 1.3 }, { type: "resource", id: "natronite", value: 400, multi: 1.4 }, { type: "tech", id: "research_district", value: 1 } ], gen: [ { type: "population", id: "researcher", value: 1 }, { type: "cap", id: "research", value: 4000 } ] }, { id: "island_outpost", cat: "science", tab: 1, cap: 5, age: 4, req: [ { type: "resource", id: "gold", value: 25000, multi: 1.5 }, { type: "resource", id: "wood", value: 15000, multi: 1.5 }, { type: "resource", id: "tools", value: 8000, multi: 1.3 }, { type: "resource", id: "natronite", value: 1500, multi: 1.5 }, { type: "tech", id: "outpost_tiny_island", value: 1 } ], gen: [ { type: "resource", id: "research", value: 2 }, { type: "cap", id: "research", value: 6000 } ] }, { id: "palisade", cat: "defense", tab: 1, cap: 1, age: 1, req: [ { type: "building", id: "palisade_unit", value: 10, consume: true } ], gen: [ { type: "modifier", type_id: "army", id: "settlement_defenses", type_gen: "stat", gen: "defense", value: 25, perc: false }, { type: "resource", id: "fame", value: 25, fix: true }, { type: "cap", id: "army", value: 5 } ] }, { id: "palisade_unit", cat: "defense", tab: 1, cap: 10, age: 1, req: [ { type: "resource", id: "wood", value: 600 }, { type: "resource", id: "tools", value: 120 }, { type: "tech", id: "fortification", value: 1 } ] }, { id: "wall", cat: "defense", tab: 1, cap: 1, age: 1, req: [ { type: "building", id: "wall_unit", value: 15, consume: true }, { type: "building", id: "palisade", value: 1 } ], gen: [ { type: "modifier", type_id: "army", id: "settlement_defenses", type_gen: "stat", gen: "defense", value: 50, perc: false }, { type: "resource", id: "fame", value: 50, fix: true }, { type: "cap", id: "army", value: 10 } ] }, { id: "wall_unit", cat: "defense", tab: 1, cap: 15, age: 1, req: [ { type: "resource", id: "stone", value: 800 }, { type: "resource", id: "tools", value: 200 }, { type: "tech", id: "fortification", value: 1 }, { type: "building", id: "palisade", value: 1 } ] }, { id: "rampart", cat: "defense", tab: 1, cap: 1, age: 100, req: [ { type: "building", id: "rampart_unit", value: 12, consume: true }, { type: "building", id: "wall", value: 1 }, { type: "legacy", id: "defensive_rampart", value: 1 } ], gen: [ { type: "modifier", type_id: "army", id: "settlement_defenses", type_gen: "stat", gen: "defense", value: 200, perc: false }, { type: "resource", id: "fame", value: 70, fix: true }, { type: "cap", id: "army", value: 20 } ] }, { id: "rampart_unit", cat: "defense", tab: 1, cap: 12, age: 100, req: [ { type: "resource", id: "stone", value: 2000 }, { type: "resource", id: "tools", value: 1000 }, { type: "tech", id: "fortification", value: 1 }, { type: "building", id: "wall", value: 1 }, { type: "legacy", id: "defensive_rampart", value: 1 } ] }, { id: "titanic_walls", cat: "defense", tab: 1, cap: 1, age: 100, req: [ { type: "building", id: "titanic_walls_part", value: 12, consume: true }, { type: "building", id: "wall", value: 1 }, { type: "tech", id: "wall_titan_t", value: 1 } ], gen: [ { type: "resource", id: "fame", value: 150, fix: true }, { type: "modifier", type_id: "army", id: "settlement_defenses", type_gen: "stat", gen: "defense", value: 2000, perc: false }, { type: "resource", id: "building_material", value: 5 }, { type: "resource", id: "steel", value: 5 }, { type: "resource", id: "supplies", value: 5 } ] }, { id: "titanic_walls_part", cat: "defense", tab: 1, cap: 12, age: 100, req: [ { type: "resource", id: "stone", value: 12000 }, { type: "resource", id: "building_material", value: 5000 }, { type: "resource", id: "steel", value: 5000 }, { type: "building", id: "wall", value: 1 }, { type: "tech", id: "wall_titan_t", value: 1 } ] }, { id: "barracks", cat: "defense", tab: 1, age: 1, req: [ { type: "resource", id: "gold", value: 1000, multi: 1.4 }, { type: "resource", id: "wood", value: 800, multi: 1.4 }, { type: "resource", id: "stone", value: 800, multi: 1.4 }, { type: "resource", id: "iron", value: 500, multi: 1.4 }, { type: "resource", id: "tools", value: 250, multi: 1.4 }, { type: "tech", id: "bronze_working", value: 1 } ], gen: [ { type: "cap", id: "army", value: 3 } ] }, { id: "castrum_militia", cat: "defense", tab: 1, age: 100, req: [ { type: "resource", id: "gold", value: 500, multi: 1.6 }, { type: "resource", id: "wood", value: 300, multi: 1.5 }, { type: "resource", id: "stone", value: 300, multi: 1.5 }, { type: "resource", id: "copper", value: 300, multi: 1.3 }, { type: "resource", id: "tools", value: 200, multi: 1.3 }, { type: "tech", id: "training_militia", value: 1 } ], gen: [ { type: "cap", id: "army", value: 5 }, { type: "modifier", type_id: "army", id: "settlement_defenses", type_gen: "stat", gen: "defense", value: 5, perc: false } ] }, { id: "recruit_training_center", cat: "defense", tab: 1, cap: 5, age: 2, req: [ { type: "resource", id: "gold", value: 2000, multi: 1.4 }, { type: "resource", id: "iron", value: 500, multi: 1.4 }, { type: "resource", id: "tools", value: 500, multi: 1.4 }, { type: "resource", id: "building_material", value: 200, multi: 1.4 }, { type: "tech", id: "professional_soldier", value: 1 } ], gen: [ { type: "modifier", type_id: "army", id: "archer", type_gen: "stat", gen: "attack", value: 1, perc: false }, { type: "modifier", type_id: "army", id: "spearman", type_gen: "stat", gen: "defense", value: 1, perc: false }, { type: "modifier", type_id: "army", id: "warrior", type_gen: "stat", gen: "attack", value: 1, perc: false }, { type: "modifier", type_id: "army", id: "heavy_warrior", type_gen: "stat", gen: "defense", value: 1, perc: false }, { type: "cap", id: "army", value: 5 } ] }, { id: "mercenary_outpost", cat: "defense", tab: 1, cap: 15, age: 100, req: [ { type: "resource", id: "gold", value: 4500, multi: 1.3 }, { type: "resource", id: "copper", value: 2500, multi: 1.3 }, { type: "resource", id: "iron", value: 2500, multi: 1.3 }, { type: "resource", id: "tools", value: 2500, multi: 1.3 }, { type: "resource", id: "building_material", value: 1250, multi: 1.3 }, { type: "tech", id: "mercenary_outpost_t", value: 1 } ], gen: [ { type: "modifier", type_id: "army", id: "mercenary_veteran", type_gen: "stat", gen: "attack", value: 2, perc: false }, { type: "modifier", type_id: "army", id: "white_company", type_gen: "stat", gen: "attack", value: 2, perc: false }, { type: "modifier", type_id: "army", id: "canava_guard", type_gen: "stat", gen: "defense", value: 2, perc: false }, { type: "cap", id: "army", value: 4 } ] }, { id: "watchman_outpost", cat: "defense", tab: 1, cap: 8, age: 2, req: [ { type: "resource", id: "wood", value: 2000, multi: 1.4 }, { type: "resource", id: "tools", value: 1000, multi: 1.4 }, { type: "resource", id: "supplies", value: 100, multi: 1.4 }, { type: "resource", id: "crystal", value: 70, multi: 1.4 }, { type: "tech", id: "herald_canava", value: 1 } ], gen: [ { type: "modifier", type_id: "army", id: "settlement_defenses", type_gen: "stat", gen: "attack", value: 2, perc: false }, { type: "modifier", type_id: "army", id: "settlement_defenses", type_gen: "stat", gen: "defense", value: 8, perc: false }, { type: "cap", id: "army", value: 2 } ] }, { id: "natronite_baloon", cat: "defense", tab: 1, cap: 4, age: 4, req: [ { type: "resource", id: "gold", value: 10000, multi: 2 }, { type: "resource", id: "crystal", value: 750, multi: 2 }, { type: "resource", id: "natronite", value: 750, multi: 2 }, { type: "tech", id: "flight", value: 1 } ], gen: [ { type: "modifier", type_id: "army", id: "settlement_defenses", type_gen: "stat", gen: "attack", value: 4, perc: false }, { type: "modifier", type_id: "army", id: "settlement_defenses", type_gen: "stat", gen: "defense", value: 20, perc: false } ] }, { id: "ballista", cat: "defense", tab: 1, cap: 4, age: 2, req: [ { type: "resource", id: "wood", value: 3000, multi: 1.5 }, { type: "resource", id: "building_material", value: 600, multi: 1.5 }, { type: "tech", id: "siege_defense_weapons", value: 1 } ], gen: [ { type: "modifier", type_id: "army", id: "settlement_defenses", type_gen: "stat", gen: "attack", value: 12, perc: false }, { type: "modifier", type_id: "army", id: "settlement_defenses", type_gen: "stat", gen: "defense", value: 2, perc: false } ] }, { id: "siege_workshop", cat: "defense", tab: 1, cap: 10, age: 2, req: [ { type: "resource", id: "gold", value: 2500, multi: 1.4 }, { type: "resource", id: "iron", value: 1500, multi: 1.4 }, { type: "resource", id: "tools", value: 1500, multi: 1.4 }, { type: "resource", id: "building_material", value: 600, multi: 1.4 }, { type: "tech", id: "besieging_engineers", value: 1 } ], gen: [ { type: "modifier", type_id: "army", id: "battering_ram", type_gen: "stat", gen: "attack", value: 2, perc: false }, { type: "modifier", type_id: "army", id: "trebuchet", type_gen: "stat", gen: "attack", value: 2, perc: false } ] }, { id: "magical_tower", cat: "defense", tab: 1, cap: 8, age: 3, req: [ { type: "resource", id: "stone", value: 8000, multi: 1.4 }, { type: "resource", id: "crystal", value: 600, multi: 1.4 }, { type: "tech", id: "magic_arts_teaching", value: 1 } ], gen: [ { type: "modifier", type_id: "army", id: "settlement_defenses", type_gen: "stat", gen: "attack", value: 18, perc: false }, { type: "modifier", type_id: "army", id: "settlement_defenses", type_gen: "stat", gen: "defense", value: 10, perc: false }, { type: "resource", id: "mana", value: 2 } ] }, { id: "minefield", cat: "defense", tab: 1, cap: 8, age: 4, req: [ { type: "resource", id: "saltpetre", value: 1000, multi: 1.3 }, { type: "resource", id: "crystal", value: 500, multi: 1.3 }, { type: "tech", id: "land_mine", value: 1 } ], gen: [ { type: "modifier", type_id: "army", id: "settlement_defenses", type_gen: "stat", gen: "attack", value: 25, perc: false } ] }, { id: "military_academy", cat: "defense", tab: 1, age: 3, req: [ { type: "resource", id: "gold", value: 12000, multi: 1.5 }, { type: "resource", id: "iron", value: 2000, multi: 1.5 }, { type: "resource", id: "tools", value: 2000, multi: 1.5 }, { type: "resource", id: "building_material", value: 1000, multi: 1.5 }, { type: "resource", id: "supplies", value: 500, multi: 1.5 }, { type: "tech", id: "military_science", value: 1 } ], gen: [ { type: "modifier", type_id: "army", id: "crossbowman", type_gen: "stat", gen: "attack", value: 2, perc: false }, { type: "modifier", type_id: "army", id: "arquebusier", type_gen: "stat", gen: "attack", value: 2, perc: false }, { type: "modifier", type_id: "army", id: "man_at_arms", type_gen: "stat", gen: "defense", value: 2, perc: false }, { type: "modifier", type_id: "army", id: "knight", type_gen: "stat", gen: "defense", value: 2, perc: false }, { type: "cap", id: "army", value: 10 } ] }, { id: "ministry_war", cat: "defense", tab: 1, cap: 15, age: 100, req: [ { type: "resource", id: "stone", value: 8000, multi: 1.2 }, { type: "resource", id: "iron", value: 6000, multi: 1.2 }, { type: "resource", id: "building_material", value: 4000, multi: 1.2 }, { type: "resource", id: "steel", value: 4000, multi: 1.2 }, { type: "tech", id: "ministry_war_t", value: 1 } ], gen: [ { type: "modifier", type_id: "army", id: "arquebusier", type_gen: "stat", gen: "attack", value: 3, perc: false }, { type: "modifier", type_id: "army", id: "cuirassier", type_gen: "stat", gen: "attack", value: 3, perc: false }, { type: "cap", id: "food", value: 2500 }, { type: "cap", id: "supplies", value: 1000 }, { type: "cap", id: "army", value: 15 }, { type: "population", id: "unemployed", value: 2 } ] }, { id: "officer_training_ground", cat: "defense", tab: 1, cap: 5, age: 4, req: [ { type: "resource", id: "gold", value: 12000, multi: 1.4 }, { type: "resource", id: "iron", value: 2500, multi: 1.4 }, { type: "resource", id: "steel", value: 1000, multi: 1.4 }, { type: "resource", id: "supplies", value: 1000, multi: 1.4 }, { type: "tech", id: "military_tactics", value: 1 } ], gen: [ { type: "modifier", type_id: "army", id: "line_infantry", type_gen: "stat", gen: "attack", value: 3, perc: false }, { type: "modifier", type_id: "army", id: "cannon", type_gen: "stat", gen: "attack", value: 3, perc: false }, { type: "modifier", type_id: "army", id: "general", type_gen: "stat", gen: "defense", value: 3, perc: false }, { type: "cap", id: "army", value: 5 } ] }, { id: "artillery_firing", cat: "defense", tab: 1, cap: 10, age: 4, req: [ { type: "resource", id: "gold", value: 15000, multi: 1.4 }, { type: "resource", id: "iron", value: 5000, multi: 1.4 }, { type: "resource", id: "steel", value: 3000, multi: 1.4 }, { type: "resource", id: "supplies", value: 2000, multi: 1.4 }, { type: "tech", id: "veteran_artillerymen", value: 1 } ], gen: [ { type: "modifier", type_id: "army", id: "bombard", type_gen: "stat", gen: "attack", value: 2, perc: false }, { type: "modifier", type_id: "army", id: "cannon", type_gen: "stat", gen: "attack", value: 2, perc: false } ] }, { id: "natronite_shield", cat: "defense", tab: 1, cap: 4, age: 4, req: [ { type: "resource", id: "mana", value: 10000 }, { type: "resource", id: "natronite", value: 6000 }, { type: "tech", id: "preparation_war", value: 1 } ], gen: [ { type: "modifier", type_id: "army", id: "settlement_defenses", type_gen: "stat", gen: "defense", value: 50, perc: false } ] }, { id: "soulstealer_citadel", cat: "defense", tab: 1, cap: 5, age: 100, req: [ { type: "resource", id: "stone", value: 125000, multi: 1.3 }, { type: "resource", id: "mana", value: 25000, multi: 1.3 }, { type: "resource", id: "faith", value: 17500, multi: 1.3 }, { type: "prayer", id: "control_fortress", value: 1 } ], gen: [ { type: "resource", id: "food", value: -120 }, { type: "resource", id: "mana", value: -120 }, { type: "modifier", type_id: "army", id: "heavy_warrior", type_gen: "stat", gen: "attack", value: 12, perc: false }, { type: "modifier", type_id: "army", id: "heavy_warrior", type_gen: "stat", gen: "defense", value: 12, perc: false }, { type: "modifier", type_id: "army", id: "crossbowman", type_gen: "stat", gen: "attack", value: 11, perc: false }, { type: "modifier", type_id: "army", id: "crossbowman", type_gen: "stat", gen: "defense", value: 6, perc: false } ] }, { id: "city_center", cat: "wonders", tab: 1, cap: 1, age: 1, req: [ { type: "building", id: "city_center_unit", value: 12, consume: true } ], gen: [ { type: "resource", id: "fame", value: 50, fix: true }, { type: "resource", id: "gold", value: 5, perc: true }, { type: "resource", id: "wood", value: 5, perc: true }, { type: "resource", id: "stone", value: 5, perc: true }, { type: "resource", id: "copper", value: 5, perc: true }, { type: "resource", id: "iron", value: 5, perc: true }, { type: "resource", id: "tools", value: 5, perc: true }, { type: "population", id: "unemployed", value: 5 }, { type: "cap", id: "army", value: 10 } ] }, { id: "city_center_unit", cat: "wonders", tab: 1, cap: 12, age: 1, req: [ { type: "resource", id: "gold", value: 1500 }, { type: "resource", id: "wood", value: 750 }, { type: "resource", id: "stone", value: 750 }, { type: "resource", id: "copper", value: 500 }, { type: "resource", id: "iron", value: 250 }, { type: "resource", id: "tools", value: 250 }, { type: "tech", id: "end_ancient_era", value: 1 } ] }, { id: "great_fair", cat: "wonders", tab: 1, cap: 1, age: 2, req: [ { type: "building", id: "great_fair_unit", value: 8, consume: true } ], gen: [ { type: "resource", id: "fame", value: 100, fix: true }, { type: "resource", id: "building_material", value: 0.25 }, { type: "resource", id: "supplies", value: 0.25 }, { type: "resource", id: "cow", value: 5, perc: true }, { type: "resource", id: "horse", value: 5, perc: true }, { type: "resource", id: "supplies", value: 5, perc: true }, { type: "resource", id: "building_material", value: 5, perc: true } ] }, { id: "great_fair_unit", cat: "wonders", tab: 1, cap: 8, age: 2, req: [ { type: "resource", id: "gold", value: 4000 }, { type: "resource", id: "cow", value: 150 }, { type: "resource", id: "horse", value: 100 }, { type: "tech", id: "fairs_and_markets", value: 1 } ] }, { id: "cathedral", cat: "wonders", tab: 1, cap: 1, age: 2, req: [ { type: "building", id: "cathedral_unit", value: 8, consume: true } ], gen: [ { type: "resource", id: "fame", value: 100, fix: true }, { type: "resource", id: "faith", value: 3 }, { type: "resource", id: "mana", value: 3 }, { type: "resource", id: "crystal", value: 0.2 }, { type: "resource", id: "faith", value: 3, perc: true }, { type: "resource", id: "mana", value: 3, perc: true }, { type: "resource", id: "crystal", value: 3, perc: true }, { type: "cap", id: "faith", value: 1000 }, { type: "cap", id: "mana", value: 500 } ] }, { id: "cathedral_unit", cat: "wonders", tab: 1, cap: 8, age: 2, req: [ { type: "resource", id: "gold", value: 4000 }, { type: "resource", id: "wood", value: 1500 }, { type: "resource", id: "stone", value: 1000 }, { type: "resource", id: "building_material", value: 400 }, { type: "resource", id: "supplies", value: 400 }, { type: "resource", id: "crystal", value: 100 }, { type: "tech", id: "religious_orders", value: 1 } ] }, { id: "academy_of_freethinkers", cat: "wonders", tab: 1, cap: 1, age: 2, req: [ { type: "building", id: "academy_of_freethinkers_part", value: 12, consume: true } ], gen: [ { type: "resource", id: "fame", value: 150, fix: true }, { type: "resource", id: "research", value: 5 }, { type: "resource", id: "crystal", value: 0.2 }, { type: "resource", id: "research", value: 2, perc: true }, { type: "resource", id: "crystal", value: 2, perc: true } ] }, { id: "academy_of_freethinkers_part", cat: "wonders", tab: 1, cap: 12, age: 2, req: [ { type: "resource", id: "gold", value: 14000 }, { type: "resource", id: "steel", value: 1200 }, { type: "resource", id: "building_material", value: 1000 }, { type: "resource", id: "supplies", value: 600 }, { type: "resource", id: "crystal", value: 300 }, { type: "tech", id: "end_feudal_era", value: 1 } ] }, { id: "great_bombard", cat: "wonders", tab: 1, cap: 1, age: 3, req: [ { type: "building", id: "great_bombard_part", value: 6, consume: true }, { type: "tech", id: "large_defensive_project", value: 1 } ], gen: [ { type: "modifier", type_id: "army", id: "settlement_defenses", type_gen: "stat", gen: "attack", value: 120, perc: false }, { type: "modifier", type_id: "army", id: "settlement_defenses", type_gen: "stat", gen: "defense", value: 20, perc: false }, { type: "resource", id: "fame", value: 100, fix: true }, { type: "cap", id: "army", value: 25 } ] }, { id: "great_bombard_part", cat: "wonders", tab: 1, cap: 6, age: 3, req: [ { type: "resource", id: "gold", value: 15000 }, { type: "resource", id: "iron", value: 1500 }, { type: "resource", id: "tools", value: 1500 }, { type: "resource", id: "steel", value: 500 }, { type: "resource", id: "saltpetre", value: 250 }, { type: "tech", id: "large_defensive_project", value: 1 } ] }, { id: "refugee_district", cat: "wonders", tab: 1, cap: 1, age: 3, req: [ { type: "building", id: "refugee_district_part", value: 8, consume: true } ], gen: [ { type: "resource", id: "fame", value: 100, fix: true }, { type: "resource", id: "building_material", value: 0.2 }, { type: "resource", id: "supplies", value: 0.2 }, { type: "resource", id: "steel", value: 0.2 }, { type: "population", id: "unemployed", value: 5 }, { type: "cap", id: "army", value: 20 } ] }, { id: "refugee_district_part", cat: "wonders", tab: 1, cap: 8, age: 3, req: [ { type: "resource", id: "wood", value: 12000 }, { type: "resource", id: "stone", value: 12000 }, { type: "resource", id: "copper", value: 8000 }, { type: "resource", id: "iron", value: 6000 }, { type: "resource", id: "tools", value: 6000 }, { type: "prayer", id: "the_aid", value: 1 } ] }, { id: "stock_exchange", cat: "wonders", tab: 1, cap: 1, age: 3, req: [ { type: "building", id: "stock_exchange_part", value: 5, consume: true } ], gen: [ { type: "resource", id: "fame", value: 200, fix: true }, { type: "resource", id: "gold", value: 10 }, { type: "cap", id: "gold", value: 50000 }, { type: "tech", id: "commercial_monopolies", value: 1 } ] }, { id: "stock_exchange_part", cat: "wonders", tab: 1, cap: 5, age: 3, req: [ { type: "resource", id: "gold", value: 70000 }, { type: "resource", id: "steel", value: 6000 }, { type: "resource", id: "building_material", value: 4500 }, { type: "tech", id: "commercial_monopolies", value: 1 } ] }, { id: "tower_mana", cat: "wonders", tab: 1, cap: 1, age: 3, req: [ { type: "building", id: "tower_mana_part", value: 4, consume: true } ], gen: [ { type: "resource", id: "fame", value: 150, fix: true }, { type: "resource", id: "mana", value: 10 } ] }, { id: "tower_mana_part", cat: "wonders", tab: 1, cap: 4, age: 3, req: [ { type: "resource", id: "faith", value: 6000 }, { type: "resource", id: "building_material", value: 2000 }, { type: "resource", id: "crystal", value: 1000 }, { type: "enemy", id: "east_sacred_place", value: 1 }, { type: "enemy", id: "west_sacred_place", value: 1 }, { type: "enemy", id: "north_sacred_place", value: 1 }, { type: "enemy", id: "south_sacred_place", value: 1 } ] }, { id: "mana_pit", cat: "wonders", tab: 1, cap: 1, age: 3, req: [ { type: "building", id: "mana_pit_part", value: 10, consume: true } ], gen: [ { type: "resource", id: "fame", value: 150, fix: true }, { type: "resource", id: "mana", value: 50 }, { type: "cap", id: "mana", value: 2000 } ] }, { id: "mana_pit_part", cat: "wonders", tab: 1, cap: 10, age: 3, req: [ { type: "resource", id: "stone", value: 24000 }, { type: "resource", id: "steel", value: 6000 }, { type: "resource", id: "crystal", value: 2000 }, { type: "resource", id: "saltpetre", value: 2000 }, { type: "tech", id: "mana_utilization", value: 1 } ] }, { id: "hall_heroic_deeds", cat: "wonders", tab: 1, cap: 1, age: 3, req: [ { type: "building", id: "hall_heroic_deeds_part", value: 4, consume: true } ], gen: [ { type: "resource", id: "fame", value: 200, fix: true }, { type: "resource", id: "research", value: 5 }, { type: "modifier", type_id: "army", id: "commander", type_gen: "stat", gen: "attack", value: 25, perc: false }, { type: "modifier", type_id: "army", id: "commander", type_gen: "stat", gen: "defense", value: 25, perc: false } ] }, { id: "hall_heroic_deeds_part", cat: "wonders", tab: 1, cap: 4, age: 3, req: [ { type: "resource", id: "research", value: 7000 }, { type: "resource", id: "wood", value: 7000 }, { type: "resource", id: "stone", value: 7000 }, { type: "resource", id: "building_material", value: 3000 }, { type: "tech", id: "monster_epuration", value: 1 } ] }, { id: "harbor_district", cat: "wonders", tab: 1, cap: 1, age: 4, req: [ { type: "building", id: "harbor_district_part", value: 8, consume: true } ], gen: [ { type: "resource", id: "fame", value: 100, fix: true }, { type: "resource", id: "gold", value: 5 }, { type: "resource", id: "food", value: 5 }, { type: "cap", id: "wood", value: 10000 }, { type: "cap", id: "stone", value: 10000 }, { type: "cap", id: "building_material", value: 2000 }, { type: "cap", id: "steel", value: 2000 }, { type: "cap", id: "natronite", value: 2000 } ] }, { id: "harbor_district_part", cat: "wonders", tab: 1, cap: 8, age: 4, req: [ { type: "resource", id: "gold", value: 80000 }, { type: "resource", id: "wood", value: 30000 }, { type: "resource", id: "stone", value: 20000 }, { type: "resource", id: "building_material", value: 7000 }, { type: "resource", id: "steel", value: 7000 }, { type: "resource", id: "natronite", value: 1000 }, { type: "tech", id: "harbor_project", value: 1 } ] }, { id: "city_lights", cat: "wonders", tab: 1, cap: 1, age: 4, req: [ { type: "building", id: "city_lights_part", value: 10, consume: true } ], gen: [ { type: "resource", id: "fame", value: 250, fix: true }, { type: "resource", id: "gold", value: 10, perc: true }, { type: "resource", id: "natronite", value: 10, perc: true }, { type: "population", id: "unemployed", value: 10 } ] }, { id: "city_lights_part", cat: "wonders", tab: 1, cap: 10, age: 4, req: [ { type: "resource", id: "gold", value: 125000 }, { type: "resource", id: "stone", value: 50000 }, { type: "resource", id: "copper", value: 30000 }, { type: "resource", id: "mana", value: 10000 }, { type: "resource", id: "natronite", value: 8000 }, { type: "tech", id: "natrocity", value: 1 } ] }, { id: "automated_complex", cat: "wonders", tab: 1, cap: 1, age: 5, req: [ { type: "building", id: "automated_complex_part", value: 12, consume: true } ], gen: [ { type: "resource", id: "fame", value: 300, fix: true }, { type: "resource", id: "building_material", value: 25, perc: true }, { type: "resource", id: "steel", value: 25, perc: true }, { type: "resource", id: "supplies", value: 25, perc: true }, { type: "resource", id: "crystal", value: 25, perc: true }, { type: "resource", id: "saltpetre", value: 25, perc: true }, { type: "resource", id: "natronite", value: 25, perc: true } ] }, { id: "automated_complex_part", cat: "wonders", tab: 1, cap: 12, age: 5, req: [ { type: "resource", id: "gold", value: 250000 }, { type: "resource", id: "steel", value: 50000 }, { type: "resource", id: "saltpetre", value: 35000 }, { type: "resource", id: "mana", value: 35000 }, { type: "resource", id: "natronite", value: 20000 }, { type: "tech", id: "replicable_parts", value: 1 } ] }, { id: "arch_triumph", cat: "wonders", tab: 1, cap: 1, age: 5, req: [ { type: "building", id: "arch_triumph_part", value: 25, consume: true } ], gen: [ { type: "resource", id: "fame", value: 1000, fix: true } ] }, { id: "arch_triumph_part", cat: "wonders", tab: 1, cap: 25, age: 5, req: [ { type: "resource", id: "gold", value: 350000 }, { type: "resource", id: "stone", value: 150000 }, { type: "resource", id: "tools", value: 150000 }, { type: "resource", id: "steel", value: 60000 }, { type: "resource", id: "faith", value: 60000 }, { type: "tech", id: "the_triumph", value: 1 } ] }, { id: "artisan_workshop", cat: "commercial_area", tab: 1, age: 1, req: [ { type: "resource", id: "gold", value: 150, multi: 1.4 }, { type: "resource", id: "wood", value: 120, multi: 1.4 }, { type: "resource", id: "stone", value: 80, multi: 1.4 }, { type: "tech", id: "pottery", value: 1 } ], gen: [ { type: "population", id: "artisan", value: 1 }, { type: "modifier", type_id: "population", id: "lumberjack", type_gen: "resource", gen: "wood", value: 2, perc: true }, { type: "modifier", type_id: "population", id: "quarryman", type_gen: "resource", gen: "stone", value: 2, perc: true }, { type: "modifier", type_id: "population", id: "farmer", type_gen: "resource", gen: "food", value: 2, perc: true }, { type: "modifier", type_id: "population", id: "artisan", type_gen: "resource", gen: "tools", value: 2, perc: true }, { type: "modifier", type_id: "population", id: "artisan", type_gen: "resource", gen: "gold", value: 2, perc: true }, { type: "cap", id: "gold", value: 250 }, { type: "cap", id: "tools", value: 100 } ] }, { id: "marketplace", cat: "commercial_area", tab: 1, age: 1, req: [ { type: "resource", id: "gold", value: 1200, multi: 1.4 }, { type: "resource", id: "wood", value: 600, multi: 1.4 }, { type: "resource", id: "copper", value: 400, multi: 1.4 }, { type: "resource", id: "iron", value: 400, multi: 1.4 }, { type: "resource", id: "tools", value: 400, multi: 1.4 }, { type: "tech", id: "currency", value: 1 } ], gen: [ { type: "population", id: "merchant", value: 1 }, { type: "modifier", type_id: "population", id: "merchant", type_gen: "resource", gen: "gold", value: 2, perc: true }, { type: "modifier", type_id: "population", id: "artisan", type_gen: "resource", gen: "tools", value: 2, perc: true }, { type: "modifier", type_id: "population", id: "artisan", type_gen: "resource", gen: "gold", value: 2, perc: true }, { type: "cap", id: "gold", value: 750 }, { type: "cap", id: "tools", value: 200 } ] }, { id: "canava_trading", cat: "commercial_area", tab: 1, age: 100, req: [ { type: "resource", id: "gold", value: 600, multi: 1.6 }, { type: "resource", id: "wood", value: 400, multi: 1.6 }, { type: "resource", id: "stone", value: 400, multi: 1.6 }, { type: "resource", id: "tools", value: 250, multi: 1.6 }, { type: "tech", id: "regional_markets", value: 1 } ], gen: [ { type: "resource", id: "gold", value: 1 }, { type: "resource", id: "gold", value: 2, perc: true }, { type: "cap", id: "gold", value: 1000 } ] }, { id: "valley_of_plenty", cat: "commercial_area", tab: 1, age: 2, cap: 5, req: [ { type: "resource", id: "gold", value: 1500, multi: 1.5 }, { type: "resource", id: "tools", value: 500, multi: 1.5 }, { type: "resource", id: "building_material", value: 200, multi: 1.5 }, { type: "tech", id: "plenty_valley", value: 1 } ], gen: [ { type: "resource", id: "gold", value: 2 }, { type: "resource", id: "food", value: 2 } ] }, { id: "bank", cat: "commercial_area", tab: 1, age: 2, req: [ { type: "resource", id: "gold", value: 2000, multi: 1.4 }, { type: "resource", id: "wood", value: 1000, multi: 1.4 }, { type: "resource", id: "stone", value: 1000, multi: 1.4 }, { type: "resource", id: "tools", value: 400, multi: 1.4 }, { type: "resource", id: "building_material", value: 200, multi: 1.4 }, { type: "resource", id: "steel", value: 200, multi: 1.4 }, { type: "tech", id: "banking", value: 1 } ], gen: [ { type: "resource", id: "gold", value: 2 }, { type: "resource", id: "gold", value: 1, perc: true }, { type: "cap", id: "gold", value: 2000 } ] }, { id: "tax_revenue_checkpoints", cat: "commercial_area", tab: 1, age: 2, cap: 4, req: [ { type: "resource", id: "gold", value: 4000, multi: 1.5 }, { type: "resource", id: "wood", value: 3000, multi: 1.5 }, { type: "resource", id: "tools", value: 1000, multi: 1.5 }, { type: "resource", id: "building_material", value: 500, multi: 1.5 }, { type: "tech", id: "safe_roads", value: 1 } ], gen: [ { type: "resource", id: "gold", value: 2 } ] }, { id: "the_vaults", cat: "commercial_area", tab: 1, cap: 3, age: 3, req: [ { type: "resource", id: "gold", value: 20000, multi: 2.5 }, { type: "resource", id: "stone", value: 5000, multi: 1.5 }, { type: "resource", id: "steel", value: 2500, multi: 1.5 }, { type: "tech", id: "the_vault", value: 1 } ], gen: [ { type: "cap", id: "gold", value: 17500 } ] }, { id: "credit_union", cat: "commercial_area", tab: 1, age: 4, req: [ { type: "resource", id: "gold", value: 15000, multi: 1.4 }, { type: "resource", id: "stone", value: 3000, multi: 1.3 }, { type: "resource", id: "steel", value: 1500, multi: 1.3 }, { type: "resource", id: "building_material", value: 1500, multi: 1.2 }, { type: "resource", id: "natronite", value: 300, multi: 1.3 }, { type: "tech", id: "financial_markets", value: 1 } ], gen: [ { type: "population", id: "trader", value: 1 }, { type: "modifier", type_id: "population", id: "trader", type_gen: "resource", gen: "gold", value: 2, perc: true }, { type: "cap", id: "gold", value: 4000 } ] }, { id: "railway_station", cat: "commercial_area", tab: 1, age: 5, req: [ { type: "resource", id: "gold", value: 12000, multi: 1.2 }, { type: "resource", id: "wood", value: 10000, multi: 1.2 }, { type: "resource", id: "iron", value: 5000, multi: 1.2 }, { type: "resource", id: "tools", value: 4000, multi: 1.2 }, { type: "resource", id: "building_material", value: 4000, multi: 1.2 }, { type: "resource", id: "steel", value: 2500, multi: 1.2 }, { type: "resource", id: "natronite", value: 2500, multi: 1.2 }, { type: "tech", id: "railroad", value: 1 } ], gen: [ { type: "resource", id: "gold", value: 0.5 }, { type: "resource", id: "gold", value: 1, perc: true }, { type: "cap", id: "gold", value: 4000 }, { type: "population", id: "unemployed", value: 1 } ] }, { id: "harvest_shrine", cat: "faith", tab: 1, cap: 1, age: 1, req: [ { type: "resource", id: "wood", value: 800 }, { type: "resource", id: "stone", value: 600 }, { type: "tech", id: "mythology", value: 1 } ], gen: [ { type: "resource", id: "food", value: 2 }, { type: "resource", id: "wood", value: 1 }, { type: "resource", id: "stone", value: 1 }, { type: "building", id: "war_shrine", value: -1 }, { type: "building", id: "mind_shrine", value: -1 } ] }, { id: "war_shrine", cat: "faith", tab: 1, cap: 1, age: 1, req: [ { type: "resource", id: "gold", value: 1500 }, { type: "resource", id: "copper", value: 200 }, { type: "resource", id: "iron", value: 200 }, { type: "tech", id: "mythology", value: 1 } ], gen: [ { type: "cap", id: "army", value: 15 }, { type: "building", id: "harvest_shrine", value: -1 }, { type: "building", id: "mind_shrine", value: -1 } ] }, { id: "mind_shrine", cat: "faith", tab: 1, cap: 1, age: 1, req: [ { type: "resource", id: "research", value: 1000 }, { type: "resource", id: "stone", value: 500 }, { type: "tech", id: "mythology", value: 1 } ], gen: [ { type: "resource", id: "research", value: 5 }, { type: "resource", id: "mana", value: 5 }, { type: "building", id: "war_shrine", value: -1 }, { type: "building", id: "harvest_shrine", value: -1 } ] }, { id: "temple", cat: "faith", tab: 1, age: 1, req: [ { type: "resource", id: "gold", value: 1500, multi: 1.4 }, { type: "resource", id: "wood", value: 1000, multi: 1.4 }, { type: "resource", id: "stone", value: 1000, multi: 1.4 }, { type: "resource", id: "copper", value: 500, multi: 1.4 }, { type: "resource", id: "iron", value: 500, multi: 1.4 }, { type: "resource", id: "tools", value: 500, multi: 1.4 }, { type: "tech", id: "religion", value: 1 } ], gen: [ { type: "resource", id: "faith", value: 0.8 }, { type: "cap", id: "faith", value: 350 } ] }, { id: "altar_of_sacrifices", cat: "faith", tab: 1, age: 1, req: [ { type: "resource", id: "gold", value: 1000, multi: 1.4 }, { type: "resource", id: "tools", value: 500, multi: 1.4 }, { type: "resource", id: "cow", value: 150, multi: 1.8 }, { type: "resource", id: "horse", value: 80, multi: 1.8 }, { type: "prayer", id: "sacrifices_gods", value: 1 } ], gen: [ { type: "resource", id: "faith", value: 1.2 }, { type: "resource", id: "mana", value: 1.2 }, { type: "cap", id: "faith", value: 500 }, { type: "cap", id: "mana", value: 250 } ] }, { id: "magic_circle", cat: "faith", tab: 1, age: 1, req: [ { type: "resource", id: "stone", value: 2000, multi: 1.4 }, { type: "resource", id: "copper", value: 1000, multi: 1.4 }, { type: "resource", id: "faith", value: 700, multi: 1.4 }, { type: "tech", id: "magic", value: 1 } ], gen: [ { type: "resource", id: "mana", value: 1.5 }, { type: "cap", id: "mana", value: 200 } ] }, { id: "monastery", cat: "faith", tab: 1, age: 100, req: [ { type: "resource", id: "gold", value: 500, multi: 1.4 }, { type: "resource", id: "wood", value: 500, multi: 1.4 }, { type: "resource", id: "stone", value: 500, multi: 1.4 }, { type: "resource", id: "tools", value: 200, multi: 1.3 }, { type: "tech", id: "cloistered_life", value: 1 } ], gen: [ { type: "resource", id: "research", value: 0.5 }, { type: "resource", id: "food", value: 0.5 }, { type: "resource", id: "faith", value: 0.5 }, { type: "resource", id: "mana", value: 0.5 }, { type: "cap", id: "research", value: 500 }, { type: "cap", id: "mana", value: 200 } ] }, { id: "fortune_grove", cat: "faith", tab: 1, age: 1, req: [ { type: "resource", id: "faith", value: 400, multi: 1.6 }, { type: "resource", id: "mana", value: 400, multi: 1.4 }, { type: "tech", id: "fortune_sanctuary", value: 1 } ], gen: [ { type: "resource", id: "luck", value: 1, fix: true } ] }, { id: "pillars_of_mana", cat: "faith", tab: 1, age: 2, cap: 5, req: [ { type: "resource", id: "building_material", value: 750, multi: 1.5 }, { type: "resource", id: "steel", value: 500, multi: 1.5 }, { type: "resource", id: "crystal", value: 200, multi: 1.5 }, { type: "tech", id: "mana_conveyors", value: 1 } ], gen: [ { type: "resource", id: "gold", value: -10 }, { type: "resource", id: "mana", value: 5 }, { type: "cap", id: "mana", value: 200 } ] }, { id: "matter_transmuter", cat: "faith", tab: 1, age: 3, req: [ { type: "resource", id: "mana", value: 800, multi: 1.3 }, { type: "resource", id: "saltpetre", value: 200, multi: 1.3 }, { type: "tech", id: "alchemical_reactions", value: 1 } ], gen: [ { type: "modifier", type_id: "population", id: "carpenter", type_gen: "resource", gen: "building_material", value: 2, perc: true }, { type: "modifier", type_id: "population", id: "steelworker", type_gen: "resource", gen: "steel", value: 2, perc: true }, { type: "modifier", type_id: "population", id: "supplier", type_gen: "resource", gen: "supplies", value: 2, perc: true }, { type: "modifier", type_id: "population", id: "professor", type_gen: "resource", gen: "crystal", value: 2, perc: true }, { type: "modifier", type_id: "population", id: "alchemist", type_gen: "resource", gen: "saltpetre", value: 2, perc: true } ] }, { id: "ministry_worship", cat: "faith", tab: 1, age: 100, req: [ { type: "resource", id: "stone", value: 8000, multi: 1.2 }, { type: "resource", id: "building_material", value: 4000, multi: 1.2 }, { type: "resource", id: "faith", value: 3000, multi: 1.2 }, { type: "resource", id: "crystal", value: 2000, multi: 1.2 }, { type: "tech", id: "ministry_worship_t", value: 1 } ], gen: [ { type: "population", id: "skymancer", value: 1 }, { type: "resource", id: "faith", value: 3 }, { type: "resource", id: "mana", value: 3 }, { type: "resource", id: "faith", value: 2, perc: true }, { type: "resource", id: "mana", value: 2, perc: true }, { type: "cap", id: "faith", value: 3000 }, { type: "cap", id: "mana", value: 3000 }, { type: "cap", id: "crystal", value: 2000 }, { type: "resource", id: "luck", value: 1, fix: true }, { type: "population", id: "unemployed", value: 2 } ] }, { id: "conclave", cat: "faith", tab: 1, age: 3, req: [ { type: "resource", id: "gold", value: 8000, multi: 1.5 }, { type: "resource", id: "stone", value: 3000, multi: 1.5 }, { type: "resource", id: "tools", value: 2000, multi: 1.5 }, { type: "resource", id: "crystal", value: 300, multi: 1.5 }, { type: "tech", id: "order_of_clerics", value: 1 } ], gen: [ { type: "resource", id: "faith", value: 1.5 }, { type: "cap", id: "faith", value: 500 }, { type: "cap", id: "mana", value: 250 } ] }, { id: "reactivate_portal", cat: "faith", tab: 1, cap: 1, age: 3, req: [ { type: "building", id: "reactivate_portal_decryption", value: 5, consume: true }, { type: "tech", id: "portal_of_the_dead", value: 1 } ], gen: [ { type: "resource", id: "fame", value: 100, fix: true }, { type: "resource", id: "mana", value: 5 } ] }, { id: "reactivate_portal_decryption", cat: "faith", tab: 1, cap: 5, age: 3, req: [ { type: "resource", id: "research", value: 15000 }, { type: "resource", id: "mana", value: 2500 }, { type: "resource", id: "crystal", value: 700 }, { type: "tech", id: "portal_of_the_dead", value: 1 } ] }, { id: "mausoleum_gods", cat: "faith", tab: 1, cap: 1, age: 3, req: [ { type: "resource", id: "stone", value: 20000 }, { type: "resource", id: "tools", value: 8000 }, { type: "resource", id: "building_material", value: 4800 }, { type: "building", id: "tower_mana", value: 1 }, { type: "prayer", id: "power_spell_east", value: 1 }, { type: "prayer", id: "power_spell_west", value: 1 }, { type: "prayer", id: "power_spell_north", value: 1 }, { type: "prayer", id: "power_spell_south", value: 1 } ] }, { id: "spiritual_garden", cat: "faith", tab: 1, age: 4, req: [ { type: "resource", id: "faith", value: 2500, multi: 1.5 }, { type: "resource", id: "crystal", value: 1000, multi: 1.5 }, { type: "resource", id: "natronite", value: 800, multi: 1.3 }, { type: "tech", id: "communion_nature", value: 1 } ], gen: [ { type: "resource", id: "faith", value: 2.5 }, { type: "resource", id: "mana", value: 2.5 }, { type: "cap", id: "faith", value: 750 }, { type: "cap", id: "mana", value: 500 } ] }, { id: "fountain_prosperity", cat: "faith", tab: 1, age: 4, cap: 4, req: [ { type: "resource", id: "mana", value: 10000 }, { type: "resource", id: "natronite", value: 8000 }, { type: "tech", id: "miracle_city", value: 1 } ], gen: [ { type: "resource", id: "gold", value: 4 }, { type: "resource", id: "food", value: 4 } ] }, { id: "mana_reactor", cat: "faith", tab: 1, age: 5, req: [ { type: "resource", id: "mana", value: 15000, multi: 1.2 }, { type: "resource", id: "saltpetre", value: 15000, multi: 1.2 }, { type: "resource", id: "natronite", value: 7500, multi: 1.2 }, { type: "tech", id: "mana_reactors", value: 1 } ], gen: [ { type: "resource", id: "mana", value: 5 }, { type: "resource", id: "natronite", value: 0.5 }, { type: "resource", id: "mana", value: 1, perc: true }, { type: "resource", id: "natronite", value: 1, perc: true }, { type: "cap", id: "mana", value: 1250 } ] }, { id: "store", cat: "warehouse", tab: 1, age: 1, req: [ { type: "resource", id: "wood", value: 500, multi: 1.4 }, { type: "resource", id: "stone", value: 300, multi: 1.4 }, { type: "resource", id: "tools", value: 150, multi: 1.4 }, { type: "tech", id: "storage", value: 1 } ], gen: [ { type: "cap", id: "wood", value: 500 }, { type: "cap", id: "stone", value: 500 }, { type: "cap", id: "copper", value: 250 }, { type: "cap", id: "iron", value: 250 } ] }, { id: "ancient_vault", cat: "warehouse", tab: 1, age: 100, req: [ { type: "resource", id: "wood", value: 400, multi: 1.3 }, { type: "resource", id: "stone", value: 400, multi: 1.3 }, { type: "resource", id: "tools", value: 200, multi: 1.3 }, { type: "tech", id: "ancient_stockpile", value: 1 } ], gen: [ { type: "cap", id: "research", value: 500 }, { type: "cap", id: "gold", value: 250 }, { type: "cap", id: "wood", value: 250 }, { type: "cap", id: "stone", value: 250 }, { type: "cap", id: "faith", value: 250 }, { type: "cap", id: "mana", value: 250 } ] }, { id: "large_warehouse", cat: "warehouse", tab: 1, age: 2, req: [ { type: "resource", id: "wood", value: 2000, multi: 1.3 }, { type: "resource", id: "stone", value: 1000, multi: 1.3 }, { type: "resource", id: "tools", value: 500, multi: 1.3 }, { type: "resource", id: "building_material", value: 400, multi: 1.2 }, { type: "resource", id: "steel", value: 400, multi: 1.2 }, { type: "tech", id: "large_storage_space", value: 1 } ], gen: [ { type: "cap", id: "wood", value: 1200 }, { type: "cap", id: "stone", value: 1200 }, { type: "cap", id: "copper", value: 600 }, { type: "cap", id: "iron", value: 600 }, { type: "cap", id: "tools", value: 600 } ] }, { id: "storage_facility", cat: "warehouse", tab: 1, age: 4, req: [ { type: "resource", id: "wood", value: 3000, multi: 1.3 }, { type: "resource", id: "stone", value: 2000, multi: 1.3 }, { type: "resource", id: "tools", value: 1000, multi: 1.3 }, { type: "resource", id: "building_material", value: 700, multi: 1.2 }, { type: "resource", id: "steel", value: 700, multi: 1.2 }, { type: "tech", id: "storage_district", value: 1 } ], gen: [ { type: "cap", id: "wood", value: 2500 }, { type: "cap", id: "stone", value: 2500 }, { type: "cap", id: "copper", value: 1500 }, { type: "cap", id: "iron", value: 1500 }, { type: "cap", id: "tools", value: 1500 } ] }, { id: "guarded_storehouse", cat: "warehouse", tab: 1, age: 3, req: [ { type: "resource", id: "iron", value: 3000, multi: 1.2 }, { type: "resource", id: "building_material", value: 1000, multi: 1.2 }, { type: "resource", id: "steel", value: 1500, multi: 1.2 }, { type: "tech", id: "storing_valuable_materials", value: 1 } ], gen: [ { type: "cap", id: "building_material", value: 400 }, { type: "cap", id: "steel", value: 400 }, { type: "cap", id: "supplies", value: 200 }, { type: "cap", id: "saltpetre", value: 200 }, { type: "cap", id: "crystal", value: 100 }, { type: "cap", id: "army", value: 2 } ] }, { id: "guarded_facility", cat: "warehouse", tab: 1, age: 4, req: [ { type: "resource", id: "iron", value: 4000, multi: 1.2 }, { type: "resource", id: "building_material", value: 1500, multi: 1.2 }, { type: "resource", id: "steel", value: 2000, multi: 1.2 }, { type: "tech", id: "storage_district", value: 1 } ], gen: [ { type: "cap", id: "building_material", value: 1000 }, { type: "cap", id: "steel", value: 1000 }, { type: "cap", id: "supplies", value: 800 }, { type: "cap", id: "saltpetre", value: 800 }, { type: "cap", id: "crystal", value: 500 }, { type: "cap", id: "army", value: 4 } ] }, { id: "natronite_depot", cat: "warehouse", tab: 1, age: 4, req: [ { type: "resource", id: "steel", value: 2500, multi: 1.2 }, { type: "resource", id: "mana", value: 1500, multi: 1.2 }, { type: "tech", id: "natronite_storage", value: 1 } ], gen: [ { type: "cap", id: "natronite", value: 600 } ] }, { id: "logistic_center", cat: "warehouse", tab: 1, age: 5, req: [ { type: "resource", id: "stone", value: 20000, multi: 1.2 }, { type: "resource", id: "building_material", value: 8500, multi: 1.2 }, { type: "resource", id: "steel", value: 8000, multi: 1.2 }, { type: "tech", id: "mass_transit", value: 1 } ], gen: [ { type: "resource", id: "food", value: 0.6 }, { type: "resource", id: "natronite", value: 0.3 }, { type: "resource", id: "supplies", value: 0.1 }, { type: "cap", id: "iron", value: 2000 }, { type: "cap", id: "copper", value: 2000 }, { type: "cap", id: "natronite", value: 1000 }, { type: "cap", id: "army", value: 3 } ] }, { id: "colony_hall", cat: "living_quarters", tab: 2, cap: 15, age: 5, req: [ { type: "resource", id: "gold", value: 30000, multi: 1.1 }, { type: "resource", id: "wood", value: 25000, multi: 1.1 }, { type: "resource", id: "building_material", value: 10000, multi: 1.1 }, { type: "resource", id: "supplies", value: 8000, multi: 1.1 }, { type: "resource", id: "natronite", value: 2500, multi: 1.1 }, { type: "tech", id: "the_journey", value: 1 } ], gen: [ { type: "population", id: "farmer", value: 2 }, { type: "population", id: "lumberjack", value: 1 }, { type: "population", id: "quarryman", value: 1 }, { type: "resource", id: "gold", value: -10 }, { type: "resource", id: "food", value: -5 }, { type: "cap", id: "food", value: 500 }, { type: "cap", id: "wood", value: 5000 }, { type: "cap", id: "stone", value: 5000 }, { type: "cap", id: "copper", value: 3000 }, { type: "cap", id: "iron", value: 3000 }, { type: "cap", id: "tools", value: 3000 } ] }, { id: "builders_complex", cat: "resource", tab: 2, age: 5, req: [ { type: "resource", id: "wood", value: 22000, multi: 1.1 }, { type: "resource", id: "stone", value: 16000, multi: 1.1 }, { type: "resource", id: "tools", value: 8000, multi: 1.1 }, { type: "resource", id: "natronite", value: 3000, multi: 1.1 }, { type: "tech", id: "colonial_exploitations", value: 1 } ], gen: [ { type: "population", id: "lumberjack", value: 1 }, { type: "population", id: "quarryman", value: 1 }, { type: "modifier", type_id: "population", id: "lumberjack", type_gen: "resource", gen: "wood", value: 1, perc: true }, { type: "modifier", type_id: "population", id: "quarryman", type_gen: "resource", gen: "stone", value: 1, perc: true }, { type: "cap", id: "wood", value: 7500 }, { type: "cap", id: "stone", value: 7500 } ] }, { id: "artisans_complex", cat: "resource", tab: 2, age: 5, req: [ { type: "resource", id: "wood", value: 22000, multi: 1.1 }, { type: "resource", id: "tools", value: 10000, multi: 1.1 }, { type: "resource", id: "building_material", value: 10000, multi: 1.1 }, { type: "resource", id: "natronite", value: 3000, multi: 1.1 }, { type: "tech", id: "artisan_complex", value: 1 } ], gen: [ { type: "population", id: "miner", value: 1 }, { type: "population", id: "artisan", value: 1 }, { type: "modifier", type_id: "population", id: "miner", type_gen: "resource", gen: "copper", value: 1, perc: true }, { type: "modifier", type_id: "population", id: "miner", type_gen: "resource", gen: "iron", value: 1, perc: true }, { type: "modifier", type_id: "population", id: "artisan", type_gen: "resource", gen: "tools", value: 1, perc: true }, { type: "cap", id: "copper", value: 5000 }, { type: "cap", id: "iron", value: 5000 }, { type: "cap", id: "tools", value: 5000 } ] }, { id: "alchemist_complex", cat: "resource", tab: 2, age: 5, req: [ { type: "resource", id: "wood", value: 24000, multi: 1.1 }, { type: "resource", id: "stone", value: 20000, multi: 1.1 }, { type: "resource", id: "building_material", value: 11000, multi: 1.1 }, { type: "resource", id: "natronite", value: 3500, multi: 1.1 }, { type: "tech", id: "alchemist_complex_t", value: 1 } ], gen: [ { type: "population", id: "alchemist", value: 1 }, { type: "modifier", type_id: "population", id: "alchemist", type_gen: "resource", gen: "saltpetre", value: 1, perc: true }, { type: "cap", id: "saltpetre", value: 2000 } ] }, { id: "elf_village", cat: "living_quarters", tab: 2, age: 5, req: [ { type: "resource", id: "wood", value: 80000, multi: 1.1 }, { type: "resource", id: "crystal", value: 10000, multi: 1.1 }, { type: "resource", id: "building_material", value: 10000, multi: 1.1 }, { type: "tech", id: "elf_last_village", value: 1 } ], gen: [ { type: "cap", id: "food", value: 500 }, { type: "cap", id: "crystal", value: 500 }, { type: "cap", id: "mana", value: 250 }, { type: "cap", id: "horse", value: 200 }, { type: "cap", id: "army", value: 5 }, { type: "population", id: "unemployed", value: 1 } ] }, { id: "elf_encampment", cat: "science", tab: 2, age: 5, req: [ { type: "resource", id: "wood", value: 50000, multi: 1.2 }, { type: "resource", id: "crystal", value: 7000, multi: 1.2 }, { type: "tech", id: "elf_survivors", value: 1 } ], gen: [ { type: "resource", id: "research", value: 1.5 }, { type: "resource", id: "mana", value: 1.5 }, { type: "cap", id: "research", value: 2000 }, { type: "cap", id: "mana", value: 2000 }, { type: "population", id: "unemployed", value: 1 } ] }, { id: "dock", cat: "resource", tab: 2, age: 5, req: [ { type: "resource", id: "gold", value: 15000, multi: 1.2 }, { type: "resource", id: "wood", value: 12000, multi: 1.2 }, { type: "resource", id: "building_material", value: 7000, multi: 1.2 }, { type: "resource", id: "natronite", value: 1200, multi: 1.2 }, { type: "tech", id: "productive_hub", value: 1 }, { type: "tech", id: "colonial_docks", value: 1 } ], gen: [ { type: "population", id: "fisher", value: 2 }, { type: "modifier", type_id: "population", id: "fisher", type_gen: "resource", gen: "food", value: 2, perc: true }, { type: "modifier", type_id: "population", id: "merchant", type_gen: "resource", gen: "gold", value: 2, perc: true }, { type: "cap", id: "food", value: 500 } ] }, { id: "refinery", cat: "resource", tab: 2, age: 5, req: [ { type: "resource", id: "gold", value: 25000, multi: 1.1 }, { type: "resource", id: "stone", value: 15000, multi: 1.1 }, { type: "resource", id: "tools", value: 7500, multi: 1.1 }, { type: "resource", id: "steel", value: 4500, multi: 1.1 }, { type: "resource", id: "natronite", value: 1400, multi: 1.1 }, { type: "tech", id: "productive_hub", value: 1 }, { type: "tech", id: "overseas_refinery", value: 1 } ], gen: [ { type: "modifier", type_id: "population", id: "carpenter", type_gen: "resource", gen: "building_material", value: 3, perc: true }, { type: "modifier", type_id: "population", id: "steelworker", type_gen: "resource", gen: "steel", value: 3, perc: true }, { type: "modifier", type_id: "population", id: "alchemist", type_gen: "resource", gen: "saltpetre", value: 3, perc: true }, { type: "modifier", type_id: "population", id: "natro_refiner", type_gen: "resource", gen: "natronite", value: 3, perc: true }, { type: "cap", id: "natronite", value: 250 } ] }, { id: "custom_house", cat: "commercial_area", tab: 2, age: 5, req: [ { type: "resource", id: "gold", value: 30000, multi: 1.1 }, { type: "resource", id: "stone", value: 25000, multi: 1.1 }, { type: "resource", id: "steel", value: 10000, multi: 1.1 }, { type: "resource", id: "natronite", value: 1500, multi: 1.1 }, { type: "tech", id: "productive_hub", value: 1 }, { type: "tech", id: "colonial_trade", value: 1 } ], gen: [ { type: "population", id: "merchant", value: 1 }, { type: "population", id: "trader", value: 1 }, { type: "modifier", type_id: "population", id: "merchant", type_gen: "resource", gen: "gold", value: 3, perc: true }, { type: "modifier", type_id: "population", id: "trader", type_gen: "resource", gen: "gold", value: 3, perc: true }, { type: "cap", id: "gold", value: 5000 } ] }, { id: "estates", cat: "resource", tab: 2, age: 5, req: [ { type: "resource", id: "food", value: 8000, multi: 1.2 }, { type: "resource", id: "supplies", value: 6000, multi: 1.2 }, { type: "resource", id: "natronite", value: 1500, multi: 1.2 }, { type: "resource", id: "cow", value: 1000, multi: 1.2 }, { type: "resource", id: "horse", value: 500, multi: 1.2 }, { type: "tech", id: "productive_hub", value: 1 }, { type: "tech", id: "landed_estates", value: 1 } ], gen: [ { type: "population", id: "farmer", value: 1 }, { type: "population", id: "breeder", value: 1 }, { type: "population", id: "supplier", value: 1 }, { type: "modifier", type_id: "population", id: "farmer", type_gen: "resource", gen: "food", value: 3, perc: true }, { type: "modifier", type_id: "population", id: "breeder", type_gen: "resource", gen: "cow", value: 3, perc: true }, { type: "modifier", type_id: "population", id: "breeder", type_gen: "resource", gen: "horse", value: 3, perc: true }, { type: "cap", id: "food", value: 500 }, { type: "cap", id: "cow", value: 400 }, { type: "cap", id: "horse", value: 200 }, { type: "cap", id: "army", value: 10 }, { type: "population", id: "unemployed", value: 2 } ] }, { id: "trench", cat: "defense", tab: 2, age: 5, req: [ { type: "resource", id: "wood", value: 30000, multi: 1.2 }, { type: "resource", id: "building_material", value: 10000, multi: 1.2 }, { type: "resource", id: "saltpetre", value: 8000, multi: 1.2 }, { type: "tech", id: "trenches", value: 1 } ], gen: [ { type: "modifier", type_id: "army", id: "settlement_defenses", type_gen: "stat", gen: "defense", value: 50, perc: false }, { type: "modifier", type_id: "army", id: "marksman", type_gen: "stat", gen: "attack", value: 1, perc: false }, { type: "modifier", type_id: "army", id: "marksman", type_gen: "stat", gen: "defense", value: 1, perc: false } ] }, { id: "shed", cat: "warehouse", tab: 2, age: 5, req: [ { type: "resource", id: "wood", value: 20000, multi: 1.1 }, { type: "resource", id: "stone", value: 16000, multi: 1.1 }, { type: "resource", id: "tools", value: 9000, multi: 1.1 }, { type: "resource", id: "natronite", value: 2500, multi: 1.1 }, { type: "tech", id: "the_journey", value: 1 } ], gen: [ { type: "cap", id: "building_material", value: 1000 }, { type: "cap", id: "steel", value: 1000 }, { type: "cap", id: "supplies", value: 750 }, { type: "cap", id: "saltpetre", value: 750 }, { type: "cap", id: "crystal", value: 500 } ] }, { id: "large_shed", cat: "warehouse", tab: 2, age: 5, req: [ { type: "resource", id: "wood", value: 32000, multi: 1.1 }, { type: "resource", id: "stone", value: 22000, multi: 1.1 }, { type: "resource", id: "tools", value: 14000, multi: 1.1 }, { type: "resource", id: "natronite", value: 3000, multi: 1.1 }, { type: "tech", id: "large_shed_t", value: 1 } ], gen: [ { type: "cap", id: "wood", value: 10000 }, { type: "cap", id: "stone", value: 10000 }, { type: "cap", id: "copper", value: 7500 }, { type: "cap", id: "iron", value: 7500 }, { type: "cap", id: "tools", value: 7500 } ] }, { id: "statue_virtue", cat: "wonders", tab: 2, cap: 1, age: 5, req: [ { type: "building", id: "statue_virtue_part", value: 20, consume: true } ], gen: [ { type: "resource", id: "fame", value: 350, fix: true }, { type: "resource", id: "gold", value: 15, perc: true }, { type: "resource", id: "food", value: 15, perc: true }, { type: "resource", id: "wood", value: 15, perc: true }, { type: "resource", id: "stone", value: 15, perc: true }, { type: "resource", id: "tools", value: 15, perc: true }, { type: "resource", id: "copper", value: 15, perc: true }, { type: "resource", id: "iron", value: 15, perc: true }, { type: "cap", id: "army", value: 30 }, { type: "population", id: "unemployed", value: 15 }, { type: "resource", id: "gem", value: 1, fix: true } ] }, { id: "statue_virtue_part", cat: "wonders", tab: 2, cap: 20, age: 5, req: [ { type: "resource", id: "research", value: 140000 }, { type: "resource", id: "gold", value: 200000 }, { type: "resource", id: "stone", value: 100000 }, { type: "resource", id: "iron", value: 50000 }, { type: "resource", id: "steel", value: 25000 }, { type: "resource", id: "natronite", value: 15000 }, { type: "tech", id: "port_statue", value: 1 } ] }, { id: "military_camp", cat: "defense", tab: 2, cap: 15, age: 5, req: [ { type: "resource", id: "gold", value: 30000, multi: 1.1 }, { type: "resource", id: "wood", value: 15000, multi: 1.1 }, { type: "resource", id: "building_material", value: 5000, multi: 1.1 }, { type: "resource", id: "natronite", value: 1200, multi: 1.1 }, { type: "tech", id: "colonial_camp", value: 1 } ], gen: [ { type: "population", id: "quartermaster", value: 1 }, { type: "modifier", type_id: "army", id: "cuirassier", type_gen: "stat", gen: "attack", value: 2, perc: false }, { type: "modifier", type_id: "army", id: "line_infantry", type_gen: "stat", gen: "defense", value: 2, perc: false }, { type: "cap", id: "army", value: 5 } ] }, { id: "stronghold", cat: "defense", tab: 2, cap: 15, age: 5, req: [ { type: "resource", id: "stone", value: 30000, multi: 1.1 }, { type: "resource", id: "steel", value: 10000, multi: 1.1 }, { type: "resource", id: "saltpetre", value: 8000, multi: 1.1 }, { type: "resource", id: "natronite", value: 2500, multi: 1.1 }, { type: "tech", id: "colonial_stronghold", value: 1 } ], gen: [ { type: "modifier", type_id: "army", id: "settlement_defenses", type_gen: "stat", gen: "defense", value: 25, perc: false }, { type: "cap", id: "food", value: 1500 }, { type: "cap", id: "supplies", value: 1500 }, { type: "cap", id: "natronite", value: 500 } ] }, { id: "colony_recruiting_camp", cat: "defense", tab: 2, cap: 15, age: 5, req: [ { type: "resource", id: "gold", value: 35000, multi: 1.1 }, { type: "resource", id: "wood", value: 18000, multi: 1.1 }, { type: "resource", id: "supplies", value: 5000, multi: 1.1 }, { type: "resource", id: "natronite", value: 2000, multi: 1.1 }, { type: "tech", id: "colonial_recruits", value: 1 } ], gen: [ { type: "population", id: "quartermaster", value: 1 }, { type: "modifier", type_id: "army", id: "commander", type_gen: "stat", gen: "defense", value: 3, perc: false }, { type: "modifier", type_id: "army", id: "general", type_gen: "stat", gen: "attack", value: 3, perc: false }, { type: "cap", id: "army", value: 10 } ] }, { id: "fortified_citadel", cat: "wonders", tab: 2, cap: 1, age: 5, req: [ { type: "building", id: "fortified_citadel_part", value: 20, consume: true } ], gen: [ { type: "resource", id: "fame", value: 350, fix: true }, { type: "modifier", type_id: "army", id: "settlement_defenses", type_gen: "stat", gen: "attack", value: 500, perc: false }, { type: "modifier", type_id: "army", id: "settlement_defenses", type_gen: "stat", gen: "defense", value: 500, perc: false }, { type: "modifier", type_id: "army", id: "cannon", type_gen: "stat", gen: "attack", value: 20, perc: false }, { type: "modifier", type_id: "army", id: "cannon", type_gen: "stat", gen: "defense", value: 40, perc: false }, { type: "cap", id: "army", value: 50 }, { type: "resource", id: "gem", value: 1, fix: true } ] }, { id: "fortified_citadel_part", cat: "wonders", tab: 2, cap: 20, age: 5, req: [ { type: "resource", id: "gold", value: 200000 }, { type: "resource", id: "stone", value: 100000 }, { type: "resource", id: "iron", value: 50000 }, { type: "resource", id: "steel", value: 25000 }, { type: "resource", id: "saltpetre", value: 25000 }, { type: "resource", id: "natronite", value: 15000 }, { type: "tech", id: "fortified_colony", value: 1 } ] }, { id: "pilgrim_camp", cat: "faith", tab: 2, age: 5, req: [ { type: "resource", id: "wood", value: 12000, multi: 1.1 }, { type: "resource", id: "faith", value: 5000, multi: 1.1 }, { type: "resource", id: "crystal", value: 1500, multi: 1.1 }, { type: "resource", id: "natronite", value: 1500, multi: 1.1 }, { type: "tech", id: "faith_world", value: 1 } ], gen: [ { type: "resource", id: "food", value: 1 }, { type: "resource", id: "tools", value: 1 }, { type: "resource", id: "faith", value: 1 }, { type: "resource", id: "mana", value: 1 }, { type: "cap", id: "food", value: 500 }, { type: "cap", id: "faith", value: 500 }, { type: "cap", id: "mana", value: 250 }, { type: "population", id: "unemployed", value: 1 } ] }, { id: "church_old_gods", cat: "faith", tab: 2, age: 5, req: [ { type: "resource", id: "stone", value: 15000, multi: 1.1 }, { type: "resource", id: "tools", value: 8000, multi: 1.1 }, { type: "resource", id: "faith", value: 6000, multi: 1.1 }, { type: "resource", id: "crystal", value: 2500, multi: 1.1 }, { type: "resource", id: "natronite", value: 2500, multi: 1.1 }, { type: "tech", id: "new_old_gods", value: 1 } ], gen: [ { type: "resource", id: "gold", value: 3 }, { type: "resource", id: "faith", value: 3 }, { type: "resource", id: "mana", value: 3 }, { type: "cap", id: "faith", value: 1500 }, { type: "cap", id: "mana", value: 1000 }, { type: "modifier", type_id: "army", id: "sacred_golem", type_gen: "stat", gen: "defense", value: 2, perc: false }, { type: "modifier", type_id: "army", id: "priest", type_gen: "stat", gen: "defense", value: 4, perc: false } ] }, { id: "mana_extractors", cat: "faith", tab: 2, age: 5, req: [ { type: "resource", id: "steel", value: 12000, multi: 1.1 }, { type: "resource", id: "tools", value: 12000, multi: 1.1 }, { type: "resource", id: "natronite", value: 2500, multi: 1.1 }, { type: "tech", id: "mana_investigation", value: 1 } ], gen: [ { type: "population", id: "harvester", value: 1 }, { type: "resource", id: "mana", value: 3 }, { type: "resource", id: "mana", value: 3, perc: true }, { type: "cap", id: "mana", value: 2000 } ] }, { id: "holy_site", cat: "wonders", tab: 2, cap: 1, age: 5, req: [ { type: "building", id: "holy_site_part", value: 20, consume: true } ], gen: [ { type: "resource", id: "fame", value: 350, fix: true }, { type: "resource", id: "gold", value: 25, perc: true }, { type: "resource", id: "faith", value: 25, perc: true }, { type: "resource", id: "mana", value: 25, perc: true }, { type: "modifier", type_id: "army", id: "warrior_monk", type_gen: "stat", gen: "defense", value: 15, perc: false }, { type: "modifier", type_id: "army", id: "cleric", type_gen: "stat", gen: "defense", value: 15, perc: false }, { type: "modifier", type_id: "army", id: "battle_angel", type_gen: "stat", gen: "defense", value: 15, perc: false }, { type: "resource", id: "gem", value: 1, fix: true } ] }, { id: "holy_site_part", cat: "wonders", tab: 2, cap: 20, age: 5, req: [ { type: "resource", id: "gold", value: 200000 }, { type: "resource", id: "faith", value: 25000 }, { type: "resource", id: "building_material", value: 20000 }, { type: "resource", id: "mana", value: 17500 }, { type: "resource", id: "natronite", value: 15000 }, { type: "tech", id: "colonial_consacration", value: 1 } ] } ]; //外交数据 var factions = [ { id: "nightdale_protectorate", found: [ 1, 2, 3, 4, 5 ], relationship: 30, esp: 30, level: 5, reqDelegation: [ { type: "resource", id: "wood", value: 500 }, { type: "resource", id: "food", value: 500 } ], reqImproveRelationship: [ { type: "resource", id: "gold", value: 5000 } ], commercial: [ { type: "resource", id: "gold", value: -15 }, { type: "resource", id: "wood", value: 4 }, { type: "resource", id: "stone", value: 4 } ], alliance: [ { type: "resource", id: "wood", value: 4 }, { type: "resource", id: "stone", value: 4 }, { type: "cap", id: "army", value: 5 } ], army: [ { id: "archer", value: 80 }, { id: "warrior", value: 120 }, { id: "commander", value: 1 } ], gen: [ { type: "resource", id: "gold", value: 8, perc: true }, { type: "resource", id: "food", value: 8, perc: true }, { type: "resource", id: "wood", value: 8, perc: true }, { type: "resource", id: "stone", value: 8, perc: true } ] }, { id: "theresmore_wanders", found: [ 6, 7, 8, 9, 10 ], relationship: 30, esp: 20, level: 5, reqDelegation: [ { type: "resource", id: "food", value: 2000 } ], reqImproveRelationship: [ { type: "resource", id: "gold", value: 5000 } ], commercial: [ { type: "resource", id: "gold", value: -15 }, { type: "resource", id: "food", value: 5 }, { type: "resource", id: "horse", value: 0.5 } ], alliance: [ { type: "resource", id: "food", value: 5 }, { type: "resource", id: "horse", value: 0.5 }, { type: "cap", id: "army", value: 5 } ], army: [ { id: "archer", value: 60 }, { id: "spearman", value: 40 }, { id: "light_cavarly", value: 80 }, { id: "commander", value: 1 } ], gen: [ { type: "resource", id: "gold", value: 8, perc: true }, { type: "resource", id: "food", value: 8, perc: true }, { type: "resource", id: "horse", value: 0.5 } ] }, { id: "western_kingdom", found: [ 11, 12, 13, 14, 15 ], relationship: 50, esp: 50, level: 5, reqDelegation: [ { type: "resource", id: "iron", value: 500 }, { type: "resource", id: "tools", value: 500 } ], reqImproveRelationship: [ { type: "resource", id: "gold", value: 5000 } ], commercial: [ { type: "resource", id: "gold", value: -20 }, { type: "resource", id: "copper", value: 3 }, { type: "resource", id: "iron", value: 1 }, { type: "resource", id: "tools", value: 2 } ], alliance: [ { type: "resource", id: "copper", value: 2 }, { type: "resource", id: "iron", value: 1 }, { type: "resource", id: "tools", value: 1 }, { type: "cap", id: "army", value: 5 } ], army: [ { id: "crossbowman", value: 60 }, { id: "man_at_arms", value: 50 }, { id: "knight", value: 50 }, { id: "commander", value: 1 } ], gen: [ { type: "resource", id: "research", value: 8, perc: true }, { type: "resource", id: "copper", value: 8, perc: true }, { type: "resource", id: "iron", value: 8, perc: true }, { type: "resource", id: "tools", value: 8, perc: true } ] }, { id: "zultan_emirate", found: [ 16, 17, 18, 19, 20 ], relationship: 50, esp: 40, level: 5, reqDelegation: [ { type: "resource", id: "gold", value: 2000 }, { type: "resource", id: "food", value: 500 } ], reqImproveRelationship: [ { type: "resource", id: "gold", value: 5000 } ], commercial: [ { type: "resource", id: "gold", value: -15 }, { type: "resource", id: "faith", value: 2 }, { type: "resource", id: "mana", value: 5 } ], alliance: [ { type: "resource", id: "gold", value: 5 }, { type: "resource", id: "faith", value: 5 }, { type: "resource", id: "mana", value: 5 }, { type: "cap", id: "army", value: 5 } ], army: [ { id: "archer", value: 120 }, { id: "spearman", value: 40 }, { id: "heavy_warrior", value: 30 }, { id: "commander", value: 1 } ], gen: [ { type: "resource", id: "faith", value: 8, perc: true }, { type: "resource", id: "mana", value: 8, perc: true } ] }, { id: "sssarkat_empire", found: [ 1, 2, 3, 4, 5 ], relationship: 30, esp: 40, level: 6, reqFound: [ { type: "tech", id: "long_expedition", value: 1 } ], reqDelegation: [ { type: "resource", id: "food", value: 5000 }, { type: "resource", id: "supplies", value: 2500 } ], reqImproveRelationship: [ { type: "resource", id: "gold", value: 25000 }, { type: "resource", id: "cow", value: 1000 } ], commercial: [ { type: "resource", id: "gold", value: -30 }, { type: "resource", id: "mana", value: 12 }, { type: "resource", id: "saltpetre", value: 3 } ], alliance: [ { type: "resource", id: "mana", value: 10 }, { type: "resource", id: "saltpetre", value: 2 }, { type: "cap", id: "army", value: 15 } ], army: [ { id: "lizard_warrior", value: 200 }, { id: "lizard_archer", value: 120 }, { id: "lizard_shaman", value: 20 }, { id: "lizard_commander", value: 1 } ], gen: [ { type: "resource", id: "fame", value: 150, fix: true }, { type: "resource", id: "mana", value: 12, perc: true }, { type: "resource", id: "saltpetre", value: 10, perc: true } ] }, { id: "scalerock_tribes", found: [ 6, 7, 8, 9, 10 ], relationship: 40, esp: 50, level: 6, reqFound: [ { type: "tech", id: "long_expedition", value: 1 } ], reqDelegation: [ { type: "resource", id: "steel", value: 3000 }, { type: "resource", id: "natronite", value: 1500 } ], reqImproveRelationship: [ { type: "resource", id: "gold", value: 25000 }, { type: "resource", id: "natronite", value: 2000 } ], commercial: [ { type: "resource", id: "gold", value: -30 }, { type: "resource", id: "building_material", value: 1.5 }, { type: "resource", id: "supplies", value: 1 } ], alliance: [ { type: "resource", id: "building_material", value: 1.5 }, { type: "resource", id: "supplies", value: 1 }, { type: "cap", id: "army", value: 15 } ], army: [ { id: "draconic_warrior", value: 200 }, { id: "draconic_diver", value: 120 }, { id: "draconic_mage", value: 20 }, { id: "draconic_leader", value: 1 } ], gen: [ { type: "resource", id: "fame", value: 200, fix: true }, { type: "resource", id: "building_material", value: 15, perc: true }, { type: "resource", id: "supplies", value: 15, perc: true } ] }, { id: "enso_multitude", found: [ 11, 12, 13, 14, 15 ], relationship: 50, esp: 60, level: 7, reqFound: [ { type: "tech", id: "long_expedition", value: 1 } ], reqDelegation: [ { type: "resource", id: "faith", value: 8000 }, { type: "resource", id: "mana", value: 8000 } ], reqImproveRelationship: [ { type: "resource", id: "faith", value: 8000 }, { type: "resource", id: "mana", value: 8000 } ], commercial: [ { type: "resource", id: "gold", value: -50 }, { type: "resource", id: "natronite", value: 3 }, { type: "resource", id: "steel", value: 1.5 } ], alliance: [ { type: "resource", id: "natronite", value: 2 }, { type: "resource", id: "steel", value: 2 }, { type: "cap", id: "army", value: 15 } ], army: [ { id: "musket_ashigaru", value: 250 }, { id: "katana_samurai", value: 150 }, { id: "cavarly_archer", value: 60 }, { id: "daimyo", value: 1 } ], gen: [ { type: "resource", id: "fame", value: 250, fix: true }, { type: "resource", id: "natronite", value: 20, perc: true }, { type: "resource", id: "steel", value: 20, perc: true } ] }, { id: "king_kobold_nation", found: [ 21, 22, 23, 24, 25 ], esp: 40, level: 5, reqFound: [ { type: "tech", id: "kobold_nation", value: 1 } ], relationship: 0, army: [ { id: "kobold_king", value: 1 }, { id: "kobold_champion", value: 50 }, { id: "kobold", value: 180 } ], gen: [ { type: "resource", id: "fame", value: 100, fix: true }, { type: "resource", id: "gold", value: 10 } ] }, { id: "barbarian_horde", found: [ 26, 27, 28, 29, 30 ], esp: 40, level: 6, reqFound: [ { type: "tech", id: "barbarian_tribes", value: 1 } ], relationship: 0, army: [ { id: "barbarian_king", value: 1 }, { id: "barbarian_chosen", value: 20 }, { id: "barbarian_drummer", value: 5 }, { id: "barbarian_warrior", value: 120 } ], gen: [ { type: "resource", id: "fame", value: 100, fix: true }, { type: "resource", id: "gold", value: 5 }, { type: "resource", id: "wood", value: 5 }, { type: "resource", id: "iron", value: 2 }, { type: "population", id: "unemployed", value: 5 } ] }, { id: "lich_fortress", found: [ 31, 32, 33, 34, 35 ], esp: 50, level: 7, reqFound: [ { type: "tech", id: "huge_cave_t", value: 1 } ], relationship: 0, army: [ { id: "nikharul", value: 1 }, { id: "skeletal_knight", value: 750 }, { id: "skeleton", value: 8000 } ], gen: [ { type: "resource", id: "fame", value: 150, fix: true }, { type: "resource", id: "research", value: 2 }, { type: "resource", id: "stone", value: 2 } ] }, { id: "army_of_the_dead", found: [ 0 ], relationship: 0, army: [ { id: "skeleton", value: 1500 }, { id: "zombie", value: 700 } ] }, { id: "army_of_goblin", found: [ 0 ], relationship: 0, army: [ { id: "goblin_overlord", value: 1 }, { id: "goblin_wolfrider", value: 30 }, { id: "goblin_warrior", value: 70 } ] }, { id: "army_of_dragon", found: [ 0 ], relationship: 0, army: [ { id: "red_dragon", value: 1 }, { id: "draconic_warrior", value: 100 } ] }, { id: "fallen_angel_army_1", found: [ 0 ], relationship: 0, army: [ { id: "fallen_angel", value: 1 }, { id: "demonic_musketeer", value: 120 } ] }, { id: "fallen_angel_army_2", found: [ 0 ], relationship: 0, army: [ { id: "fallen_angel", value: 1 }, { id: "lesser_demon", value: 150 }, { id: "greater_demon", value: 100 } ] }, { id: "orc_war_party_1", found: [ 0 ], relationship: 0, army: [ { id: "orc_warrior", value: 150 }, { id: "orc_stone_thrower", value: 100 } ], hidden: true }, { id: "orc_war_party_2", found: [ 0 ], relationship: 0, army: [ { id: "orc_warrior", value: 180 }, { id: "orc_berserker", value: 50 } ], hidden: true }, { id: "orc_war_party_3", found: [ 0 ], relationship: 0, army: [ { id: "orc_warrior", value: 200 }, { id: "orc_berserker", value: 100 }, { id: "orc_shaman", value: 40 }, { id: "orc_warg_rider", value: 80 } ], hidden: true }, { id: "orc_war_party_4", found: [ 0 ], relationship: 0, army: [ { id: "orc_ironskin", value: 200 }, { id: "orc_berserker", value: 100 }, { id: "orc_shaman", value: 40 }, { id: "orc_warg_rider", value: 80 }, { id: "orc_warlord", value: 1 } ], hidden: true }, { id: "orc_war_party_5", found: [ 0 ], relationship: 0, army: [ { id: "orc_warrior", value: 300 }, { id: "orc_ironskin", value: 200 }, { id: "orc_berserker", value: 100 }, { id: "orc_shaman", value: 40 }, { id: "orc_warg_rider", value: 80 }, { id: "orc_warlord", value: 1 } ], hidden: true }, { id: "orc_war_party_6", found: [ 0 ], relationship: 0, army: [ { id: "orc_warrior", value: 30 } ], hidden: true }, { id: "orc_war_party_7", found: [ 0 ], relationship: 0, army: [ { id: "orc_warrior", value: 30 }, { id: "orc_berserker", value: 20 }, { id: "orc_stone_thrower", value: 30 } ], hidden: true }, { id: "orc_war_party_8", found: [ 0 ], relationship: 0, army: [ { id: "orc_warrior", value: 300 }, { id: "orc_berserker", value: 200 }, { id: "orc_stone_thrower", value: 300 } ], hidden: true }, { id: "orc_war_party_9", found: [ 0 ], relationship: 0, army: [ { id: "orc_warrior", value: 450 }, { id: "orc_ironskin", value: 140 }, { id: "orc_berserker", value: 10 }, { id: "orc_shaman", value: 20 }, { id: "orc_warg_rider", value: 190 }, { id: "orc_warlord", value: 3 } ], hidden: true }, { id: "orc_war_party_10", found: [ 0 ], relationship: 0, army: [ { id: "orc_warrior", value: 450 }, { id: "orc_ironskin", value: 140 }, { id: "orc_berserker", value: 10 }, { id: "orc_stone_thrower", value: 120 }, { id: "orc_shaman", value: 20 }, { id: "orc_warg_rider", value: 190 }, { id: "orc_warlord", value: 3 } ], hidden: true }, { id: "orc_war_party_11", found: [ 0 ], relationship: 0, army: [ { id: "orc_warrior", value: 100 }, { id: "orc_ironskin", value: 190 }, { id: "orc_berserker", value: 120 }, { id: "orc_stone_thrower", value: 150 }, { id: "orc_shaman", value: 90 }, { id: "orc_warg_rider", value: 110 }, { id: "orc_warlord", value: 5 } ], hidden: true }, { id: "orc_war_party_12", found: [ 0 ], relationship: 0, army: [ { id: "orc_warrior", value: 500 }, { id: "orc_ironskin", value: 390 }, { id: "orc_berserker", value: 220 }, { id: "orc_stone_thrower", value: 450 }, { id: "orc_shaman", value: 190 }, { id: "orc_warg_rider", value: 310 }, { id: "orc_warlord", value: 5 } ], hidden: true }, { id: "orc_war_party_13", found: [ 0 ], relationship: 0, army: [ { id: "orc_warrior", value: 1200 }, { id: "orc_ironskin", value: 590 }, { id: "orc_berserker", value: 320 }, { id: "orc_stone_thrower", value: 350 }, { id: "orc_shaman", value: 90 }, { id: "orc_warg_rider", value: 50 }, { id: "orc_warlord", value: 1 } ], hidden: true }, { id: "orc_war_party_14", found: [ 0 ], relationship: 0, army: [ { id: "orc_warrior", value: 400 }, { id: "orc_ironskin", value: 190 }, { id: "orc_berserker", value: 220 }, { id: "orc_stone_thrower", value: 150 } ], hidden: true }, { id: "orc_war_party_15", found: [ 0 ], relationship: 0, army: [ { id: "orc_warrior", value: 200 }, { id: "orc_ironskin", value: 490 }, { id: "orc_berserker", value: 220 }, { id: "orc_stone_thrower", value: 550 } ], hidden: true }, { id: "orc_war_party_16", found: [ 0 ], relationship: 0, army: [ { id: "orc_warrior", value: 50 }, { id: "orc_ironskin", value: 120 }, { id: "orc_berserker", value: 20 }, { id: "orc_stone_thrower", value: 30 } ], hidden: true }, { id: "orc_horde_boss", found: [ 0 ], relationship: 0, army: [ { id: "orc_champion", value: 50 }, { id: "orc_warrior", value: 135 }, { id: "orc_ironskin", value: 135 }, { id: "orc_berserker", value: 90 }, { id: "orc_stone_thrower", value: 90 }, { id: "orc_flame_caster", value: 90 }, { id: "orc_shaman", value: 60 }, { id: "orc_warg_rider", value: 90 }, { id: "orc_warlord", value: 9 } ] } ]; //魔法数据 var spells = [ { id: "praise_gods", type: "prayer", req: [ { type: "resource", id: "faith", value: 250 }, { type: "building", id: "temple", value: 1 } ] }, { id: "blessing", type: "prayer", req: [ { type: "resource", id: "faith", value: 500 }, { type: "prayer", id: "praise_gods", value: 1 } ] }, { id: "sacrifices_gods", type: "prayer", req: [ { type: "resource", id: "faith", value: 600 }, { type: "prayer", id: "praise_gods", value: 1 } ] }, { id: "acolyte_circle", type: "prayer", req: [ { type: "resource", id: "faith", value: 800 }, { type: "prayer", id: "blessing", value: 1 } ] }, { id: "prayer_for_the_great_seeker", type: "prayer", req: [ { type: "resource", id: "faith", value: 800 }, { type: "prayer", id: "blessing", value: 1 }, { type: "army", id: "archer", value: 3 } ] }, { id: "prayer_for_mother_earth", type: "prayer", req: [ { type: "resource", id: "faith", value: 800 }, { type: "prayer", id: "blessing", value: 1 } ] }, { id: "prayer_wild_man", type: "prayer", req: [ { type: "resource", id: "faith", value: 800 }, { type: "prayer", id: "blessing", value: 1 }, { type: "building", id: "stable", value: 3 } ] }, { id: "mana_defense", type: "prayer", req: [ { type: "resource", id: "faith", value: 1200 }, { type: "building", id: "wall", value: 1 }, { type: "prayer", id: "blessing", value: 1 } ] }, { id: "prayer_for_the_old_small_one", type: "prayer", req: [ { type: "resource", id: "faith", value: 1200 }, { type: "prayer", id: "blessing", value: 1 } ] }, { id: "prayer_for_the_ancient_monk", type: "prayer", req: [ { type: "resource", id: "faith", value: 1200 }, { type: "prayer", id: "prayer_for_the_old_small_one", value: 1 } ] }, { id: "prayer_for_the_great_warrior", type: "prayer", req: [ { type: "resource", id: "faith", value: 1200 }, { type: "prayer", id: "prayer_for_the_great_seeker", value: 1 } ] }, { id: "prayer_goddess_luck", type: "prayer", req: [ { type: "resource", id: "faith", value: 1200 }, { type: "prayer", id: "blessing", value: 1 } ] }, { id: "sacred_equipments", type: "prayer", req: [ { type: "resource", id: "faith", value: 1200 }, { type: "tech", id: "warfare", value: 1 }, { type: "prayer", id: "blessing", value: 1 } ] }, { id: "spear_wild_man", type: "prayer", req: [ { type: "resource", id: "faith", value: 1200 }, { type: "prayer", id: "blessing", value: 1 }, { type: "army", id: "light_cavarly", value: 3 } ] }, { id: "strange_lamp", type: "prayer", req: [ { type: "resource", id: "faith", value: 1200 }, { type: "enemy", id: "naga_nest", value: 1 } ] }, { id: "study_undead_creatures", type: "prayer", req: [ { type: "resource", id: "faith", value: 1200 }, { type: "enemy", id: "ancient_burial_place", value: 1 } ] }, { id: "unveil_theresmore", type: "prayer", req: [ { type: "resource", id: "faith", value: 1200 }, { type: "prayer", id: "blessing", value: 1 } ] }, { id: "sacred_place", type: "prayer", req: [ { type: "resource", id: "faith", value: 1600 }, { type: "prayer", id: "unveil_theresmore", value: 1 } ] }, { id: "growth_nature", type: "prayer", req: [ { type: "resource", id: "faith", value: 2000 }, { type: "tech", id: "liturgical_rites", value: 1 } ] }, { id: "lighten_rocks", type: "prayer", req: [ { type: "resource", id: "faith", value: 2000 }, { type: "tech", id: "liturgical_rites", value: 1 } ] }, { id: "magical_tools", type: "prayer", req: [ { type: "resource", id: "faith", value: 2000 }, { type: "tech", id: "liturgical_rites", value: 1 } ] }, { id: "magical_lights", type: "prayer", req: [ { type: "resource", id: "faith", value: 2000 }, { type: "tech", id: "liturgical_rites", value: 1 } ] }, { id: "desire_abundance", type: "prayer", req: [ { type: "resource", id: "faith", value: 2000 }, { type: "enemy", id: "djinn_palace", value: 1 } ], gen: [ { type: "resource", id: "gold", value: 5 }, { type: "resource", id: "food", value: 5 }, { type: "resource", id: "wood", value: 5 }, { type: "resource", id: "stone", value: 5 }, { type: "resource", id: "supplies", value: 0.3 }, { type: "prayer", id: "desire_magic", value: -1 }, { type: "prayer", id: "desire_war", value: -1 } ] }, { id: "desire_magic", type: "prayer", req: [ { type: "resource", id: "faith", value: 2000 }, { type: "enemy", id: "djinn_palace", value: 1 } ], gen: [ { type: "resource", id: "mana", value: 10 }, { type: "resource", id: "research", value: 10 }, { type: "resource", id: "crystal", value: 0.3 }, { type: "prayer", id: "desire_abundance", value: -1 }, { type: "prayer", id: "desire_war", value: -1 } ] }, { id: "desire_war", type: "prayer", req: [ { type: "resource", id: "faith", value: 2000 }, { type: "enemy", id: "djinn_palace", value: 1 } ], gen: [ { type: "prayer", id: "desire_magic", value: -1 }, { type: "prayer", id: "desire_abundance", value: -1 } ] }, { id: "demonology", type: "prayer", req: [ { type: "resource", id: "faith", value: 2500 }, { type: "enemy", id: "demonic_portal", value: 1 } ] }, { id: "demoniac_tome", type: "prayer", req: [ { type: "resource", id: "faith", value: 2500 }, { type: "tech", id: "pentagram_tome", value: 1 } ] }, { id: "temple_mirune", type: "prayer", req: [ { type: "resource", id: "gold", value: 5000 }, { type: "resource", id: "tools", value: 3500 }, { type: "enemy", id: "temple_gargoyle", value: 1 } ] }, { id: "create_sacred_golem", type: "prayer", req: [ { type: "resource", id: "faith", value: 2500 }, { type: "tech", id: "construction_of_automata", value: 1 } ] }, { id: "mana_defense_II", type: "prayer", req: [ { type: "resource", id: "faith", value: 2500 }, { type: "resource", id: "crystal", value: 200 }, { type: "prayer", id: "mana_defense", value: 1 } ] }, { id: "prayer_for_the_great_builder", type: "prayer", req: [ { type: "resource", id: "faith", value: 2500 }, { type: "tech", id: "magic_arts_teaching", value: 1 } ] }, { id: "prayer_for_the_mysterious_arcane", type: "prayer", req: [ { type: "resource", id: "faith", value: 2500 }, { type: "tech", id: "magic_arts_teaching", value: 1 } ] }, { id: "sacred_equipments_II", type: "prayer", req: [ { type: "resource", id: "faith", value: 2500 }, { type: "resource", id: "crystal", value: 200 }, { type: "prayer", id: "sacred_equipments", value: 1 } ] }, { id: "the_aid", type: "prayer", req: [ { type: "resource", id: "faith", value: 4000 }, { type: "tech", id: "the_scourge", value: 1 } ] }, { id: "zenix_aid", type: "prayer", req: [ { type: "resource", id: "faith", value: 4000 }, { type: "resource", id: "crystal", value: 400 }, { type: "building", id: "university", value: 7 } ] }, { id: "dragon_skull", type: "prayer", req: [ { type: "resource", id: "faith", value: 5000 }, { type: "building", id: "refugee_district", value: 1 } ] }, { id: "holy_light", type: "prayer", req: [ { type: "resource", id: "faith", value: 5000 }, { type: "building", id: "temple", value: 7 } ], gen: [ { type: "modifier", type_id: "army", id: "warrior_monk", type_gen: "stat", gen: "defense", value: 3, perc: false }, { type: "modifier", type_id: "army", id: "cleric", type_gen: "stat", gen: "defense", value: 3, perc: false } ] }, { id: "power_spell_east", type: "prayer", req: [ { type: "resource", id: "faith", value: 5000 }, { type: "resource", id: "horse", value: 800 }, { type: "enemy", id: "east_sacred_place", value: 1 } ] }, { id: "power_spell_west", type: "prayer", req: [ { type: "resource", id: "faith", value: 5000 }, { type: "resource", id: "steel", value: 3000 }, { type: "enemy", id: "west_sacred_place", value: 1 } ] }, { id: "power_spell_north", type: "prayer", req: [ { type: "resource", id: "faith", value: 5000 }, { type: "resource", id: "iron", value: 8000 }, { type: "enemy", id: "north_sacred_place", value: 1 } ] }, { id: "power_spell_south", type: "prayer", req: [ { type: "resource", id: "gold", value: 20000 }, { type: "resource", id: "faith", value: 5000 }, { type: "enemy", id: "south_sacred_place", value: 1 } ] }, { id: "gold_consecration", type: "prayer", req: [ { type: "resource", id: "faith", value: 6000 }, { type: "tech", id: "gold_domination_project", value: 1 } ], gen: [ { type: "cap", id: "gold", value: 20000 } ] }, { id: "mother_earth_2", type: "prayer", req: [ { type: "resource", id: "faith", value: 6000 }, { type: "building", id: "conclave", value: 1 } ] }, { id: "great_seeker_2", type: "prayer", req: [ { type: "resource", id: "faith", value: 6000 }, { type: "building", id: "conclave", value: 2 } ] }, { id: "great_warrior_2", type: "prayer", req: [ { type: "resource", id: "faith", value: 6000 }, { type: "building", id: "conclave", value: 3 } ] }, { id: "old_small_one_2", type: "prayer", req: [ { type: "resource", id: "faith", value: 6000 }, { type: "building", id: "conclave", value: 3 } ] }, { id: "wild_man_2", type: "prayer", req: [ { type: "resource", id: "faith", value: 6000 }, { type: "building", id: "conclave", value: 2 } ] }, { id: "northern_star_power", type: "prayer", req: [ { type: "resource", id: "faith", value: 7000 }, { type: "resource", id: "mana", value: 5000 }, { type: "tech", id: "northern_star", value: 1 } ] }, { id: "army_faith", type: "prayer", req: [ { type: "resource", id: "faith", value: 10000 }, { type: "building", id: "temple", value: 13 } ], gen: [ { type: "modifier", type_id: "army", id: "warrior_monk", type_gen: "stat", gen: "attack", value: 5, perc: false }, { type: "modifier", type_id: "army", id: "cleric", type_gen: "stat", gen: "attack", value: 5, perc: false } ] }, { id: "accept_druid", type: "prayer", req: [ { type: "resource", id: "faith", value: 13000 }, { type: "tech", id: "lonely_druid", value: 1 } ], gen: [ { type: "prayer", id: "banish_druid", value: -1 } ] }, { id: "banish_druid", type: "prayer", req: [ { type: "resource", id: "faith", value: 13000 }, { type: "tech", id: "lonely_druid", value: 1 } ], gen: [ { type: "prayer", id: "accept_druid", value: -1 } ] }, { id: "prayer_lonely_druid", type: "prayer", req: [ { type: "resource", id: "faith", value: 13500 }, { type: "prayer", id: "accept_druid", value: 1 } ] }, { id: "city_blessing", type: "prayer", req: [ { type: "resource", id: "faith", value: 13500 }, { type: "resource", id: "mana", value: 10000 }, { type: "tech", id: "rage_druid", value: 1 } ] }, { id: "protection_power", type: "prayer", req: [ { type: "resource", id: "stone", value: 22000 }, { type: "resource", id: "mana", value: 5500 }, { type: "prayer", id: "northern_star_power", value: 1 } ], gen: [ { type: "prayer", id: "incremental_power", value: -1 } ] }, { id: "incremental_power", type: "prayer", req: [ { type: "resource", id: "steel", value: 6000 }, { type: "resource", id: "mana", value: 5500 }, { type: "prayer", id: "northern_star_power", value: 1 } ], gen: [ { type: "prayer", id: "protection_power", value: -1 } ] }, { id: "pilgrim_chant", type: "prayer", req: [ { type: "resource", id: "faith", value: 16000 }, { type: "tech", id: "faith_world", value: 1 } ] }, { id: "warrior_gods", type: "prayer", req: [ { type: "resource", id: "faith", value: 18000 }, { type: "tech", id: "new_old_gods", value: 1 } ] }, { id: "blessing_church", type: "prayer", req: [ { type: "resource", id: "faith", value: 20000 }, { type: "tech", id: "new_old_gods", value: 1 } ] }, { id: "shape_mana", type: "prayer", req: [ { type: "resource", id: "faith", value: 20000 }, { type: "resource", id: "natronite", value: 12000 }, { type: "tech", id: "mana_investigation", value: 1 } ] }, { id: "blessing_prelate", type: "prayer", req: [ { type: "resource", id: "faith", value: 25000 }, { type: "tech", id: "colonial_consacration", value: 1 } ] }, { id: "hope_children", type: "prayer", req: [ { type: "resource", id: "faith", value: 15000 }, { type: "enemy", id: "gulud_ugdun", value: 1 } ] }, { id: "summon_nikharul", type: "prayer", req: [ { type: "resource", id: "faith", value: 20000 }, { type: "tech", id: "dark_crystal", value: 1 } ], gen: [ { type: "prayer", id: "control_fortress", value: -1 } ] }, { id: "control_fortress", type: "prayer", req: [ { type: "resource", id: "faith", value: 20000 }, { type: "tech", id: "dark_crystal", value: 1 } ], gen: [ { type: "prayer", id: "summon_nikharul", value: -1 } ] }, { id: "temple_ritual", type: "spell", req: [ { type: "prayer", id: "praise_gods", value: 1 } ], gen: [ { type: "resource", id: "mana", value: -2 }, { type: "resource", id: "gold", value: 1 }, { type: "resource", id: "faith", value: 1 } ] }, { id: "minor_blessing", type: "spell", req: [ { type: "prayer", id: "blessing", value: 1 } ], gen: [ { type: "resource", id: "mana", value: -2 }, { type: "resource", id: "gold", value: 1, perc: true }, { type: "resource", id: "food", value: 1, perc: true } ] }, { id: "acolyte_hymn", type: "spell", req: [ { type: "prayer", id: "acolyte_circle", value: 1 } ], gen: [ { type: "resource", id: "mana", value: -5 }, { type: "resource", id: "gold", value: 2, perc: true }, { type: "resource", id: "research", value: 2, perc: true } ] }, { id: "great_seeker_blessing", type: "spell", req: [ { type: "prayer", id: "prayer_for_the_great_seeker", value: 1 } ], gen: [ { type: "resource", id: "mana", value: -5 }, { type: "resource", id: "food", value: 2 }, { type: "modifier", type_id: "army", id: "archer", type_gen: "stat", gen: "attack", value: 2, perc: false }, { type: "modifier", type_id: "army", id: "crossbowman", type_gen: "stat", gen: "attack", value: 2, perc: false } ] }, { id: "great_warrior_blessing", type: "spell", req: [ { type: "prayer", id: "prayer_for_the_great_warrior", value: 1 } ], gen: [ { type: "resource", id: "mana", value: -5 }, { type: "modifier", type_id: "army", id: "warrior", type_gen: "stat", gen: "attack", value: 2, perc: false }, { type: "modifier", type_id: "army", id: "spearman", type_gen: "stat", gen: "defense", value: 2, perc: false }, { type: "modifier", type_id: "army", id: "heavy_warrior", type_gen: "stat", gen: "attack", value: 2, perc: false } ] }, { id: "goddess_luck_blessing", type: "spell", req: [ { type: "prayer", id: "prayer_goddess_luck", value: 1 } ], gen: [ { type: "resource", id: "mana", value: -5 }, { type: "resource", id: "luck", value: 5, perc: true } ] }, { id: "mana_energy_shield", type: "spell", req: [ { type: "prayer", id: "mana_defense", value: 1 } ], gen: [ { type: "resource", id: "mana", value: -5 }, { type: "modifier", type_id: "army", id: "settlement_defenses", type_gen: "stat", gen: "defense", value: 80, perc: false } ] }, { id: "mother_earth_blessing", type: "spell", req: [ { type: "prayer", id: "prayer_for_mother_earth", value: 1 } ], gen: [ { type: "resource", id: "mana", value: -5 }, { type: "resource", id: "wood", value: 5, perc: true }, { type: "resource", id: "stone", value: 5, perc: true } ] }, { id: "old_small_one_blessing", type: "spell", req: [ { type: "prayer", id: "prayer_for_the_old_small_one", value: 1 } ], gen: [ { type: "resource", id: "mana", value: -5 }, { type: "resource", id: "copper", value: 5, perc: true }, { type: "resource", id: "iron", value: 5, perc: true }, { type: "resource", id: "tools", value: 5, perc: true } ] }, { id: "sacred_armor", type: "spell", req: [ { type: "prayer", id: "sacred_equipments", value: 1 } ], gen: [ { type: "resource", id: "mana", value: -5 }, { type: "modifier", type_id: "army", id: "commander", type_gen: "stat", gen: "attack", value: 10, perc: false }, { type: "modifier", type_id: "army", id: "commander", type_gen: "stat", gen: "defense", value: 20, perc: false } ] }, { id: "theresmore_revealed", type: "spell", req: [ { type: "prayer", id: "unveil_theresmore", value: 1 } ], gen: [ { type: "resource", id: "mana", value: -5 }, { type: "resource", id: "faith", value: 1 }, { type: "resource", id: "faith", value: 3, perc: true } ] }, { id: "wild_man_blessing", type: "spell", req: [ { type: "prayer", id: "prayer_wild_man", value: 1 } ], gen: [ { type: "resource", id: "mana", value: -5 }, { type: "resource", id: "cow", value: 5, perc: true }, { type: "resource", id: "horse", value: 5, perc: true } ] }, { id: "wild_man_spear", type: "spell", req: [ { type: "prayer", id: "spear_wild_man", value: 1 } ], gen: [ { type: "resource", id: "mana", value: -5 }, { type: "modifier", type_id: "army", id: "light_cavarly", type_gen: "stat", gen: "attack", value: 2, perc: false }, { type: "modifier", type_id: "army", id: "light_cavarly", type_gen: "stat", gen: "defense", value: 2, perc: false } ] }, { id: "growth_of_nature", type: "spell", req: [ { type: "prayer", id: "growth_nature", value: 1 } ], gen: [ { type: "resource", id: "mana", value: -7 }, { type: "resource", id: "wood", value: 3.5 } ] }, { id: "lighten_of_rocks", type: "spell", req: [ { type: "prayer", id: "lighten_rocks", value: 1 } ], gen: [ { type: "resource", id: "mana", value: -7 }, { type: "resource", id: "stone", value: 3.5 } ] }, { id: "magic_tools", type: "spell", req: [ { type: "prayer", id: "magical_tools", value: 1 } ], gen: [ { type: "resource", id: "mana", value: -7 }, { type: "resource", id: "tools", value: 2 } ] }, { id: "magic_lights", type: "spell", req: [ { type: "prayer", id: "magical_lights", value: 1 } ], gen: [ { type: "resource", id: "mana", value: -7 }, { type: "resource", id: "copper", value: 1.5 }, { type: "resource", id: "iron", value: 1.5 } ] }, { id: "mirune_blessing", type: "spell", req: [ { type: "prayer", id: "temple_mirune", value: 1 } ], gen: [ { type: "resource", id: "mana", value: -10 }, { type: "resource", id: "research", value: 5 }, { type: "resource", id: "wood", value: 2.5 } ] }, { id: "dark_ritual", type: "spell", req: [ { type: "prayer", id: "demonology", value: 1 } ], gen: [ { type: "resource", id: "mana", value: -10 }, { type: "modifier", type_id: "army", id: "warrior_monk", type_gen: "stat", gen: "attack", value: 5, perc: false }, { type: "modifier", type_id: "army", id: "sacred_golem", type_gen: "stat", gen: "attack", value: 5, perc: false }, { type: "modifier", type_id: "army", id: "cleric", type_gen: "stat", gen: "defense", value: 5, perc: false } ] }, { id: "great_builder_blessing", type: "spell", req: [ { type: "prayer", id: "prayer_for_the_great_builder", value: 1 } ], gen: [ { type: "resource", id: "mana", value: -10 }, { type: "resource", id: "building_material", value: 1 }, { type: "resource", id: "steel", value: 1 }, { type: "resource", id: "building_material", value: 3, perc: true }, { type: "resource", id: "steel", value: 3, perc: true } ] }, { id: "mana_dome", type: "spell", req: [ { type: "prayer", id: "mana_defense_II", value: 1 } ], gen: [ { type: "resource", id: "mana", value: -10 }, { type: "modifier", type_id: "army", id: "settlement_defenses", type_gen: "stat", gen: "defense", value: 200, perc: false } ] }, { id: "mysterious_arcane_blessing", type: "spell", req: [ { type: "prayer", id: "prayer_for_the_mysterious_arcane", value: 1 } ], gen: [ { type: "resource", id: "mana", value: -10 }, { type: "resource", id: "crystal", value: 0.6 }, { type: "resource", id: "crystal", value: 10, perc: true } ] }, { id: "sacred_weapon", type: "spell", req: [ { type: "prayer", id: "sacred_equipments_II", value: 1 } ], gen: [ { type: "resource", id: "mana", value: -10 }, { type: "modifier", type_id: "army", id: "man_at_arms", type_gen: "stat", gen: "attack", value: 5, perc: false }, { type: "modifier", type_id: "army", id: "cleric", type_gen: "stat", gen: "attack", value: 5, perc: false } ] }, { id: "church_ritual", type: "spell", req: [ { type: "prayer", id: "blessing_church", value: 1 } ], gen: [ { type: "resource", id: "mana", value: -20 }, { type: "resource", id: "gold", value: 10 }, { type: "modifier", type_id: "army", id: "general", type_gen: "stat", gen: "attack", value: 25, perc: false }, { type: "modifier", type_id: "army", id: "general", type_gen: "stat", gen: "defense", value: 25, perc: false } ] }, { id: "great_seeker_eyesight", type: "spell", req: [ { type: "prayer", id: "great_seeker_2", value: 1 } ], gen: [ { type: "resource", id: "mana", value: -20 }, { type: "resource", id: "food", value: 5 }, { type: "modifier", type_id: "army", id: "arquebusier", type_gen: "stat", gen: "attack", value: 5, perc: false }, { type: "modifier", type_id: "army", id: "arquebusier", type_gen: "stat", gen: "defense", value: 5, perc: false } ] }, { id: "great_warrior_fury", type: "spell", req: [ { type: "prayer", id: "great_warrior_2", value: 1 } ], gen: [ { type: "resource", id: "mana", value: -20 }, { type: "modifier", type_id: "army", id: "warrior", type_gen: "stat", gen: "attack", value: 5, perc: false }, { type: "modifier", type_id: "army", id: "warrior", type_gen: "stat", gen: "defense", value: 5, perc: false }, { type: "modifier", type_id: "army", id: "heavy_warrior", type_gen: "stat", gen: "attack", value: 5, perc: false }, { type: "modifier", type_id: "army", id: "heavy_warrior", type_gen: "stat", gen: "defense", value: 5, perc: false } ] }, { id: "mother_earth_grace", type: "spell", req: [ { type: "prayer", id: "mother_earth_2", value: 1 } ], gen: [ { type: "resource", id: "mana", value: -20 }, { type: "resource", id: "wood", value: 12, perc: true }, { type: "resource", id: "stone", value: 12, perc: true } ] }, { id: "new_world_chant", type: "spell", req: [ { type: "prayer", id: "pilgrim_chant", value: 1 } ], gen: [ { type: "resource", id: "mana", value: -20 }, { type: "resource", id: "food", value: 5 }, { type: "resource", id: "wood", value: 5 }, { type: "resource", id: "stone", value: 5 }, { type: "modifier", type_id: "army", id: "spearman", type_gen: "stat", gen: "attack", value: 3, perc: false }, { type: "modifier", type_id: "army", id: "spearman", type_gen: "stat", gen: "defense", value: 3, perc: false } ] }, { id: "old_small_one_grace", type: "spell", req: [ { type: "prayer", id: "old_small_one_2", value: 1 } ], gen: [ { type: "resource", id: "mana", value: -20 }, { type: "resource", id: "copper", value: 12, perc: true }, { type: "resource", id: "iron", value: 12, perc: true }, { type: "resource", id: "tools", value: 12, perc: true } ] }, { id: "wild_man_dexterity", type: "spell", req: [ { type: "prayer", id: "wild_man_2", value: 1 } ], gen: [ { type: "resource", id: "mana", value: -20 }, { type: "modifier", type_id: "army", id: "knight", type_gen: "stat", gen: "attack", value: 5, perc: false }, { type: "modifier", type_id: "army", id: "knight", type_gen: "stat", gen: "defense", value: 5, perc: false }, { type: "modifier", type_id: "army", id: "cuirassier", type_gen: "stat", gen: "attack", value: 5, perc: false }, { type: "modifier", type_id: "army", id: "cuirassier", type_gen: "stat", gen: "defense", value: 5, perc: false } ] }, { id: "dragon_armor", type: "spell", req: [ { type: "prayer", id: "dragon_skull", value: 1 } ], gen: [ { type: "resource", id: "mana", value: -20 }, { type: "modifier", type_id: "army", id: "cleric", type_gen: "stat", gen: "defense", value: 5, perc: false }, { type: "modifier", type_id: "army", id: "shieldbearer", type_gen: "stat", gen: "defense", value: 5, perc: false }, { type: "modifier", type_id: "army", id: "juggernaut", type_gen: "stat", gen: "defense", value: 5, perc: false }, { type: "modifier", type_id: "army", id: "warrior_monk", type_gen: "stat", gen: "defense", value: 5, perc: false } ] }, { id: "dragon_weapon", type: "spell", req: [ { type: "prayer", id: "dragon_skull", value: 1 } ], gen: [ { type: "resource", id: "mana", value: -20 }, { type: "modifier", type_id: "army", id: "warrior", type_gen: "stat", gen: "attack", value: 5, perc: false }, { type: "modifier", type_id: "army", id: "heavy_warrior", type_gen: "stat", gen: "attack", value: 5, perc: false }, { type: "modifier", type_id: "army", id: "light_cavarly", type_gen: "stat", gen: "attack", value: 5, perc: false }, { type: "modifier", type_id: "army", id: "man_at_arms", type_gen: "stat", gen: "attack", value: 5, perc: false } ] }, { id: "mana_armor", type: "spell", req: [ { type: "prayer", id: "shape_mana", value: 1 } ], gen: [ { type: "resource", id: "mana", value: -30 }, { type: "modifier", type_id: "army", id: "priest", type_gen: "stat", gen: "defense", value: 5, perc: false }, { type: "modifier", type_id: "army", id: "shieldbearer", type_gen: "stat", gen: "defense", value: 5, perc: false }, { type: "modifier", type_id: "army", id: "juggernaut", type_gen: "stat", gen: "defense", value: 10, perc: false }, { type: "modifier", type_id: "army", id: "commander", type_gen: "stat", gen: "defense", value: 10, perc: false } ] }, { id: "druid_blessing", type: "spell", req: [ { type: "prayer", id: "prayer_lonely_druid", value: 1 } ], gen: [ { type: "resource", id: "mana", value: -40 }, { type: "resource", id: "food", value: 10 }, { type: "resource", id: "gold", value: 10 }, { type: "resource", id: "natronite", value: 15, perc: true } ] }, { id: "blessing_city", type: "spell", req: [ { type: "prayer", id: "city_blessing", value: 1 } ], gen: [ { type: "resource", id: "mana", value: -40 }, { type: "resource", id: "saltpetre", value: 1 }, { type: "resource", id: "natronite", value: 10, perc: true }, { type: "modifier", type_id: "army", id: "settlement_defenses", type_gen: "stat", gen: "attack", value: 50, perc: false }, { type: "modifier", type_id: "army", id: "settlement_defenses", type_gen: "stat", gen: "defense", value: 50, perc: false } ] }, { id: "northern_star_protection", type: "spell", req: [ { type: "prayer", id: "protection_power", value: 1 } ], gen: [ { type: "resource", id: "mana", value: -50 }, { type: "modifier", type_id: "army", id: "settlement_defenses", type_gen: "stat", gen: "defense", value: 500, perc: false } ] }, { id: "northern_star_incremental", type: "spell", req: [ { type: "prayer", id: "incremental_power", value: 1 } ], gen: [ { type: "resource", id: "mana", value: -50 }, { type: "resource", id: "building_material", value: 15, perc: true }, { type: "resource", id: "steel", value: 15, perc: true }, { type: "resource", id: "supplies", value: 15, perc: true }, { type: "resource", id: "crystal", value: 15, perc: true }, { type: "resource", id: "saltpetre", value: 15, perc: true }, { type: "resource", id: "natronite", value: 15, perc: true } ] }, { id: "army_blessing", type: "spell", req: [ { type: "prayer", id: "blessing_prelate", value: 1 } ], gen: [ { type: "resource", id: "mana", value: -60 }, { type: "modifier", type_id: "army", id: "line_infantry", type_gen: "stat", gen: "defense", value: 15, perc: false }, { type: "modifier", type_id: "army", id: "cuirassier", type_gen: "stat", gen: "defense", value: 15, perc: false }, { type: "modifier", type_id: "army", id: "general", type_gen: "stat", gen: "defense", value: 25, perc: false } ] }, { id: "children_hope", type: "spell", req: [ { type: "prayer", id: "hope_children", value: 1 } ], gen: [ { type: "resource", id: "mana", value: -200 }, { type: "resource", id: "research", value: 25, perc: true }, { type: "resource", id: "gold", value: 25, perc: true }, { type: "resource", id: "wood", value: 25, perc: true }, { type: "resource", id: "stone", value: 25, perc: true }, { type: "resource", id: "faith", value: 25, perc: true }, { type: "resource", id: "natronite", value: 25, perc: true } ] } ]; //研究数据 var tech = [ { id: "housing" }, { id: "monument_past", req: [ { type: "resource", id: "research", value: 5 }, { type: "tech", id: "housing", value: 1 }, { type: "legacy", id: "monument_1", value: 1 } ] }, { id: "heirloom_housing", req: [ { type: "resource", id: "research", value: 10 }, { type: "building", id: "monument", value: 1 } ], gen: [ { type: "population", id: "farmer", value: 1 }, { type: "population", id: "lumberjack", value: 1 }, { type: "population", id: "quarryman", value: 1 }, { type: "population", id: "unemployed", value: 1 } ] }, { id: "heirloom_horseshoes_t", req: [ { type: "resource", id: "research", value: 10 }, { type: "building", id: "monument", value: 1 }, { type: "legacy", id: "heirloom_horseshoes", value: 1 } ], gen: [ { type: "resource", id: "gold", value: 1 }, { type: "population", id: "artisan", value: 1 }, { type: "population", id: "breeder", value: 1 }, { type: "population", id: "unemployed", value: 1 } ] }, { id: "heirloom_momento_t", req: [ { type: "resource", id: "research", value: 10 }, { type: "building", id: "monument", value: 1 }, { type: "legacy", id: "heirloom_momento", value: 1 } ], gen: [ { type: "resource", id: "research", value: 2 }, { type: "resource", id: "faith", value: 2 }, { type: "resource", id: "mana", value: 2 }, { type: "population", id: "miner", value: 1 }, { type: "population", id: "unemployed", value: 1 } ] }, { id: "heirloom_contract_t", req: [ { type: "resource", id: "research", value: 10 }, { type: "building", id: "monument", value: 1 }, { type: "legacy", id: "heirloom_contract", value: 1 } ], gen: [ { type: "resource", id: "gold", value: 2 }, { type: "cap", id: "army", value: 15 }, { type: "population", id: "merchant", value: 1 }, { type: "population", id: "unemployed", value: 1 } ] }, { id: "heirloom_wisdom_t", req: [ { type: "resource", id: "research", value: 10 }, { type: "building", id: "monument", value: 1 }, { type: "legacy", id: "heirloom_wisdom", value: 1 } ], gen: [ { type: "resource", id: "research", value: 2 }, { type: "modifier", type_id: "army", id: "archer", type_gen: "stat", gen: "attack", value: 3, perc: false }, { type: "modifier", type_id: "army", id: "archer", type_gen: "stat", gen: "defense", value: 3, perc: false }, { type: "population", id: "unemployed", value: 2 } ] }, { id: "heirloom_death_t", req: [ { type: "resource", id: "research", value: 10 }, { type: "building", id: "monument", value: 1 }, { type: "legacy", id: "heirloom_death", value: 1 } ], gen: [ { type: "resource", id: "mana", value: 2 }, { type: "modifier", type_id: "army", id: "spearman", type_gen: "stat", gen: "attack", value: 3, perc: false }, { type: "modifier", type_id: "army", id: "spearman", type_gen: "stat", gen: "defense", value: 3, perc: false }, { type: "population", id: "unemployed", value: 2 } ] }, { id: "heirloom_wealth_t", req: [ { type: "resource", id: "research", value: 10 }, { type: "building", id: "monument", value: 1 }, { type: "legacy", id: "heirloom_wealth", value: 1 } ], gen: [ { type: "resource", id: "gold", value: 2 }, { type: "modifier", type_id: "army", id: "warrior", type_gen: "stat", gen: "attack", value: 3, perc: false }, { type: "modifier", type_id: "army", id: "warrior", type_gen: "stat", gen: "defense", value: 3, perc: false }, { type: "population", id: "unemployed", value: 2 } ] }, { id: "agricolture", req: [ { type: "resource", id: "research", value: 10 }, { type: "tech", id: "housing", value: 1 } ] }, { id: "stone_masonry", req: [ { type: "resource", id: "research", value: 20 }, { type: "tech", id: "housing", value: 1 } ] }, { id: "wood_cutting", req: [ { type: "resource", id: "research", value: 20 }, { type: "tech", id: "housing", value: 1 } ] }, { id: "crop_rotation", req: [ { type: "resource", id: "research", value: 100 }, { type: "building", id: "farm", value: 5 } ], gen: [ { type: "resource", id: "fame", value: 5, fix: true }, { type: "modifier", type_id: "population", id: "farmer", type_gen: "resource", gen: "food", value: 2, perc: true } ] }, { id: "grain_surplus", req: [ { type: "resource", id: "research", value: 150 }, { type: "tech", id: "crop_rotation", value: 1 }, { type: "legacy", id: "grain_storage", value: 1 } ] }, { id: "pottery", req: [ { type: "resource", id: "research", value: 150 }, { type: "tech", id: "stone_masonry", value: 1 } ] }, { id: "woodcarvers", req: [ { type: "resource", id: "research", value: 150 }, { type: "resource", id: "tools", value: 20 }, { type: "building", id: "lumberjack_camp", value: 5 } ], gen: [ { type: "resource", id: "fame", value: 10, fix: true }, { type: "modifier", type_id: "population", id: "lumberjack", type_gen: "resource", gen: "wood", value: 2, perc: true } ] }, { id: "wood_saw", req: [ { type: "resource", id: "research", value: 170 }, { type: "tech", id: "woodcarvers", value: 1 }, { type: "legacy", id: "woodworking", value: 1 } ] }, { id: "stone_extraction_tools", req: [ { type: "resource", id: "research", value: 175 }, { type: "resource", id: "tools", value: 25 }, { type: "building", id: "quarry", value: 5 } ], gen: [ { type: "resource", id: "fame", value: 10, fix: true }, { type: "modifier", type_id: "population", id: "quarryman", type_gen: "resource", gen: "stone", value: 2, perc: true } ] }, { id: "stone_processing", req: [ { type: "resource", id: "research", value: 175 }, { type: "tech", id: "stone_extraction_tools", value: 1 }, { type: "legacy", id: "stonemason_l", value: 1 } ] }, { id: "archery", req: [ { type: "resource", id: "research", value: 200 }, { type: "resource", id: "wood", value: 150 }, { type: "tech", id: "wood_cutting", value: 1 } ], gen: [ { type: "cap", id: "army", value: 2 } ] }, { id: "mining", req: [ { type: "resource", id: "research", value: 250 }, { type: "building", id: "quarry", value: 3 } ] }, { id: "house_of_workers", req: [ { type: "resource", id: "research", value: 250 }, { type: "tech", id: "mining", value: 1 }, { type: "stat", id: "ng_reset", value: 1 } ] }, { id: "architecture_titan_t", req: [ { type: "resource", id: "research", value: 250 }, { type: "tech", id: "mining", value: 1 }, { type: "legacy", id: "architecture_titan", value: 1 } ] }, { id: "mining_efficency", req: [ { type: "resource", id: "research", value: 250 }, { type: "resource", id: "tools", value: 50 }, { type: "building", id: "mine", value: 5 } ], gen: [ { type: "resource", id: "fame", value: 15, fix: true }, { type: "modifier", type_id: "population", id: "miner", type_gen: "resource", gen: "copper", value: 2, perc: true }, { type: "modifier", type_id: "population", id: "miner", type_gen: "resource", gen: "iron", value: 2, perc: true } ] }, { id: "storage", req: [ { type: "resource", id: "research", value: 300 }, { type: "tech", id: "agricolture", value: 1 } ] }, { id: "local_products", req: [ { type: "resource", id: "research", value: 350 }, { type: "building", id: "artisan_workshop", value: 5 } ], gen: [ { type: "resource", id: "fame", value: 20, fix: true }, { type: "modifier", type_id: "population", id: "artisan", type_gen: "resource", gen: "tools", value: 2, perc: true } ] }, { id: "writing", req: [ { type: "resource", id: "research", value: 500 }, { type: "tech", id: "pottery", value: 1 } ] }, { id: "bronze_working", req: [ { type: "resource", id: "research", value: 600 }, { type: "resource", id: "copper", value: 300 }, { type: "tech", id: "mining", value: 1 } ], gen: [ { type: "cap", id: "army", value: 3 } ] }, { id: "ancient_balor_t", req: [ { type: "resource", id: "research", value: 650 }, { type: "tech", id: "bronze_working", value: 1 }, { type: "legacy", id: "ancient_balor_l", value: 1 } ] }, { id: "training_militia", req: [ { type: "resource", id: "research", value: 700 }, { type: "resource", id: "gold", value: 400 }, { type: "resource", id: "copper", value: 250 }, { type: "tech", id: "bronze_working", value: 1 }, { type: "legacy", id: "militia_recruitment", value: 1 } ] }, { id: "magic", req: [ { type: "resource", id: "faith", value: 750 }, { type: "tech", id: "religion", value: 1 } ] }, { id: "zenix_familiar_t", req: [ { type: "resource", id: "research", value: 720 }, { type: "resource", id: "food", value: 500 }, { type: "tech", id: "magic", value: 1 }, { type: "legacy", id: "zenix_familiar_l", value: 1 } ] }, { id: "mythology", req: [ { type: "resource", id: "research", value: 750 }, { type: "tech", id: "writing", value: 1 }, { type: "building", id: "common_house", value: 8 } ] }, { id: "breeding", req: [ { type: "resource", id: "research", value: 800 }, { type: "building", id: "farm", value: 5 }, { type: "tech", id: "storage", value: 1 } ] }, { id: "ancient_stockpile", req: [ { type: "resource", id: "research", value: 1000 }, { type: "tech", id: "remember_the_ancients", value: 1 }, { type: "legacy", id: "ancient_vault", value: 1 }, { type: "stat", id: "reset", value: 1 } ] }, { id: "fortification", req: [ { type: "resource", id: "research", value: 1000 }, { type: "resource", id: "wood", value: 1000 }, { type: "resource", id: "stone", value: 1000 }, { type: "tech", id: "bronze_working", value: 1 } ], gen: [ { type: "cap", id: "army", value: 2 } ] }, { id: "wall_titan_t", req: [ { type: "resource", id: "research", value: 1000 }, { type: "tech", id: "fortification", value: 1 }, { type: "legacy", id: "wall_titan", value: 1 } ] }, { id: "remember_the_ancients", req: [ { type: "resource", id: "research", value: 1000 }, { type: "tech", id: "mythology", value: 1 }, { type: "legacy", id: "library_theresmore", value: 1 }, { type: "stat", id: "reset", value: 1 } ] }, { id: "servitude", req: [ { type: "resource", id: "gold", value: 1250 }, { type: "tech", id: "bronze_working", value: 1 } ], gen: [ { type: "modifier", type_id: "population", id: "lumberjack", type_gen: "resource", gen: "wood", value: 2, perc: true }, { type: "modifier", type_id: "population", id: "quarryman", type_gen: "resource", gen: "stone", value: 2, perc: true }, { type: "modifier", type_id: "population", id: "miner", type_gen: "resource", gen: "copper", value: 2, perc: true }, { type: "modifier", type_id: "population", id: "miner", type_gen: "resource", gen: "iron", value: 2, perc: true }, { type: "population", id: "unemployed", value: 2 } ] }, { id: "mathematic", req: [ { type: "resource", id: "research", value: 2500 }, { type: "tech", id: "writing", value: 1 } ], gen: [ { type: "modifier", type_id: "population", id: "lumberjack", type_gen: "resource", gen: "wood", value: 5, perc: true }, { type: "modifier", type_id: "population", id: "quarryman", type_gen: "resource", gen: "stone", value: 5, perc: true }, { type: "modifier", type_id: "population", id: "miner", type_gen: "resource", gen: "copper", value: 5, perc: true }, { type: "modifier", type_id: "population", id: "miner", type_gen: "resource", gen: "iron", value: 5, perc: true }, { type: "resource", id: "research", value: 5, perc: true } ] }, { id: "municipal_administration", req: [ { type: "resource", id: "research", value: 2500 }, { type: "building", id: "common_house", value: 15 } ], gen: [ { type: "resource", id: "fame", value: 30, fix: true } ] }, { id: "warfare", req: [ { type: "resource", id: "gold", value: 2500 }, { type: "tech", id: "iron_working", value: 1 } ], gen: [ { type: "resource", id: "fame", value: 25, fix: true } ] }, { id: "canava_mercenary", req: [ { type: "resource", id: "gold", value: 4000 }, { type: "tech", id: "warfare", value: 1 }, { type: "legacy", id: "coin_mercenary", value: 1 } ] }, { id: "currency", req: [ { type: "resource", id: "research", value: 3000 }, { type: "resource", id: "gold", value: 1500 }, { type: "tech", id: "mathematic", value: 1 } ] }, { id: "tamed_barbarian", req: [ { type: "resource", id: "research", value: 3000 }, { type: "resource", id: "gold", value: 1000 }, { type: "enemy", id: "barbarian_camp", value: 1 } ] }, { id: "religion", req: [ { type: "resource", id: "research", value: 3500 }, { type: "resource", id: "gold", value: 1500 }, { type: "tech", id: "writing", value: 1 } ] }, { id: "forging_equipments", req: [ { type: "resource", id: "research", value: 3500 }, { type: "building", id: "artisan_workshop", value: 7 }, { type: "resource", id: "tools", value: 500 } ], gen: [ { type: "modifier", type_id: "army", id: "spearman", type_gen: "stat", gen: "defense", value: 2, perc: false }, { type: "modifier", type_id: "army", id: "warrior", type_gen: "stat", gen: "defense", value: 2, perc: false }, { type: "modifier", type_id: "army", id: "heavy_warrior", type_gen: "stat", gen: "defense", value: 2, perc: false } ] }, { id: "cloistered_life", req: [ { type: "resource", id: "research", value: 3500 }, { type: "resource", id: "faith", value: 800 }, { type: "tech", id: "magic", value: 1 }, { type: "legacy", id: "monastic_orders", value: 1 } ] }, { id: "regional_markets", req: [ { type: "resource", id: "research", value: 4000 }, { type: "resource", id: "gold", value: 2500 }, { type: "tech", id: "currency", value: 1 }, { type: "legacy", id: "regional_market", value: 1 } ] }, { id: "fortune_sanctuary", req: [ { type: "resource", id: "research", value: 4500 }, { type: "prayer", id: "prayer_goddess_luck", value: 1 } ] }, { id: "enclosures", req: [ { type: "resource", id: "research", value: 5000 }, { type: "building", id: "farm", value: 15 } ], gen: [ { type: "resource", id: "fame", value: 25, fix: true }, { type: "modifier", type_id: "population", id: "farmer", type_gen: "resource", gen: "food", value: 5, perc: true } ] }, { id: "fine_marbles", req: [ { type: "resource", id: "research", value: 5000 }, { type: "resource", id: "tools", value: 1000 }, { type: "building", id: "quarry", value: 15 } ], gen: [ { type: "resource", id: "fame", value: 25, fix: true }, { type: "modifier", type_id: "population", id: "quarryman", type_gen: "resource", gen: "stone", value: 5, perc: true } ] }, { id: "fine_woods", req: [ { type: "resource", id: "research", value: 5000 }, { type: "resource", id: "tools", value: 1000 }, { type: "building", id: "lumberjack_camp", value: 15 } ], gen: [ { type: "resource", id: "fame", value: 25, fix: true }, { type: "modifier", type_id: "population", id: "lumberjack", type_gen: "resource", gen: "wood", value: 5, perc: true } ] }, { id: "iron_working", req: [ { type: "resource", id: "research", value: 5000 }, { type: "resource", id: "iron", value: 600 }, { type: "tech", id: "bronze_working", value: 1 } ], gen: [ { type: "cap", id: "army", value: 3 } ] }, { id: "holy_fury", req: [ { type: "resource", id: "research", value: 5000 }, { type: "tech", id: "iron_working", value: 1 }, { type: "legacy", id: "angel", value: 1 } ] }, { id: "seraphim_t", req: [ { type: "resource", id: "research", value: 5000 }, { type: "tech", id: "holy_fury", value: 1 }, { type: "legacy", id: "seraphim_l", value: 1 } ] }, { id: "mercenary_bands", req: [ { type: "resource", id: "gold", value: 5000 }, { type: "tech", id: "feudalism", value: 1 } ], gen: [ { type: "cap", id: "army", value: 5 } ] }, { id: "white_t_company", req: [ { type: "resource", id: "gold", value: 7000 }, { type: "tech", id: "mercenary_bands", value: 1 }, { type: "legacy", id: "white_m_company", value: 1 } ] }, { id: "galliard_mercenary", req: [ { type: "resource", id: "gold", value: 10000 }, { type: "enemy", id: "galliard_mercenary_camp", value: 1 } ], gen: [ { type: "modifier", type_id: "army", id: "mercenary_veteran", type_gen: "stat", gen: "attack", value: 3, perc: false }, { type: "modifier", type_id: "army", id: "mercenary_veteran", type_gen: "stat", gen: "defense", value: 3, perc: false }, { type: "cap", id: "army", value: 5 } ] }, { id: "cpt_galliard_t", req: [ { type: "resource", id: "gold", value: 10000 }, { type: "tech", id: "galliard_mercenary", value: 1 }, { type: "legacy", id: "cpt_galliard_l", value: 1 } ] }, { id: "free_old_outpost", req: [ { type: "resource", id: "gold", value: 9000 }, { type: "tech", id: "cpt_galliard_t", value: 1 }, { type: "legacy", id: "cpt_galliard_story", value: 1 } ] }, { id: "mercenary_outpost_t", req: [ { type: "resource", id: "gold", value: 11000 }, { type: "enemy", id: "old_outpost", value: 1 } ] }, { id: "galliard_secret", req: [ { type: "resource", id: "research", value: 9000 }, { type: "tech", id: "mercenary_outpost_t", value: 1 } ] }, { id: "tome_ancient_lore", req: [ { type: "resource", id: "research", value: 10000 }, { type: "resource", id: "faith", value: 3000 }, { type: "enemy", id: "forgotten_shelter", value: 1 } ], gen: [ { type: "resource", id: "research", value: 10 }, { type: "resource", id: "saltpetre", value: 2 } ] }, { id: "wings_freedom", req: [ { type: "resource", id: "research", value: 11000 }, { type: "tech", id: "tome_ancient_lore", value: 1 } ] }, { id: "galliard_true_form", req: [ { type: "resource", id: "research", value: 12000 }, { type: "resource", id: "faith", value: 5000 }, { type: "enemy", id: "ancient_giant", value: 1 } ], gen: [ { type: "modifier", type_id: "army", id: "cpt_galliard", type_gen: "stat", gen: "attack", value: 240, perc: false }, { type: "modifier", type_id: "army", id: "cpt_galliard", type_gen: "stat", gen: "defense", value: 180, perc: false } ] }, { id: "end_ancient_era", req: [ { type: "resource", id: "research", value: 5500 }, { type: "building", id: "common_house", value: 15 }, { type: "building", id: "artisan_workshop", value: 5 }, { type: "tech", id: "iron_working", value: 1 }, { type: "tech", id: "religion", value: 1 } ] }, { id: "plenty_valley", req: [ { type: "resource", id: "research", value: 6000 }, { type: "cap", id: "food", value: 5000 } ] }, { id: "barbarian_tribes", req: [ { type: "resource", id: "research", value: 6000 }, { type: "resource", id: "gold", value: 2000 }, { type: "enemy", id: "barbarian_village", value: 1 } ] }, { id: "bandit_chief", req: [ { type: "resource", id: "research", value: 6000 }, { type: "enemy", id: "bandit_camp", value: 1 } ] }, { id: "deserter_origin", req: [ { type: "resource", id: "research", value: 7000 }, { type: "enemy", id: "deserters_den", value: 1 } ] }, { id: "feudalism", req: [ { type: "resource", id: "research", value: 7500 }, { type: "building", id: "city_center", value: 1 } ], gen: [ { type: "cap", id: "army", value: 3 } ] }, { id: "espionage", req: [ { type: "resource", id: "research", value: 7500 }, { type: "tech", id: "mercenary_bands", value: 1 } ] }, { id: "forging_equipments_II", req: [ { type: "resource", id: "research", value: 7500 }, { type: "building", id: "artisan_workshop", value: 13 }, { type: "resource", id: "tools", value: 1000 } ], gen: [ { type: "modifier", type_id: "army", id: "man_at_arms", type_gen: "stat", gen: "defense", value: 4, perc: false }, { type: "modifier", type_id: "army", id: "knight", type_gen: "stat", gen: "defense", value: 4, perc: false }, { type: "modifier", type_id: "army", id: "commander", type_gen: "stat", gen: "defense", value: 4, perc: false } ] }, { id: "architecture", req: [ { type: "resource", id: "research", value: 8000 }, { type: "resource", id: "wood", value: 1500 }, { type: "resource", id: "stone", value: 1000 }, { type: "tech", id: "feudalism", value: 1 } ] }, { id: "crossbow", req: [ { type: "resource", id: "research", value: 10000 }, { type: "resource", id: "gold", value: 2000 }, { type: "resource", id: "wood", value: 1000 }, { type: "tech", id: "feudalism", value: 1 } ], gen: [ { type: "cap", id: "army", value: 3 } ] }, { id: "siege_techniques", req: [ { type: "resource", id: "research", value: 10000 }, { type: "tech", id: "crossbow", value: 1 } ] }, { id: "besieging_engineers", req: [ { type: "resource", id: "research", value: 10000 }, { type: "tech", id: "siege_techniques", value: 1 } ] }, { id: "education", req: [ { type: "resource", id: "research", value: 10000 }, { type: "tech", id: "feudalism", value: 1 } ] }, { id: "liturgical_rites", req: [ { type: "resource", id: "research", value: 10000 }, { type: "tech", id: "education", value: 1 } ] }, { id: "necromancy", req: [ { type: "resource", id: "research", value: 8000 }, { type: "enemy", id: "necromancer_crypt", value: 1 } ] }, { id: "food_conservation", req: [ { type: "resource", id: "research", value: 10000 }, { type: "tech", id: "education", value: 1 } ] }, { id: "plate_armor", req: [ { type: "resource", id: "research", value: 10000 }, { type: "resource", id: "gold", value: 4000 }, { type: "resource", id: "steel", value: 500 }, { type: "tech", id: "steeling", value: 1 } ], gen: [ { type: "cap", id: "army", value: 3 } ] }, { id: "siege_defense_weapons", req: [ { type: "resource", id: "research", value: 10000 }, { type: "building", id: "wall", value: 1 }, { type: "tech", id: "architecture", value: 1 } ] }, { id: "metal_casting", req: [ { type: "resource", id: "research", value: 11500 }, { type: "resource", id: "iron", value: 1000 }, { type: "tech", id: "feudalism", value: 1 } ] }, { id: "establish_boundaries", req: [ { type: "resource", id: "research", value: 12000 }, { type: "resource", id: "gold", value: 10000 }, { type: "tech", id: "architecture", value: 1 } ], gen: [ { type: "resource", id: "gold", value: 3, perc: true }, { type: "resource", id: "research", value: 3, perc: true } ] }, { id: "herald_canava", req: [ { type: "resource", id: "research", value: 6000 }, { type: "tech", id: "establish_boundaries", value: 1 } ] }, { id: "moonlight_night", confirm: true, req: [ { type: "resource", id: "research", value: 12000 }, { type: "building", id: "watchman_outpost", value: 4 } ] }, { id: "daylong_celebration", req: [ { type: "resource", id: "gold", value: 2000 }, { type: "tech", id: "moonlight_night", value: 1 } ], gen: [ { type: "resource", id: "fame", value: 100, fix: true } ] }, { id: "banking", req: [ { type: "resource", id: "research", value: 12000 }, { type: "resource", id: "gold", value: 8000 }, { type: "tech", id: "education", value: 1 } ] }, { id: "steeling", req: [ { type: "resource", id: "research", value: 12000 }, { type: "resource", id: "copper", value: 1500 }, { type: "resource", id: "iron", value: 1000 }, { type: "tech", id: "metal_casting", value: 1 } ] }, { id: "guild", req: [ { type: "resource", id: "research", value: 15000 }, { type: "tech", id: "education", value: 1 } ], gen: [ { type: "resource", id: "fame", value: 40, fix: true }, { type: "modifier", type_id: "population", id: "artisan", type_gen: "resource", gen: "tools", value: 5, perc: true }, { type: "modifier", type_id: "population", id: "merchant", type_gen: "resource", gen: "gold", value: 5, perc: true } ] }, { id: "craftsmen_guild", req: [ { type: "resource", id: "research", value: 17500 }, { type: "tech", id: "guild", value: 1 }, { type: "legacy", id: "guild_craftsmen", value: 1 } ] }, { id: "religious_orders", req: [ { type: "resource", id: "research", value: 17500 }, { type: "resource", id: "faith", value: 2000 }, { type: "tech", id: "guild", value: 1 } ] }, { id: "mana_conveyors", req: [ { type: "resource", id: "faith", value: 2000 }, { type: "resource", id: "mana", value: 1000 }, { type: "tech", id: "religious_orders", value: 1 } ] }, { id: "master_craftsmen", req: [ { type: "resource", id: "research", value: 12000 }, { type: "building", id: "artisan_workshop", value: 15 }, { type: "building", id: "grocery", value: 3 }, { type: "building", id: "carpenter_workshop", value: 3 } ], gen: [ { type: "resource", id: "fame", value: 40, fix: true }, { type: "modifier", type_id: "population", id: "artisan", type_gen: "resource", gen: "tools", value: 5, perc: true }, { type: "modifier", type_id: "population", id: "supplier", type_gen: "resource", gen: "supplies", value: 5, perc: true }, { type: "modifier", type_id: "population", id: "carpenter", type_gen: "resource", gen: "building_material", value: 5, perc: true } ] }, { id: "drilling_operation", req: [ { type: "resource", id: "research", value: 11500 }, { type: "resource", id: "tools", value: 1500 }, { type: "building", id: "mine", value: 15 } ], gen: [ { type: "resource", id: "fame", value: 30, fix: true }, { type: "modifier", type_id: "population", id: "miner", type_gen: "resource", gen: "copper", value: 5, perc: true }, { type: "modifier", type_id: "population", id: "miner", type_gen: "resource", gen: "iron", value: 5, perc: true } ] }, { id: "professional_soldier", req: [ { type: "resource", id: "research", value: 13000 }, { type: "tech", id: "plate_armor", value: 1 } ] }, { id: "knighthood", req: [ { type: "resource", id: "research", value: 13000 }, { type: "resource", id: "gold", value: 5000 }, { type: "resource", id: "steel", value: 600 }, { type: "tech", id: "steeling", value: 1 } ], gen: [ { type: "cap", id: "army", value: 4 } ] }, { id: "fairs_and_markets", req: [ { type: "resource", id: "research", value: 15000 }, { type: "resource", id: "gold", value: 5000 }, { type: "tech", id: "guild", value: 1 }, { type: "tech", id: "banking", value: 1 }, { type: "building", id: "marketplace", value: 3 } ] }, { id: "network_of_watchmen", req: [ { type: "resource", id: "research", value: 15000 }, { type: "building", id: "wall", value: 1 } ], gen: [ { type: "cap", id: "army", value: 5 } ] }, { id: "large_storage_space", req: [ { type: "resource", id: "research", value: 15000 }, { type: "tech", id: "food_conservation", value: 1 } ] }, { id: "glorious_retirement", req: [ { type: "resource", id: "research", value: 10000 }, { type: "resource", id: "gold", value: 10000 }, { type: "resource", id: "crystal", value: 100 }, { type: "tech", id: "banking", value: 1 }, { type: "tech", id: "knighthood", value: 1 }, { type: "tech", id: "moonlight_night", value: 1 } ] }, { id: "library_of_souls", req: [ { type: "resource", id: "research", value: 18000 }, { type: "resource", id: "faith", value: 6000 }, { type: "enemy", id: "worn_down_crypt", value: 1 } ] }, { id: "end_feudal_era", req: [ { type: "resource", id: "research", value: 17000 }, { type: "building", id: "mansion", value: 3 }, { type: "building", id: "carpenter_workshop", value: 3 }, { type: "building", id: "steelworks", value: 3 }, { type: "building", id: "university", value: 3 }, { type: "building", id: "grocery", value: 3 }, { type: "tech", id: "fairs_and_markets", value: 1 }, { type: "tech", id: "knighthood", value: 1 }, { type: "tech", id: "moonlight_night", value: 1 } ] }, { id: "underground_library", req: [ { type: "resource", id: "research", value: 25000 }, { type: "resource", id: "faith", value: 7000 }, { type: "building", id: "library_souls", value: 1 } ] }, { id: "huge_cave_t", req: [ { type: "resource", id: "research", value: 26000 }, { type: "enemy", id: "huge_cave", value: 1 } ] }, { id: "astronomy", req: [ { type: "resource", id: "research", value: 27000 }, { type: "building", id: "academy_of_freethinkers", value: 1 } ] }, { id: "scientific_theory", req: [ { type: "resource", id: "research", value: 28000 }, { type: "building", id: "academy_of_freethinkers", value: 1 } ], gen: [ { type: "resource", id: "fame", value: 40, fix: true } ] }, { id: "chemistry", req: [ { type: "resource", id: "research", value: 28000 }, { type: "tech", id: "scientific_theory", value: 1 } ] }, { id: "manufactures", req: [ { type: "resource", id: "research", value: 29000 }, { type: "tech", id: "chemistry", value: 1 } ] }, { id: "printing_press", req: [ { type: "resource", id: "research", value: 30000 }, { type: "tech", id: "scientific_theory", value: 1 } ], gen: [ { type: "resource", id: "research", value: 3, perc: true }, { type: "resource", id: "faith", value: 3, perc: true } ] }, { id: "monster_hunting", req: [ { type: "resource", id: "research", value: 30000 }, { type: "tech", id: "printing_press", value: 1 } ] }, { id: "monster_epuration", req: [ { type: "resource", id: "research", value: 30000 }, { type: "enemy", id: "hydra_pit", value: 1 }, { type: "enemy", id: "gorgon_cave", value: 1 }, { type: "enemy", id: "gloomy_werewolf_forest", value: 1 }, { type: "enemy", id: "minotaur_maze", value: 1 } ] }, { id: "fertilizer", req: [ { type: "resource", id: "research", value: 30000 }, { type: "tech", id: "chemistry", value: 1 } ], gen: [ { type: "modifier", type_id: "population", id: "farmer", type_gen: "resource", gen: "food", value: 5, perc: true } ] }, { id: "alchemical_reactions", req: [ { type: "resource", id: "research", value: 31000 }, { type: "tech", id: "fertilizer", value: 1 } ] }, { id: "gunpowder", req: [ { type: "resource", id: "research", value: 32000 }, { type: "tech", id: "chemistry", value: 1 } ], gen: [ { type: "resource", id: "fame", value: 40, fix: true } ] }, { id: "the_scourge", req: [ { type: "resource", id: "research", value: 30000 }, { type: "tech", id: "gunpowder", value: 1 } ] }, { id: "storing_valuable_materials", req: [ { type: "resource", id: "research", value: 32000 }, { type: "tech", id: "fertilizer", value: 1 }, { type: "tech", id: "large_storage_space", value: 1 } ] }, { id: "military_science", req: [ { type: "resource", id: "research", value: 33000 }, { type: "tech", id: "gunpowder", value: 1 } ] }, { id: "dragon_assault", confirm: true, req: [ { type: "resource", id: "research", value: 34000 }, { type: "prayer", id: "dragon_skull", value: 1 } ] }, { id: "glorious_parade", req: [ { type: "resource", id: "gold", value: 4000 }, { type: "tech", id: "dragon_assault", value: 1 } ], gen: [ { type: "resource", id: "fame", value: 200, fix: true }, { type: "population", id: "unemployed", value: 4 } ] }, { id: "the_vault", req: [ { type: "resource", id: "research", value: 33000 }, { type: "building", id: "bank", value: 8 } ] }, { id: "cuirassiers", req: [ { type: "resource", id: "research", value: 35000 }, { type: "tech", id: "military_science", value: 1 } ] }, { id: "northern_star", req: [ { type: "resource", id: "research", value: 35000 }, { type: "diplomacy_owned", id: "nightdale_protectorate", value: 1 } ] }, { id: "flame_atamar", req: [ { type: "resource", id: "research", value: 35000 }, { type: "diplomacy_owned", id: "zultan_emirate", value: 1 } ] }, { id: "trail_power", req: [ { type: "resource", id: "research", value: 45000 }, { type: "diplomacy_owned", id: "western_kingdom", value: 1 } ] }, { id: "exhibit_flame", req: [ { type: "resource", id: "gold", value: 45000 }, { type: "resource", id: "mana", value: 7000 }, { type: "tech", id: "flame_atamar", value: 1 } ], gen: [ { type: "resource", id: "gold", value: 10 }, { type: "population", id: "unemployed", value: 5 }, { type: "tech", id: "infuse_flame", value: -1 } ] }, { id: "infuse_flame", req: [ { type: "resource", id: "copper", value: 15000 }, { type: "resource", id: "iron", value: 15000 }, { type: "resource", id: "mana", value: 7000 }, { type: "tech", id: "flame_atamar", value: 1 } ], gen: [ { type: "modifier", type_id: "army", id: "strategist", type_gen: "stat", gen: "attack", value: 10, perc: false }, { type: "modifier", type_id: "army", id: "strategist", type_gen: "stat", gen: "defense", value: 10, perc: false }, { type: "modifier", type_id: "army", id: "commander", type_gen: "stat", gen: "attack", value: 15, perc: false }, { type: "modifier", type_id: "army", id: "commander", type_gen: "stat", gen: "defense", value: 15, perc: false }, { type: "cap", id: "army", value: 15 }, { type: "tech", id: "exhibit_flame", value: -1 } ] }, { id: "persuade_nobility", req: [ { type: "resource", id: "gold", value: 150000 }, { type: "tech", id: "trail_power", value: 1 } ], gen: [ { type: "resource", id: "fame", value: 100, fix: true }, { type: "tech", id: "persuade_people", value: -1 } ] }, { id: "persuade_people", req: [ { type: "resource", id: "research", value: 50000 }, { type: "tech", id: "trail_power", value: 1 } ], gen: [ { type: "tech", id: "persuade_nobility", value: -1 } ] }, { id: "loved_people", req: [ { type: "resource", id: "research", value: 10000 }, { type: "enemy", id: "eternal_halls", value: 1 } ], gen: [ { type: "resource", id: "fame", value: 150, fix: true }, { type: "resource", id: "gold", value: 12 }, { type: "population", id: "unemployed", value: 6 } ] }, { id: "economics", req: [ { type: "resource", id: "research", value: 35000 }, { type: "tech", id: "printing_press", value: 1 } ], gen: [ { type: "resource", id: "fame", value: 40, fix: true } ] }, { id: "ministry_interior_t", req: [ { type: "resource", id: "research", value: 35000 }, { type: "tech", id: "economics", value: 1 }, { type: "legacy", id: "ministry_interior_l", value: 1 } ] }, { id: "ministry_war_t", req: [ { type: "resource", id: "research", value: 35000 }, { type: "tech", id: "economics", value: 1 }, { type: "legacy", id: "ministry_war_l", value: 1 } ] }, { id: "ministry_worship_t", req: [ { type: "resource", id: "research", value: 35000 }, { type: "tech", id: "economics", value: 1 }, { type: "legacy", id: "ministry_worship_l", value: 1 } ] }, { id: "order_of_clerics", req: [ { type: "resource", id: "research", value: 37000 }, { type: "resource", id: "faith", value: 2500 }, { type: "tech", id: "printing_press", value: 1 } ] }, { id: "magic_arts_teaching", req: [ { type: "resource", id: "research", value: 39000 }, { type: "tech", id: "order_of_clerics", value: 1 } ] }, { id: "mana_utilization", req: [ { type: "resource", id: "research", value: 50000 }, { type: "tech", id: "magic_arts_teaching", value: 1 }, { type: "tech", id: "dragon_assault", value: 1 } ] }, { id: "large_defensive_project", req: [ { type: "resource", id: "research", value: 35000 }, { type: "building", id: "military_academy", value: 1 } ] }, { id: "commercial_monopolies", req: [ { type: "resource", id: "gold", value: 70000 }, { type: "cap", id: "gold", value: 70000 } ] }, { id: "gold_domination_project", req: [ { type: "resource", id: "gold", value: 100000 }, { type: "building", id: "stock_exchange", value: 1 } ] }, { id: "exterminate_competition", req: [ { type: "resource", id: "gold", value: 150000 }, { type: "cap", id: "gold", value: 150000 }, { type: "prayer", id: "gold_consecration", value: 1 } ], gen: [ { type: "resource", id: "gold", value: 10 } ] }, { id: "theresmore_richest_nation", req: [ { type: "resource", id: "gold", value: 200000 }, { type: "cap", id: "gold", value: 200000 }, { type: "tech", id: "exterminate_competition", value: 1 } ], gen: [ { type: "resource", id: "coin", value: 1, fix: true } ] }, { id: "poisoned_arrows", req: [ { type: "resource", id: "research", value: 1000 }, { type: "enemy", id: "goblin_lair", value: 1 } ], gen: [ { type: "modifier", type_id: "army", id: "archer", type_gen: "stat", gen: "attack", value: 2, perc: false }, { type: "modifier", type_id: "army", id: "crossbowman", type_gen: "stat", gen: "attack", value: 2, perc: false } ] }, { id: "construction_of_automata", req: [ { type: "resource", id: "research", value: 8000 }, { type: "prayer", id: "study_undead_creatures", value: 1 } ] }, { id: "safe_roads", req: [ { type: "resource", id: "research", value: 9000 }, { type: "enemy", id: "bandit_camp", value: 1 }, { type: "enemy", id: "deserters_den", value: 1 } ] }, { id: "agreement_passage_wanders", req: [ { type: "resource", id: "gold", value: 15000 }, { type: "diplomacy_alliance", id: "theresmore_wanders", value: 1 } ] }, { id: "scout_mission_east", req: [ { type: "resource", id: "gold", value: 15000 }, { type: "diplomacy_owned", id: "theresmore_wanders", value: 1 } ] }, { id: "large_pastures", req: [ { type: "resource", id: "research", value: 9000 }, { type: "tech", id: "agreement_passage_wanders", value: 1 } ], gen: [ { type: "modifier", type_id: "population", id: "breeder", type_gen: "resource", gen: "horse", value: 5, perc: true } ] }, { id: "great_pastures", req: [ { type: "resource", id: "research", value: 9000 }, { type: "tech", id: "scout_mission_east", value: 1 } ], gen: [ { type: "modifier", type_id: "population", id: "breeder", type_gen: "resource", gen: "horse", value: 10, perc: true } ] }, { id: "pentagram_tome", req: [ { type: "resource", id: "research", value: 5000 }, { type: "enemy", id: "strange_village", value: 1 } ] }, { id: "underground_kobold_mission", req: [ { type: "resource", id: "research", value: 7000 }, { type: "resource", id: "gold", value: 10000 }, { type: "enemy", id: "kobold_underground_tunnels", value: 1 } ] }, { id: "kobold_nation", req: [ { type: "resource", id: "research", value: 15000 }, { type: "resource", id: "gold", value: 15000 }, { type: "enemy", id: "kobold_city", value: 1 } ] }, { id: "portal_of_the_dead", req: [ { type: "resource", id: "research", value: 40000 }, { type: "building", id: "mine", value: 15 }, { type: "building", id: "pillars_of_mana", value: 5 } ] }, { id: "trail_blood", req: [ { type: "resource", id: "research", value: 50000 }, { type: "resource", id: "gold", value: 10000 }, { type: "enemy", id: "vampire_crypt", value: 1 } ] }, { id: "mana_engine", req: [ { type: "resource", id: "research", value: 56000 }, { type: "building", id: "mana_pit", value: 1 } ] }, { id: "long_expedition", req: [ { type: "resource", id: "research", value: 56000 }, { type: "tech", id: "mana_engine", value: 1 } ] }, { id: "shores_theresmore", req: [ { type: "resource", id: "research", value: 57000 }, { type: "tech", id: "long_expedition", value: 1 } ] }, { id: "mechanization", req: [ { type: "resource", id: "research", value: 57000 }, { type: "tech", id: "mana_engine", value: 1 } ] }, { id: "storage_district", req: [ { type: "resource", id: "research", value: 57000 }, { type: "tech", id: "mechanization", value: 1 } ] }, { id: "natronite_storage", req: [ { type: "resource", id: "research", value: 59000 }, { type: "tech", id: "mechanization", value: 1 } ] }, { id: "research_district", req: [ { type: "resource", id: "research", value: 59000 }, { type: "tech", id: "mechanization", value: 1 } ] }, { id: "harbor_project", req: [ { type: "resource", id: "research", value: 60000 }, { type: "tech", id: "shores_theresmore", value: 1 } ] }, { id: "financial_markets", req: [ { type: "resource", id: "research", value: 62000 }, { type: "tech", id: "research_district", value: 1 } ] }, { id: "natrocity", req: [ { type: "resource", id: "research", value: 66000 }, { type: "tech", id: "financial_markets", value: 1 } ] }, { id: "biology", req: [ { type: "resource", id: "research", value: 69000 }, { type: "tech", id: "research_district", value: 1 } ], gen: [ { type: "resource", id: "fame", value: 50, fix: true }, { type: "resource", id: "food", value: 4 }, { type: "population", id: "unemployed", value: 4 } ] }, { id: "ecology", req: [ { type: "resource", id: "research", value: 73000 }, { type: "tech", id: "research_district", value: 1 } ] }, { id: "flight", req: [ { type: "resource", id: "research", value: 76000 }, { type: "tech", id: "natrocity", value: 1 } ] }, { id: "flintlock_musket", req: [ { type: "resource", id: "research", value: 79000 }, { type: "tech", id: "mechanization", value: 1 } ] }, { id: "military_tactics", req: [ { type: "resource", id: "research", value: 82000 }, { type: "tech", id: "flintlock_musket", value: 1 } ] }, { id: "land_mine", req: [ { type: "resource", id: "research", value: 85000 }, { type: "tech", id: "military_tactics", value: 1 } ] }, { id: "field_artillery", req: [ { type: "resource", id: "research", value: 85000 }, { type: "tech", id: "military_tactics", value: 1 } ] }, { id: "veteran_artillerymen", req: [ { type: "resource", id: "research", value: 85000 }, { type: "tech", id: "field_artillery", value: 1 } ] }, { id: "communion_nature", req: [ { type: "resource", id: "research", value: 90000 }, { type: "tech", id: "ecology", value: 1 } ] }, { id: "lonely_druid", req: [ { type: "resource", id: "faith", value: 13000 }, { type: "tech", id: "communion_nature", value: 1 } ] }, { id: "rage_druid", req: [ { type: "resource", id: "research", value: 95000 }, { type: "prayer", id: "banish_druid", value: 1 } ] }, { id: "miracle_city", req: [ { type: "resource", id: "research", value: 98000 }, { type: "prayer", id: "prayer_lonely_druid", value: 1 } ] }, { id: "preparation_war", req: [ { type: "resource", id: "research", value: 98000 }, { type: "prayer", id: "city_blessing", value: 1 } ] }, { id: "mysterious_robbery", confirm: true, req: [ { type: "resource", id: "research", value: 108000 }, { type: "tech", id: "miracle_city", value: 1 } ] }, { id: "fallen_angel", confirm: true, req: [ { type: "resource", id: "research", value: 108000 }, { type: "tech", id: "preparation_war", value: 1 } ] }, { id: "joyful_nation_1", req: [ { type: "resource", id: "gold", value: 8000 }, { type: "tech", id: "mysterious_robbery", value: 1 } ], gen: [ { type: "resource", id: "fame", value: 300, fix: true }, { type: "resource", id: "natronite", value: 1 } ] }, { id: "joyful_nation_2", req: [ { type: "resource", id: "gold", value: 8000 }, { type: "tech", id: "fallen_angel", value: 1 } ], gen: [ { type: "resource", id: "fame", value: 300, fix: true }, { type: "resource", id: "natronite", value: 1 } ] }, { id: "end_era_4_1", req: [ { type: "tech", id: "joyful_nation_1", value: 1 } ], gen: [ { type: "tech", id: "end_4", value: 1 } ] }, { id: "end_era_4_2", req: [ { type: "tech", id: "joyful_nation_2", value: 1 } ], gen: [ { type: "tech", id: "end_4", value: 1 } ] }, { id: "seafaring", req: [ { type: "resource", id: "research", value: 115000 }, { type: "building", id: "harbor_district", value: 1 }, { type: "tech", id: "end_4", value: 1 } ] }, { id: "outpost_tiny_island", req: [ { type: "resource", id: "research", value: 115000 }, { type: "enemy", id: "far_west_island", value: 1 } ] }, { id: "the_journey", req: [ { type: "resource", id: "research", value: 121000 }, { type: "resource", id: "gold", value: 190000 }, { type: "resource", id: "food", value: 14000 }, { type: "resource", id: "supplies", value: 14000 }, { type: "resource", id: "natronite", value: 12000 }, { type: "building", id: "island_outpost", value: 1 } ] }, { id: "beacon_faith", req: [ { type: "building", id: "colony_hall", value: 1 } ], gen: [ { type: "tech", id: "military_colony", value: -1 }, { type: "tech", id: "productive_hub", value: -1 } ] }, { id: "military_colony", req: [ { type: "building", id: "colony_hall", value: 1 } ], gen: [ { type: "tech", id: "beacon_faith", value: -1 }, { type: "tech", id: "productive_hub", value: -1 } ] }, { id: "productive_hub", req: [ { type: "building", id: "colony_hall", value: 1 } ], gen: [ { type: "tech", id: "beacon_faith", value: -1 }, { type: "tech", id: "military_colony", value: -1 } ] }, { id: "colonial_docks", req: [ { type: "resource", id: "research", value: 120000 }, { type: "building", id: "colony_hall", value: 1 }, { type: "tech", id: "productive_hub", value: 1 } ] }, { id: "overseas_refinery", req: [ { type: "resource", id: "research", value: 121000 }, { type: "building", id: "colony_hall", value: 1 }, { type: "tech", id: "productive_hub", value: 1 } ] }, { id: "centralized_power", req: [ { type: "resource", id: "research", value: 125000 }, { type: "resource", id: "gold", value: 50000 }, { type: "building", id: "colony_hall", value: 2 }, { type: "tech", id: "seafaring", value: 1 } ] }, { id: "colonial_trade", req: [ { type: "resource", id: "research", value: 126000 }, { type: "building", id: "colony_hall", value: 5 }, { type: "tech", id: "productive_hub", value: 1 } ] }, { id: "new_world_militia", req: [ { type: "resource", id: "research", value: 130000 }, { type: "building", id: "colony_hall", value: 10 }, { type: "tech", id: "productive_hub", value: 1 } ] }, { id: "landed_estates", req: [ { type: "resource", id: "research", value: 132000 }, { type: "building", id: "colony_hall", value: 10 }, { type: "tech", id: "productive_hub", value: 1 } ] }, { id: "mass_transit", req: [ { type: "resource", id: "research", value: 135000 }, { type: "resource", id: "natronite", value: 10000 }, { type: "tech", id: "centralized_power", value: 1 } ] }, { id: "port_statue", req: [ { type: "resource", id: "research", value: 140000 }, { type: "building", id: "colony_hall", value: 15 }, { type: "tech", id: "productive_hub", value: 1 } ] }, { id: "colonial_camp", req: [ { type: "resource", id: "research", value: 120000 }, { type: "building", id: "colony_hall", value: 1 }, { type: "tech", id: "military_colony", value: 1 } ] }, { id: "guerrilla_warfare", req: [ { type: "resource", id: "research", value: 121000 }, { type: "building", id: "colony_hall", value: 1 }, { type: "tech", id: "military_colony", value: 1 } ] }, { id: "colonial_stronghold", req: [ { type: "resource", id: "research", value: 126000 }, { type: "building", id: "colony_hall", value: 5 }, { type: "tech", id: "military_colony", value: 1 } ] }, { id: "colonial_recruits", req: [ { type: "resource", id: "research", value: 132000 }, { type: "building", id: "colony_hall", value: 10 }, { type: "tech", id: "military_colony", value: 1 } ] }, { id: "dimensional_device", req: [ { type: "resource", id: "research", value: 134000 }, { type: "building", id: "colony_hall", value: 10 }, { type: "tech", id: "military_colony", value: 1 } ] }, { id: "fortified_colony", req: [ { type: "resource", id: "research", value: 140000 }, { type: "building", id: "colony_hall", value: 15 }, { type: "tech", id: "military_colony", value: 1 } ] }, { id: "steel_flesh", req: [ { type: "resource", id: "research", value: 142000 }, { type: "building", id: "colony_hall", value: 15 }, { type: "tech", id: "military_colony", value: 1 } ] }, { id: "faith_world", req: [ { type: "resource", id: "research", value: 120000 }, { type: "building", id: "colony_hall", value: 1 }, { type: "tech", id: "beacon_faith", value: 1 } ] }, { id: "new_old_gods", req: [ { type: "resource", id: "research", value: 126000 }, { type: "building", id: "colony_hall", value: 5 }, { type: "tech", id: "beacon_faith", value: 1 } ] }, { id: "mana_investigation", req: [ { type: "resource", id: "research", value: 132000 }, { type: "building", id: "colony_hall", value: 10 }, { type: "tech", id: "beacon_faith", value: 1 } ] }, { id: "colonial_consacration", req: [ { type: "resource", id: "research", value: 140000 }, { type: "building", id: "colony_hall", value: 15 }, { type: "tech", id: "beacon_faith", value: 1 } ] }, { id: "railroad", req: [ { type: "resource", id: "research", value: 145000 }, { type: "resource", id: "steel", value: 18000 }, { type: "tech", id: "mass_transit", value: 1 } ] }, { id: "strange_encounter", req: [ { type: "building", id: "colony_hall", value: 4 }, { type: "tech", id: "seafaring", value: 1 } ] }, { id: "colonial_exploitations", req: [ { type: "resource", id: "research", value: 125000 }, { type: "building", id: "colony_hall", value: 3 } ] }, { id: "artisan_complex", req: [ { type: "resource", id: "research", value: 126000 }, { type: "building", id: "colony_hall", value: 3 }, { type: "tech", id: "colonial_exploitations", value: 1 } ] }, { id: "alchemist_complex_t", req: [ { type: "resource", id: "research", value: 128000 }, { type: "building", id: "colony_hall", value: 5 }, { type: "tech", id: "artisan_complex", value: 1 } ] }, { id: "large_shed_t", req: [ { type: "resource", id: "research", value: 128000 }, { type: "building", id: "colony_hall", value: 5 }, { type: "tech", id: "artisan_complex", value: 1 } ] }, { id: "trenches", req: [ { type: "resource", id: "research", value: 128000 }, { type: "building", id: "colony_hall", value: 5 }, { type: "tech", id: "artisan_complex", value: 1 } ] }, { id: "new_world_exploration", req: [ { type: "resource", id: "gold", value: 80000 }, { type: "building", id: "colony_hall", value: 6 }, { type: "tech", id: "seafaring", value: 1 } ] }, { id: "aid_request", req: [ { type: "resource", id: "research", value: 132000 }, { type: "resource", id: "crystal", value: 10000 }, { type: "resource", id: "mana", value: 10000 }, { type: "tech", id: "strange_encounter", value: 1 } ] }, { id: "elf_survivors", req: [ { type: "resource", id: "research", value: 135000 }, { type: "enemy", id: "ettin_camp", value: 1 } ] }, { id: "elf_warriors", req: [ { type: "resource", id: "crystal", value: 14500 }, { type: "building", id: "elf_encampment", value: 5 } ] }, { id: "temple_luna", req: [ { type: "resource", id: "research", value: 150000 }, { type: "building", id: "colony_hall", value: 8 } ] }, { id: "elf_last_village", req: [ { type: "resource", id: "research", value: 155000 }, { type: "enemy", id: "desecrated_temple", value: 1 } ] }, { id: "atomic_theory", req: [ { type: "resource", id: "research", value: 155000 }, { type: "resource", id: "natronite", value: 18000 }, { type: "tech", id: "elf_survivors", value: 1 }, { type: "building", id: "ministry_development", value: 3 } ], gen: [ { type: "resource", id: "fame", value: 100, fix: true } ] }, { id: "mana_reactors", req: [ { type: "resource", id: "research", value: 160000 }, { type: "resource", id: "mana", value: 15000 }, { type: "resource", id: "natronite", value: 15000 }, { type: "tech", id: "atomic_theory", value: 1 } ] }, { id: "assembly_line", req: [ { type: "resource", id: "research", value: 165000 }, { type: "resource", id: "steel", value: 20000 }, { type: "building", id: "ministry_development", value: 6 } ] }, { id: "replicable_parts", req: [ { type: "resource", id: "research", value: 170000 }, { type: "tech", id: "assembly_line", value: 1 } ] }, { id: "metal_alloys", req: [ { type: "resource", id: "research", value: 180000 }, { type: "tech", id: "replicable_parts", value: 1 } ] }, { id: "burned_farms", req: [ { type: "building", id: "colony_hall", value: 12 } ] }, { id: "orcish_threat", req: [ { type: "resource", id: "research", value: 190000 }, { type: "resource", id: "gold", value: 120000 }, { type: "enemy", id: "orcish_prison_camp", value: 1 } ], gen: [ { type: "modifier", type_id: "army", id: "general", type_gen: "stat", gen: "attack", value: 20, perc: false }, { type: "modifier", type_id: "army", id: "general", type_gen: "stat", gen: "defense", value: 20, perc: false } ] }, { id: "orcish_citadel", req: [ { type: "resource", id: "research", value: 190000 }, { type: "enemy", id: "orc_raiding_party", value: 1 } ] }, { id: "mankind_darkest", req: [ { type: "resource", id: "research", value: 200000 }, { type: "enemy", id: "orc_gormiak_citadel", value: 1 } ] }, { id: "war_effort", req: [ { type: "resource", id: "faith", value: 18000 }, { type: "tech", id: "mankind_darkest", value: 1 } ], gen: [ { type: "resource", id: "gold", value: 6, perc: true }, { type: "resource", id: "research", value: 6, perc: true } ] }, { id: "honor_humanity", req: [ { type: "resource", id: "research", value: 200000 }, { type: "enemy", id: "orc_ogsog_citadel", value: 1 } ], gen: [ { type: "modifier", type_id: "army", id: "line_infantry", type_gen: "stat", gen: "attack", value: 4, perc: false }, { type: "modifier", type_id: "army", id: "line_infantry", type_gen: "stat", gen: "defense", value: 8, perc: false } ] }, { id: "swear_give_up", req: [ { type: "resource", id: "research", value: 200000 }, { type: "enemy", id: "orc_turgon_citadel", value: 1 } ], gen: [ { type: "resource", id: "fame", value: 150, fix: true }, { type: "cap", id: "army", value: 50 } ] }, { id: "path_children", req: [ { type: "resource", id: "research", value: 200000 }, { type: "enemy", id: "orc_horith_citadel", value: 1 } ] }, { id: "orc_horde", confirm: true, req: [ { type: "resource", id: "research", value: 210000 }, { type: "enemy", id: "orc_horith_citadel", value: 1 }, { type: "enemy", id: "orc_ogsog_citadel", value: 1 }, { type: "enemy", id: "orc_turgon_citadel", value: 1 } ] }, { id: "the_triumph", req: [ { type: "resource", id: "gold", value: 25000 }, { type: "tech", id: "orc_horde", value: 1 } ], gen: [ { type: "resource", id: "fame", value: 450, fix: true } ] }, { id: "titan_mosaic", req: [ { type: "resource", id: "research", value: 215000 }, { type: "resource", id: "mana", value: 12000 }, { type: "enemy", id: "giant_temple", value: 1 } ] }, { id: "titan_gift_t", req: [ { type: "resource", id: "gold", value: 240000 }, { type: "enemy", id: "sleeping_titan", value: 1 } ], gen: [ { type: "resource", id: "titan_gift", value: 1, fix: true } ] }, { id: "dark_crystal", req: [ { type: "resource", id: "research", value: 200000 }, { type: "diplomacy_owned", id: "lich_fortress", value: 1 } ] } ]; //兵种数据 var units = [ { id: "settlement_defenses", type: "settlement", attack: 1, defense: 50, order: 0, category: 0 }, { id: "scout", type: "recon", attack: 2, defense: 2, order: 3, category: 0, req: [ { type: "tech", id: "archery", value: 1 }, { type: "resource", id: "gold", value: 400 }, { type: "resource", id: "food", value: 200 } ], reqAttack: [ { type: "resource", id: "gold", value: 200 }, { type: "resource", id: "food", value: 100 } ], gen: [ { type: "resource", id: "food", value: -0.1 } ] }, { id: "explorer", type: "recon", attack: 5, defense: 5, order: 3, category: 0, req: [ { type: "tech", id: "guild", value: 1 }, { type: "resource", id: "gold", value: 1000 }, { type: "resource", id: "supplies", value: 100 } ], reqAttack: [ { type: "resource", id: "gold", value: 400 }, { type: "resource", id: "supplies", value: 20 } ], gen: [ { type: "resource", id: "food", value: -0.2 } ] }, { id: "familiar", type: "recon", attack: 4, defense: 4, order: 3, cap: 5, category: 0, req: [ { type: "tech", id: "zenix_familiar_t", value: 1 }, { type: "resource", id: "food", value: 100 }, { type: "resource", id: "mana", value: 100 } ], reqAttack: [ { type: "resource", id: "food", value: 100 }, { type: "resource", id: "mana", value: 100 } ], gen: [ { type: "resource", id: "research", value: 0.4 } ] }, { id: "spy", type: "spy", attack: 7, defense: 3, order: 3, category: 0, req: [ { type: "tech", id: "espionage", value: 1 }, { type: "resource", id: "gold", value: 1000 } ], reqAttack: [ { type: "resource", id: "gold", value: 100 } ], gen: [ { type: "resource", id: "food", value: -0.1 } ] }, { id: "archer", type: "army", attack: 3, defense: 2, order: 3, category: 1, req: [ { type: "tech", id: "archery", value: 1 }, { type: "resource", id: "gold", value: 200 }, { type: "resource", id: "wood", value: 100 } ], reqAttack: [ { type: "resource", id: "gold", value: 20 }, { type: "resource", id: "food", value: 20 } ], gen: [ { type: "resource", id: "food", value: -0.2 } ] }, { id: "battering_ram", type: "army", attack: 14, defense: 2, order: 3, category: 1, req: [ { type: "tech", id: "warfare", value: 1 }, { type: "resource", id: "gold", value: 800 }, { type: "resource", id: "wood", value: 1000 } ], reqAttack: [ { type: "resource", id: "gold", value: 80 }, { type: "resource", id: "food", value: 50 } ], gen: [ { type: "resource", id: "gold", value: -4 } ] }, { id: "crossbowman", type: "army", attack: 11, defense: 6, order: 3, category: 1, req: [ { type: "tech", id: "crossbow", value: 1 }, { type: "resource", id: "gold", value: 1000 }, { type: "resource", id: "wood", value: 400 }, { type: "resource", id: "supplies", value: 50 } ], reqAttack: [ { type: "resource", id: "gold", value: 40 }, { type: "resource", id: "food", value: 40 } ], gen: [ { type: "resource", id: "food", value: -0.5 } ] }, { id: "trebuchet", type: "army", attack: 28, defense: 3, order: 3, category: 1, req: [ { type: "tech", id: "siege_techniques", value: 1 }, { type: "resource", id: "gold", value: 1200 }, { type: "resource", id: "wood", value: 2000 } ], reqAttack: [ { type: "resource", id: "gold", value: 100 }, { type: "resource", id: "food", value: 100 } ], gen: [ { type: "resource", id: "gold", value: -5 } ] }, { id: "white_company", type: "army", attack: 18, defense: 11, order: 3, category: 1, req: [ { type: "tech", id: "white_t_company", value: 1 }, { type: "resource", id: "gold", value: 2500 } ], reqAttack: [ { type: "resource", id: "gold", value: 75 } ], gen: [ { type: "resource", id: "gold", value: -5 } ] }, { id: "strategist", type: "army", attack: 72, defense: 12, order: 3, cap: 1, category: 1, req: [ { type: "prayer", id: "zenix_aid", value: 1 }, { type: "resource", id: "gold", value: 7500 }, { type: "resource", id: "crystal", value: 400 } ], reqAttack: [ { type: "resource", id: "gold", value: 1000 }, { type: "resource", id: "crystal", value: 300 } ], gen: [ { type: "resource", id: "mana", value: 3 }, { type: "resource", id: "food", value: -1 }, { type: "resource", id: "gold", value: -6 } ] }, { id: "arquebusier", type: "army", attack: 16, defense: 7, order: 3, category: 1, req: [ { type: "tech", id: "gunpowder", value: 1 }, { type: "resource", id: "gold", value: 1500 }, { type: "resource", id: "saltpetre", value: 100 } ], reqAttack: [ { type: "resource", id: "gold", value: 80 }, { type: "resource", id: "food", value: 40 } ], gen: [ { type: "resource", id: "food", value: -0.9 } ] }, { id: "bombard", type: "army", attack: 42, defense: 4, order: 3, category: 1, req: [ { type: "tech", id: "military_science", value: 1 }, { type: "resource", id: "gold", value: 2000 }, { type: "resource", id: "steel", value: 200 }, { type: "resource", id: "saltpetre", value: 200 } ], reqAttack: [ { type: "resource", id: "gold", value: 200 } ], gen: [ { type: "resource", id: "gold", value: -7 } ] }, { id: "cannon", type: "army", attack: 88, defense: 8, order: 3, category: 1, req: [ { type: "tech", id: "field_artillery", value: 1 }, { type: "resource", id: "gold", value: 5000 }, { type: "resource", id: "saltpetre", value: 1000 }, { type: "resource", id: "steel", value: 500 } ], reqAttack: [ { type: "resource", id: "gold", value: 500 } ], gen: [ { type: "resource", id: "gold", value: -15 } ] }, { id: "artillery", type: "army", attack: 160, defense: 15, order: 3, category: 1, req: [ { type: "tech", id: "metal_alloys", value: 1 }, { type: "resource", id: "gold", value: 15000 }, { type: "resource", id: "saltpetre", value: 5000 }, { type: "resource", id: "steel", value: 5000 }, { type: "resource", id: "natronite", value: 2500 } ], reqAttack: [ { type: "resource", id: "gold", value: 1000 }, { type: "resource", id: "natronite", value: 200 } ], gen: [ { type: "resource", id: "gold", value: -25 } ] }, { id: "ranger", type: "army", attack: 22, defense: 15, order: 3, cap: 50, category: 1, req: [ { type: "tech", id: "guerrilla_warfare", value: 1 }, { type: "resource", id: "food", value: 1000 }, { type: "resource", id: "supplies", value: 500 } ], reqAttack: [ { type: "resource", id: "gold", value: 100 }, { type: "resource", id: "food", value: 50 } ], gen: [ { type: "resource", id: "food", value: 1.2 } ] }, { id: "elf_warrior", type: "army", attack: 62, defense: 55, order: 3, cap: 25, category: 1, req: [ { type: "tech", id: "elf_warriors", value: 1 }, { type: "resource", id: "supplies", value: 2000 }, { type: "resource", id: "crystal", value: 2000 } ], reqAttack: [ { type: "resource", id: "supplies", value: 250 }, { type: "resource", id: "crystal", value: 150 } ], gen: [ { type: "resource", id: "food", value: -2.5 } ] }, { id: "marksman", type: "army", attack: 35, defense: 15, order: 3, category: 1, req: [ { type: "tech", id: "trenches", value: 1 }, { type: "resource", id: "gold", value: 3500 }, { type: "resource", id: "saltpetre", value: 500 }, { type: "resource", id: "supplies", value: 500 } ], reqAttack: [ { type: "resource", id: "gold", value: 125 }, { type: "resource", id: "food", value: 75 }, { type: "resource", id: "supplies", value: 25 } ], gen: [ { type: "resource", id: "food", value: -1.5 } ] }, { id: "spearman", type: "army", attack: 2, defense: 7, order: 1, category: 3, req: [ { type: "tech", id: "bronze_working", value: 1 }, { type: "resource", id: "gold", value: 200 }, { type: "resource", id: "wood", value: 150 }, { type: "resource", id: "copper", value: 50 } ], reqAttack: [ { type: "resource", id: "gold", value: 30 }, { type: "resource", id: "food", value: 25 } ], gen: [ { type: "resource", id: "food", value: -0.2 } ] }, { id: "warrior_monk", type: "army", attack: 3, defense: 13, order: 1, category: 3, req: [ { type: "prayer", id: "prayer_for_the_ancient_monk", value: 1 }, { type: "resource", id: "faith", value: 800 }, { type: "resource", id: "mana", value: 400 } ], reqAttack: [ { type: "resource", id: "food", value: 10 } ], gen: [ { type: "resource", id: "food", value: -0.4 } ] }, { id: "shieldbearer", type: "army", attack: 5, defense: 23, order: 1, category: 3, req: [ { type: "tech", id: "bronze_working", value: 1 }, { type: "legacy", id: "shieldbearer", value: 1 }, { type: "resource", id: "gold", value: 350 }, { type: "resource", id: "wood", value: 350 } ], reqAttack: [ { type: "resource", id: "gold", value: 30 }, { type: "resource", id: "food", value: 30 } ], gen: [ { type: "resource", id: "food", value: -0.4 } ] }, { id: "priest", type: "army", attack: 1, defense: 36, order: 2, category: 3, req: [ { type: "tech", id: "religion", value: 1 }, { type: "legacy", id: "priest", value: 1 }, { type: "resource", id: "food", value: 800 }, { type: "resource", id: "faith", value: 800 } ], reqAttack: [ { type: "resource", id: "food", value: 80 } ], gen: [ { type: "resource", id: "food", value: -1 }, { type: "resource", id: "gold", value: -1 } ] }, { id: "sacred_golem", type: "army", attack: 8, defense: 22, order: 1, category: 3, req: [ { type: "prayer", id: "create_sacred_golem", value: 1 }, { type: "resource", id: "stone", value: 2000 }, { type: "resource", id: "faith", value: 1000 }, { type: "resource", id: "mana", value: 800 } ], reqAttack: [ { type: "resource", id: "mana", value: 100 } ], gen: [ { type: "resource", id: "mana", value: -1 } ] }, { id: "cleric", type: "army", attack: 8, defense: 24, order: 2, category: 3, req: [ { type: "tech", id: "order_of_clerics", value: 1 }, { type: "resource", id: "faith", value: 1800 }, { type: "resource", id: "crystal", value: 200 } ], reqAttack: [ { type: "resource", id: "food", value: 60 } ], gen: [ { type: "resource", id: "food", value: -1 } ] }, { id: "juggernaut", type: "army", attack: 15, defense: 50, order: 1, category: 3, req: [ { type: "tech", id: "bronze_working", value: 1 }, { type: "legacy", id: "juggernaut", value: 1 }, { type: "resource", id: "food", value: 600 }, { type: "resource", id: "cow", value: 600 }, { type: "resource", id: "mana", value: 400 } ], reqAttack: [ { type: "resource", id: "food", value: 150 }, { type: "resource", id: "mana", value: 150 } ], gen: [ { type: "resource", id: "food", value: -2 }, { type: "resource", id: "mana", value: -1 } ] }, { id: "paladin", type: "army", attack: 28, defense: 56, order: 1, category: 3, req: [ { type: "prayer", id: "warrior_gods", value: 1 }, { type: "resource", id: "faith", value: 2500 }, { type: "resource", id: "steel", value: 500 } ], reqAttack: [ { type: "resource", id: "faith", value: 200 }, { type: "resource", id: "food", value: 100 } ], gen: [ { type: "resource", id: "crystal", value: 0.1 }, { type: "resource", id: "food", value: -1.5 } ] }, { id: "behemoth", type: "army", attack: 24, defense: 98, order: 1, cap: 20, category: 3, req: [ { type: "tech", id: "steel_flesh", value: 1 }, { type: "resource", id: "steel", value: 3000 }, { type: "resource", id: "saltpetre", value: 1500 }, { type: "resource", id: "natronite", value: 1000 } ], reqAttack: [ { type: "resource", id: "saltpetre", value: 100 }, { type: "resource", id: "natronite", value: 100 } ], gen: [ { type: "resource", id: "food", value: -3 } ] }, { id: "ancient_balor", type: "army", attack: 150, defense: 750, order: 1, cap: 1, category: 3, req: [ { type: "tech", id: "ancient_balor_t", value: 1 }, { type: "resource", id: "food", value: 10000 }, { type: "resource", id: "mana", value: 10000 } ], reqAttack: [ { type: "resource", id: "food", value: 1000 }, { type: "resource", id: "mana", value: 1000 } ], gen: [ { type: "resource", id: "iron", value: 5 }, { type: "resource", id: "steel", value: 2 }, { type: "resource", id: "food", value: -30 }, { type: "resource", id: "mana", value: -30 } ] }, { id: "warrior", type: "army", attack: 8, defense: 8, order: 2, category: 2, req: [ { type: "tech", id: "bronze_working", value: 1 }, { type: "resource", id: "gold", value: 400 }, { type: "resource", id: "copper", value: 200 } ], reqAttack: [ { type: "resource", id: "gold", value: 40 }, { type: "resource", id: "food", value: 40 } ], gen: [ { type: "resource", id: "food", value: -0.4 } ] }, { id: "mercenary_veteran", type: "army", attack: 12, defense: 8, order: 1, category: 2, req: [ { type: "tech", id: "mercenary_bands", value: 1 }, { type: "resource", id: "gold", value: 2500 } ], reqAttack: [ { type: "resource", id: "gold", value: 150 } ], gen: [ { type: "resource", id: "gold", value: -5 } ] }, { id: "heavy_warrior", type: "army", attack: 12, defense: 12, order: 2, category: 2, req: [ { type: "tech", id: "iron_working", value: 1 }, { type: "resource", id: "gold", value: 800 }, { type: "resource", id: "iron", value: 300 } ], reqAttack: [ { type: "resource", id: "gold", value: 70 }, { type: "resource", id: "food", value: 70 } ], gen: [ { type: "resource", id: "food", value: -0.6 } ] }, { id: "canava_guard", type: "army", attack: 15, defense: 15, order: 2, category: 2, req: [ { type: "tech", id: "canava_mercenary", value: 1 }, { type: "resource", id: "gold", value: 2000 } ], reqAttack: [ { type: "resource", id: "gold", value: 50 } ], gen: [ { type: "resource", id: "gold", value: -5 } ] }, { id: "man_at_arms", type: "army", attack: 18, defense: 14, order: 2, category: 2, req: [ { type: "tech", id: "plate_armor", value: 1 }, { type: "resource", id: "gold", value: 1500 }, { type: "resource", id: "steel", value: 250 } ], reqAttack: [ { type: "resource", id: "gold", value: 120 }, { type: "resource", id: "food", value: 80 } ], gen: [ { type: "resource", id: "food", value: -0.8 } ] }, { id: "line_infantry", type: "army", attack: 34, defense: 22, order: 2, category: 2, req: [ { type: "tech", id: "flintlock_musket", value: 1 }, { type: "resource", id: "gold", value: 2500 }, { type: "resource", id: "saltpetre", value: 500 }, { type: "resource", id: "supplies", value: 250 } ], reqAttack: [ { type: "resource", id: "gold", value: 250 }, { type: "resource", id: "food", value: 120 } ], gen: [ { type: "resource", id: "food", value: -1.4 } ] }, { id: "jager", type: "army", attack: 82, defense: 18, order: 2, cap: 100, category: 2, req: [ { type: "tech", id: "dimensional_device", value: 1 }, { type: "resource", id: "gold", value: 2000 }, { type: "resource", id: "saltpetre", value: 1000 }, { type: "resource", id: "natronite", value: 500 } ], reqAttack: [ { type: "resource", id: "gold", value: 200 }, { type: "resource", id: "natronite", value: 100 } ], gen: [ { type: "resource", id: "food", value: -1.2 } ] }, { id: "colonial_militia", type: "army", attack: 7, defense: 8, order: 1, category: 2, req: [ { type: "tech", id: "new_world_militia", value: 1 }, { type: "resource", id: "gold", value: 100 }, { type: "resource", id: "saltpetre", value: 10 } ], reqAttack: [ { type: "resource", id: "gold", value: 15 }, { type: "resource", id: "food", value: 5 } ], gen: [ { type: "resource", id: "food", value: -0.1 } ] }, { id: "battle_angel", type: "army", attack: 38, defense: 36, order: 2, category: 2, req: [ { type: "tech", id: "holy_fury", value: 1 }, { type: "resource", id: "faith", value: 2000 }, { type: "resource", id: "mana", value: 600 } ], reqAttack: [ { type: "resource", id: "faith", value: 100 }, { type: "resource", id: "mana", value: 100 } ], gen: [ { type: "resource", id: "mana", value: -1 } ] }, { id: "commander", type: "army", attack: 30, defense: 26, order: 3, cap: 1, category: 2, req: [ { type: "tech", id: "warfare", value: 1 }, { type: "resource", id: "gold", value: 2500 } ], reqAttack: [ { type: "resource", id: "gold", value: 200 }, { type: "resource", id: "food", value: 120 } ], gen: [ { type: "resource", id: "food", value: -2 }, { type: "resource", id: "gold", value: -10 } ] }, { id: "tamed_djinn", type: "army", attack: 40, defense: 40, order: 2, cap: 1, category: 2, req: [ { type: "prayer", id: "desire_war", value: 1 }, { type: "resource", id: "mana", value: 1000 } ], reqAttack: [ { type: "resource", id: "mana", value: 100 } ], gen: [ { type: "resource", id: "mana", value: -5 } ] }, { id: "general", type: "army", attack: 60, defense: 100, order: 3, cap: 1, category: 2, req: [ { type: "building", id: "officer_training_ground", value: 1 }, { type: "resource", id: "gold", value: 15000 } ], reqAttack: [ { type: "resource", id: "gold", value: 1000 }, { type: "resource", id: "food", value: 500 } ], gen: [ { type: "resource", id: "food", value: -10 }, { type: "resource", id: "gold", value: -30 } ] }, { id: "seraphim", type: "army", attack: 450, defense: 400, order: 2, cap: 1, category: 2, req: [ { type: "tech", id: "seraphim_t", value: 1 }, { type: "resource", id: "faith", value: 10000 }, { type: "resource", id: "mana", value: 5000 }, { type: "resource", id: "crystal", value: 2000 } ], reqAttack: [ { type: "resource", id: "faith", value: 1500 }, { type: "resource", id: "mana", value: 1500 } ], gen: [ { type: "resource", id: "research", value: 15 }, { type: "resource", id: "crystal", value: 1.5 }, { type: "resource", id: "mana", value: -20 } ] }, { id: "nikharul_soulstealer", type: "army", attack: 1200, defense: 150, order: 2, cap: 1, category: 2, req: [ { type: "prayer", id: "summon_nikharul", value: 1 }, { type: "resource", id: "mana", value: 12500 } ], reqAttack: [ { type: "resource", id: "mana", value: 6000 } ], gen: [ { type: "resource", id: "mana", value: -100 } ] }, { id: "light_cavarly", type: "army", attack: 10, defense: 4, order: 2, category: 4, req: [ { type: "tech", id: "breeding", value: 1 }, { type: "resource", id: "gold", value: 400 }, { type: "resource", id: "food", value: 300 }, { type: "resource", id: "horse", value: 25 } ], reqAttack: [ { type: "resource", id: "gold", value: 60 }, { type: "resource", id: "food", value: 40 } ], gen: [ { type: "resource", id: "food", value: -0.5 } ] }, { id: "knight", type: "army", attack: 26, defense: 22, order: 2, category: 4, req: [ { type: "tech", id: "knighthood", value: 1 }, { type: "resource", id: "gold", value: 3000 }, { type: "resource", id: "steel", value: 250 }, { type: "resource", id: "horse", value: 50 } ], reqAttack: [ { type: "resource", id: "gold", value: 120 }, { type: "resource", id: "food", value: 100 } ], gen: [ { type: "resource", id: "food", value: -1.2 } ] }, { id: "cataphract", type: "army", attack: 18, defense: 48, order: 2, category: 4, req: [ { type: "tech", id: "persuade_nobility", value: 1 }, { type: "resource", id: "gold", value: 2000 }, { type: "resource", id: "steel", value: 500 }, { type: "resource", id: "horse", value: 75 } ], reqAttack: [ { type: "resource", id: "gold", value: 150 }, { type: "resource", id: "supplies", value: 50 } ], gen: [ { type: "resource", id: "food", value: -0.8 }, { type: "resource", id: "gold", value: -0.8 } ] }, { id: "cuirassier", type: "army", attack: 36, defense: 28, order: 2, category: 4, req: [ { type: "tech", id: "cuirassiers", value: 1 }, { type: "resource", id: "gold", value: 5000 }, { type: "resource", id: "steel", value: 500 }, { type: "resource", id: "horse", value: 200 }, { type: "resource", id: "saltpetre", value: 200 } ], reqAttack: [ { type: "resource", id: "gold", value: 200 }, { type: "resource", id: "food", value: 200 } ], gen: [ { type: "resource", id: "food", value: -2 } ] }, { id: "cpt_galliard", type: "army", attack: 80, defense: 65, order: 2, cap: 1, category: 4, req: [ { type: "tech", id: "cpt_galliard_t", value: 1 }, { type: "resource", id: "gold", value: 10000 }, { type: "resource", id: "horse", value: 3000 } ], reqAttack: [ { type: "resource", id: "gold", value: 1000 }, { type: "resource", id: "supplies", value: 1000 } ], gen: [ { type: "resource", id: "gold", value: 30 } ] }, { id: "ancient_giant", type: "enemy", attack: 250, defense: 16000, order: 3, cap: 1, category: 3 }, { id: "archdemon", type: "enemy", attack: 90, defense: 52, order: 3, category: 2 }, { id: "archlich", type: "enemy", attack: 120, defense: 90, order: 3, cap: 1, category: 1 }, { id: "aqrabuamelu", type: "enemy", attack: 46, defense: 63, order: 1, category: 2 }, { id: "balor", type: "enemy", attack: 195, defense: 150, order: 1, category: 2 }, { id: "bugbear", type: "enemy", attack: 7, defense: 16, order: 1, category: 3 }, { id: "bugbear_chieftain", type: "enemy", attack: 44, defense: 32, order: 2, cap: 1, category: 2 }, { id: "bulette", type: "enemy", attack: 140, defense: 110, order: 1, category: 4 }, { id: "basilisk", type: "enemy", attack: 35, defense: 16, order: 1, category: 1 }, { id: "black_mage", type: "enemy", attack: 52, defense: 22, order: 3, cap: 1, category: 1 }, { id: "cavarly_archer", type: "enemy", attack: 18, defense: 10, order: 3, category: 4 }, { id: "charmed_dweller", type: "enemy", attack: 4, defense: 4, order: 1, category: 2 }, { id: "cyclop", type: "enemy", attack: 25, defense: 76, order: 1, category: 2 }, { id: "cult_master", type: "enemy", attack: 80, defense: 55, order: 3, cap: 1, category: 1 }, { id: "daimyo", type: "enemy", attack: 90, defense: 90, order: 3, cap: 1, category: 1 }, { id: "demoness", type: "enemy", attack: 50, defense: 80, order: 3, cap: 1, category: 1 }, { id: "demonic_musketeer", type: "enemy", attack: 20, defense: 20, order: 2, category: 2 }, { id: "dirty_rat", type: "enemy", attack: 1, defense: 1, order: 1, category: 4 }, { id: "draconic_warrior", type: "enemy", attack: 8, defense: 14, order: 1, category: 2 }, { id: "draconic_diver", type: "enemy", attack: 20, defense: 10, order: 2, category: 4 }, { id: "draconic_mage", type: "enemy", attack: 32, defense: 10, order: 3, category: 1 }, { id: "draconic_leader", type: "enemy", attack: 80, defense: 65, order: 3, category: 1 }, { id: "eternal_guardian", type: "enemy", attack: 22, defense: 84, order: 1, category: 3 }, { id: "ettin", type: "enemy", attack: 39, defense: 67, order: 1, category: 3 }, { id: "fallen_angel", type: "enemy", attack: 150, defense: 100, order: 3, cap: 1, category: 2 }, { id: "frost_elemental", type: "enemy", attack: 20, defense: 42, order: 1, category: 1 }, { id: "frost_giant", type: "enemy", attack: 112, defense: 140, order: 2, cap: 1, category: 3 }, { id: "fire_elemental", type: "enemy", attack: 28, defense: 28, order: 1, category: 1 }, { id: "gargoyle", type: "enemy", attack: 8, defense: 28, order: 1, category: 3 }, { id: "golem", type: "enemy", attack: 11, defense: 42, order: 1, category: 3 }, { id: "gulud", type: "enemy", attack: 250, defense: 180, order: 3, cap: 1, category: 1 }, { id: "korrigan_slinger", type: "enemy", attack: 3, defense: 2, order: 2, category: 1 }, { id: "korrigan_swindler", type: "enemy", attack: 3, defense: 5, order: 1, category: 2 }, { id: "earth_elemental", type: "enemy", attack: 20, defense: 48, order: 1, category: 3 }, { id: "harpy", type: "enemy", attack: 6, defense: 6, order: 1, category: 4 }, { id: "hobgoblin_archer", type: "enemy", attack: 11, defense: 4, order: 3, category: 1 }, { id: "hobgoblin_chieftain", type: "enemy", attack: 20, defense: 34, order: 2, cap: 1, category: 2 }, { id: "hobgoblin_grunt", type: "enemy", attack: 6, defense: 12, order: 1, category: 3 }, { id: "hydra", type: "enemy", attack: 950, defense: 900, order: 1, cap: 1, category: 4 }, { id: "gorgon", type: "enemy", attack: 950, defense: 600, order: 1, cap: 1, category: 2 }, { id: "lead_golem", type: "enemy", attack: 22, defense: 72, order: 1, category: 3 }, { id: "bandit", type: "enemy", attack: 3, defense: 4, order: 1, category: 2 }, { id: "barbarian_warrior", type: "enemy", attack: 13, defense: 6, order: 1, category: 2 }, { id: "barbarian_chosen", type: "enemy", attack: 30, defense: 12, order: 1, category: 2 }, { id: "barbarian_drummer", type: "enemy", attack: 6, defense: 18, order: 2, category: 3 }, { id: "barbarian_leader", type: "enemy", attack: 48, defense: 22, order: 1, category: 2 }, { id: "barbarian_king", type: "enemy", attack: 76, defense: 56, order: 3, cap: 1, category: 2 }, { id: "djinn", type: "enemy", attack: 46, defense: 36, order: 2, cap: 1, category: 1 }, { id: "fire_salamander", type: "enemy", attack: 32, defense: 20, order: 1, category: 4 }, { id: "galliard", type: "enemy", attack: 70, defense: 120, order: 2, cap: 1, category: 2 }, { id: "ghast", type: "enemy", attack: 6, defense: 8, order: 2, category: 4 }, { id: "ghoul", type: "enemy", attack: 4, defense: 5, order: 1, category: 2 }, { id: "giant_wasp", type: "enemy", attack: 8, defense: 4, order: 1, category: 4 }, { id: "goblin_marauder", type: "enemy", attack: 3, defense: 3, order: 1, category: 1 }, { id: "goblin_warrior", type: "enemy", attack: 3, defense: 4, order: 2, category: 2 }, { id: "goblin_wolfrider", type: "enemy", attack: 6, defense: 7, order: 2, category: 4 }, { id: "goblin_overlord", type: "enemy", attack: 20, defense: 15, order: 3, cap: 1, category: 2 }, { id: "lich", type: "enemy", attack: 60, defense: 50, order: 3, cap: 1, category: 1 }, { id: "ball_lightning", type: "enemy", attack: 55, defense: 20, order: 1, category: 4 }, { id: "lizard_warrior", type: "enemy", attack: 12, defense: 12, order: 1, category: 2 }, { id: "lizard_archer", type: "enemy", attack: 13, defense: 6, order: 3, category: 1 }, { id: "lizard_shaman", type: "enemy", attack: 22, defense: 32, order: 3, category: 1 }, { id: "lizard_commander", type: "enemy", attack: 50, defense: 75, order: 3, category: 1 }, { id: "katana_samurai", type: "enemy", attack: 26, defense: 28, order: 1, category: 2 }, { id: "markanat", type: "enemy", attack: 900, defense: 600, order: 1, cap: 1, category: 4 }, { id: "myconid", type: "enemy", attack: 3, defense: 10, order: 1, category: 3 }, { id: "musket_ashigaru", type: "enemy", attack: 22, defense: 18, order: 2, category: 2 }, { id: "hill_giant", type: "enemy", attack: 20, defense: 36, order: 1, category: 3 }, { id: "minotaur", type: "enemy", attack: 1000, defense: 1800, order: 1, cap: 1, category: 3 }, { id: "mountain_giant", type: "enemy", attack: 34, defense: 42, order: 3, category: 3 }, { id: "pillager", type: "enemy", attack: 3, defense: 5, order: 1, category: 2 }, { id: "deserter", type: "enemy", attack: 7, defense: 6, order: 2, category: 2 }, { id: "snake", type: "enemy", attack: 4, defense: 4, order: 1, category: 4 }, { id: "giant_snake", type: "enemy", attack: 16, defense: 8, order: 2, category: 4 }, { id: "ravenous_crab", type: "enemy", attack: 2, defense: 1, order: 1, category: 4 }, { id: "spider", type: "enemy", attack: 3, defense: 2, order: 1, category: 4 }, { id: "sluagh", type: "enemy", attack: 26, defense: 6, order: 1, category: 4 }, { id: "giant_spider", type: "enemy", attack: 10, defense: 8, order: 2, category: 4 }, { id: "skeleton", type: "enemy", attack: 2, defense: 2, order: 1, category: 3 }, { id: "skeletal_knight", type: "enemy", attack: 18, defense: 22, order: 1, category: 2 }, { id: "skullface", type: "enemy", attack: 76, defense: 60, order: 3, cap: 1, category: 1 }, { id: "son_atamar", type: "enemy", attack: 22, defense: 20, order: 1, category: 2 }, { id: "swamp_horror", type: "enemy", attack: 900, defense: 1400, order: 1, cap: 1, category: 3 }, { id: "spectra_memory", type: "enemy", attack: 5, defense: 8, order: 1, category: 3 }, { id: "succubus", type: "enemy", attack: 37, defense: 23, order: 1, category: 2 }, { id: "succubus_queen", type: "enemy", attack: 1500, defense: 1750, order: 2, cap: 1, category: 1 }, { id: "zombie", type: "enemy", attack: 3, defense: 3, order: 1, category: 3 }, { id: "ghost", type: "enemy", attack: 5, defense: 5, order: 2, category: 4 }, { id: "gnoll_leader", type: "enemy", attack: 23, defense: 18, order: 2, cap: 1, category: 2 }, { id: "gnoll_raider", type: "enemy", attack: 6, defense: 5, order: 1, category: 2 }, { id: "oni", type: "enemy", attack: 45, defense: 99, order: 1, category: 3 }, { id: "orc_champion", type: "enemy", attack: 35, defense: 130, order: 1, category: 2 }, { id: "orc_berserker", type: "enemy", attack: 55, defense: 11, order: 1, category: 2 }, { id: "orc_flame_caster", type: "enemy", attack: 45, defense: 12, order: 3, category: 1 }, { id: "orc_ironskin", type: "enemy", attack: 18, defense: 169, order: 1, category: 3 }, { id: "orc_shaman", type: "enemy", attack: 33, defense: 28, order: 3, category: 1 }, { id: "orc_stone_thrower", type: "enemy", attack: 31, defense: 10, order: 3, category: 1 }, { id: "orc_warg_rider", type: "enemy", attack: 33, defense: 70, order: 2, category: 4 }, { id: "orc_warlord", type: "enemy", attack: 70, defense: 150, order: 2, category: 2 }, { id: "orc_warrior", type: "enemy", attack: 25, defense: 63, order: 1, category: 2 }, { id: "orc_worker", type: "enemy", attack: 17, defense: 48, order: 1, category: 3 }, { id: "necromancer", type: "enemy", attack: 28, defense: 15, order: 3, cap: 1, category: 1 }, { id: "imp", type: "enemy", attack: 3, defense: 1, order: 2, category: 1 }, { id: "lesser_demon", type: "enemy", attack: 8, defense: 8, order: 1, category: 3 }, { id: "greater_demon", type: "enemy", attack: 16, defense: 16, order: 3, category: 2 }, { id: "griffin", type: "enemy", attack: 42, defense: 58, order: 1, category: 4 }, { id: "kobold", type: "enemy", attack: 3, defense: 2, order: 1, category: 2 }, { id: "kobold_champion", type: "enemy", attack: 5, defense: 12, order: 1, category: 3 }, { id: "kobold_king", type: "enemy", attack: 42, defense: 48, order: 1, cap: 1, category: 2 }, { id: "naga", type: "enemy", attack: 12, defense: 12, order: 1, category: 4 }, { id: "nikharul", type: "enemy", attack: 780, defense: 1020, order: 3, cap: 1, category: 1 }, { id: "red_dragon", type: "enemy", attack: 280, defense: 180, order: 3, cap: 1, category: 4 }, { id: "titan", type: "enemy", attack: 1, defense: 52000, order: 1, cap: 1, category: 2 }, { id: "troll_cave", type: "enemy", attack: 16, defense: 28, order: 1, category: 3 }, { id: "troll_battle", type: "enemy", attack: 42, defense: 56, order: 1, category: 2 }, { id: "tyrannosaurus", type: "enemy", attack: 1750, defense: 1200, order: 1, cap: 1, category: 4 }, { id: "vampire", type: "enemy", attack: 80, defense: 90, order: 3, cap: 1, category: 2 }, { id: "vampire_bat", type: "enemy", attack: 2, defense: 1, order: 1, category: 4 }, { id: "vampire_servant", type: "enemy", attack: 15, defense: 32, order: 1, category: 3 }, { id: "velociraptors", type: "enemy", attack: 37, defense: 22, order: 1, category: 4 }, { id: "werewolf", type: "enemy", attack: 1150, defense: 600, order: 1, cap: 1, category: 1 }, { id: "wendigo", type: "enemy", attack: 47, defense: 39, order: 1, category: 2 }, { id: "wind_elemental", type: "enemy", attack: 22, defense: 42, order: 1, category: 1 }, { id: "warg", type: "enemy", attack: 22, defense: 18, order: 1, category: 4 }, { id: "wolf", type: "enemy", attack: 4, defense: 4, order: 1, category: 4 }, { id: "wyvern", type: "enemy", attack: 32, defense: 28, order: 2, category: 4 } ]; //格式化时间 const formatTime = timeToFormat => { const timeValues = { seconds: 0, minutes: 0, hours: 0, days: 0 }; let timeShort = ''; let timeLong = ''; timeValues.seconds = timeToFormat % 60; timeToFormat = (timeToFormat - timeToFormat % 60) / 60; timeValues.minutes = timeToFormat % 60; timeToFormat = (timeToFormat - timeToFormat % 60) / 60; timeValues.hours = timeToFormat % 24; timeToFormat = (timeToFormat - timeToFormat % 24) / 24; timeValues.days = timeToFormat; if (timeValues.days) { timeShort += `${timeValues.days}d `; timeLong += `${timeValues.days} days `; } if (timeValues.hours) { timeShort += `${timeValues.hours}h `; timeLong += `${timeValues.hours} hrs `; } if (timeValues.minutes) { timeShort += `${timeValues.minutes}m `; timeLong += `${timeValues.minutes} min `; } if (timeValues.seconds) { timeShort += `${timeValues.seconds}s `; timeLong += `${timeValues.seconds} sec `; } timeShort = timeShort.trim(); timeLong = timeLong.trim(); return { timeShort, timeLong, timeValues }; }; //React let reactVarCache; function getReactData(el, level = 0) { let data; if (reactVarCache && el[reactVarCache]) { data = el[reactVarCache]; } else { const key = Object.keys(el).find(k => k.startsWith('__reactFiber$')); if (key) { reactVarCache = key; data = el[reactVarCache]; } } for (let i = 0; i < level && data; i++) { data = data.return; } return data; } function getNearestKey(el, limit = -1) { let key = undefined; let data = getReactData(el); let level = 0; while (!key && data && (limit < 0 || level <= limit)) { key = data.key; data = data.return; level++; } return key; } function getBtnIndex(el, level = 0) { let data = getReactData(el, level); if (data) { return data.index; } else { return undefined; } } var reactUtil = { getReactData, getNearestKey, getBtnIndex }; //Page const getCurrentPageSelector = () => { return document.querySelector('#main-tabs > div > button[aria-selected="true"]'); }; const getSubPagesSelector = () => { const tabLists = [...document.querySelectorAll('div[role="tablist"]')]; if (tabLists && tabLists.length >= 2) { return [...tabLists[1].querySelectorAll('button')]; } return []; }; const getCurrentSubPageSelector = () => { let currentSubPage; const subPages = getSubPagesSelector(); if (subPages.length) { currentSubPage = subPages.find(subPage => subPage.getAttribute('aria-selected') === 'true'); } return currentSubPage; }; const checkPage = (page, subPage) => { const currentPage = getCurrentPageSelector(); const currentSubPage = getCurrentSubPageSelector(); const pageIndex = CONSTANTS.PAGES_INDEX[page]; const subPageIndex = CONSTANTS.SUBPAGES_INDEX[subPage]; const isCorrectPage = !page || page && currentPage && reactUtil.getBtnIndex(currentPage, 1) === pageIndex; const isCorrectSubPage = !subPage || subPage && currentSubPage && reactUtil.getBtnIndex(currentSubPage, 1) === subPageIndex; return isCorrectPage && isCorrectSubPage; }; var navigation = { checkPage }; //Gen let keyGen$1 = { resource: _gen('resource_'), tooltipReq: _gen('tooltip_req_'), }; function _gen(prefix) { return { key(id) { return prefix + id; }, id(key) { return key.replace(new RegExp('^' + prefix), ''); }, check(key) { return key && !!key.match(new RegExp('^' + prefix + '.+')); } }; } //获取资源 const get = (resourceName = 'gold') => { let resourceFound = false; let resourceToFind = { name: resourceName, current: 0, max: 0, speed: 0, ttf: null, ttz: null }; const resources = [...document.querySelectorAll('#root div > div > div > table > tbody > tr > td:nth-child(1) > span')]; resources.map(resource => { const key = reactUtil.getNearestKey(resource, 6); if (key === keyGen$1.resource.key(resourceName)) { resourceFound = true; const values = resource.parentNode.parentNode.childNodes[1].textContent.split('/').map(x => numberParser.parse(x.replace(/[^0-9KM\-,\.]/g, '').trim())); resourceToFind.current = values[0]; resourceToFind.max = values[1]; resourceToFind.speed = numberParser.parse(resource.parentNode.parentNode.childNodes[2].textContent.replace(/[^0-9KM\-,\.]/g, '').trim()) || 0; resourceToFind.ttf = resourceToFind.speed > 0 && resourceToFind.max !== resourceToFind.current ? formatTime(Math.ceil((resourceToFind.max - resourceToFind.current) / resourceToFind.speed)) : null; resourceToFind.ttz = resourceToFind.speed < 0 && resourceToFind.current ? formatTime(Math.ceil(resourceToFind.current / (resourceToFind.speed * -1))) : null; } }); return resourceFound ? resourceToFind : null; }; var resources = { get }; //资源TTF开始 const calculateTippyTTF = () => { let potentialResourcesToFillTable = document.querySelectorAll('div.tippy-box > div.tippy-content > div > div > table'); if (potentialResourcesToFillTable.length) { potentialResourcesToFillTable = potentialResourcesToFillTable[0]; const rows = potentialResourcesToFillTable.querySelectorAll('tr'); rows.forEach(row => { const cells = row.querySelectorAll('td'); let reqKey = reactUtil.getNearestKey(cells[0], 1); if (!keyGen$1.tooltipReq.check(reqKey)) { return; } reqKey = keyGen$1.tooltipReq.id(reqKey); let dataList; let dataId; let reqField = 'req'; let reqIdx = 0; if (reqKey.startsWith(CONSTANTS.TOOLTIP_PREFIX.BUILDING)) { dataList = buildings; dataId = reqKey.replace(CONSTANTS.TOOLTIP_PREFIX.BUILDING, ''); } else if (reqKey.startsWith(CONSTANTS.TOOLTIP_PREFIX.TECH)) { dataList = tech; dataId = reqKey.replace(CONSTANTS.TOOLTIP_PREFIX.TECH, ''); } else if (reqKey.startsWith(CONSTANTS.TOOLTIP_PREFIX.PRAYER)) { dataList = spells; dataId = reqKey.replace(CONSTANTS.TOOLTIP_PREFIX.PRAYER, ''); } else if (reqKey.startsWith(CONSTANTS.TOOLTIP_PREFIX.UNIT)) { dataList = units; dataId = reqKey.replace(CONSTANTS.TOOLTIP_PREFIX.UNIT, ''); reqIdx = 1; } else if (reqKey.startsWith(CONSTANTS.TOOLTIP_PREFIX.FACTION_IMPROVE)) { dataList = factions; dataId = reqKey.replace(CONSTANTS.TOOLTIP_PREFIX.FACTION_IMPROVE, ''); reqField = 'reqImproveRelationship'; } else if (reqKey.startsWith(CONSTANTS.TOOLTIP_PREFIX.FACTION_DELEGATION)) { dataList = factions; dataId = reqKey.replace(CONSTANTS.TOOLTIP_PREFIX.FACTION_DELEGATION, ''); reqField = 'reqDelegation'; } if (!dataId || !dataList) { return; } let match = dataId.match(/^([a-zA-Z_]+)(\d+)$/); if (!match) { return; } dataId = match[1]; reqIdx += Number(match[2]); let data = dataList.find(d => dataId === d.id); if (!data) { return; } let req = data[reqField]; if (req) { req = req[reqIdx]; } if (!req) { return; } const resource = resources.get(req.id); if (resource) { let ttf = '✅'; const target = numberParser.parse(cells[1].textContent.split(' ').shift().replace(/[^0-9KM\-,\.]/g, '').trim()); if (target > resource.max || (target > resource.current && resource.speed <= 0)) { ttf = 'never'; } else if (target > resource.current) { ttf = formatTime(Math.ceil((target - resource.current) / resource.speed)).timeShort; } if (!cells[2]) { const ttfElement = document.createElement('td'); ttfElement.className = 'px-4 3xl:py-1 text-right'; ttfElement.textContent = ttf; row.appendChild(ttfElement); } else { cells[2].textContent = ttf; } } }); } }; const calculateTTF = () => { const resourceTrNodes = document.querySelectorAll('#root > div > div:not(#maintabs-container) > div > div > div > table:not(.hidden) > tbody > tr'); resourceTrNodes.forEach(row => { const cells = row.querySelectorAll('td'); const resourceName = keyGen$1.resource.id(reactUtil.getNearestKey(cells[0], 5)); const resource = resources.get(resourceName); let ttf = ''; if (resource && resource.current < resource.max && resource.speed) { ttf = resource.ttf ? resource.ttf.timeShort : resource.ttz ? resource.ttz.timeShort : ''; } if (!cells[3]) { const ttfElement = document.createElement('td'); ttfElement.className = 'px-3 3xl:px-5 py-3 lg:py-2 3xl:py-3 whitespace-nowrap w-1/3 text-right'; ttfElement.textContent = ttf; row.appendChild(ttfElement); } else { cells[3].textContent = ttf; } }); }; //资源TTF结束 //兵种All/None按钮开始 const removeAllUnits = async button => { let removeButton = button.parentElement.parentElement.querySelector('div.inline-flex button.btn-red.lg\\:hidden'); while (removeButton) { removeButton.click(); await sleep(10); removeButton = button.parentElement.parentElement.querySelector('div.inline-flex button.btn-red.lg\\:hidden'); } }; const addAllUnits = async button => { let addButton = button.parentElement.parentElement.querySelector('div.inline-flex button.btn-green.lg\\:hidden'); while (addButton) { addButton.click(); await sleep(10); addButton = button.parentElement.parentElement.querySelector('div.inline-flex button.btn-green.lg\\:hidden'); } }; const getRemoveAllButton = () => { const removeAllButton = document.createElement('div'); removeAllButton.classList.add('absolute', 'top-0', 'right-14'); removeAllButton.innerHTML = `<button type="button" class="text-gray-400 dark:text-mydark-100 hover:text-blue-600 dark:hover:text-blue-500 focus:text-blue-600 dark:focus:text-blue-500"><svg viewBox="0 0 24 24" role="presentation" class="icon"><path d="M12 2C17.5 2 22 6.5 22 12S17.5 22 12 22 2 17.5 2 12 6.5 2 12 2M12 4C10.1 4 8.4 4.6 7.1 5.7L18.3 16.9C19.3 15.5 20 13.8 20 12C20 7.6 16.4 4 12 4M16.9 18.3L5.7 7.1C4.6 8.4 4 10.1 4 12C4 16.4 7.6 20 12 20C13.9 20 15.6 19.4 16.9 18.3Z" style="fill: currentcolor;"></path></svg></button>`; removeAllButton.addEventListener('click', function (e) { removeAllUnits(e.currentTarget); }); return removeAllButton; }; const getAddAllButton = () => { const addAllButton = document.createElement('div'); addAllButton.classList.add('absolute', 'top-0', 'right-7'); addAllButton.innerHTML = `<button type="button" class="text-gray-400 dark:text-mydark-100 hover:text-blue-600 dark:hover:text-blue-500 focus:text-blue-600 dark:focus:text-blue-500"><svg viewBox="0 0 24 24" role="presentation" class="icon"><path d="M19.5,3.09L20.91,4.5L16.41,9H20V11H13V4H15V7.59L19.5,3.09M20.91,19.5L19.5,20.91L15,16.41V20H13V13H20V15H16.41L20.91,19.5M4.5,3.09L9,7.59V4H11V11H4V9H7.59L3.09,4.5L4.5,3.09M3.09,19.5L7.59,15H4V13H11V20H9V16.41L4.5,20.91L3.09,19.5Z" style="fill: currentcolor;"></path></svg></button>`; addAllButton.addEventListener('click', function (e) { addAllUnits(e.currentTarget); }); return addAllButton; }; const allowedSubpages = [CONSTANTS.SUBPAGES.ATTACK, CONSTANTS.SUBPAGES.GARRISON, CONSTANTS.SUBPAGES.EXPLORE]; const addArmyButtons = () => { const isCorrectPage = allowedSubpages.find(subpage => navigation.checkPage(CONSTANTS.PAGES.ARMY, subpage)); if (isCorrectPage) { const container = document.querySelector('div.tab-container.sub-container:not(.addArmyButtonsDone)'); if (container) { const boxes = [...container.querySelectorAll('div.grid > div.flex')]; boxes.shift(); boxes.forEach(box => { box.querySelector('div.flex-1.text-center.relative.mb-2').insertAdjacentElement('beforeend', getAddAllButton()); box.querySelector('div.flex-1.text-center.relative.mb-2').insertAdjacentElement('beforeend', getRemoveAllButton()); }); container.classList.add('addArmyButtonsDone'); } } }; //兵种All/None按钮结束 //自动点击器开始 const getValue = function (key, defaultValue) { let value = JSON.parse(window.localStorage.getItem(key)) return value || defaultValue } const setValue = function (key, value) { window.localStorage.setItem(key, JSON.stringify(value)) } let clicker = getValue("clicker", 0); const autoMS = 103; //初始化开关 const btnAuto = document.createElement("button"); btnAuto.type = "button"; btnAuto.id = "btn-auto"; if (clicker) { btnAuto.innerHTML = '<svg viewBox="0 0 24 24" role="presentation" class="icon mr-1 lg:mt-[1px]"><path d="M13.46,12L19,17.54V19H17.54L12,13.46L6.46,19H5V17.54L10.54,12L5,6.46V5H6.46L12,10.54L17.54,5H19V6.46L13.46,12Z" style="fill: currentcolor;"></path></svg>关闭自动'; btnAuto.className = "btn w-full lg:w-3/5 4xl:w-1/2 mx-auto btn-dark"; } else { btnAuto.innerHTML = '<svg viewBox="0 0 24 24" role="presentation" class="icon inline lg:-mt-1 mr-1"><path d="M9,20.42L2.79,14.21L5.62,11.38L9,14.77L18.88,4.88L21.71,7.71L9,20.42Z" style="fill: currentcolor;"></path></svg>开启自动'; btnAuto.className = "btn w-full lg:w-3/5 4xl:w-1/2 mx-auto btn-green"; } btnAuto.onclick = function() { if (clicker) { btnAuto.innerHTML = '<svg viewBox="0 0 24 24" role="presentation" class="icon inline lg:-mt-1 mr-1"><path d="M9,20.42L2.79,14.21L5.62,11.38L9,14.77L18.88,4.88L21.71,7.71L9,20.42Z" style="fill: currentcolor;"></path></svg>开启自动'; btnAuto.className = "btn w-full lg:w-3/5 4xl:w-1/2 mx-auto btn-green"; clicker = 0; setValue("clicker", clicker); } else { btnAuto.innerHTML = '<svg viewBox="0 0 24 24" role="presentation" class="icon mr-1 lg:mt-[1px]"><path d="M13.46,12L19,17.54V19H17.54L12,13.46L6.46,19H5V17.54L10.54,12L5,6.46V5H6.46L12,10.54L17.54,5H19V6.46L13.46,12Z" style="fill: currentcolor;"></path></svg>关闭自动'; btnAuto.className = "btn w-full lg:w-3/5 4xl:w-1/2 mx-auto btn-dark"; clicker = 1; setValue("clicker", clicker); } } const autoClicker = () => { let btn = [0, 0, 0]; btn[0] = document.querySelector("#root > div.flex.flex-wrap.w-full.mx-auto.p-2.lg\\:p-3 > div.w-full.lg\\:w-4\\/12.xl\\:w-1\\/4.order-1.lg\\:order-3.z-20.lg\\:pl-2 > div > div.order-2.flex.flex-wrap.gap-3.min-w-full.mt-3.py-3.px-16.lg\\:px-3.shadow.rounded-lg.ring-1.ring-gray-300.dark\\:ring-mydark-200.bg-gray-100.dark\\:bg-mydark-600 > button:nth-child(1)"); btn[1] = document.querySelector("#root > div.flex.flex-wrap.w-full.mx-auto.p-2.lg\\:p-3 > div.w-full.lg\\:w-4\\/12.xl\\:w-1\\/4.order-1.lg\\:order-3.z-20.lg\\:pl-2 > div > div.order-2.flex.flex-wrap.gap-3.min-w-full.mt-3.py-3.px-16.lg\\:px-3.shadow.rounded-lg.ring-1.ring-gray-300.dark\\:ring-mydark-200.bg-gray-100.dark\\:bg-mydark-600 > button:nth-child(2)"); btn[2] = document.querySelector("#root > div.flex.flex-wrap.w-full.mx-auto.p-2.lg\\:p-3 > div.w-full.lg\\:w-4\\/12.xl\\:w-1\\/4.order-1.lg\\:order-3.z-20.lg\\:pl-2 > div > div.order-2.flex.flex-wrap.gap-3.min-w-full.mt-3.py-3.px-16.lg\\:px-3.shadow.rounded-lg.ring-1.ring-gray-300.dark\\:ring-mydark-200.bg-gray-100.dark\\:bg-mydark-600 > button:nth-child(3)"); //手动按钮不存在 if (!btn[2]) return; //添加自动开关 if (!btn[2].nextSibling) btn[2].parentElement.appendChild(btnAuto); //存在遮罩时不点击 if (document.querySelector("#headlessui-portal-root > div") || !clicker) return; //根据资源存量自动点击:木材<石头*1.5时点木头,否则点石头;仅当食物存量小于100时点食物 let food = resources.get("food"); let wood = resources.get("wood"); let stone = resources.get("stone"); if (food.current < 100 && food.current < food.max) btn[0].click(); else if (wood.current < stone.current * 1.5 && wood.current < wood.max) btn[1].click(); else if (stone.current < stone.max) btn[2].click(); else if (wood.current < wood.max) btn[1].click(); else btn[0].click(); /*//不依赖resource var list = document.querySelector('#root > div.flex.flex-wrap.w-full.mx-auto.p-2 > div.w-full.order-1.z-20 > div > div.w-full.order-1 > div > table').querySelectorAll('tr'); var val_food = 0; var val_wood = 0; var val_stone = 0; for (var node of list) { if (node.innerText.includes('食物')) { val_food = Number(node.childNodes[1].innerText.split('/')[0].replace(",", "")); } else if (node.innerText.includes('木材')) { val_wood = Number(node.childNodes[1].innerText.split('/')[0].replace(",", "")); } else if (node.innerText.includes('石头')) { val_stone = Number(node.childNodes[1].innerText.split('/')[0].replace(",", "")); } } if (val_food < 100) btn[0].click(); else if (val_wood < val_stone * 1.5) btn[1].click(); else btn[2].click();*/ }; //自动点击器结束 var tasks = { calculateTippyTTF, calculateTTF, addArmyButtons, autoClicker }; const init = async () => { setInterval(tasks.calculateTTF, 100); setInterval(tasks.calculateTippyTTF, 100); setInterval(tasks.addArmyButtons, 100); setInterval(tasks.autoClicker, autoMS); }; init(); })();
QingJ © 2025
镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址