diff --git a/scripts/replay-combat.js b/scripts/replay-combat.js index c2c0e1a..09c6f28 100644 --- a/scripts/replay-combat.js +++ b/scripts/replay-combat.js @@ -91,7 +91,7 @@ async function main() { const encounterId = crypto.randomUUID(); await storage.setDoc(getPath.campaign(campaignId), { - name: 'Replay Campaign', + name: `Replay Campaign (${new Date().toLocaleString('en-US', { hour12: false })})`, playerDisplayBackgroundUrl: '', ownerId: 'replay', createdAt: new Date().toISOString(), @@ -121,7 +121,7 @@ async function main() { ]; await storage.setDoc(getPath.encounter(campaignId, encounterId), { - name: 'Big Boss Replay', + name: `Big Boss Replay (${new Date().toLocaleString('en-US', { hour12: false })})`, campaignId, createdAt: new Date().toISOString(), participants, @@ -184,7 +184,9 @@ async function main() { const p = enc.participants.find(x => x.id === id); return p ? `${p.name}:${p.initiative}` : id; }).join(','); - console.log(` turn ${totalTurns} (round ${enc.round}): ${actorName} | order=[${ordStr}] cur=${enc.currentTurnParticipantId}`); + // Also dump participants[] order (display source). Diverge from order = sync bug. + const pStr = enc.participants.map(p => `${p.name}:${p.initiative}`).join(','); + console.log(` turn ${totalTurns} (round ${enc.round}): ${actorName} | order=[${ordStr}] parts=[${pStr}] cur=${enc.currentTurnParticipantId}`); // 1. damage: actor hits a random living, active target. if (actor) { diff --git a/src/App.js b/src/App.js index 64934f5..9b2e697 100644 --- a/src/App.js +++ b/src/App.js @@ -2284,6 +2284,11 @@ function AdminView({ userId }) { {campaign.encounterCount === undefined ? '...' : campaign.encounterCount} Encounters + {campaign.createdAt && ( + + {new Date(campaign.createdAt).toLocaleDateString('en-US', { year: 'numeric', month: 'short', day: 'numeric', hour: '2-digit', minute: '2-digit', hour12: false })} + + )}