Tokyo Rush Hour — 6pm to last train across Shibuya, Yamanote, neon alleys, and a capsule hotel
A 3D mega-world: 7 sub-locations across Tokyo at 6pm (Shibuya Scramble, Yamanote station, neon alley, konbini, capsule hotel, karaoke box, ramen yatai), 220 pedestrians on role-based AI, animated billboards, rainshower at 22:00, last train arriving.
What this is
A 3D mega-world recreation of Tokyo from 6pm to the last train. Seven sub-locations sit in one three.js scene: Shibuya Scramble Crossing, the JR Yamanote Station platform, Neon Alley, a Konbini with sliding doors, a Capsule Hotel with lit pods, a Karaoke Box, and a Ramen Yatai cart. Two hundred and twenty InstancedMesh pedestrians move with role-based AI — scramble walkers obey a real traffic light, platform flow loops the station, alley wanderers loiter under shaders that cycle neon ads, the konbini queue forms and dissolves, karaoke loiterers smoke under the awning. Five acts run on a ten-minute cycle at 30× sim speed: Rush Hour, Izakaya Golden Hour, Karaoke, Late Ramen, Last Train. Rain particles and wet-ground reflection arrive at 22:00 and clear by 23:00. A sliding Yamanote train arrives and departs every twenty-four seconds. A delivery cyclist threads the alley. Eighteen director cameras cut between scramble, station, alley, and capsule hotel weighted to whichever act is live, and a TOKYO LIVE HUD with a mini-map shows crowd dots, the train, the active hotspot, and a rotating "WHO IS" lower-third for ten featured cast.
You don't play it. You watch it.
Why this is mind-blowing
Every system runs on its own clock and references the others. The traffic light at the scramble actually gates the crossing. The Yamanote train pulls in on schedule and the platform flow rebalances. The neon billboard shader cycles ads while the sky lerps from dusk pink to deep blue to rain. At 22:00 the rain pops on, the wet ground starts catching the neon, the alley cameras dominate the cuts, the konbini queue thins. The chyron weaves cross-system events together — "ramen yatai sells out as last train pulls in" — so it feels like one city, not seven scenes. After ten minutes the world reseeds with a new pedestrian roster and the night starts again. It's the cozy Tokyo stream you'd leave on while you study.
Prompt
Build a single-file HTML page that recreates "6pm to last train in Tokyo" as a continuous 3D autoplay mega-world I could put on Twitch and have viewers stay for hours.
Hard constraints:
- One HTML file, < 200KB.
- three.js r0.160.0 from unpkg, IIFE, strict mode, full disposable cleanup, reseed every ~10 min.
- First body line: <!-- ROUND15_MEGA v1 -->
- 7 spatial sub-locations in one three.js scene: Shibuya Scramble Crossing, JR Yamanote Station with platform, Neon Alley with izakaya signs, Konbini with sliding doors and 24h sign, Capsule Hotel with lit pods, Karaoke Box, Ramen Yatai cart.
- Mini-map canvas in HUD showing all 7 hotspots + crowd dots + train position + active camera pin.
- 100+ named characters via combinatorial name pool. At least 10 featured cast with rotating "WHO IS" lower-thirds. 220 InstancedMesh pedestrians with role-based behavior: scramble walkers obey a traffic light, platform flow loops the station, alley wanderers loiter under signs, konbini queue forms and dissolves, karaoke loiterers idle outside.
- 5-act time arc 18:00 → 23:00 at 30× sim speed: Rush Hour → Izakaya Golden Hour → Karaoke → Late Ramen → Last Train, then reseed.
- Custom shader sky transitioning dusk to night. Animated billboard shader cycling neon ads. Rain particles + wet ground reflection between 21:00 and 22:00.
- Sliding Yamanote train arriving and departing on a ~24s cycle. Delivery cyclist threading the alley. Lit capsule pods. Traffic-light crossing logic that actually gates the scramble.
- 18 director cameras with weighted selection per act (scramble cams during rush, alley cams during golden hour, train cams at last train).
- HUD: "TOKYO LIVE" logo, JST clock, weather, act badge, camera label, mini-map, scrolling chyron with cross-system events ("ramen yatai sells out as last train pulls in"), rotating "WHO IS" lower-thirds.
Tone: warm, neon, cozy. The kind of stream people leave on while studying.
Paste this into Claude, Cursor, or Copilot. Change one thing that matters to you.
What I learned shipping it
- How to fake a believable Tokyo at 6pm with seven recognizable sub-locations in one three.js scene under 40KB
- How to give a crowd of 220 InstancedMesh pedestrians five different behaviors (scramble, platform, alley, queue, loiter) without burning your frame budget
- How to schedule a five-act sim day so the cinematography, sky color, weather, and chyron all advance the same story together