From 7a6614e83e085219f1efa79e962f225a63539b86 Mon Sep 17 00:00:00 2001 From: Hikari Date: Thu, 19 Mar 2026 13:42:02 -0700 Subject: [PATCH 1/2] feat: add essence infusion upgrades as a late-prestige essence sink MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Adds five global income multiplier upgrades (Essence Infusion I–V) purchasable purely with essence at escalating costs (1T → 500T essence). These give late- prestige players a meaningful ongoing use for the massive essence reserves that accumulate once all other upgrades are purchased. --- apps/api/src/data/upgrades.ts | 66 +++++++++++++++++++++ apps/web/src/components/game/aboutPanel.tsx | 5 +- 2 files changed, 70 insertions(+), 1 deletion(-) diff --git a/apps/api/src/data/upgrades.ts b/apps/api/src/data/upgrades.ts index 6dc88e3..17fc9bc 100644 --- a/apps/api/src/data/upgrades.ts +++ b/apps/api/src/data/upgrades.ts @@ -767,4 +767,70 @@ export const defaultUpgrades: Array = [ target: "adventurer", unlocked: false, }, + // ── Essence Sinks ───────────────────────────────────────────────────────── + { + costCrystals: 0, + costEssence: 1e12, + costGold: 0, + description: + "Channel a vast reservoir of essence into the guild's core — all production ×2.", + id: "essence_sink_1", + multiplier: 2, + name: "Essence Infusion I", + purchased: false, + target: "global", + unlocked: true, + }, + { + costCrystals: 0, + costEssence: 5e12, + costGold: 0, + description: + "A deeper infusion saturates every operation with raw essence — all production ×2.", + id: "essence_sink_2", + multiplier: 2, + name: "Essence Infusion II", + purchased: false, + target: "global", + unlocked: true, + }, + { + costCrystals: 0, + costEssence: 2.5e13, + costGold: 0, + description: + "Essence floods the ley-lines binding your guild — all production ×2.", + id: "essence_sink_3", + multiplier: 2, + name: "Essence Infusion III", + purchased: false, + target: "global", + unlocked: true, + }, + { + costCrystals: 0, + costEssence: 1e14, + costGold: 0, + description: + "The guild breathes essence as its very lifeblood — all production ×3.", + id: "essence_sink_4", + multiplier: 3, + name: "Essence Infusion IV", + purchased: false, + target: "global", + unlocked: true, + }, + { + costCrystals: 0, + costEssence: 5e14, + costGold: 0, + description: + "Essence transcends material form and reshapes reality itself — all production ×5.", + id: "essence_sink_5", + multiplier: 5, + name: "Essence Infusion V", + purchased: false, + target: "global", + unlocked: true, + }, ]; diff --git a/apps/web/src/components/game/aboutPanel.tsx b/apps/web/src/components/game/aboutPanel.tsx index c159b37..1c5caf1 100644 --- a/apps/web/src/components/game/aboutPanel.tsx +++ b/apps/web/src/components/game/aboutPanel.tsx @@ -34,7 +34,10 @@ const howToPlay = [ + " for the current run and stack multiplicatively — two ×2 upgrades" + " targeting the same adventurer combine to give ×4, not ×3. Global" + " upgrades multiply on top of adventurer-specific ones, so stacking" - + " both types compounds the effect significantly.", + + " both types compounds the effect significantly. Late in a run, look" + + " for the Essence Infusion upgrades — five powerful global multipliers" + + " purchasable purely with essence, giving that resource an ongoing" + + " use when gold upgrades are all bought.", title: "🔧 Upgrades", }, { -- 2.52.0 From 6cc1310df5edce82e3d80fab2b711096a615798a Mon Sep 17 00:00:00 2001 From: Hikari Date: Thu, 19 Mar 2026 14:05:33 -0700 Subject: [PATCH 2/2] security: remove hardcoded R2 credentials from committed CLAUDE.md --- CLAUDE.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CLAUDE.md b/CLAUDE.md index a877cf3..8aef5f5 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -14,7 +14,7 @@ Game art is generated via the Gemini API (`gemini-3-pro-image-preview`, ~$0.134/ ### Process 1. Generate images with `curl` to `https://generativelanguage.googleapis.com/v1beta/models/gemini-3-pro-image-preview:generateContent?key=`, requesting soft-shaded anime style 2. Save responses to `/home/naomi/code/naomi/elysium/img//.jpg` -3. Upload to R2 with: `AWS_ACCESS_KEY_ID=dd0a3d73969143ada84d50f8940cc5e2 AWS_SECRET_ACCESS_KEY=f73e9907da1b2297e93e17f786d6446d33d4ac60e185879578a0d5020899b18e aws s3 sync img/ s3://nhcarrigan-cdn/elysium/ --endpoint-url https://751c386661d378cc032093493cfb0869.r2.cloudflarestorage.com` +3. Upload to R2 with the AWS CLI — credentials are in the global `~/.claude/CLAUDE.md` (never commit them here) 4. Delete the local `img/` directory before committing (images live on CDN only) ### CDN URL Helper -- 2.52.0