Jungle Temple

Slash the vines off a mossy jungle pyramid, crack three puzzles and the sealed door pours golden light down the stairs onto the idol.

Worlds

Built by Claude Opus 5.5$6.93 · 52m11s

Loading world…

How to play

Goal Uncover the temple and break its three seals: then the sanctum opens on the golden idol.

Try this
  • Drag the machete (1) through the vines, then orbit round: the far side counts too
  • Turn the sun statues to face the sun
  • Open the sluice so the water turns the hidden wheel
  • Light the dark room with the torch (3) to read the order of the glyph plates

Keys 1–5 Machete, Hand, Torch, Rope, WaterE call the explorerG rainC Cinema

Secret What happens if you try to swap the idol?
Show hint (spoiler)

Once the explorer has the idol, use Hand (2) to have him pick up a loose stone, then tap the altar to put it in the idol's place. The temple rumbles, a boulder starts to roll... nice try.

Remix in Claude

The prompt

Build "Jungle Temple", a playable miniature-diorama adventure: a jungle block with a waterfall and a hidden stone temple overgrown with vines, three small puzzles and a golden idol, as ONE self-contained HTML file.

It must be **beautiful above everything**, like a premium animated film: a lush, humid, cinematic jungle with deep greens, god rays through the canopy, mossy carved stone and a golden glow. Great animation on everything that moves: nothing pops, snaps or teleports; things grow, ease, overshoot a little and settle. Calm and satisfying to play, spectacular to watch.

## Tech

* three.js r170 with WebGPURenderer (automatic WebGL2 fallback). Load it with an importmap from jsDelivr: map "three", "three/webgpu" and "three/tsl" to `three@0.170.0/build/three.webgpu.min.js`, and "three/addons/" to `three@0.170.0/examples/jsm/`.
* Use TSL node materials, OrbitControls from the addons, and a subtle BloomNode pass (strength ~0.4, threshold ~1.5) so only emissive things glow (the golden idol, torches, fireflies, glowing glyphs at night).
* No external assets. Every texture is drawn on a canvas or generated as pixel data at startup. Every sound is synthesized with WebAudio. The only network requests are three.js from jsDelivr and the Fredoka font from Google Fonts; if the font fails to load, fall back to a system rounded sans-serif without breaking anything.
* Start the HTML with `<!doctype html>` and `<meta charset="utf-8">`.
* It must run inside a sandboxed iframe (`sandbox="allow-scripts allow-pointer-lock"`, no `allow-same-origin`). There, `localStorage` and cookies throw a SecurityError: wrap every storage access in `try/catch` and keep values in memory instead. Do not use `alert`, pop-ups or top-level navigation.
* Neutral tone mapping, soft 2048 shadow map (1024 on phones).
* Known three r170 pitfalls, avoid them:
   * the scene background is drawn after transparent objects, so draw the sky/backdrop as a mesh (or give transparent sky objects `depthWrite: true`), or they disappear;
   * never `.clone()` a CanvasTexture (the clone uploads black); create separate textures or use DataTexture;
   * never let a helper overwrite a shared temp vector that its caller is still using.
* The simulation runs on a fixed 60 Hz timestep and is frame-rate independent. At low frame rates, drop simulation time instead of exploding.
* A quality scaler lowers the pixel ratio, then particle counts, when frames get slow.
* Respect prefers-reduced-motion: softer shake, slower camera moves.

## Priorities

Build in this order and finish each tier properly before the next. A polished tier 1 beats a broken everything.

1. **Must be excellent:** the jungle diorama (dense foliage, vines, waterfall, river, mossy temple), cutting vines with the machete, the three puzzles and the door opening to the idol, the demo mode.
2. **Must work:** the explorer figure, animals (monkeys, parrots, jaguar, frogs, fireflies), the torch in dark rooms, the rope bridge, the temple meter and milestones, day/night, sound, the card UI, camera.
3. **Polish:** gentle traps, rain and mist, glowing glyphs at night, the idol swap Easter egg.

