Giter Site home page Giter Site logo

clickopolis's Introduction

hi, i'm emma ✨

I'm a frontend technologist, or something like that. Stuff about me:

  • πŸ‘©πŸΌβ€πŸ’» I mostly work with Typescript & React, but enjoy branching out into other languages and frameworks, like Elixir, Svelte, Rust, and Wasm
  • ⭐️ My most popular project is the nuzlocke-generator, a very niche tool designed for very niche PokΓ©mon games
  • πŸ’ƒ In my spare time, I enjoy traveling, making new friends, writing, and art

clickopolis's People

Contributors

emmaramirez avatar greenkeeper[bot] avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

clickopolis's Issues

faith: Pantheon tier implementations

  • Goddess of the Halibut
  • Spirit of the Spices
  • Benevelont Muses
  • God of War
  • Satyr Charm
  • Golden Calf
  • Fertility Goddess
  • Stone Circles
  • Protective Spirits
  • Lord of the Flies
  • The Furies
  • The Fates

economy: create screen component

Should contain

  • Display of current finances and trends (per year, average per year, etc)
  • Demands for certain goods
  • Trade routes with certain nations

Perhaps contain

  • Market trends algorithm

bug: citizens needs plural variation

Examples
Cleric -> Clerics, but
Spy -> Spys
Obviously the latter is gramatically incorrect, so there should be a separate field for Citizen plural forms.

Create Military Screen

Should include

  • Military UI
  • Info on strength, defense, # of soldiers
  • Ability to assign soldiers
  • Ability to create military bases in friendly nations
  • Ability to manage puppets
  • Ability to wage military campaigns

history: add function to search through history

In the history screen, there should be a way to search through the entire history of a nation. This would be especially useful during very long games when you want to look back. It should support looking up through keywords or categories or just plainly the year.

citizens: create screen component

Should include:

  • ability to add a specific citizen to workforce
  • adds specified bonuses and penalities for unemployed / employed citizens
  • lists description of citizen
  • can modify (1, 10, 100) amount to add or remove of citizen
  • display percentage each type of worker takes of total workforce
  • handles depopulation/deaths, as well as immigration/emigration

An in-range update of awesome-typescript-loader is breaking the build 🚨

Version 3.1.0 of awesome-typescript-loader just got published.

Branch Build failing 🚨
Dependency awesome-typescript-loader
Current Version 3.0.8
Type devDependency

This version is covered by your current version range and after updating it in your project the build failed.

As awesome-typescript-loader is β€œonly” a devDependency of this project it might not break production or downstream projects, but β€œonly” your build or test tools – preventing new deploys or publishes.

I recommend you give this issue a high priority. I’m sure you can resolve this πŸ’ͺ


Status Details
  • ❌ continuous-integration/travis-ci/push The Travis CI build is in progress Details

  • ❌ ci/circleci Your tests failed on CircleCI Details

Commits

