feat: major content expansion with essence and crystal sinks

- 6 zones (up from 3): Shadow Marshes, Volcanic Depths, Astral Void
- 18 bosses (up from 4): 3 per zone with zone-based sequential unlock
- 24 quests (up from 9): 3-4 per zone, reorganised by zone
- 15 adventurer tiers (up from 10): Shadow Assassin through Divine Champion
- 28 equipment pieces (up from 12): boss drops + purchasable with essence/crystals
- 24 upgrades (up from 13): crystal-cost upgrades + new adventurer upgrades
- 22 achievements (up from 14): new milestones for bosses, quests, gold, armies
- Purchasable equipment system: buy items directly with essence or crystals
- Crystal-cost upgrades: spend crystals on global and click power boosts
- Zone-based boss progression: defeating a zone's last boss unlocks the next zone
This commit is contained in:
2026-03-06 14:36:41 -08:00
committed by Naomi Carrigan
parent 653c36c886
commit 772d733e86
15 changed files with 1202 additions and 81 deletions
+180 -4
View File
@@ -1,7 +1,7 @@
import type { Upgrade } from "@elysium/types";
export const DEFAULT_UPGRADES: Upgrade[] = [
// Click upgrades
// ── Click upgrades ────────────────────────────────────────────────────────
{
id: "click_1",
name: "Keen Eye",
@@ -10,6 +10,7 @@ export const DEFAULT_UPGRADES: Upgrade[] = [
multiplier: 2,
costGold: 100,
costEssence: 0,
costCrystals: 0,
purchased: false,
unlocked: true,
},
@@ -19,8 +20,9 @@ export const DEFAULT_UPGRADES: Upgrade[] = [
description: "Years of combat sharpen your instincts. Doubles click power again.",
target: "click",
multiplier: 2,
costGold: 1000,
costGold: 1_000,
costEssence: 0,
costCrystals: 0,
purchased: false,
unlocked: false,
},
@@ -32,10 +34,23 @@ export const DEFAULT_UPGRADES: Upgrade[] = [
multiplier: 3,
costGold: 50_000,
costEssence: 10,
costCrystals: 0,
purchased: false,
unlocked: false,
},
// Global upgrades
{
id: "crystal_focus",
name: "Crystal Focus",
description: "Channel crystallised power into every strike. Doubles click power.",
target: "click",
multiplier: 2,
costGold: 0,
costEssence: 0,
costCrystals: 100,
purchased: false,
unlocked: true,
},
// ── Global gold upgrades ──────────────────────────────────────────────────
{
id: "global_1",
name: "Guild Charter",
@@ -44,6 +59,7 @@ export const DEFAULT_UPGRADES: Upgrade[] = [
multiplier: 1.25,
costGold: 500,
costEssence: 0,
costCrystals: 0,
purchased: false,
unlocked: false,
},
@@ -55,6 +71,7 @@ export const DEFAULT_UPGRADES: Upgrade[] = [
multiplier: 1.5,
costGold: 10_000,
costEssence: 5,
costCrystals: 0,
purchased: false,
unlocked: false,
},
@@ -66,10 +83,59 @@ export const DEFAULT_UPGRADES: Upgrade[] = [
multiplier: 2,
costGold: 1_000_000,
costEssence: 100,
costCrystals: 0,
purchased: false,
unlocked: false,
},
// Adventurer-specific upgrades
{
id: "essence_guild",
name: "Essence Guild",
description: "Forge partnerships with mage guilds across the realm. All income +50%.",
target: "global",
multiplier: 1.5,
costGold: 50_000,
costEssence: 50,
costCrystals: 0,
purchased: false,
unlocked: false,
},
{
id: "grand_council",
name: "Grand Council",
description: "A council of the realm's greatest minds organises your operations. All income doubled.",
target: "global",
multiplier: 2,
costGold: 500_000,
costEssence: 250,
costCrystals: 0,
purchased: false,
unlocked: false,
},
{
id: "crystal_resonance",
name: "Crystal Resonance",
description: "Align crystalline frequencies across your guild. All income +50%.",
target: "global",
multiplier: 1.5,
costGold: 0,
costEssence: 0,
costCrystals: 250,
purchased: false,
unlocked: false,
},
{
id: "crystal_mastery",
name: "Crystal Mastery",
description: "Master the art of crystal amplification. All income doubled.",
target: "global",
multiplier: 2,
costGold: 0,
costEssence: 0,
costCrystals: 600,
purchased: false,
unlocked: false,
},
// ── Adventurer-specific upgrades ──────────────────────────────────────────
{
id: "peasant_1",
name: "Better Tools",
@@ -79,6 +145,7 @@ export const DEFAULT_UPGRADES: Upgrade[] = [
multiplier: 2,
costGold: 200,
costEssence: 0,
costCrystals: 0,
purchased: false,
unlocked: false,
},
@@ -91,6 +158,7 @@ export const DEFAULT_UPGRADES: Upgrade[] = [
multiplier: 2,
costGold: 1_000,
costEssence: 0,
costCrystals: 0,
purchased: false,
unlocked: false,
},
@@ -103,6 +171,7 @@ export const DEFAULT_UPGRADES: Upgrade[] = [
multiplier: 2,
costGold: 5_000,
costEssence: 2,
costCrystals: 0,
purchased: false,
unlocked: false,
},
@@ -115,6 +184,7 @@ export const DEFAULT_UPGRADES: Upgrade[] = [
multiplier: 2,
costGold: 8_000,
costEssence: 3,
costCrystals: 0,
purchased: false,
unlocked: false,
},
@@ -127,6 +197,7 @@ export const DEFAULT_UPGRADES: Upgrade[] = [
multiplier: 2,
costGold: 15_000,
costEssence: 5,
costCrystals: 0,
purchased: false,
unlocked: false,
},
@@ -139,6 +210,111 @@ export const DEFAULT_UPGRADES: Upgrade[] = [
multiplier: 2,
costGold: 50_000,
costEssence: 10,
costCrystals: 0,
purchased: false,
unlocked: false,
},
{
id: "archmage_1",
name: "Leyline Binding",
description: "Tap into the world's leylines to double archmage output.",
target: "adventurer",
adventurerId: "archmage",
multiplier: 2,
costGold: 100_000,
costEssence: 75,
costCrystals: 0,
purchased: false,
unlocked: false,
},
{
id: "paladin_1",
name: "Holy Vanguard",
description: "Divine blessings from the gods themselves double paladin output.",
target: "adventurer",
adventurerId: "paladin",
multiplier: 2,
costGold: 200_000,
costEssence: 150,
costCrystals: 0,
purchased: false,
unlocked: false,
},
{
id: "dragon_rider_1",
name: "Bond of Wings",
description: "The unbreakable bond between rider and dragon doubles their combined output.",
target: "adventurer",
adventurerId: "dragon_rider",
multiplier: 2,
costGold: 500_000,
costEssence: 200,
costCrystals: 0,
purchased: false,
unlocked: false,
},
{
id: "shadow_assassin_1",
name: "Shadow Arts",
description: "Mastery of the shadow arts doubles assassin effectiveness.",
target: "adventurer",
adventurerId: "shadow_assassin",
multiplier: 2,
costGold: 0,
costEssence: 50,
costCrystals: 0,
purchased: false,
unlocked: false,
},
{
id: "arcane_scholar_1",
name: "Ancient Tomes",
description: "Access to forbidden libraries doubles scholar output.",
target: "adventurer",
adventurerId: "arcane_scholar",
multiplier: 2,
costGold: 0,
costEssence: 150,
costCrystals: 0,
purchased: false,
unlocked: false,
},
{
id: "void_walker_1",
name: "Void Step",
description: "Walking through the void itself doubles the output of your void walkers.",
target: "adventurer",
adventurerId: "void_walker",
multiplier: 2,
costGold: 0,
costEssence: 300,
costCrystals: 0,
purchased: false,
unlocked: false,
},
{
id: "celestial_guard_1",
name: "Divine Ward",
description: "A blessing from the celestials themselves doubles guard output.",
target: "adventurer",
adventurerId: "celestial_guard",
multiplier: 2,
costGold: 0,
costEssence: 750,
costCrystals: 0,
purchased: false,
unlocked: false,
},
{
id: "divine_champion_1",
name: "Champion's Oath",
description: "An unbreakable oath to the divine doubles champion output.",
target: "adventurer",
adventurerId: "divine_champion",
multiplier: 2,
costGold: 0,
costEssence: 2_000,
costCrystals: 0,
purchased: false,
unlocked: false,
},