# Hollybrook Open: Pixel Tennis Diorama

- Author: @vib3coded
- Card: Creator prompt
- Theme: Dioramas & voxel scenes
- Stack: Not rebuilt
- Interaction: Drag
- Licence: Credited link (Shared publicly by the author; full text with credit, removed on request)
- Verified: not yet
- Original post: https://x.com/vib3coded/status/2117018711240650978

## Original prompt

```text
Build a real-time 3D pixel-art diorama of a singles tennis final ("big tennis"), "Hollybrook Open", as ONE self-contained HTML page: three.js r128 from cdnjs (no other external assets, no localStorage/eval/alert). Publish it as an artifact and also give me a standalone offline HTML file.

LOOK (same style as my earlier dioramas): a match in a club stadium on a floating island; orthographic isometric camera at 31 degrees, quarter turns (Q/E), wheel zoom, drag to orbit/pan, follow camera; render to a low-res target with a "Pixel size" slider 1-6 (default 2), depth outlines, a fixed 90-colour palette (OKLab snap) and Bayer dither; the stands/walls facing the camera lift away (doll's-house cutaway); a clubhouse with a clock, flags and an LED video board; practice court, garden, marquee, entrance plaza. Original/fictional names and sponsors only. English UI.

MATCH: two fictional pros (4 in the roster, men and women), a full match from walk-on to trophy: toss, warm-up, serves (ball bounce ritual, toss), rallies with real ball physics (drag, Magnus spin, surface bounce, net and cord), line judges' calls, umpire's announcements, commentary, scoring with games/sets/tie-breaks, changeovers, challenges with an Eagle Eye review, handshake, trophy ceremony with confetti. Formats: short set, one set, best of 3. Four court surfaces (Grass, Clay, Hard, Carpet) that change the court texture AND the ball's bounce. Day / Dusk / Night with four floodlight masts. Realistic numbers: first serve ~60-65%, aces 4-8%, double faults 2-4%, mean rally ~4-7 shots (shorter on grass/carpet, longer on clay).

PAGE: side control panel (stacked below on phones): match format, player pickers, New match, Skip ceremony, Auto-next, pause, speed; surface; time of day; Coach (tactics: go for it / play safe / rush the net / drop shot / lob, serve direction, "aim next shot" by clicking the court, Challenge button); camera modes (TV follow / whole club / close-up) and view controls; Match centre (stats, fastest serve, player cards); commentary feed; a TV-style scoreboard on the stage. Synthesized WebAudio sound (racket hits, bounces by surface, crowd, calls, ambience), off until the user enables it.

ENGINEERING: write the core (render pipeline, layout/plan, NAV grid, lighting) and a detailed CONTRACT.md (world conventions, module files, global names, BUS events, data model), then build the modules in parallel with separate agents in their own workspaces: court+net+boards, gear+grounds, clubhouse+stands+screen, people rig and actors, tennis kinematics, ball physics+mesh, rally AI, match flow (generator-coroutine scheduler with watchdogs), crowd+fx, audio, UI. Enforce unique global names (dupcheck), then integrate, play full matches on every surface and format, check four views, night, phone layout, performance. Reply to me in short Russian, don't paste the artifact URL unless asked.
```

Not rebuilt by 3dmotion yet. Credit stays with @vib3coded.

Prompt by @vib3coded (https://x.com/vib3coded/status/2117018711240650978) via 3dmotion.io/e/hollybrook-open-pixel-tennis-diorama
