fix: human fight timing, creative timer, TTS reliability, add sweary/vibe narrations

- Fix invisible characters in human mode: init live scene BEFORE starting
  challenge polling so entrance plays before first question appears
- Cap creative writing timer to 10s for multiple choice (just tapping buttons)
- Fix TTS reliability: precache priority phrases (Round 1-7, Fight!, K.O.)
  all at once instead of in slow batches; prevent duplicate precache runs
- Add 10 vibe-coded narrations (~20% chance): "I was vibe coded into existence"
- Add 15 sweary narrations (~30% chance): raw unhinged fight commentary
- Add sweary draw and retro narrations

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Dorian
2026-03-09 13:50:24 +00:00
co-authored by Claude Opus 4.6
parent 3ba05a66b4
commit a2416bbe19
5 changed files with 85 additions and 9 deletions
@@ -25,7 +25,10 @@ export function useHumanChallenge(
function applyChallenge(data: any, receivedAt?: number) {
const elapsed = receivedAt ? Date.now() - receivedAt : 0
const remaining = Math.max(1000, (data.timeoutMs || 8000) - elapsed)
// Cap timeout for multiple choice — you're just tapping a button, not typing
const hasChoices = data.choices && data.choices.length > 0
const baseTimeout = hasChoices ? Math.min(data.timeoutMs || 8000, 10000) : (data.timeoutMs || 8000)
const remaining = Math.max(1000, baseTimeout - elapsed)
humanChallenge.value = {
type: data.type,
label: data.label,