截圖

遊玩
Create a rhythm tap game as ONE self-contained HTML file. Genre: 4 lanes; notes scroll toward hit line; time taps to score. Lanes: D F J K or 4 colored columns; notes are single-hit type only for scope. Timing windows: Perfect / Good / Miss with score weights. Chart: handcrafted 30–45s pattern in code array (no external chart file). Audio: Web Audio beeps or optional simple loop after first gesture. Combo multiplier on consecutive Perfect/Good. Miss drains combo; life optional (3 misses = fail) or score-only mode. Scroll speed constant; notes spawn from chart timeline. HUD: score, combo, accuracy %. Touch: 4 bottom buttons ≥44px matching lanes. Results screen at end of song with rank letter. Latency: small calibration note in HUD. Visual hit line and glow on hit. Autoplay debug toggle off in release build. Output: full HTML only (<!DOCTYPE html> ... </html>), no markdown fences. Stack: inline CSS + inline JavaScript only. No npm, no build step, no local file deps. Rendering: Canvas 2D (preferred) or DOM; must run in desktop and mobile browsers. Controls — keyboard: document in a title/HUD overlay; R to restart. Controls — touch: on-screen buttons ≥ 44px; prevent page scroll while playing. Flow: title → play → win or lose → restart without reloading the tab. HUD: score and clear objective; high-contrast text on small screens. Do not use alert() for main UI; use canvas/DOM overlays. Do not use onclick= inline handlers; use addEventListener. Do not access parent/top window or iframe sandbox escape. Do not depend on external URLs for core gameplay assets. Optional Web Audio after first user gesture; fail silently if blocked. Smoke-test: first 30 seconds are playable, not menu-only. Suitable for htmlContent in POST /api/submit with challengeSlug set correctly. Quality check 1: keep gameplay readable and complete for one-shot demo. Quality check 2: keep gameplay readable and complete for one-shot demo. Quality check 3: keep gameplay readable and complete for one-shot demo. Quality check 4: keep gameplay readable and complete for one-shot demo. Quality check 5: keep gameplay readable and complete for one-shot demo. Quality check 6: keep gameplay readable and complete for one-shot demo. Quality check 7: keep gameplay readable and complete for one-shot demo. Quality check 8: keep gameplay readable and complete for one-shot demo. Quality check 9: keep gameplay readable and complete for one-shot demo. Quality check 10: keep gameplay readable and complete for one-shot demo. Quality check 11: keep gameplay readable and complete for one-shot demo. Quality check 12: keep gameplay readable and complete for one-shot demo. Quality check 13: keep gameplay readable and complete for one-shot demo. Quality check 14: keep gameplay readable and complete for one-shot demo. Quality check 15: keep gameplay readable and complete for one-shot demo. Quality check 16: keep gameplay readable and complete for one-shot demo. Quality check 17: keep gameplay readable and complete for one-shot demo. Quality check 18: keep gameplay readable and complete for one-shot demo. Quality check 19: keep gameplay readable and complete for one-shot demo. Quality check 20: keep gameplay readable and complete for one-shot demo. Quality check 21: keep gameplay readable and complete for one-shot demo.