generated from nhcarrigan/template
feat: add exploration and crafting systems
Adds two new game systems: Exploration (scouts collect materials from timed area runs) and Crafting (combine materials into permanent multipliers). Includes 72 exploration areas, 54 materials, 36 recipes, and 108 new Codex lore entries. Removes unused characterName requirement from prestige/transcendence/apotheosis reset flows.
This commit is contained in:
@@ -0,0 +1,327 @@
|
||||
import type { CraftingRecipe } from "@elysium/types";
|
||||
|
||||
export const DEFAULT_RECIPES: CraftingRecipe[] = [
|
||||
// Zone 1: verdant_vale
|
||||
{
|
||||
id: "heartwood_tincture",
|
||||
name: "Heartwood Tincture",
|
||||
description: "Sap from ancient heartwood trees, refined and bound with forest crystal. The resulting tincture accelerates the flow of wealth through your guild in ways the alchemists cannot fully explain.",
|
||||
zoneId: "verdant_vale",
|
||||
requiredMaterials: [{ materialId: "verdant_sap", quantity: 5 }, { materialId: "forest_crystal", quantity: 3 }],
|
||||
bonus: { type: "gold_income", value: 1.05 },
|
||||
},
|
||||
{
|
||||
id: "elder_bark_shield",
|
||||
name: "Elder Bark Shield",
|
||||
description: "A ward fashioned from bark older than the kingdom. Its presence on the battlefield is not merely physical — something ancient watches through it.",
|
||||
zoneId: "verdant_vale",
|
||||
requiredMaterials: [{ materialId: "elder_bark", quantity: 2 }, { materialId: "verdant_sap", quantity: 8 }],
|
||||
bonus: { type: "combat_power", value: 1.08 },
|
||||
},
|
||||
|
||||
// Zone 2: shattered_ruins
|
||||
{
|
||||
id: "runic_binding",
|
||||
name: "Runic Binding",
|
||||
description: "The ruin dust and cursed fragments, carefully worked into a binding that borrows the essence-drawing power of the fallen civilisation's final enchantments.",
|
||||
zoneId: "shattered_ruins",
|
||||
requiredMaterials: [{ materialId: "ruin_dust", quantity: 8 }, { materialId: "cursed_fragment", quantity: 4 }],
|
||||
bonus: { type: "essence_income", value: 1.05 },
|
||||
},
|
||||
{
|
||||
id: "dragon_scale_charm",
|
||||
name: "Dragon Scale Charm",
|
||||
description: "A charm set with a chip of the elder dragon's scale. The dragon would be furious if he knew. He would also be impressed.",
|
||||
zoneId: "shattered_ruins",
|
||||
requiredMaterials: [{ materialId: "dragonscale_chip", quantity: 2 }, { materialId: "ruin_dust", quantity: 10 }],
|
||||
bonus: { type: "gold_income", value: 1.08 },
|
||||
},
|
||||
|
||||
// Zone 3: frozen_peaks
|
||||
{
|
||||
id: "glacial_lens",
|
||||
name: "Glacial Lens",
|
||||
description: "Glacial ice ground and shaped into a lens that clarifies and focuses. Holding it, your guild's actions become sharper, more precise, more effective per motion.",
|
||||
zoneId: "frozen_peaks",
|
||||
requiredMaterials: [{ materialId: "glacial_ice", quantity: 8 }, { materialId: "frost_crystal", quantity: 4 }],
|
||||
bonus: { type: "click_power", value: 1.08 },
|
||||
},
|
||||
{
|
||||
id: "void_fragment_amulet",
|
||||
name: "Void Fragment Amulet",
|
||||
description: "The void shard set in frost crystal, creating something that should not be possible: a stable window into the spaces between spaces. Profitable beyond what physics suggests.",
|
||||
zoneId: "frozen_peaks",
|
||||
requiredMaterials: [{ materialId: "void_shard", quantity: 2 }, { materialId: "frost_crystal", quantity: 6 }],
|
||||
bonus: { type: "gold_income", value: 1.10 },
|
||||
},
|
||||
|
||||
// Zone 4: shadow_marshes
|
||||
{
|
||||
id: "shadow_extract",
|
||||
name: "Shadow Extract",
|
||||
description: "Marsh roots processed with shadow essence into a refined compound that somehow makes the essence of things flow more freely toward your guild hall.",
|
||||
zoneId: "shadow_marshes",
|
||||
requiredMaterials: [{ materialId: "marsh_root", quantity: 8 }, { materialId: "shadow_essence", quantity: 4 }],
|
||||
bonus: { type: "essence_income", value: 1.08 },
|
||||
},
|
||||
{
|
||||
id: "cursed_focus",
|
||||
name: "Cursed Focus",
|
||||
description: "The cursed bone and shadow essence combined into a focus that doesn't so much help your party fight as make things afraid of them before the battle begins.",
|
||||
zoneId: "shadow_marshes",
|
||||
requiredMaterials: [{ materialId: "cursed_bone", quantity: 2 }, { materialId: "shadow_essence", quantity: 6 }],
|
||||
bonus: { type: "combat_power", value: 1.10 },
|
||||
},
|
||||
|
||||
// Zone 5: volcanic_depths
|
||||
{
|
||||
id: "magma_core_seal",
|
||||
name: "Magma Core Seal",
|
||||
description: "A seal forged in the volcanic depths, using the eternal heat of the magma stone and ember crystal to create something that burns wealth into existence continuously.",
|
||||
zoneId: "volcanic_depths",
|
||||
requiredMaterials: [{ materialId: "magma_stone", quantity: 8 }, { materialId: "ember_crystal", quantity: 4 }],
|
||||
bonus: { type: "gold_income", value: 1.10 },
|
||||
},
|
||||
{
|
||||
id: "elemental_ore_ingot",
|
||||
name: "Elemental Ore Ingot",
|
||||
description: "The legendary ore, smelted in the volcanic forges with magma stone as fuel. What emerges is something the fire elementals recognise — and fear slightly.",
|
||||
zoneId: "volcanic_depths",
|
||||
requiredMaterials: [{ materialId: "legendary_ore", quantity: 2 }, { materialId: "magma_stone", quantity: 10 }],
|
||||
bonus: { type: "combat_power", value: 1.12 },
|
||||
},
|
||||
|
||||
// Zone 6: astral_void
|
||||
{
|
||||
id: "star_chart",
|
||||
name: "Star Chart",
|
||||
description: "Stardust arranged along astral threads into a map of the void that somehow, impossibly, shows your guild where to press and how to press it for maximum effect.",
|
||||
zoneId: "astral_void",
|
||||
requiredMaterials: [{ materialId: "stardust", quantity: 10 }, { materialId: "astral_thread", quantity: 4 }],
|
||||
bonus: { type: "click_power", value: 1.12 },
|
||||
},
|
||||
{
|
||||
id: "void_crystal_matrix",
|
||||
name: "Void Crystal Matrix",
|
||||
description: "A void crystal suspended in a matrix of stardust — something that exists in several places simultaneously and draws gold from all of them at once.",
|
||||
zoneId: "astral_void",
|
||||
requiredMaterials: [{ materialId: "void_crystal", quantity: 2 }, { materialId: "stardust", quantity: 12 }],
|
||||
bonus: { type: "gold_income", value: 1.12 },
|
||||
},
|
||||
|
||||
// Zone 7: celestial_reaches
|
||||
{
|
||||
id: "celestial_lens",
|
||||
name: "Celestial Lens",
|
||||
description: "Celestial dust and divine fragments ground into a lens that sees the essence in all things and draws a portion of it — gently, as the celestials would prefer.",
|
||||
zoneId: "celestial_reaches",
|
||||
requiredMaterials: [{ materialId: "celestial_dust", quantity: 10 }, { materialId: "divine_fragment", quantity: 4 }],
|
||||
bonus: { type: "essence_income", value: 1.12 },
|
||||
},
|
||||
{
|
||||
id: "choir_resonator",
|
||||
name: "Choir Resonator",
|
||||
description: "A choir shard set in divine fragments, still humming with the celestial harmonic. The resonance makes gold flow in its direction — not compelled, simply invited.",
|
||||
zoneId: "celestial_reaches",
|
||||
requiredMaterials: [{ materialId: "choir_shard", quantity: 2 }, { materialId: "divine_fragment", quantity: 6 }],
|
||||
bonus: { type: "gold_income", value: 1.15 },
|
||||
},
|
||||
|
||||
// Zone 8: abyssal_trench
|
||||
{
|
||||
id: "pressure_forged_core",
|
||||
name: "Pressure-Forged Core",
|
||||
description: "Trench coral and pressure gem combined under conditions that should have destroyed both. The result is something that survived conditions nothing should survive, which is ideal for combat.",
|
||||
zoneId: "abyssal_trench",
|
||||
requiredMaterials: [{ materialId: "trench_coral", quantity: 10 }, { materialId: "pressure_gem", quantity: 4 }],
|
||||
bonus: { type: "combat_power", value: 1.15 },
|
||||
},
|
||||
{
|
||||
id: "ancient_fang_talisman",
|
||||
name: "Ancient Fang Talisman",
|
||||
description: "A talisman set with the ancient tooth, suspended in trench coral carvings. Your party fights differently with this at their chest. More deliberately. More completely.",
|
||||
zoneId: "abyssal_trench",
|
||||
requiredMaterials: [{ materialId: "ancient_tooth", quantity: 2 }, { materialId: "trench_coral", quantity: 12 }],
|
||||
bonus: { type: "click_power", value: 1.15 },
|
||||
},
|
||||
|
||||
// Zone 9: infernal_court
|
||||
{
|
||||
id: "court_seal",
|
||||
name: "Court Seal",
|
||||
description: "A seal of infernal court authority, forged from brimstone and ichor. The court doesn't know you have this. It's better that way. It does make trade extremely efficient.",
|
||||
zoneId: "infernal_court",
|
||||
requiredMaterials: [{ materialId: "brimstone_flake", quantity: 10 }, { materialId: "demon_ichor", quantity: 5 }],
|
||||
bonus: { type: "gold_income", value: 1.15 },
|
||||
},
|
||||
{
|
||||
id: "soul_bound_catalyst",
|
||||
name: "Soul-Bound Catalyst",
|
||||
description: "Soul residue and demon ichor worked into a catalyst that draws the essence from everything around it — gently, without drawing the court's attention. Usually.",
|
||||
zoneId: "infernal_court",
|
||||
requiredMaterials: [{ materialId: "soul_residue", quantity: 2 }, { materialId: "demon_ichor", quantity: 8 }],
|
||||
bonus: { type: "essence_income", value: 1.15 },
|
||||
},
|
||||
|
||||
// Zone 10: crystalline_spire
|
||||
{
|
||||
id: "prism_array",
|
||||
name: "Prism Array",
|
||||
description: "Prism dust and calculation shards assembled into an array that the spire's intelligence would call elegant, if it had aesthetic preferences, which it might.",
|
||||
zoneId: "crystalline_spire",
|
||||
requiredMaterials: [{ materialId: "prism_dust", quantity: 10 }, { materialId: "calculation_shard", quantity: 4 }],
|
||||
bonus: { type: "click_power", value: 1.18 },
|
||||
},
|
||||
{
|
||||
id: "possibility_engine",
|
||||
name: "Possibility Engine",
|
||||
description: "A possibility crystal contained within a calculation shard framework. It runs through every possible outcome of every guild action and finds the one with the highest gold yield.",
|
||||
zoneId: "crystalline_spire",
|
||||
requiredMaterials: [{ materialId: "possibility_crystal", quantity: 2 }, { materialId: "calculation_shard", quantity: 6 }],
|
||||
bonus: { type: "gold_income", value: 1.18 },
|
||||
},
|
||||
|
||||
// Zone 11: void_sanctum
|
||||
{
|
||||
id: "null_field_generator",
|
||||
name: "Null Field Generator",
|
||||
description: "Null matter and resonance fragments assembled into something that generates a field where the laws governing how hard things are to kill become negotiable.",
|
||||
zoneId: "void_sanctum",
|
||||
requiredMaterials: [{ materialId: "null_matter", quantity: 10 }, { materialId: "resonance_fragment", quantity: 4 }],
|
||||
bonus: { type: "combat_power", value: 1.18 },
|
||||
},
|
||||
{
|
||||
id: "sanctum_key",
|
||||
name: "Sanctum Key",
|
||||
description: "A sanctum core and resonance fragments shaped into a key to something. The essence flows through it like it was designed to carry essence, which it may have been.",
|
||||
zoneId: "void_sanctum",
|
||||
requiredMaterials: [{ materialId: "sanctum_core", quantity: 2 }, { materialId: "resonance_fragment", quantity: 6 }],
|
||||
bonus: { type: "essence_income", value: 1.18 },
|
||||
},
|
||||
|
||||
// Zone 12: eternal_throne
|
||||
{
|
||||
id: "crown_circlet",
|
||||
name: "Crown Circlet",
|
||||
description: "Throne dust pressed into throne dust-lacquered crown fragments, shaped into a circlet. Wearing it — metaphorically — makes gold accumulate with the inevitability of authority.",
|
||||
zoneId: "eternal_throne",
|
||||
requiredMaterials: [{ materialId: "throne_dust", quantity: 10 }, { materialId: "crown_fragment", quantity: 4 }],
|
||||
bonus: { type: "gold_income", value: 1.20 },
|
||||
},
|
||||
{
|
||||
id: "eternity_bound_ring",
|
||||
name: "Eternity-Bound Ring",
|
||||
description: "An eternity splinter set into crown fragments, shaped into a ring. What it binds is unclear. Whatever it is, it makes your party significantly harder to kill.",
|
||||
zoneId: "eternal_throne",
|
||||
requiredMaterials: [{ materialId: "eternity_splinter", quantity: 2 }, { materialId: "crown_fragment", quantity: 6 }],
|
||||
bonus: { type: "combat_power", value: 1.20 },
|
||||
},
|
||||
|
||||
// Zone 13: primordial_chaos
|
||||
{
|
||||
id: "chaos_lens",
|
||||
name: "Chaos Lens",
|
||||
description: "Chaos fragments and creation shards arranged into a lens that hasn't decided what it wants to focus on yet, which somehow makes every click land harder than it should.",
|
||||
zoneId: "primordial_chaos",
|
||||
requiredMaterials: [{ materialId: "chaos_fragment", quantity: 10 }, { materialId: "creation_shard", quantity: 4 }],
|
||||
bonus: { type: "click_power", value: 1.20 },
|
||||
},
|
||||
{
|
||||
id: "creation_core",
|
||||
name: "Creation Core",
|
||||
description: "Primordial essence held in a creation shard framework. It hums constantly. Gold flows toward it with the enthusiasm of something that wants to become something.",
|
||||
zoneId: "primordial_chaos",
|
||||
requiredMaterials: [{ materialId: "primordial_essence", quantity: 2 }, { materialId: "creation_shard", quantity: 6 }],
|
||||
bonus: { type: "gold_income", value: 1.22 },
|
||||
},
|
||||
|
||||
// Zone 14: infinite_expanse
|
||||
{
|
||||
id: "distance_coil",
|
||||
name: "Distance Coil",
|
||||
description: "Expanse dust wound around distance crystals into a coil that draws essence from distances too vast to measure, compressing it into something your guild can actually use.",
|
||||
zoneId: "infinite_expanse",
|
||||
requiredMaterials: [{ materialId: "expanse_dust", quantity: 10 }, { materialId: "distance_crystal", quantity: 4 }],
|
||||
bonus: { type: "essence_income", value: 1.20 },
|
||||
},
|
||||
{
|
||||
id: "infinity_prism",
|
||||
name: "Infinity Prism",
|
||||
description: "An infinity shard mounted in a distance crystal frame. The prism reflects gold from an infinite number of directions simultaneously. The math works out favourably.",
|
||||
zoneId: "infinite_expanse",
|
||||
requiredMaterials: [{ materialId: "infinity_shard", quantity: 2 }, { materialId: "distance_crystal", quantity: 6 }],
|
||||
bonus: { type: "gold_income", value: 1.22 },
|
||||
},
|
||||
|
||||
// Zone 15: reality_forge
|
||||
{
|
||||
id: "reality_ingot",
|
||||
name: "Reality Ingot",
|
||||
description: "Forge ash smelted with creation tools into an ingot of compressed reality. Your party hits harder when carrying it. Reality does not enjoy being concentrated like this.",
|
||||
zoneId: "reality_forge",
|
||||
requiredMaterials: [{ materialId: "forge_ash", quantity: 10 }, { materialId: "creation_tool", quantity: 4 }],
|
||||
bonus: { type: "combat_power", value: 1.22 },
|
||||
},
|
||||
{
|
||||
id: "universe_seed",
|
||||
name: "Universe Seed",
|
||||
description: "A reality shard carefully shaped with creation tools into something that could, theoretically, become a universe. Instead it makes your clicks unreasonably effective.",
|
||||
zoneId: "reality_forge",
|
||||
requiredMaterials: [{ materialId: "reality_shard", quantity: 2 }, { materialId: "creation_tool", quantity: 6 }],
|
||||
bonus: { type: "click_power", value: 1.22 },
|
||||
},
|
||||
|
||||
// Zone 16: cosmic_maelstrom
|
||||
{
|
||||
id: "force_lens",
|
||||
name: "Force Lens",
|
||||
description: "Maelstrom debris and force crystals ground into a lens at the intersection of fundamental forces. Gold flows toward it with the same inevitability that galaxies flow toward gravity.",
|
||||
zoneId: "cosmic_maelstrom",
|
||||
requiredMaterials: [{ materialId: "maelstrom_debris", quantity: 10 }, { materialId: "force_crystal", quantity: 4 }],
|
||||
bonus: { type: "gold_income", value: 1.25 },
|
||||
},
|
||||
{
|
||||
id: "maelstrom_eye",
|
||||
name: "Maelstrom Eye",
|
||||
description: "A cosmic fragment suspended in a force crystal matrix — a piece of the maelstrom's impossible calm, holding the eye of the storm. Essence accumulates in its vicinity.",
|
||||
zoneId: "cosmic_maelstrom",
|
||||
requiredMaterials: [{ materialId: "cosmic_fragment", quantity: 2 }, { materialId: "force_crystal", quantity: 6 }],
|
||||
bonus: { type: "essence_income", value: 1.22 },
|
||||
},
|
||||
|
||||
// Zone 17: primeval_sanctum
|
||||
{
|
||||
id: "ancient_memory_array",
|
||||
name: "Ancient Memory Array",
|
||||
description: "Ancient dust and memory shards arranged into something that remembers how to fight before fighting was invented. Your party benefits from this instinct enormously.",
|
||||
zoneId: "primeval_sanctum",
|
||||
requiredMaterials: [{ materialId: "ancient_dust", quantity: 10 }, { materialId: "memory_shard", quantity: 4 }],
|
||||
bonus: { type: "combat_power", value: 1.25 },
|
||||
},
|
||||
{
|
||||
id: "first_artefact",
|
||||
name: "First Artefact",
|
||||
description: "The primeval relic, set into a memory shard framework. What function it originally served is unknowable. In your guild's hands, it makes every action more deliberate and more powerful.",
|
||||
zoneId: "primeval_sanctum",
|
||||
requiredMaterials: [{ materialId: "primeval_relic", quantity: 2 }, { materialId: "memory_shard", quantity: 6 }],
|
||||
bonus: { type: "click_power", value: 1.25 },
|
||||
},
|
||||
|
||||
// Zone 18: the_absolute
|
||||
{
|
||||
id: "final_truth_lens",
|
||||
name: "Final Truth Lens",
|
||||
description: "Absolute fragments and boundary shards ground into a lens that sees to the end of all things — and in seeing, draws the wealth inherent in finality toward your guild.",
|
||||
zoneId: "the_absolute",
|
||||
requiredMaterials: [{ materialId: "absolute_fragment", quantity: 10 }, { materialId: "boundary_shard", quantity: 4 }],
|
||||
bonus: { type: "gold_income", value: 1.30 },
|
||||
},
|
||||
{
|
||||
id: "omega_convergence",
|
||||
name: "Omega Convergence",
|
||||
description: "The last omega crystal, set at the convergence of boundary shards in the precise arrangement of an ending. What it does to combat is what endings do to everything: make it final.",
|
||||
zoneId: "the_absolute",
|
||||
requiredMaterials: [{ materialId: "omega_crystal", quantity: 2 }, { materialId: "boundary_shard", quantity: 6 }],
|
||||
bonus: { type: "combat_power", value: 1.30 },
|
||||
},
|
||||
];
|
||||
Reference in New Issue
Block a user