feat: add titles system with unlock tracking and character sheet display

Titles are earned by reaching milestones (quests, bosses, gold, clicks,
adventurers, guild, prestige, transcendence, apotheosis, achievements,
longevity) and are permanent - never lost on prestige/transcendence/
apotheosis resets. 20 titles available at launch.

Also fixes a pre-existing P2034 write-conflict on the load backfill path
and the exactOptionalPropertyTypes violation in the quest failure handler.
This commit is contained in:
2026-03-07 14:51:30 -08:00
committed by Naomi Carrigan
parent eef807343b
commit b886928e49
13 changed files with 333 additions and 10 deletions
+2
View File
@@ -21,6 +21,8 @@ model Player {
guildName String @default("")
guildDescription String @default("")
profileSettings Json?
unlockedTitles Json?
activeTitle String @default("")
createdAt Float
lastSavedAt Float
totalGoldEarned Float @default(0)