tutorial 01 · 60-second score chase
One-button arcade game
The best first project. One action, one obvious danger, and a score worth chasing. Think jump, flap, dash, or switch lanes.
build it in this order
- 1
Choose one verb
Pick jump, flap, dash, or lane-switch. The same input should work with Space, click, and tap.
- 2
Build the fair version
Start slow, show hazards early, and leave enough room to react. Speed should rise gradually instead of spiking at random.
- 3
Add the reason to replay
Track score and best score. Reward close calls or clean streaks, then restart in one click when the run ends.
- 4
Polish the hit
Use a tiny freeze, sound, and visible impact when the player scores or crashes. Keep particles short and capped.
check before moving on
- A new player understands the control in five seconds
- The first obstacle is safe enough to learn from
- A full run takes about 45-90 seconds
- Restart works without reloading the page
Open the ready-to-copy build prompt
Change the title and theme if you like. Keep the scope, fairness, accessibility, and verification sections for the first build.
Build a polished one-button browser arcade game for Slop Farm. ## Game idea Create a game called "Barnstorm Bounce." The player controls a tiny spring-loaded pig crossing a farm at sunset. Space, click, or tap makes the pig bounce. The pig automatically moves forward. ## Main loop - Runs last about 60 seconds, but skilled players can continue longer. - The player dodges fences, mud puddles, and low hay carts. - Passing a hazard earns one point. A close pass fills a short combo meter. - Speed increases gently every 15 points. Never create an unavoidable obstacle pattern. - One collision ends the run. Show score, best score, and a large instant-restart button. ## Feel - Use crisp original pixel-style shapes drawn with canvas or CSS. No external art. - Make the jump readable: squash before takeoff, a clean arc, a small landing puff, and a brief impact pause on failure. - Add lightweight generated sound with Web Audio, plus a mute control. - Use a warm farm palette with strong contrast between the pig, ground, and hazards. ## Controls and layout - Space, click, and tap all trigger the same bounce. - Prevent accidental double input while airborne. - Scale to phone and desktop screens. Keep the game centered with no browser-page scrolling. - Show the control on the start screen, then get out of the way. ## Slop Farm build rules - Deliver a complete small game, not a scaffold, mockup, or design document. - It must be a static browser build with index.html at the project root. - Use relative local paths. Do not require a custom backend, database credential, API key, package install, or arbitrary internet service. - Do not load scripts, fonts, images, or audio from a CDN. Generate simple art and sound in code when practical. - Support keyboard and pointer controls. Add touch controls when the game needs more than one action. - Include a clear start state, short instructions, pause, mute, restart, win/lose feedback, and a way to play again. - Fit phones and desktop browsers without page scrolling during play. Keep important text readable at 390px wide. - Respect prefers-reduced-motion. Do not use flashing effects or rely on color alone to explain danger or success. - Keep game state bounded: cap particles and enemies, clamp frame time, clean up removed objects, and avoid console errors. - For local-only progress, save harmless settings or high scores in localStorage and keep working if storage is unavailable. - If the project declares Slop Farm cloud saves or multiplayer, load only https://slopfarm.games/sdk/slopfarm.js and use its documented API. Never embed Supabase credentials or call platform tables directly. ## Finish the job 1. Build every required file. 2. Run the game in a browser and play through the main loop several times. 3. Fix broken controls, impossible states, console errors, layout overflow, and unclear feedback. 4. List the final files and give exact local test instructions. 5. End with a short manual test checklist and name the folder I should compress for upload. Do not stop after explaining the code. Create the working game.