Adv 2.0 L4a: hospital migrates HospitalVisits + cost formula off AdvCharacter

player_meta.hospital_visits column added with idempotent backfill.
Hospital cost now DnDCharacter.Level x 50k (5x before insurance), falling
back to dndLevelFromCombatLevel when no D&D row exists. Revive paths also
restore DnDCharacter HP to full; char.Alive still dual-writes during soak.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
prosolis
2026-05-09 09:46:56 -07:00
parent cc6fb7dd39
commit 730f16580a
6 changed files with 276 additions and 21 deletions

View File

@@ -199,6 +199,11 @@ func (p *AdventurePlugin) Init() error {
if err := backfillPlayerMetaDisplayName(); err != nil {
slog.Error("player_meta: display_name backfill failed", "err", err)
}
// Adv 2.0 Phase L4a — one-shot HospitalVisits backfill into
// player_meta. Idempotent (only fills zero rows).
if err := backfillPlayerMetaHospitalVisits(); err != nil {
slog.Error("player_meta: hospital_visits backfill failed", "err", err)
}
// Phase L3 — cancel any open/active legacy coop dungeon runs and
// refund member contributions + unsettled bets. Idempotent.
closeAndRefundLegacyCoopRuns(p.euro)