generated from nhcarrigan/template
96d6759661
Add Mortal/Goddess/Vampire mode selector bar, dynamic second tab row that swaps per mode, goddess currencies in the resource bar dropdown (locked pre-apotheosis), full CSS goddess theme with 300ms fade transition, and localStorage persistence of the active mode.
5.2 KiB
5.2 KiB
Goddess Expansion — Implementation Tracker
Branch: feat/goddess
Chunk 1 — Types ✅ COMPLETE
- Add
GoddessZone,GoddessBoss,GoddessQuestinterfaces - Add
GoddessDisciple(Disciples) interface - Add
GoddessEquipment,GoddessUpgradeinterfaces - Add
GoddessExplorationStateinterface - Add
ConsecrationData+ConsecrationUpgrade(Prestige) interfaces - Add
EnlightenmentData+EnlightenmentUpgrade(Transcendence) interfaces - Add
GoddessAchievementinterface - Add goddess currency fields (prayers, divinity, stardust) to
Resource - Add top-level
GoddessStatecontainer + addgoddess?toGameState - Export all new types from
packages/types - Lint ✅ · Build ✅ · Tests ✅ (100% coverage)
Chunk 2 — Data ✅ COMPLETE
goddessZones.ts— 18 goddess zonesgoddessBosses.ts— 72 bosses (4 per zone)goddessQuests.ts— 90 quests (5 per zone)goddessDisciples.ts— 32 disciple tiers (oracle/seraph/invoker/templar/herald/warden classes)goddessEquipment.ts— 53 equipment pieces (18 relics, 18 vestments, 17 sigils)goddessEquipmentSets.ts— 9 equipment sets (with GoddessEquipmentSet type)goddessUpgrades.ts— 57 upgrades (prayers/global/combat/consecration/disciple/boss)goddessConsecrationUpgrades.ts— 25 consecration upgradesgoddessEnlightenmentUpgrades.ts— 15 enlightenment upgradesgoddessMaterials.ts— 54 sacred materials (3 per zone)goddessCrafting.ts— 36 crafting recipes (2 per zone)goddessExplorations.ts— 72 exploration areas (4 per zone)goddessAchievements.ts— 40 achievementsGoddessEquipmentSet+computeGoddessSetBonusesadded topackages/types- NOTE: All data files excluded from coverage until Chunk 4 routes import them
- Lint ✅ · Build ✅ · Tests ✅ (100% coverage)
Chunk 3 — Sync / Sanitize ✅ COMPLETE
- Update
validateAndSanitizeto inject goddess state defaults for existing saves - Update force-sync (
syncNewContent) to inject missing goddess fields - Add apotheosis unlock flag handling
- Lint ✅ · Build ✅ · Tests ✅ (100% coverage)
Chunk 4 — API Routes ✅ COMPLETE
- Goddess boss fight route (
goddessBoss.ts) - Consecration (goddess prestige) route (
consecration.ts) - Enlightenment (goddess transcendence) route (
enlightenment.ts) - Goddess upgrade purchase route (
goddessUpgrade.ts) - Goddess crafting route (
goddessCraft.ts) - Goddess exploration route (
goddessExplore.ts) - Services:
consecration.ts,enlightenment.ts - Tests for all 6 routes (100% coverage)
- Lint ✅ · Build ✅ · Tests ✅ (100% coverage)
Chunk 5 — UI: Resource Bar + Mode/Tab Nav ✅ COMPLETE
- Add goddess currencies (Prayers, Divinity, Stardust) to resource bar dropdown — locked icon pre-apotheosis, live values post-apotheosis
- Add Mode bar (Row 1) —
⚔️ Mortal | ✨ Goddess | 🧛 Vampire— always visible, locked modes show 🔒 and are disabled - Add Tab bar (Row 2) — swaps entirely based on selected mode
- Mortal: all existing tabs (unchanged)
- Goddess: Zones · Bosses · Quests · Disciples · Equipment · Upgrades · Consecration · Enlightenment · Crafting · Exploration · Achievements
- Vampire: placeholder (future)
- Mode persists across page reloads via localStorage
body.goddess-modeCSS class toggled viauseEffectwhen Goddess mode active- 300ms CSS fade transition on major layout elements
- Goddess theme: dark navy bg, divine blue accent, gold/white accents
- Lint ✅ · Build ✅ · Tests ✅ (100% coverage)
Chunk 6 — UI: Goddess Panels
GoddessZonesPanel— zones with lock statesGoddessBossPanel— boss fightsGoddessQuestsPanel— questsDisciplesPanel— goddess adventurersGoddessEquipmentPanel— equipmentGoddessUpgradesPanel— upgradesConsecrationPanel— goddess prestigeEnlightenmentPanel— goddess transcendenceGoddessCraftingPanel— craftingGoddessExplorationPanel— explorationGoddessAchievementsPanel— achievements
Chunk 7 — Tick Engine
- Goddess passive income (prayers, divinity accumulation)
- Disciple passive income logic
- Lock state checks (no goddess income pre-apotheosis)
- Goddess quest timer logic
Chunk 8 — CSS Theme
- Define goddess CSS variables (soft blue primary, gold/white accents)
- Apply
.goddess-modeoverrides to all themed elements - Verify logo stays unchanged during theme shift
- Test fade transition smoothness
Chunk 9 — About Page
- Update
HOW_TO_PLAYarray inaboutPanel.tsxwith Goddess expansion documentation
Notes
- Apotheosis = the unlock gate for all goddess content (replaces original "Transcendence 20" concept — verify exact trigger)
- Goddess currencies always visible in resource bar, greyed pre-apotheosis
- All goddess tabs always visible in second row, content locked internally pre-apotheosis
- Vampire Mode will follow same pattern as third tab row (future work, not this PR)
- Sync new content must inject goddess defaults for all existing saves