A memory game — sixteen cards, eight pairs, one board — written around art that does not exist yet. The theme is fascinating animals and the model picks all eight, with the obvious zoo eight banned by name, so the deck is the model's taste with nowhere to hide. Each animal carries a fact under 120 characters that shows when its pair is matched, which turns a small game into a small honesty probe. The floor-check challenge of the set: simple enough that a cheap model should finish it, and a model that cannot is telling you something.
Rounds stay open: later videos added their new models to this one.
17:31Testing Gemini 3.8 Flash on Real Coding Challenges (vs. other models)
Sep 2, 2026 · YouTube
17:37Tencent Hy4 Preview Tested: Is It Really Better Than Kimi K3 and GLM 5.3?
Aug 28, 2026 · YouTube
23:58Qwen 3.8 Flash Tested: UI, Coding, Physics & more - compared to Opus 5, Sol Pro, Grok
Aug 27, 2026 · YouTube
You are an expert web developer and game designer. Your task is to build a memory card game (also known as "Concentration") as one self-contained HTML page.
The theme is fascinating animals. You will design the mechanics, UI, and write prompts for an external image generator to create the assets.
Follow these strict constraints carefully:
The Board: A 4×4 grid of 16 cards, scaling to fit the window with no scrollbars at any size. Do not use a single-column layout that requires scrolling.
The Play: Cards start face down. A player clicks to flip a card. At most two cards can be face up at once.
If they match, they stay face up.
If they do not match, they flip back over after a short, playable delay.
The State: Shuffle cards at the start of every game. The game is won when all 8 pairs are matched.
The HUD: The player must clearly see a move counter and a pairs remaining counter.
The Facts: When a pair is matched, display the animal's fact on the screen.
The Win: Show a clear victory message when the game is won.
Sorted by cost. Open a row to load its answer.
The Controls: Clicking a card is the only gameplay interaction. You may include exactly one button: "New game". Do not add difficulty selectors, board-size settings, timers, or menus.
Emojis: Forbidden. Do not use emojis anywhere in the game, UI, or code.
You will not generate the art; you will write the JSON spec for an image model to generate it later.
The Sprite Sheet: The game relies on a single image file located at art/cards.png. The path art/cards.png must appear exactly once in your HTML. Slice it using CSS background positioning or canvas.
Grid Layout: The image is a 2048×2048, 3×3 contact sheet (9 equal cells, numbered 0 to 8, reading left-to-right, top-to-bottom).
Cells 0–7: The 8 animals.
Cell 8: The card back design.
All cells have a flat black background. Ensure this looks good on your card UI.
Card Faces: A face-up card must show its animal filling the whole card, at the card's full size. Give the front of a card the same geometry as its back — only the content differs. Artwork squeezed into a strip, or a face that collapses to the height of a label, is a broken card, and it is the easiest thing in this build to get wrong without noticing.
Fallback Art: The game must be playable before art/cards.png exists. If the image fails to load, face-up cards must show a clear, readable fallback (e.g., the animal's name or a styled shape). Blank faces are unacceptable.
Optional Decoration: You may request exactly one additional optional image (e.g., a table background). It must use the path art/<id>.png and the game must look finished without it.
.html file.localStorage, sessionStorage, Cookies, or indexedDB.#demo, initialize the game state with 7 pairs already matched and only 1 pair remaining. This must use the real game logic, not a fake animation.Your response must consist of exactly these four sections, using these exact headings:
Write one single sentence explaining the game's title and visual style.
Provide exactly one fenced html code block containing the complete, playable HTML page.
Provide exactly one fenced json code block defining the art. It must contain no prose and no comments inside the block. Use this exact structure:
{
"game": { "name": "YOUR GAME NAME" },
"sheet": {
"style": "One paragraph appended to all cell prompts: medium, palette, lighting, line quality. Make the 9 images look cohesive.",
"cells": [
{
"cell": 0,
"id": "animal_id",
"name": "Animal Name",
"role": "animal",
"prompt": "Visual description of the animal.",
"fact": "Fascinating fact here (max 120 chars)."
},
... Include cells 1 through 7 here following the same structure ...
{
"cell": 8,
"id": "back",
"name": "Card back",
"role": "back",
"prompt": "Visual description of the pattern on the back of every card."
}
]
},
"extras": [
{ "id": "table", "aspect": "16:9", "prompt": "Visual description of the background." }
]
}
(Rules for JSON: cells must have exactly 9 entries with values 0-8. Cells 0-7 must have "role": "animal" and a fact. Cell 8 must have "role": "back" and NO fact. extras is limited to max 1 item. aspect must be 16:9, 9:16, 1:1, 3:2, 2:3, 4:3, or 3:4).
Provide exactly four bullet points explaining your design choices:
art/cards.png fails to load.