# One-Shot Prompt

**Game**: Pressure Drop
**Theme**: Bioluminescent deep sea trench
**Date**: 2026-04-08

## Prompt

Write a single-file HTML5 Canvas arcade game called **Pressure Drop**. It must be a polished, playable endless runner set in a bioluminescent deep-sea trench.

Design goals:
- The game should feel like a premium one-shot demo, not a template.
- Use a dark indigo, teal, cyan, and pearl palette with glowing accents, soft gradients, and subtle grain.
- The visual language should suggest a submersible moving through a living trench: light shafts, drifting bubbles, sonar pings, particle trails, and looming rock silhouettes.
- Use sans-serif typography only. Keep the UI crisp and futuristic, with a glassy HUD.

Core gameplay:
- The player pilots a small submersible called **Nautilus-9** through three horizontal lanes.
- Obstacles descend from the top of the playfield at increasing speed.
- The player steers left and right between lanes to avoid mines, rock drifts, and pressure vents.
- Collectible pearl canisters and data shards increase score and raise a combo multiplier.
- A boost action temporarily increases speed, grants brief invulnerability, and lets the player smash through minor debris.
- The game must get harder over time by increasing scroll speed, spawn frequency, obstacle mix, and the chance of chained hazards.

Controls:
- Keyboard: `ArrowLeft` / `A`, `ArrowRight` / `D`, `Space` / `W` for boost, `P` or `Esc` to pause.
- Mobile: visible on-screen buttons for left, right, boost, and pause.
- Canvas swipes should also work on touch devices: swipe left/right to change lanes, tap or short swipe up to boost.
- The start screen must say `Press SPACE / Tap to start`.

Game states:
- Start screen with title, atmospheric animation, controls, and a short premise.
- Playing state with live score, best score, depth, hull, multiplier, and boost meter.
- Paused state with a semi-transparent overlay and resume hint.
- Game over state with final score, best score comparison, and `Play Again`.

Persistence and feedback:
- Save the best score in `localStorage`.
- Use procedural Web Audio blips for collect, boost, hit, and game over events, with a mute-friendly implementation.
- Add particles for pickups, collisions, and boost activation.
- Add screen shake and brief flash on damage or game over.

Presentation:
- Build the game as a responsive single HTML file with inline CSS and JavaScript only.
- Support retina canvases using `devicePixelRatio`.
- Respect `prefers-reduced-motion` by reducing shake, particles, and idle motion.
- Include a favicon, page title, meta description, Open Graph tags, and Twitter card tags.
- Make the UI readable on mobile and desktop.

Implementation details:
- Use a smooth `requestAnimationFrame` loop with delta-time scaling.
- Use a perspective trench background with moving lane markers and drifting ambient creatures.
- Animate the submarine with subtle bobbing, tilt, and glow.
- Include ambient motion even while idle so the start screen feels alive.
- The playfield should fill the viewport and remain playable at all sizes.

The final result should be a complete, self-contained arcade game with a confident visual identity and enough polish to feel like a finished demo.

## Notes

- The chosen concept is an endless lane-dodging submersible runner.
- The name `Pressure Drop` fits the trench setting and the rising difficulty curve.
- The target experience is cinematic but readable, with generous touch targets and clear feedback.