Never ship a feature half-working: if a tier-3 feature can't be done well, leave it out cleanly.

## The diorama

* A 10×10 jungle block on a dark wooden base, glass edges, cut sides showing dark soil, roots and buried stone. Soft green-grey backdrop.
* **Jungle:** dense layered foliage (big leaves, ferns, palms, hanging **vines**), a **waterfall** off a cliff into a pool and a winding **river**, mist above the water, **god rays** through the canopy, dappled light on the ground.
* **The temple:** a stepped stone pyramid with carved faces and glyphs, **completely overgrown**: vines, roots and moss cover its doors, stairs and carvings at the start. Inside (visible as the walls are uncovered or via a cutaway) a few dark rooms and the sealed inner sanctum.

## The explorer

* A small explorer figure (hat, backpack) who **walks to where you tap** (pathfinding over the terrain, climbing stairs, crossing bridges), pushes blocks, pulls levers and carries the torch. Cute, readable animations: walking, climbing, pulling, jumping back from traps, cheering.

## Tools (card, keys 1–5)

* **Machete:** drag across vines and foliage to **cut** them: leaves and vine pieces fly and fall, revealing carvings and paths; cut plants slowly regrow.
* **Hand:** tap to move the explorer, tap levers and blocks to use them.
* **Torch:** light a torch: dark rooms light up with flickering warm light and glyphs become readable.
* **Rope:** drag between two high points to place a **rope bridge** over the river or a gap; it sways (verlet rope).
* **Water:** open or close sluice gates (used in a puzzle).

## Puzzles (three, in any order)

1. **Sun statues:** three statues on the terraces must be rotated (tap to turn) so their faces point at the sun's position; a beam of light connects them when correct.
2. **Water gate:** open a sluice so the river fills a stone channel that turns a hidden wheel (water flows and the wheel turns).
3. **Pressure plates:** a floor with glyph plates must be stepped on in the order shown by a carving (found by cutting vines and using the torch). Wrong steps trigger a **gentle trap** (darts that stick into a dummy, a rolling boulder that the explorer dodges, or falling leaves).
* When all three are solved, the **sanctum door grinds open**, dust falls, and **golden light pours out** onto the **golden idol** on its altar.

## Life and weather