The new version differs by 10 commits .

  • 97ebe79 chore(release): 3.1.0
  • ff9fbed Merge pull request #389 from s-panferov/feature/config-file-name
  • 4b6459c feat: support declarationDir
  • 905e14b fix: always output unix-like path
  • b079cd0 refactor: add configFileName test and fix getTimes() usage
  • a774d6e refactor: use getTimes()
  • da3217c Merge pull request #387 from markwpearce/feature/relative-path-errors
  • a160242 Ensure errors are outputed with relative paths (i.e. begin with './/'
  • 3794dc5 Merge pull request #384 from amilajack/patch-1
  • 79d9b51 Updated example in readme to es6

See the full diff.

Not sure how things should work exactly?

There is a collection of frequently asked questions and of course you may always ask my humans.


Your Greenkeeper Bot 🌴

resources: create screen component

Should contain the following

  • Food & Production increase buttons
  • Amounts for all other resources
  • Have resources split up by type (food, mineral, luxury, etc)
  • Clicking on a resource should give extra information, including description
  • Update when given resource is unlocked

Consider:

  • Historical information for resources
  • Resource exchange rate & market aglorithms

tech: switch from `Collection` to `Tree`

I think that a Collection / List / iterable class makes some sense, and makes it easy to use with the get methods (amongst others), but that a Tree data structure makes a lot of sense for organizing the Techs, which function a lot like nodes.

` Agriculture
|------ Animal Husbandry
|       `------ Horseback Riding
|------ Mining
|        `----- Masonry

Is arguably a lot more organizeable than a plain List and an external function that handles unlocking.

Of course, there could be specific properties/methods adjoined to the Tech class itself, (i.e. parent, children, isRoot, isParentOf, isChildOf). This might also make the techUnlock method a lot simpler to scale. In psuedocode...

techUnlock function
   tech.getChildren.every(isUnlocked)
     tech.unlocked = true
     return true
   else
     return false

bug: eras display as numbers

Because the Era is encoded as an enum, it displays as a number as opposed to string.

So we get 0 era instead of Ancient era.

civilization: revise start screen

A new start screen should do the following

  • Cool introduction text
  • Ask for name, empire, citizen name
  • Choose Biome or random location?
  • Choose primary trait

tech: complete functionality for Ancient era techs

Agriculture

  • +.2 PS / farmer

Animal Husbandry

  • unlock horse
  • improve Farmer by 15%

Archery

  • assign soldiers as archers
  • build barracks
  • +5 defense

Fishing

  • unlock fish

Herbal Medicine

  • build asclepeia
  • +5 health

Masonry

  • build great pyramids
  • build quarry

Mining

  • unlock stone, gold, gems
  • +.2 PS / miner

Mysticism

  • assign clerics
  • build temples
  • build stonehenge

Pottery

  • build granary

Sailing

  • 5 free fish
  • assign soldiers as navy
  • meet coastal/oceanic nations

Woodworking

  • unlock spices
  • assign woodcutters

Writing

  • unlock diplomacy
  • build library

civilization: redesigning the civilization info screen

Attached is a prototype of the civilization info screen.*

It fixes some things such as the general visibility of icons, as well as organization of information.

This also adds immigration/emigration, and splits influence into domestic influence and international influence.

  • It may not necessarily look like this in the end.

0-homepage-54570651-1468024884

bug: Event Listeners are removed when entering new Era

Well, this isn't fun...

When the user enters a new Era (presumably this is cause, it could also be the activation of a new Technology related to that era), all the event handlers not attached to the window are removed. So then the user can't do anything except watch the game play itself (i.e. time-based events still work).

component: Resource subject

This is the minimum needed for the Resources components

  • Food & Production buttons
  • Resources data rendered into <ResourceBlock />s
  • Biomes rendered
  • Metadata, display for component

Styling should be handled in a separate issue.

design: new design choices for refactor [resources]

Questions to answer:

  • Can we achieve less clutter in our UI?
  • Can we create better customization options for the user?

Focus on Resources, as a prototype for how the new design should work.

  • What's our UX flow in each subject?

code: revise `Utils.elt()`

Right now, Utils.elt() is super barebones and could be a lot better. It uses a boolean as a parameter instead of an options Object (which imo is better), and could probably be better written.

implement: golden ages

Golden Ages

  • Golden Age Points are accumulated every second with your net happiness (happiness - anger)
  • A Golden Age doubles production, food, and cash
  • Legacy Points earned during a Golden Age are also doubled (except for those gained from a restart)
  • Golden Age Meter
  • Golden Age Implementation
  • Golden Age increases after end
  • Golden Age Length properly calculated with modifiers

implement: tooltips

It's probably a good idea to have actual tooltips as opposed to the title attribute for metadata.

Here's a rudimentary checklist of what a good tooltip module would include:

  • Positioning options
  • Easy global initiation
  • Uses either title or data-title
  • Easy specific instance CSS customization

tech: create screen component

Should include

  • Technology UI
  • Technology Progress Meter
  • The technologies themselves
  • Tech selection/deselection
  • Tech purchases
  • Tech functions (Ancient era)
  • Tech functions (Classical era)

Create Diplomacy Screen

Should contain

  • Info on nations met, destroyed, left to know, and diplo relations with
  • Nations meeting algorithm
  • Nation display screen
  • Nation influence / Civilization influence algorithm
  • Nation peacefulness/belligerence algorithm
  • Terrain influence on nation behavior

bug: citizen contribution changes aren't retroactive

Right now, when a citizen contribution gets changed, the effect does not take place retroactively, although it'd be interest if it did. For example, if you have 10 farmers at .2 PS, and increase them to .4 PS, you still have 2 PS, as opposed to 4 PS when you upgrade. Sometimes, the math gets even messier, resulting in really incorrect calculations.

A potential solution is either linking the food PS to your farmers x contrib, which is messy, or just subtracting and then re-adding the amount, which is still pretty messy, but avoids touching food PS directly.

Further problems, at some point, contrib might be getting captured in Citizen.func (perhaps because of the invocation of this?). This needs further investigation.

code: split `Utils` by category

It would be a lot more efficient to split up Utils into their own separate categories, like utils.tech or utils.resources.

Old Index.js (from Alpha)

  // Ancient, Classical, Medieval, Renaissance, Industrial, Modern, Atomic, Information, Future
  era: "Ancient",
  eraNum: 1,
  year: 0,
  resets: 0,
  advisor: ["Money is accumulated through your population, including any multipliers. It updates incrementally. Merchants, financial buildings, and trade increase your money. Use money to purchase buildings and get ahead militarily!", "You advance into the next era when you've accumulated all the technologies of your current era.", "Nonclick resources are accumulated over time through clicking food and production and their per second gains.", "Horses are an important early era resource because they let you build better militaries.", "Don't neglect your military defenses! Prop them up with walls, castles, forts and other means!", "Buildings may become costly production-wise with each new addition, but they are always the same purchase price.", "You may need a great deal of farmers early on. Fret not, as crop technology advances, you'll need fewer citizens to be agrarians.", "Not only do unemployed citizens eat food without working, they also penalize your research growth!","Increasing your population is almost always beneficial. Just be wary of starving your people or increasing pollution too much.", "Assigning artists leads to increased Culture, as well as an increased chance for a Great Work of Art--which boosts your Culture and Happiness.", "An unhealthy population grows much slower than a healthy one.", "Don't neglect your Faith! It provides amazing boosts that last through resets."],
  advisorModern: [],
  adviceCurrent: "",
  purchaseMode: false,
  totalTime: 0,
  settings: {
    noteCounter: 0,
    debugMode: false,
  },
  flags: {
    can_purchase_tech: false,
    just_purchased_tech: false,
    entered_ancient_era: true,
    entered_classical_era: false,
    entered_medieval_era: false,
    entered_renaissance_era: false,
    entered_enlightenment_era: false,
    entered_industrial_era: false,
    entered_modern_era: false,
    entered_atomic_era: false,
    entered_information_era: false,
    entered_future_era: false,
    lea: {
      first_click: false,
      ten_food: false,
      grew_pop: false,
      purchased_first_tech: false,
      purchased_first_building: false,
      purchased_first_pantheon: false,
      purchased_first_culture: false,
      met_first_nation: false,
      gained_first_great_work: false,
    }
  },
  empire: {
    pop: 1,
    popUnemployed: 0,
    popCostBase: 10,
    popCostMult: 1.35,
    name: "Emmatopia",
    leaderName: "Emma",
    cash: 50,
    cashPM: 0,
    cashMult: 1,
    land: 1000,
    health: 25,
    pollution: 1,
    mood: "content",
    happiness: 15,
    anger: 1,
    goldenAge: false,
    goldenAgeTotal: 0, // total Num of Golden Ages
    goldenAgePoints: 0,
    goldenAgeGoal: 100000,
    goldenAgeLength: 300, //in secs
    goldenAgeTimer: 0,
    tradeDealHistory: [
      // From, Gave, For, Year
      ["Emporia", "10 Spices", "4 Gold", "14 AC"],
      ["Ulundo", "12 Gold", "140 Cash", "22 AC"],
    ]
  },
  military: {
    strength: 0,
    strengthBase: 10,
    strengthMod: 1,
    defense: 0,
    defenseBase: 10,
    defenseMod: 1,
    soldiers: {
      total: 0,
      assigned: 0,
      army: [
        {
          name: "Foot Soldiers",
          num: 0,
          strength: 5,
          defense: 3,
          unlocked: true
        },
        {
          name: "Archers",
          num: 0,
          strength: 3,
          defense: 8,
          unlocked: false
        },
        {
          name: "Spearmen",
          num: 0,
          strength: 7,
          defense: -3,
          unlocked: false
        },
        {
          name: "Cavalry",
          num: 0,
          strength: 11,
          defense: 6,
          unlocked: false
        },
        {
          name: "Cannon",
          num: 0,
          strength: 15,
          defense: 0,
          unlocked: false
        },
        {
          name: "Navy",
          num: 0,
          strength: 15,
          defense: 15,
          unlocked: false
        },
        {
          name: "Tanks",
          num: 0,
          strength: 27,
          defense: 13,
          unlocked: false
        },
        {
          name: "Air Force",
          num: 0,
          strength: 23,
          defense: 5,
          unlocked: false
        },
        {
          name: "General",
          num: 0,
          strength: 10,
          defense: 10,
          unlocked: true
        }
      ]
    }
  },
  citizens: {
    farmers: {
      num: 0,
      ps: 1.2,
      pc: .5,

    },
    miners: {
      num: 0,
      ps: .5,
      pc: .5,
    },
    woodcutters: {
      num: 0,
      ps: .5,
      pc: .5
    },
    soldiers: {
      num: 0
    },
    clerics: {
      num: 0,
      pm: 1,
    },
    artists: {
      num: 0,
      pm: 1,
      gw: .001,
    },
    engineers: {
      num: 0,
      ps: 1.5,
      pc: 4
    },
    merchants: {
      num: 0,
      pm: 10
    },
    scientists: {
      num: 0,
      pm: 5
    },
    jesters: {
      num: 0,
      happiness: 5,
    },
    doctors: {
      num: 0,
      health: 11
    }

  },
  resources: {
    food: {
      total: 0,
      ps: 0,
      pc: 1,
      max: 1000
    },
    prod: {
      total: 0,
      ps: 0,
      pc: 1,
      max: 2000
    },
    fish: {
      total: 0,
      mult: 1,
      healthBonus: .5,
      unlocked: false
    },
    horse: {
      total: 0,
      mult: 1,
      unlocked: false
    },
    banana: {
      total: 0,
      mult: 1,
      unlocked: false
    },
    ivory: {
      total: 0,
      unlocked: false
    },
    iron: {
      total: 0,
      mult: 1,
      unlocked: false
    },
    spices: {
      total: 0,
      mult: 1,
      unlocked: false
    },
    stone: {
      total: 0,
      mult: 1,
      unlocked: false
    },
    gold: {
      total: 0,
      mult: 1,
      unlocked: false
    },
    gems: {
      total: 0,
      mult: 1,
      unlocked: false
    },
    coal: {
      total: 0,
      unlocked: false
    },
    oil: {
      total: 0,
      unlocked: false
    },
    uranium: {
      total: 0,
      unlocked: false
    },
    spaghetti: {
      total: 0,
      unlocked: false
    }
  },

  totalClicks: 0,

  tech: {
    research: 0,
    researchBase: 0.2,
    researchTotal: 0,
    researchFromBuildings: 0,
    cost: 1,
    costMult: 1.15,
    totalTechs: 0,
    techs: [
      {
        name: "Animal Husbandry",
        era: "Ancient",
        effects: ["Unlocks <img src='img/horse.png' /> resource.", "Improves Farmers by 15%", "Leads to: Horseback Riding technology."],
        flavor: "NO, it is not what you think it is.",
        visible: true,
        unlocked: false,
        activated: false,
      },
      {
        name: "Archery",
        era: "Ancient",
        effects: ["Can assign Soldiers as Archers.", "Can build Barracks", "+3 Empire <img src='img/defense.png' />", "Leads to: War Strategy"],
        flavor: "Bow and arrow, hitting bone and marrow.",
        visible: true,
        unlocked: false,
        activated: false
      },
      {
        name: "Fishing",
        era: "Ancient",
        effects: ["Unlocks <img src='img/fish.png' /> resource.", "Leads to: Sailing."],
        flavor: "Just make sure to use a Super Rod.",
        visible: true,
        unlocked: false,
        activated: false,
      },
      {
        name: "Herbal Medicines",
        era: "Ancient",
        effects: ["Can build Ascelpeia.", "+10 <img src='img/health.png'/> for discovering."],
        flavor: "Sick? Here, try this salamander-tail and dog-butt potion I made.",
        requires: ["Mysticism"],
        visible: true,
        unlocked: false,
        activated: false,
      },
      {
        name: "Masonry",
        era: "Ancient",
        effects: ["Can build The Great Pyramids wonder.", "Can build Quarry."],
        flavor: "It could be an Illuminati tech, but we're not allowed to say.",
        visible: true,
        unlocked: false,
        activated: false,
      },
      {
        name: "Mining",
        era: "Ancient",
        effects: ["Can assign Miners.", "Unlocks <img src='img/stone.png' />, <img src='img/gold.png' />, <img src='img/gem.png' /> resources.", "Leads to: Iron Working"],
        flavor: "(Still not safe for minors).",
        visible: true,
        unlocked: false,
        activated: false,
      },
      {
        name: "Mysticism",
        era: "Ancient",
        effects: ["Can assign Clerics.", "Can build Temple.", "Can build Stonehenge Wonder", "Leads to: Philosophy"],
        flavor: "Mysterious gods bring riches, temples, and a couple blood sacrifices.",
        visible: true,
        unlocked: false,
        activated: false,
      },
      {
        name: "Pottery",
        era: "Ancient",
        effects: ["Can assign Artists", "Can build Granary.", "Can build The Great Pyramids Wonder", "Leads to: Trading, Poetics"],
        flavor: "Does not come with a Pottery Barn discount.",
        visible: true,
        unlocked: false,
        activated: false,
      },
      {
        name: "Sailing",
        era: "Ancient",
        effects: ["Can assign Soldiers as Navy.", "Can meet Coastal and Oceanic Nations.", "Leads to: Shipbuilding"],
        flavor: "It's a lot harder to sail if you stay at half-mast!",
        requires: ["Fishing"],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Trading",
        era: "Ancient",
        effects: ["Unlocks Bartering Economic System.", "Can assign Merchants.", "Leads to: Calendar"],
        flavor: "My six chickens for your very cute goat?",
        requires: ["Pottery"],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Woodworking",
        era: "Ancient",
        description: "Can assign Woodcutters.",
        effects: ["Unlocks <img src='img/spices.png' /> resource.", "Can assign Woodcutters.", "Leads to: Writing"],
        flavor: "TIMBER!!!",
        visible: true,
        unlocked: false,
        activated: false,
      },
      {
        name: "Writing",
        era: "Ancient",
        effects: ["Unlocks Diplomatic Relations.", "Can build Library.", "Leads to: Mathematics, Philosophy"],
        flavor: "Allows poorly written fanfiction in Information era.",
        requires: ["Woodworking"],
        visible: false,
        unlocked: false,
        activated: false,
      },
      {
        name: "Calendar",
        era: "Classical",
        effects: ["Unlocks <img src='img/banana.png'/> resource.", "Can build Plantation."],
        flavor: "What time is it? Oh, just let me check my sundial.",
        requires: ["Mysticism", "Trading"],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Construction",
        era: "Classical",
        effects: ["Improves Defense of Archers by 25%", "Can build Walls.", "Can build Colloseum.", "Reveals <em>(with Construction)</em> Engineering technology."],
        flavor: " ",
        requires: ["Mathematics", "Masonry"],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Engineering",
        era: "Classical",
        description: "Unlocks new buildings. Can assign Engineers.",
        effects: ["Can assign Engineers.", "Can build Aqueducts.", "Reveals Irrigation technology.", "Reveals <em>(with Fishing)</em> Shipbuilding technology."],
        flavor: " ",
        requires: ["Construction", "Iron Working"],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Horseback Riding",
        era: "Classical",
        effects: ["Can assign Soldiers as Cavalry.", "Can build Stable."],
        flavor: "",
        requires: ["Animal Husbandry", "Trading"],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Iron Working",
        era: "Classical",
        effects: ["Can assign Soldiers as Spearmen.", "Unlocks <img src='img/iron.png'/> resource.", "Reveals Metal Casting technology.", "Reveals <em>(with Construction)</em> Engineering technology."],
        flavor: "Strike it while it's hot.",
        requires: ["Mining", "Masonry"],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Irrigation",
        era: "Classical",
        effects: ["+2k Max <img src='img/food.png' /> for discovering this technology.", "Improves Farmers by 25%", "Reveals Three-Field Crop Rotation technology."],
        flavor: "",
        requires: ["Engineering"],
        visible: false,
        unlocked: false,
        activated:  false
      },
      {
        name: "Mathematics",
        era: "Classical",
        flavor: "I've got 9.94987437^2 problems, but exponentiation ain't one.",
        effects: ["Reveals Construction technology."],
        requires: ["Writing"],
        visible: false,
        unlocked: false,
        activated: false,
      },
      {
        name: "Philosophy",
        era: "Classical",
        effects: ["Can build Forums.", "Can assign Scientists."],
        flavor: "But really, what <u>is</u> a technology?",
        requires: ["Writing", "Mysticism", "Mathematics"],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Poetics",
        era: "Classical",
        effects: ["Improves Artists by 100%", "Can assign Citizens as Jesters.", "Can build Ampitheatre.", "Reveals Civility technology."],
        flavor: " ",
        requires: ["Writing", "Pottery"],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Shipbuilding",
        era: "Classical",
        effects: ["+2k Max <img src='img/production.png' /> for discovering this technology.", "Can assign soldiers as Navy.", "Can build Harbor.", "Can assign Soldiers as Navy."],
        flavor: "",
        requires: ["Engineering", "Sailing"],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "War Strategy",
        era: "Classical",
        effects: ["+1 free General"],
        flavor: "",
        requires: ["Archery", "Writing"],
        visible: false,
        unlocked: false,
        activated: false
      },

      {
        name: "Civility",
        era: "Medieval",
        effects: ["Allows the hiring of Mercenaries."],
        flavor: "Also, improves your manners.",
        requires: [""],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Education",
        era: "Medieval",
        effects: ["Can build Colleges."],
        flavor: "We don't need no education!...well, maybe we do.",
        requires: [""],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Engineering II",
        era: "Medieval",
        effects: [""],
        flavor: "",
        requires: [""],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Gunpowder",
        era: "Medieval",
        effects: ["Can assign Soldiers as Riflers.", "Unemployed Citizens are automatically conscripted as Militia.", "Increases <img src='img/strength.png' /> by 25%"],
        flavor: "It's like shooting techs in a tech tree.",
        requires: [""],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Machinery",
        era: "Medieval",
        effects: ["Improves Engineers by 25%", "Increases <img src='img/defense.png' /> by 25%"],
        flavor: "",
        requires: [""],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Metal Casting",
        era: "Medieval",
        effects: ["Improves Miners by 100%."],
        flavor: "",
        requires: [""],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Milling & Paper",
        era: "Medieval",
        description: "",
        effects: ["Can build Watermill.", "Can build Lumbermill.", "Can build Papermill."],
        flavor: "",
        requires: [""],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Physics",
        era: "Medieval",
        description: "",
        effects: [],
        flavor: "",
        requires: [""],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Steel",
        era: "Medieval",
        description: "",
        effects: [],
        flavor: "",
        requires: [""],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Theology",
        era: "Medieval",
        description: "",
        requires: [""],
        effects: ["Improves Clerics by 150%"],
        flavor: "",
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Three Field Crop Rotation",
        era: "Medieval",
        description: "",
        requires: [""],
        effects: ["Improves Farmers by 30%", "-10% Growth Cost."],
        flavor: "The most potent rotation of all.",
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Astronomy",
        era: "Renaissance",
        description: "",
        effects: [""],
        requires: [""],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Calculus",
        era: "Renaissance",
        effects: [""],
        description: "",
        requires: [""],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Chemistry",
        era: "Renaissance",
        effects: [""],
        requires: [""],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Clockwork",
        era: "Renaissance",
        effects: [""],
        flavor: "Time to click those resources!",
        requires: [""],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Economics",
        era: "Renaissance",
        effects: [""],
        description: "",
        requires: [""],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Music Theory",
        era: "Renaissance",
        description: "",
        effects: [""],
        requires: [""],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Navigation",
        era: "Renaissance",
        description: "",
        effects: [""],
        requires: [""],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Oil Paint",
        era: "Renaissance",
        description: "",
        effects: ["Doubles Great Wonder generation of Artists"],
        flavor: "",
        requires: [""],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Printing Press",
        era: "Renaissance",
        effects: [""],
        flavor: "",
        requires: [""],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Flintlock",
        era: "Enlightenment",
        description: "",
        effects: [""],
        flavor: "",
        requires: [""],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Humanism",
        era: "Enlightenment",
        description: "",
        effects: [""],
        flavor: "",
        requires: [""],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Imperialism",
        era: "Enlightenment",
        effects: [""],
        flavor: "",
        requires: [""],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Fortification",
        era: "Enlightenment",
        effects: [""],
        flavor: "",
        requires: [""],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Germ Theory",
        era: "Enlightenment",
        description: "",
        effects: [""],
        flavor: "",
        requires: [""],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Manufacturing",
        era: "Enlightenment",
        description: "",
        effects: [""],
        flavor: "",
        requires: [""],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Natural History",
        era: "Enlightenment",
        description: "",
        effects: [""],
        flavor: "",
        requires: [""],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Archaeology",
        era: "Industrial",
        description: "",
        effects: [""],
        flavor: "",
        requires: [""],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Biology",
        era: "Industrial",
        effects: [""],
        flavor: "",
        requires: [""],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Combustion",
        era: "Industrial",
        effects: [""],
        flavor: "",
        requires: [""],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Dynamite",
        era: "Industrial",
        description: "",
        effects: [""],
        flavor: "",
        requires: [""],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Electricity",
        era: "Industrial",
        description: "",
        effects: [""],
        flavor: "",
        requires: [""],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Flight",
        era: "Industrial",
        description: "",
        effects: [""],
        flavor: "",
        requires: [""],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Radio",
        era: "Industrial",
        description: "",
        effects: [""],
        flavor: "",
        requires: [""],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Railroad",
        era: "Industrial",
        description: "",
        effects: [""],
        flavor: "",
        requires: [""],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Refrigeration",
        era: "Industrial",
        description: "",
        effects: [""],
        flavor: "",
        requires: [""],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Replaceable Parts",
        era: "Industrial",
        description: "",
        effects: [""],
        flavor: "",
        requires: [""],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Steam Power",
        era: "Industrial",
        description: "",
        effects: [""],
        flavor: "",
        requires: [""],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Textiles",
        era: "Industrial",
        description: "",
        effects: [""],
        flavor: "",
        requires: [""],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Telegraph",
        era: "Industrial",
        effects: [""],
        flavor: "",
        requires: [""],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Abstract Art",
        era: "Modern",
        effects: [],
        flavor: "",
        requires: [""],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Electronics",
        era: "Modern",
        effects: [],
        flavor: "",
        requires: [""],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Globalization",
        era: "Modern",
        effects: [],
        flavor: "",
        requires: [""],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Lasers",
        era: "Modern",
        effects: [],
        flavor: "",
        requires: [""],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Mass Media",
        era: "Modern",
        effects: [],
        flavor: "",
        requires: [""],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Penicillin",
        era: "Modern",
        effects: [],
        flavor: "",
        requires: [""],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Plastics",
        era: "Modern",
        effects: [],
        flavor: "",
        requires: [""],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Atomic Theory",
        era: "Atomic",
        effects: [],
        flavor: "",
        requires: [""],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Combined Arms",
        era: "Atomic",
        effects: [],
        flavor: "",
        requires: [""],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Computers",
        era: "Atomic",
        effects: [],
        flavor: "",
        requires: [""],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Ecology",
        era: "Atomic",
        effects: [],
        flavor: "",
        requires: [""],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Nuclear Fission",
        era: "Atomic",
        effects: [],
        flavor: "",
        requires: [""],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Penicillin",
        era: "Atomic",
        effects: [],
        flavor: "",
        requires: [""],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Radar",
        era: "Atomic",
        effects: [],
        flavor: "",
        requires: [""],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Rocketry",
        era: "Atomic",
        effects: [],
        flavor: "",
        requires: [""],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Advanced Ballistics",
        era: "Information",
        effects: [],
        flavor: "",
        requires: [""],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Autonomous Systems",
        era: "Information",
        effects: [],
        flavor: "",
        requires: [""],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Data Science",
        era: "Information",
        effects: [],
        flavor: "",
        requires: [""],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Mobile Tactics",
        era: "Information",
        effects: [],
        flavor: "",
        requires: [""],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Nanotechnology",
        era: "Information",
        effects: [],
        flavor: "",
        requires: [""],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Nuclear Fusion",
        era: "Information",
        effects: [],
        flavor: "",
        requires: [""],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Particle Physics",
        era: "Information",
        effects: [],
        flavor: "",
        requires: ["Can build Large Hardon Collider wonder."],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Robotics",
        era: "Information",
        effects: [],
        flavor: "",
        requires: [""],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Satellites",
        era: "Information",
        effects: [],
        flavor: "",
        requires: [""],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Space Colonization",
        era: "Information",
        effects: [],
        flavor: "",
        requires: [""],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Stealth",
        era: "Information",
        effects: [],
        flavor: "",
        requires: [""],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Telecommunications",
        era: "Information",
        effects: [],
        flavor: "",
        requires: [""],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "The Internet",
        era: "Information",
        effects: [],
        flavor: "",
        requires: [""],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "Virtual Reality",
        era: "Information",
        effects: [],
        flavor: "",
        requires: [""],
        visible: false,
        unlocked: false,
        activated: false
      },
      {
        name: "The Future",
        era: "Future",
        effects: [],
        flavor: "",
        requires: ["Everything."],
        visible: false,
        unlocked: false,
        activated: false
      }
    ],
  },

  culture: {
    total: 0,
    pm: 0,
    greatWorks: 0,
    gw: [
      {
        name: "Venus of Willendorf",
        link: "https://www.khanacademy.org/humanities/prehistoric-art/paleolithic-art/v/nude-woman-venus-of-willendorf-c-28-000-25-000-b-c-e",
        artist: "Unknown",
        era: "Ancient",
        nation: "",
        year: 0,
        culture: 1,
        worth: 1000,
        unlocked: false,
        sold: false
      },
      {
        name: "Lascaux Cave Painting",
        link: "",
        artist: "Unknown",
        era: "Ancient",
        nation: "",
        year: 0,
        culture: 1,
        worth: 850,
        unlocked: false,
        sold: false
      },
      {
        name: "Venus of Dolnice Vestonice",
        link: "",
        artist: "Unknown",
        era: "Ancient",
        nation: "",
        year: 0,
        culture: 1,
        worth: 1100,
        unlocked: false,
        sold: false
      },
      {
        name: "Victory Stele of Naram Sin",
        link: "http://www.louvre.fr/en/oeuvre-notices/victory-stele-naram-sin",
        artist: "Unknown",
        era: "Ancient",
        nation: "",
        year: 0,
        culture: 1,
        worth: 1010,
        unlocked: false,
        sold: false
      }
    ],
    mult: 1,
    upgrades: [
      {
        name: "Code of Honor",
        type: "military",
        img: "military",
        cost: 5,
        effect: "+2 Soldier Strength.",
        visible: true,
        unlocked: false,
        activated: false
      },
      {
        name: "Brutish Bounty",
        type: "military",
        img: "military",
        cost: 10,
        effect: "+1 Culture per Victory.",
        visible: true,
        unlocked: false,
        activated: false
      },
      {
        name: "Warrior Culture",
        type: "military",
        img: "military",
        cost: 15,
        effect: "Soldiers provide +.25 Culture.",
        visible: true,
        unlocked: false,
        activated: false
      },
      {
        name: "Tactical Expertise",
        type: "military",
        img: "military",
        cost: 35,
        effect: "1 free General.",
        visible: true,
        unlocked: false,
        activated: false
      },
      {
        name: "Code of Honor II",
        type: "military",
        img: "military",
        cost: 55,
        effect: "+10 Solider Strength.",
        visible: true,
        unlocked: false,
        activated: false
      },
      {
        name: "Odyssean Legacy",
        type: "military",
        img: "military",
        cost: 100,
        effect: "+5 Culture per General.",
        visible: true,
        unlocked: false,
        activated: false
      },
      {
        name: "Art of War",
        type: "military",
        img: "military",
        cost: 250,
        effect: "+1 Strength per Artist.",
        visible: true,
        unlocked: false,
        activated: false
      },
      {
        name: "Defend the Nation",
        type: "military",
        img: "military",
        cost: 345,
        effect: "25% of Defense converted into Culture.",
        visible: true,
        unlocked: false,
        activated: false
      },
      {
        name: "Military-Industrial Complex",
        type: "military",
        img: "military",
        cost: 580,
        effect: "Can sign Military Contracts.",
        visible: true,
        unlocked: false,
        activated: false
      },
      {
        name: "Code of Honor III",
        type: "military",
        img: "military",
        cost: 870,
        effect: "+25 Soldier Strength.",
        visible: true,
        unlocked: false,
        activated: false
      },
      {
        name: "Missile Defense System A",
        type: "military",
        img: "military",
        cost: 1150,
        effect: "+50 Empire Defense.",
        visible: true,
        unlocked: false,
        activated: false
      },
      {
        name: "Nuclear Speed-up",
        type: "military",
        img: "military",
        cost: 1300,
        effect: "+50% Nuke Build Rate",
        visible: true,
        unlocked: false,
        activated: false
      },
      {
        name: "Missile Defense System B",
        type: "military",
        img: "military",
        cost: 2150,
        effect: "+50 Empire Defense.",
        visible: true,
        unlocked: false,
        activated: false
      },
      {
        name: "Robotic Annhialation Grid",
        type: "military",
        img: "military",
        cost: 5500,
        effect: "+100% Robot Strength.",
        visible: true,
        unlocked: false,
        activated: false
      },
      {
        name: "Quest for Truth",
        type: "research",
        img: "research",
        cost: 5,
        effect: "+1 Science",
        visible: true,
        unlocked: false,
        activated: false
      },
      {
        name: "Popular Knowledge",
        type: "research",
        img: "research",
        cost: 25,
        effect: "+1 Science per 4 Citizens",
        visible: true,
        unlocked: false,
        activated: false
      },
      {
        name: "Socratic Method",
        type: "research",
        img: "research",
        cost: 45,
        effect: "+1 Science per College",
        visible: true,
        unlocked: false,
        activated: false
      },
      {
        name: "Symposium",
        type: "research",
        img: "research",
        cost: 45,
        effect: "+1 Science per Forum",
        visible: true,
        unlocked: false,
        activated: false
      },
      {
        name: "Humanities",
        type: "research",
        img: "research",
        cost: 160,
        effect: "+10% Science, +10% Culture",
        visible: true,
        unlocked: false,
        activated: false
      },
      {
        name: "Scientific Method",
        type: "research",
        img: "research",
        cost: 470,
        effect: "+50% Science from Scientists",
        visible: true,
        unlocked: false,
        activated: false
      },
      {
        name: "Theory of Evolution",
        type: "research",
        img: "research",
        cost: 540,
        effect: "+1k Science per New Era",
        visible: true,
        unlocked: false,
        activated: false
      },
      {
        name: "Quest for Truth II",
        type: "research",
        img: "research",
        cost: 700,
        effect: "+100 Science",
        visible: true,
        unlocked: false,
        activated: false
      },
      {
        name: "Genome Project",
        type: "research",
        img: "research",
        cost: 1570,
        effect: "+1 Science per Citizen",
        visible: true,
        unlocked: false,
        activated: false
      },
      {
        name: "Neural Networks",
        type: "research",
        img: "research",
        cost: 1680,
        effect: "+100% Science from Supercomputer Cluster",
        visible: true,
        unlocked: false,
        activated: false
      },
      {
        name: "Building Patronage",
        type: "economy",
        img: "coin",
        cost: 5,
        effect: "10 Free Buildings.",
        visible: true,
        unlocked: false,
        activated: false
      },
      {
        name: "Free Money",
        type: "economy",
        img: "coin",
        cost: 15,
        effect: "+1K Cash",
        visible: true,
        unlocked: false,
        activated: false
      },
      {
        name: "Wise Investment",
        type: "economy",
        img: "coin",
        cost: 60,
        effect: "+10 Cash/PM",
        visible: true,
        unlocked: false,
        activated: false
      },
      {
        name: "Merchant Culture",
        type: "economy",
        img: "coin",
        cost: 125,
        effect: "+$5, +1 Culture per Merchant.",
        visible: true,
        unlocked: false,
        activated: false
      },
      {
        name: "Fiat Currency",
        type: "economy",
        img: "coin",
        cost: 250,
        effect: "+10% Cash PM.",
        visible: true,
        unlocked: false,
        activated: false
      },
      {
        name: "Mindless Consumption",
        type: "economy",
        img: "coin",
        cost: 285,
        effect: "Citizens produce twice the Cash, but eat twice the food.",
        visible: true,
        unlocked: false,
        activated: false
      },
      {
        name: "Wise Investment II",
        type: "economy",
        img: "coin",
        cost: 480,
        effect: "+200 Cash/PM",
        visible: true,
        unlocked: false,
        activated: false
      },
      {
        name: "Free Money II",
        type: "economy",
        img: "coin",
        cost: 615,
        effect: "+5k Cash",
        visible: true,
        unlocked: false,
        activated: false
      },
      {
        name: "Art Market",
        type: "economy",
        img: "coin",
        cost: 1300,
        effect: "Can sell Great Works for ridiculous sums.",
        visible: true,
        unlocked: false,
        activated: false
      },
      {
        name: "Anarcho-Capitalism",
        type: "economy",
        img: "coin",
        cost: 2100,
        effect: "???",
        visible: true,
        unlocked: false,
        activated: false
      },
      {
        name: "Free Money III",
        type: "economy",
        img: "coin",
        cost: 3000,
        effect: "+5M Cash",
        visible: true,
        unlocked: false,
        activated: false
      },
      {
        name: "Powerful Lending",
        type: "economy",
        img: "coin",
        cost: 4500,
        effect: "No penalties from debt.",
        visible: true,
        unlocked: false,
        activated: false
      },
      {
        name: "Easy & Cheap",
        type: "economy",
        img: "coin",
        cost: 6000,
        effect: "-50% Building Cost",
        visible: true,
        unlocked: false,
        activated: false
      },
      {
        name: "Super PACs",
        type: "economy",
        img: "coin",
        cost: 7500,
        effect: "+50% Influence from gifts",
        visible: true,
        unlocked: false,
        activated: false
      },
      {
        name: "Noble Statesmen",
        type: "diplomatic",
        img: "deal",
        cost: 8,
        effect: "+5 approval from all Nations.",
        visible: true,
        unlocked: false,
        activated: false
      },
      {
        name: "Embassies Abroad",
        type: "diplomatic",
        img: "deal",
        cost: 15,
        effect: "Can set up Embassies in other Nations.",
        visible: true,
        unlocked: false,
        activated: false
      },
      {
        name: "Proxenos",
        type: "diplomatic",
        img: "deal",
        cost: 35,
        effect: "???",
        visible: true,
        unlocked: false,
        activated: false
      },
      {
        name: "Honorous Tributes",
        type: "diplomatic",
        img: "deal",
        cost: 50,
        effect: "Can give Nations gifts to earn favor.",
        visible: true,
        unlocked: false,
        activated: false
      },
      {
        name: "Legates",
        type: "diplomatic",
        img: "deal",
        cost: 70,
        effect: "+1 happiness per Nation known.",
        visible: true,
        unlocked: false,
        activated: false
      },
      {
        name: "Noble Statesmen II",
        type: "diplomatic",
        img: "deal",
        cost: 80,
        effect: "+10 approval from all Nations.",
        visible: true,
        unlocked: false,
        activated: false
      },
      {
        name: "Apocrisiarius",
        type: "diplomatic",
        img: "deal",
        cost: 199,
        effect: "-5% Cost for Cultural Diplomacy Upgrades.",
        visible: true,
        unlocked: false,
        activated: false
      },
      {
        name: "Diplomatic Immunity",
        type: "diplomatic",
        img: "deal",
        cost: 250,
        effect: "Diplomats rarely mess up on missions.",
        visible: true,
        unlocked: false,
        activated: false
      },
      {
        name: "Vassalge",
        type: "diplomatic",
        img: "deal",
        cost: 400,
        effect: "Can absorb weaker Nations through War.",
        visible: true,
        unlocked: false,
        activated: false
      },
      {
        name: "Smooth Barbarian",
        type: "diplomatic",
        img: "deal",
        cost: 550,
        effect: "-50% anger from demanding tribute.",
        visible: true,
        unlocked: false,
        activated: false
      },
      {
        name: "Noble Statesmen III",
        type: "diplomatic",
        img: "deal",
        cost: 800,
        effect: "+15 approval from all Nations.",
        visible: true,
        unlocked: false,
        activated: false
      },
      {
        name: "Diplomatic Marriage",
        type: "diplomatic",
        img: "deal",
        cost: 850,
        effect: "Can absorb weaker Nations that are in your constant good favor.",
        visible: true,
        unlocked: false,
        activated: false
      },
      {
        name: "Just to Piss Them Off",
        type: "diplomatic",
        img: "deal",
        cost: 1200,
        effect: "Doubles anger from insults. Allows more clever insults.",
        visible: true,
        unlocked: false,
        activated: false
      },
      {
        name: "Soft Power",
        type: "diplomatic",
        img: "deal",
        cost: 1350,
        effect: "Can avoid wars with Diplomatic Talks.",
        visible: true,
        unlocked: false,
        activated: false
      },
      {
        name: "Nuclear Diplomacy",
        type: "diplomatic",
        img: "deal",
        cost: 1550,
        effect: "Can stil build, but cannot use, Nuclear Weapons.",
        visible: true,
        unlocked: false,
        activated: false
      },
      {
        name: "Devoted Followers",
        type: "faith",
        img: "faith-alt",
        cost: 5,
        effect: "-10% Pantheon cost.",
        visible: true,
        unlocked: false,
        activated: false
      },
      {
        name: "Visiting Shaman",
        type: "faith",
        img: "faith-alt",
        cost: 17,
        effect: "Provides 1 Free Cleric.",
        visible: true,
        unlocked: false,
        activated: false
      },
      {
        name: "Healing Medicine",
        type: "faith",
        img: "faith-alt",
        cost: 35,
        effect: "+1 Health per Cleric.",
        visible: true,
        unlocked: false,
        activated: false
      },
      {
        name: "True Believers",
        type: "faith",
        img: "faith-alt",
        cost: 55,
        effect: "-10% Belief Cost",
        visible: true,
        unlocked: false,
        activated: false
      },
      {
        name: "Tithe",
        type: "faith",
        img: "faith-alt",
        cost: 77,
        effect: "+10 Cash per Temple.",
        visible: true,
        unlocked: false,
        activated: false
      },
      {
        name: "Arts Patronage",
        type: "faith",
        img: "faith-alt",
        cost: 101,
        effect: "Can expend Faith to find great works",
        visible: true,
        unlocked: false,
        activated: false
      },
      {
        name: "Pure Evil",
        type: "faith",
        img: "faith-alt",
        cost: 666,
        effect: "Unlocks new Holiest Level Upgrades",
        visible: true,
        unlocked: false,
        activated: false
      },


      {
        name: "Religious Revival",
        type: "faith",
        img: "faith-alt",
        cost: 999,
        effect: "x10 Faith during Golden Ages",
        visible: true,
        unlocked: false,
        activated: false
      },
      {
        name: "Prosperity Gospel",
        type: "faith",
        img: "faith-alt",
        cost: 1350,
        effect: "Clerics gain +35 Cash",
        visible: true,
        unlocked: false,
        activated: false
      },
      {
        name: "Agri-culture",
        type: "resources",
        img: "resources",
        cost: 5,
        effect: "Assigns new Citizens as farmers automatically.",
        visible: true,
        unlocked: false,
        activated: false
      },
      {
        name: "Iron & Hammer",
        type: "resources",
        img: "resources",
        cost: 12,
        effect: "+3 Production/PS",
        visible: true,
        unlocked: false,
        activated: false
      },
      {
        name: "Long Harvest",
        type: "resources",
        img: "resources",
        cost: 12,
        effect: "+3 Food/PS",
        visible: true,
        unlocked: false,
        activated: false
      }

    ]
  },

  faith: {
    total: 0,
    pm: 0,
    upgrades: [
      {
        name: "Goddess of the Halibut",
        level: "Pantheon",
        costMult: 1,
        effect: "Converts half your <img src='img/fish.png' /> into <img src='img/faith.png' />PM.",
        unlocked: false,
        activated: false
      },
      {
        name: "Spirit of the Spices",
        level: "Pantheon",
        costMult: 1,
        effect: "+1% <img src='img/faith.png' /> per <img src='img/spices.png' /> (max 25%).",
        unlocked: false,
        activated: false
      },
      {
        name: "Benevelont Muses",
        level: "Pantheon",
        costMult: 1,
        effect: "+.5 <img src='img/faith.png' /> PM for each Artist you have.",
        unlocked: false,
        activated: false
      },
      {
        name: "God of War",
        level: "Pantheon",
        costMult: 1,
        effect: "+15% <img src='img/strength.png' />.",
        unlocked: false,
        activated: false
      },
      {
        name: "Satyr's Charm",
        level: "Pantheon",
        costMult: 1,
        effect: "+1% <img src='img/happy.png' /> per <img src='img/horse.png' /> (max 25%).",
        unlocked: false,
        activated: false
      },
      {
        name: "Golden Calf",
        level: "Pantheon",
        costMult: 1,
        effect: "+1 <img src='img/faith.png' /> PM per <img src='img/gold.png' /> resource.",
        unlocked: false,
        activated: false
      },
      {
        name: "Fertility Goddess",
        level: "Pantheon",
        costMult: 1,
        effect: "+5 <img src='img/food.png' /> PC.",
        unlocked: false,
        activated: false
      },
      {
        name: "Protective Spirits",
        level: "Pantheon",
        costMult: 1,
        effect: "+30% <img src='img/defense.png' />.",
        unlocked: false,
        activated: false
      },
      {
        name: "Stone Circles",
        level: "Pantheon",
        costMult: 1,
        effect: "+.2 <img src='img/faith.png' /> PM per Quarry.",
        unlocked: false,
        activated: false
      },
      {
        name: "Lord of the Flies",
        level: "Pantheon",
        costMult: 1,
        effect: "+1 <img src='img/happy.png' /> per 4 <img src='img/pollution.png' />",
        unlocked: false,
        activated: false
      },
      {
        name: "The Furies",
        level: "Pantheon",
        costMult: 1,
        effect: "+10 <img src='img/faith.png'/> when you declare war.",
        unlocked: false,
        activated: false
      },
      {
        name: "The Fates",
        level: "Pantheon",
        costMult: 1,
        effect: "Increases chance of good events.",
        unlocked: false,
        activated: false
      },
      {
        name: "Doggy Cult",
        level: "Pantheon",
        costMult: 1,
        effect: "Converts all <img src='img/horse.png' /> into Chihuahuas.",
        unlocked: false,
        activated: false
      },
      {
        name: "Spaghetti Monster",
        level: "Pantheon",
        costMult: 1,
        effect: "+1 Spaghetti resource.",
        unlocked: false,
        activated: false
      },
      {
        name: "Monotheism",
        level: "Belief",
        costMult: 25,
        effect: "+3 <img src='img/faith.png' /> PM per Cleric.",
        unlocked: false,
        activated: false
      },
      {
        name: "Reincarnation",
        level: "Belief",
        costMult: 25,
        effect: "+15 <img src='img/faith.png' /> PM per Restart.",
        unlocked: false,
        activated: false
      },
      {
        name: "Nirvana",
        level: "Belief",
        costMult: 25,
        effect: "25% of <img src='img/faith.png' /> PM converted into <img src='img/happy.png' />",
        unlocked: false,
        activated: false
      },
      {
        name: "Polytheism",
        level: "Belief",
        costMult: 25,
        effect: "+.1 <img src='img/faith.png' /> from all Citizens.",
        unlocked: false,
        activated: false
      },
      {
        name: "Animism",
        level: "Belief",
        costMult: 25,
        effect: "+2 <img src='img/faith.png' /> from Stable, Harbor, and Zoo.",
        unlocked: false,
        activated: false
      },
      {
        name: "Dualism",
        level: "Belief",
        costMult: 25,
        effect: "",
        unlocked: false,
        activated: false
      },
      {
        name: "Occultism",
        level: "Belief",
        costMult: 25,
        effect: "",
        unlocked: false,
        acitvated: false
      },
      {
        name: "Idolatry",
        level: "Belief",
        costMult: 25,
        effect: "+10 <img src='img/faith.png'/>PM per Great Work.",
        unlocked: false,
        activated: false
      },

      {
        name: "Purgatory",
        level: "Dogma",
        costMult: 125,
        effect: "+25 <img src='img/faith.png' /> amidst indecisive wars.",
        unlocked: false,
        activated: false
      },
      {
        name: "Pilgrimage",
        level: "Dogma",
        costMult: 125,
        effect: "+5 Free Citizens",
        unlocked: false,
        activated: false
      },
      {
        name: "Virgin Birth",
        level: "Dogma",
        costMult: 125,
        effect: "Retain 80% of <img src='img/food.png' /> after growth.",
        unlocked: false,
        activated: false
      },
      {
        name: "Ressurection",
        level: "Dogma",
        costMult: 125,
        effect: "Retain Max <img src='img/food.png' /> after Reset.",
        unlocked: false,
        activated: false
      },
      {
        name: "Avatar",
        level: "Dogma",
        costMult: 125,
        effect: "+100 <img src='img/strength.png' /> per Reset.",
        unlocked: false,
        activated: false
      },
      {
        name: "Just War",
        level: "Dogma",
        costMult: 125,
        effect: "+25% <img src='img/strength.png'/> when fighting a war you did not declare.",
        unlocked: false,
        activated: false
      },
      {
        name: "Alpha Cult",
        level: "Holiest",
        costMult: 2000,
        effect: "Joins you to the mysterious <img src='img/alpha.png' /> Cult.",
        unlocked: false,
        activated: false
      },
      {
        name: "Omega Cult",
        level: "Holiest",
        costMult: 2000,
        effect: "Joins you to the shady <img src='img/omega.png' /> Cult",
        unlocked: false,
        activated: false
      }
    ]
  },

  nations: [
    {
      name: "Ulundo",
      img: 5,
      mood: "neutral",
      moodNum: 50,
      era: "Ancient",
      strength: 15,
      defense: 25,
      description: "Ulundo is a mountainous nation with a temperate climate and disposition. Their people are largely secluded from the world and are very privy to fights.",
      env1: "Mountain",
      env2: "Temperate",
      personality: "peaceful",
      color: "#C1D4CC",
      met: true,
      atWar: false,
    },
    {
      name: "Emporia",
      img: 3,
      mood: "neutral",
      moodNum: 50,
      era: "Ancient",
      strength: 11,
      defense: 8,
      description: "A small village that broke off from Ulundo less than a decade ago. It is weak, but stronly nationalistic. Its people take pride in their mulberry pie.",
      env1: "Plains",
      env2: "Temperate",
      personality: "peaceful",
      color: "#C2AC11",
      met: false,
      atWar: false,
    },
    {
      name: "Gradince",
      img: 12,
      mood: "furious",
      moodNum: 0,
      era: "Ancient",
      strength: 25,
      defense: 12,
      description: "A small city-state on the open plains. It is quick to anger.",
      env1: "Plains",
      env2: "Temperate",
      personality: "peaceful",
      color: "#EDCD64",
      met: false,
      atWar: false,
    },
    {
      name: "Arendale",
      img: 15,
      mood: "content",
      moodNum: 80,
      era: "Ancient",
      strength: 40,
      defense: 85,
      description: "A coastal nation bordering the mountains. It is breezy and endures harsh winters, but its people are quite amiable.",
      env1: "Mountain",
      env2: "Coastal",
      personality: "friendly",
      color: "skyblue",
      met: false,
      atWar: false,
    },
    {
      name: "Calloway",
      img: 10,
      mood: "neutral",
      moodNum: 50,
      era: "Ancient",
      strength: 28,
      defense: 63,
      description: "A moderately small nation known for its thriving oceanic economy.",
      env1: "Ocean",
      env2: "",
      personality: "amiable",
      color: "periwinkle",
      met: false,
      atWar: false,
    },
    {
      name: "Mukthos",
      img: 8,
      mood: "angry",
      moodNum: 40,
      era: "Ancient",
      strength: 66,
      defense: 42,
      description: "A nation built upon swampy, humid land. Its inhabitants are known to be rude and demanding.",
      env1: "Swamp",
      env2: "Humid",
      personality: "aggressive",
      color: "lightgreen",
      met: false,
      atWar: false,
    },
    {
      name: "Arcadia",
      img: 8,
      mood: "joyous",
      moodNum: 99,
      era: "Classical",
      strength: 80,
      defense: 80,
      description: "A mythical land. No confirmation of it exists.",
      env1: "Temperate",
      env2: "Forest",
      personality: "amiable",
      color: "pink",
      met: false,
      atWar: false,
    },
    {
      name: "Vatua",
      img: 14,
      mood: "happy",
      moodNum: 75,
      era: "Classical",
      strength: 74,
      defense: 64,
      description: "An island nation populated by peoples escaping religious persecution.",
      env1: "Ocean",
      env2: "Tropical",
      personality: "friendly",
      color: "skyblue",
      met: false,
      atWar: false,
    }
  ],

  buildings: [
    {
      name: "Hut",
      num: 0,
      numApplied: 0,
      prod: 15,
      cost: 150,
      misc: null,
      misc2: null,
      effect: "+1 <img src='img/happy.png' />",
      description: "A small mudhut. Air conditioning would be nice.",
      visible: true,
    },
    {
      name: "Granary",
      num: 0,
      numApplied: 0,
      prod: 30,
      cost: 400,
      misc: null,
      misc2: null,
      effect: "+200 Max <img title='food' src='img/food.png' />",
      description: "A granary for storing food for the winter.",
      visible: false
    },
    {
      name: "Quarry",
      num: 0,
      numApplied: 0,
      prod: 40,
      cost: 600,
      misc: null,
      misc2: null,
      effect: "+100 Max <img title='production' src='img/production.png' />",
      description: "Stones are, um, very pretty.",
      visible: false
    },
    {
      name: "Barracks",
      num: 0,
      numApplied: 0,
      prod: 115,
      cost: 1200,
      misc: null,
      misc2: null,
      effect: "+1 Unit <img src='img/strength.png' />",
      description: "A nice and comfy place for your soldiers to kick it.",
      visible: false
    },
    {
      name: "Temple",
      num: 0,
      numApplied: 0,
      prod: 125,
      cost: 1300,
      misc: "10 <img title='Spices' src='img/spices.png' />",
      misc2: null,
      effect: "+1 <img title='faith' src='img/faith.png' />/min",
      description: "A gorgeous temple. Smells very nice.",
      visible: false,
    },
    {
      name: "Library",
      num: 0,
      numApplied: 0,
      prod: 210,
      cost: 2100,
      misc: "2 <img title='Stone' src='img/stone.png'/>",
      misc2: null,
      effect: "+5 <img title='Research Points' src='img/research.png' />/min",
      description: "Borrow a book. Bring back $80 fine.",
      visible: false
    },
    {
      name: "Asclepieia",
      num: 0,
      numApplied: 0,
      prod: 80,
      cost: 1800,
      misc: null,
      misc: null,
      effect: "+2 <img src='img/health.png' />",
      description: "An ancient building aimed at healing your people.",
      visible: false
    },
    {
      name: "Walls",
      num: 0,
      numApplied: 0,
      prod: 250,
      cost: 2500,
      misc: null,
      misc2: null,
      effect: "+5 <img title='Defense' src='img/defense.png'/>",
      description: "Keeps out invaders and vaccuum salesmen.",
      visible: false
    },
    {
      name: "Aqueduct",
      num: 0,
      numApplied: 0,
      prod: 225,
      cost: 2250,
      misc: null,
      misc2: null,
      effect: "Carries over 50% of <img title='food' src='img/food.png' /> when you grow your population.",
      description: "It's literally just a pile of stones.",
      visible: false
    },

    {
      name: "Ampitheatre",
      num: 0,
      numApplied: 0,
      prod: 350,
      cost: 3500,
      misc: null,
      misc2: null,
      effect: "+1 <img title='culture' src='img/culture.png'/>/min",
      description: "Sick of all the drama? Come here!",
      visible: false
    },
    {
      name: "Monastery",
      num: 0,
      numApplied: 1,
      prod: 415,
      cost: 4200,
      misc: "25 <img title='spices' src='img/spices.png'/>",
      misc2: null,
      effect: "+3 <img title='faith' src='img/faith.png'/>/min, +1 <img title='happiness' src='img/happy.png'/>",
      description: "Requires Temple. Ommmmm...",
      visible: false,
    },
    {
      name: "Market",
      num: 0,
      numApplied: 0,
      prod: 600,
      cost: 5000,
      misc: null,
      misc2: null,
      effect: "+15 <img src='img/coin.png'/>/min",
      description: "A rich market to sell Magikarp.",
      visible: false
    },
    {
      name: "Forum",
      num: 0,
      numApplied: 0,
      prod: 200,
      cost: 2000,
      misc: null,
      misc2: null,
      effect: "+2 <img src='img/research.png' />, +3 <img src='img/happy.png' />",
      description: "Well, before the internet, we had, uh...",
      visible: false
    },
    {
      name: "Colosseum",
      num: 0,
      numApplied: 0,
      prod: 500,
      cost: 4200,
      misc: null,
      misc2: null,
      effect: "+5 <img src='img/happy.png' />",
      description: "A roaring stadium where losers are eaten by lions.",
      visible: false
    },
    {
      name: "Harbor",
      num: 0,
      numApplied: 0,
      prod: 455,
      cost: 3600,
      misc: null,
      misc2: null,
      effect: "Increases <img src='img/fish.png' /> Generation",
      description: "A sunset harbor where all the cool kids hang out.",
      visible: false
    },
    {
      name: "Castle",
      num: 0,
      numApplied: 0,
      prod: 655,
      cost: 5320,
      misc: null,
      misc2: null,
      effect: "+100 <img title='Defense' src='img/defense.png' />",
      description: "A mighty castle fit for a king.",
      visible: false
    },
    {
      name: "College",
      num: 0,
      numApplied: 0,
      prod: 980,
      cost: 10000,
      misc: null,
      misc2: null,
      effect: "+10 <img title='Research Points' src='img/research.png' />/min",
      description: "Requires 5 Libraries.",
      visible: false
    },
    {
      name: "Workshop",
      num: 0,
      numApplied: 0,
      prod: 1020,
      cost: 5000,
      misc: null,
      misc2: null,
      effect: "+5 <img src='img/production.png' />PS, +500 Max <img src='img/production.png' />",
      description: "Hammering iron is our specialty!",
      visible: false
    },

    {
      name: "Fort",
      num: 0,
      numApplied: 0,
      prod: 1000,
      cost: 5000,
      misc: null,
      misc2: null,
      effect: "+25 <img src='img/defense.png' />",
      description: "It's not made out of pillows...I swear!",
      visible: false
    },
    {
      name: "Lumbermill",
      num: 0,
      numApplied: 0,
      max: 5,
      prod: 1580,
      cost: 5000,
      misc: null,
      misc2: null,
      effect: "+.5 <img src='img/production.png' /> PS/PC per Woodcutter",
      description: "Max 5.",
      visible: false
    },
    {
      name: "Watermill",
      num: 0,
      numApplied: 0,
      max: 5,
      prod: 1580,
      cost: 5000,
      misc: null,
      misc2: null,
      effect: "+5% <img src='img/production.png' /> PS",
      description: "Max 5.",
      visible: false
    },
    {
      name: "Papermill",
      num: 0,
      numApplied: 0,
      prod: 1580,
      cost: 5000,
      misc: null,
      misc2: null,
      effect: "+250 <img src='img/production.png' /> Total",
      description: "",
      visible: false
    },


    {
      name: "Hospital",
      num: 0,
      numApplied: 0,
      prod: 3000,
      cost: 8000,
      misc: null,
      misc2: null,
      effect: "+10 <img title='health' src='img/health.png'/>",
      description: "Break a leg out there! We'll fix it.",
      visible: false
    },
  ],

  wonders: [
    // NOTE: Times are listed in seconds, not milliseconds!
    {
      name: "Stonehenge",
      img: "stone-henge",
      time: 600,
      required: "10 <img title='stone' src='img/stone.png' />",
      effect: "+3 <img src='img/faith.png' /> PM",
      description: "Let's leave some rocks here to confuse future generations.",
      visible: false,
      built: false,
      progress: false,
      active: false
    },
    {
      name: "The Great Pyramids",
      img: "great-pyramids",
      time: 1450,
      required: "25 <img src='img/stone.png' />",
      effect: "+10 <img src='img/production.png' /> PS.",
      description: "It'd probably build faster if we had aliens in this game.",
      visible: true,
      built: false,
      progress: false,
      active: false
    },
    {
      name: "Moai Statues",
      img: "moai-statues",
      time: 360,
      required: "Requires 20 Quarries",
      effect: "???",
      description: "Also known as the NeedNoseJobs Statues.",
      visible: true,
      built: false,
      progress: false,
      active: false,
    },
    {
      name: "Parthenon",
      img: "parthenon",
      time: 450,
      required: " ",
      effect: "",
      description: "",
      visible: true,
      built: false,
      progress: false,
      active: false,
    },
    {
      name: "The Great Wall",
      img: "great-wall",
      time: 495,
      required: "3 Walls",
      effect: "+100% <img src='img/defense.png' />",
      description: "Keeps out EVEN telemarketers.",
      visible: true,
      built: false,
      progress: false,
      active: false,
    },
    {
      name: "Great Colloseum",
      img: "great-colloseum",
      time: 515,
      required: "4 Colloseums",
      effect: "+10 <img src='img/happy.png' />",
      description: " ",
      visible: true,
      built: false,
      progress: true,
      active: false,
    },
    {
      name: "Ruiguagta Pagoda",
      img: "light-pagoda",
      time: 1020,
      required: "",
      effect: "",
      description: "",
      visible: true,
      built: false,
      progress: true,
      active: false,
    },
    {
      name: "Chichen Itza",
      img: "chichen-itza",
      time: 1320,
      required: "",
      effect: "",
      description: "",
      visible: true,
      built: false,
      progress: true,
      active: false,
    },
    {
      name: "Angkor Wat",
      img: "angkor-wat",
      time: 1500,
      required: "",
      effect: "",
      description: "",
      visible: true,
      built: false,
      progress: true,
      active: false,
    },
    {
      name: "Big Ben",
      img: "big-ben",
      time: 2220,
      required: "5hrs of playtime",
      effect: "-10% Wonder Construction Time",
      description: "A very large clock that tells a very large time.",
      visible: true,
      built: false,
      progress: true,
      active: false,
    },
    {
      name: "Statue of Liberty",
      img: "statue-of-liberty",
      time: 2000,
      required: "No prerequisites.",
      effect: "+20% <img src='img/production.png' />",
      description: "A beacon of liberty for immigrants ashore.",
      visible: true,
      built: false,
      progress: true,
      active: false,
    },
    {
      name: "Eiffel Tower",
      img: "eiffel-tower",
      time: 1800,
      required: "50 <img src='img/culture.png' /> PM",
      effect: "+50% <img src='img/culture.png' /> PM",
      description: "A gorgeous tower made of pure iron.",
      visible: true,
      built: false,
      progress: true,
      active: false,
    },
    {
      name: "Cristo Redentor",
      img: "cristo-redentor",
      time: 2100,
      required: "No prerequisites",
      effect: "+50% <img src='img/faith.png' /> PM",
      description: "An Art Deco statue of Christ atop a mountain.",
      visible: true,
      built: false,
      progress: true,
      active: false,
    },
    {
      name: "Golden Gate Bridge",
      img: "golden-gate-bridge",
      time: 2500,
      required: "Requires 350 <img src='img/iron.png' />",
      effect: "+1 Free Engineer.",
      description: "A wondrous bridge known for its gold...er, red paint.",
      visible: true,
      built: false,
      progress: true,
      active: false,
    },
    {
      name: "Mansuade",
      img: "mansuade",
      time: 2300,
      required: "Requires Autocracy",
      effect: "Eliminates Revolutions.",
      description: "A glorious statue of two leaders.",
      visible: true,
      built: false,
      progress: true,
      active: false,
    },
    {
      name: "Sydney Opera House",
      img: "sydney-opera-house",
      time: 2770,
      required: " ",
      effect: "",
      description: "",
      visible: true,
      built: false,
      progress: true,
      active: false,
    },
    {
      name: "The Louvre",
      img: "the-louvre",
      time: 2860,
      required: "Requires 15 Great Works",
      effect: "+10% <img src='img/culture.png'> from Great Works.",
      description: "",
      visible: true,
      built: false,
      progress: false,
      active: false,
    }

  ],
  achievements: [
    {
      name: "The First Click",
      description: "Click once.",
      unlocked: false
    },
    {
      name: "A Hundred Mighty Clicks",
      description: "Click 100 times.",
      unlocked: false
    },
    {
      name: "The Great Clicker",
      description: "Click 1k times.",
      unlocked: false
    },
    {
      name: "King Clicker",
      description: "Click 25K times.",
      unlocked: false
    },
    {
      name: "Empire of Clicks",
      description: "Click 50K times.",
      unlocked: false
    },
    {
      name: "HyperClicker",
      description: "Click 100K times.",
      unlocked: false
    },

    {
      name: "Newborn Empire",
      description: "Grow population once.",
      unlocked: false
    },
    {
      name: "Slightly Crowded",
      description: "Grow population 20 times.",
      unlocked: false
    },
    {
      name: "Claustrophobia",
      description: "Grow population 200 times.",
      unlocked: false
    },
    {
      name: "Many Faces",
      description: "Grow population 2k times.",
      unlocked: false
    },
    {
      name: "Mexico City",
      description: "Grow population 200k times.",
      unlocked: false
    },

    {
      name: "Leader of the Ancients",
      description: "Get all Ancient techs.",
      unlocked: false
    },
    {
      name: "Leader of the Classics",
      description: "Get all Classic techs.",
      unlocked: false
    },
    {
      name: "Leader of the Medieval",
      description: "Get all Medieval techs.",
      unlocked: false
    },
    {
      name: "Leader of the Renaissance",
      description: "Get all Renaissance techs.",
      unlocked: false
    },
    {
      name: "Leader of the Enlightened",
      description: "Get all Enlightenment techs.",
      unlocked: false
    },
    {
      name: "Captain of Industry",
      description: "Get all Industrial techs.",
      unlocked: false
    },
    {
      name: "The Ubermensch",
      description: "Get all Modern techs.",
      unlocked: false
    },
    {
      name: "Atomic Hero",
      description: "Get all Atomic techs.",
      unlocked: false
    },
    {
      name: "21st Century Schizoid",
      description: "Get all Information techs.",
      unlocked: false
    },
    {
      name: "Glorious Future Leader",
      description: "Get all Future techs.",
      unlocked: false
    },


    {
      name: "Our Golden Year",
      description: "1 Golden Age.",
      unlocked: false
    },
    {
      name: "Five Golden Ages",
      description: "5 Golden Ages.",
      unlocked: false
    },
    {
      name: "Dozen Golden Years",
      description: "12 Golden Ages.",
      unlocked: false
    },
    {
      name: "King Midas",
      description: "25 Golden Ages.",
      unlocked: false
    },
    {
      name: "Golden Anniversary",
      description: "50 Golden Ages.",
      unlocked: false
    },
    {
      name: "Golden Century",
      description: "100 Golden Ages.",
      unlocked: false
    },

    {
      name: "Strong Arms",
      description: "Assign 1st Soldier",
      unlocked: false
    },
    {
      name: "Strongest Army",
      description: "Assign 100 Soldiers.",
      unlocked: false
    },
    {
      name: "Tactical Brilliance",
      description: "Have at least 5 Generals.",
      unlocked: false
    },
    {
      name: "Commander of the Skies",
      description: "Have at least 50 Air units.",
      unlocked: false
    },
    {
      name: "Naval Captain",
      description: "Have at least 50 Navy units.",
      unlocked: false
    },
    {
      name: "High Walls",
      description: "Have Defense x4 your Strength.",
      unlocked: false
    },
    {
      name: "First Victory!",
      description: "Have your first victory.",
      unlocked: false
    },
    {
      name: "Victorious",
      description: "Have at least 10 victories.",
      unlocked: false
    },
    {
      name: "V Day",
      description: "Have at least 100 victories.",
      unlocked: false
    }
  ],

code: total refactor

Whew, so there's a lot to go through here:

  • Switch data.[subject].ts to data/subject.ts or data/subject/index.ts and do this for all files
  • Use import { Foo } from './foo' syntax for all files
  • Upgrade to [email protected]
    • Use stylus-loader for styles
  • Update any config files -- tslint, tsconfig
  • Set up structure for tests
  • Set up auto-lint, auto-test git hooks / prepublish scripts

buildings: increase opacity on unavailable buildings

Increase the opacity because it's wayyy too easy to feel like unavailable buildings are clickable, especially when they're purchaseable.

It might also make sense to make unavailable take precedence over unpurchaseable.

civilization: create info screen component

Should include:

  • Population growth button
  • Population Growth algorithm
  • Display info on several variables (happiness, anger, influence, health, etc)
  • Golden Age meter
  • Large scale Civilization Overview

An in-range update of @blueprintjs/core is breaking the build 🚨

Version 1.11.1 of @blueprintjs/core just got published.

Branch Build failing 🚨
Dependency @blueprintjs/core
Current Version 1.11.0
Type dependency

This version is covered by your current version range and after updating it in your project the build failed.

As @blueprintjs/core is a direct dependency of this project this is very likely breaking your project right now. If other packages depend on you it’s very likely also breaking them.
I recommend you give this issue a very high priority. I’m sure you can resolve this πŸ’ͺ


Status Details
  • ❌ continuous-integration/travis-ci/push The Travis CI build is in progress Details

  • ❌ ci/circleci Your tests failed on CircleCI Details

Not sure how things should work exactly?

There is a collection of frequently asked questions and of course you may always ask my humans.


Your Greenkeeper Bot 🌴

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.