* **Monkeys** swing on vines and chatter (they steal the explorer's hat once), **parrots** fly and squawk, a **jaguar** rests on a branch and yawns, **frogs** on leaves, **butterflies**, and **fireflies** at night.
* **Rain:** heavy tropical rain with drips from leaves, the waterfall swells, mist rises.
* **Day/night:** at night the temple's glyphs **glow** faintly blue, fireflies swirl, torches flicker.

## Goal and milestones

* **Temple** meter: vines cleared, puzzles solved (3), idol found.
* At 100%: the explorer lifts the idol, the whole temple's carvings glow gold, birds burst from the canopy.

Milestones (toasts, once each): "First carving", "Explorer arrives", "Torchlight", "Statues aligned", "The wheel turns", "Right steps", "The idol", "Temple uncovered".

## Easter egg

If the player takes the idol and then puts a **stone** back on the altar in its place, the temple rumbles, a big round boulder starts to roll... and stops, and the explorer tips his hat. Toast: "Nice try." Never hint at it in the UI.

## Interface

A light, playful UI that never covers the world. On phones the card becomes a compact bottom sheet.

* Top left:
   * small caps "POKEABLE · WORLD";
   * a big chunky rounded heading on two lines, "Jungle" / "Temple", in Fredoka from Google Fonts, light on the deep green backdrop, with a tiny vine curling around the "J";
   * caption "Cut the vines. Find the idol.".
* Top right: a live status dot with "WEBGPU · LIVE" (or "WEBGL2 · LIVE"), a speaker pill button (ON / MUTED), and "PAUSED" when paused.
* Right card "Expedition": about 240 px wide, off-white, 20 px corners, soft shadow, no hairlines, gold (#d4a017) accent, collapsible to a small pill. Contents:
   * a big animated "Temple" % with a bar, and three puzzle icons that light up when solved
   * tool picker: Machete, Hand, Torch, Rope, Water, each with a drawn icon and its key number
   * event buttons: Rain, Call the explorer
   * sliders with monospace value chips: Time of day, Jungle density (regrow speed), Sound (master volume)
   * switches: Animals (on), Mist (on), Slow motion (¼ speed), Cinema
   * buttons Reset and New (random seed), a dark full-width Pause/Resume pill, and the world's number ("No. 0001").
* Bottom left: a one-line hint that changes with the tool:
   * Machete: "Drag to cut through the vines."
   * Hand: "Tap to walk. Tap levers and stones."
   * Torch: "Light up the dark rooms."
   * Rope: "Drag between two points for a bridge."
   * Water: "Open the sluice gates."
* Bottom right: a collapsible "How it works" panel, 5–6 plain lines on cutting and regrowing plants, the three puzzles, the explorer's pathfinding, the rope bridge, rain and mist, the camera controls, and synthesized sound.
* Toasts at the top centre for milestones and events.
* Keys: 1–5 tools, G rain, E call the explorer, Space pause, R reset, N new, M mute, S slow motion, C cinema, 0 reset view, Esc stop follow / exit cinema.

## Camera

* OrbitControls with damping and zoom to cursor, within sensible limits.
* Double-click the explorer or a monkey to follow it; Esc or 0 stops.
* Camera bar (floating pill, bottom right of the scene area): zoom −, a zoom % readout, zoom +, rotate left, rotate right, reset; button moves tween smoothly.
* The default framing fits the whole world into the free area, accounting for the card and title.
* **Cinema (`C`):** hides all UI and slowly orbits the camera.

## Sound

* WebAudio only. Create the AudioContext on the first gesture and never before.
* Master gain feeds a compressor, so rapid actions never clip. Limit voices (about 16) and wrap every call in try/catch so a failing audio call never breaks the world.
* Loops: dense jungle ambience (insects, distant birds), the waterfall (louder near it), rain, night frogs and crickets, a low mysterious drone inside the temple.
* One-shots: leafy slashes for the machete, stone grinding for statues and doors, a water rush and wheel creak, dart thwips, a boulder rumble, monkey chatter, parrot squawks, a jaguar yawn, a golden shimmer and choir-like chord for the idol, chimes for milestones.

## Demo mode (required)

If the URL has `?demo=1` (or `#demo`), auto-play a deterministic 4.0 s loop:

* Rules:
   * Hide all UI and the cursor; never create an AudioContext.
   * Fixed quality, default seed, the temple half overgrown, morning light rays, default camera, no OrbitControls.
   * Drive the simulation from real elapsed time with the fixed timestep, and restart from the identical state every 4.0 s.
   * Start moving within 1 s of load, and stay readable at 15 fps.
* Timeline:
   * 0.0–1.5 s: an invisible machete slashes across the vines on the temple front; leaves fly and carvings appear.
   * 1.5–2.5 s: the explorer pulls a lever; the stone door starts to grind open with dust.
   * 2.5–3.5 s: golden light pours out through the opening across the mist.
   * 3.5–4.0 s: a parrot flies through the light; monkeys on a vine.

## Before you finish, check

* Cutting feels satisfying and reveals carvings and paths; plants regrow slowly.
* The explorer walks anywhere reachable, climbs stairs and crosses bridges.
* All three puzzles work and can't get stuck; traps are gentle; the door and idol sequence plays every time.
* Animals, rain, mist, day/night and the Easter egg.
* Every tool, slider, switch, button and key; follow mode; Cinema; pause and resume; resizing to phone width.
* Sound behaviour.
* It works inside `<iframe sandbox="allow-scripts allow-pointer-lock">` with no errors (storage blocked).
* `?demo=1` matches the timeline.
* No console or WebGPU validation errors, and it stays smooth on a mid-range laptop.

Put the moment the vines fall away and the golden light pours out of the temple first. It should feel like the start of an adventure film.

More worlds

All worlds →