Skip to content

Arcade › Garden Snake

Garden Snake

  • 3d
  • snake
  • arcade
  • grid-based
  • mobile
  • casual
0
Remix it Discord

3 plays

How to play

Click the game above and it runs right here in your browser. No download, no installer, no account needed. Mason Cobb-Diaz built it with Cinevva, so it works on a phone or a tablet too.

Discussion

Nobody has said anything about Garden Snake yet. Play it, then tell Mason Cobb-Diaz what you would add next.

Make your own game

Garden Snake was built by Mason Cobb-Diaz with the Cinevva game creator: describe the game you want in chat, watch it get built, and play it in your browser minutes later.

Remix Garden Snake opens the real game in the creator and forks its actual files, chat and design doc, so you start from the code rather than from a description.

Read the build brief for Garden Snake

Cinevva's analyzer read this game's design doc and its source, then wrote the brief below. "Make your own" hands it to the game creator as your opening message, so you start from a real spec rather than a one-line idea.

Create a playable game titled “Garden Snake,” a classic grid-based snake game rendered as a simple stylized 3D scene with Three.js. Use an orthographic camera positioned above and toward the board at roughly (0,18,14), looking at the origin, so the square playfield is seen from an angled top-down perspective. Fill the screen with a very dark navy-blue background and subtle distance fog.

Build a 17-by-17 square board whose playable cells use alternating dark blue-green/icy moonlit blue checkerboard tiles. Each tile is a very thin raised box. Surround the board on all four sides with one-cell-thick low block walls in a muted blue-gray color, making the snake unable to leave the board. Use soft cool lighting: a bright pale-blue hemisphere/ambient light and a pale-blue directional light from above-left/front, with shadows enabled. Keep the visual style clean, low-poly and minimal, with solid materials and no decorative scenery beyond the board, snake, apple, and walls.

The game starts with a centered modal card over the board. The card is a wide, dark translucent navy rectangle with a thin semi-transparent cyan border and soft shadow. It displays the large bright cyan title “Garden Snake,” explanatory text saying “Eat the red apples, grow longer, and don't bite yourself. Press Start or use any direction key.”, and a cyan Start button with dark text and a darker pressed/shadow strip beneath it. Hide this card while the game is running. When the snake crashes, show it again and change the message to “Game over — you scored [score]. Press Start to try again.” The Start button begins a new game after game over, or starts the initial game.

The playable object is a snake moving one grid cell at a time on the 17-by-17 board. Initially it has three segments arranged horizontally at coordinates (-2,0), (-3,0), and (-4,0), with its head moving right. Render the body as rounded-looking rectangular 3D blocks approximately 0.86 by 0.62 by 0.86, colored bright mint green/cyan, and render the head as a slightly larger block approximately 0.94 by 0.74 by 0.94 in brighter light blue. Put two tiny dark eyes on the front of the head, oriented according to its current direction. The snake should visually glide between cells using smooth interpolation rather than teleporting, while its logical movement remains grid-based.

Place exactly one apple at a time on a randomly selected free cell that is not occupied by the snake. Render it as a static red sphere with a small brown angled stem. Do not make it bob or spin. When the snake’s head enters the apple cell, increase the score by 1, retain the tail segment so the snake grows by one, play a short two-tone ascending eat sound, and immediately place another apple on a free cell.

The snake moves automatically at a timed interval, starting at 190 milliseconds per grid step. Increase speed every four points by reducing the interval by 8 ms, but never go below 82 ms. Queue direction input for the next step. Accept Arrow Up/Down/Left/Right and WASD on the keyboard, and reject a direction that is directly opposite the current direction. Any direction key should also start the game if it is not running. Provide touch support through a four-button D-pad positioned at the lower-right corner in a 3-by-3 arrangement: up in the top center, left in middle-left, right in middle-right, and down in bottom-center. Use large rounded cyan buttons with arrow glyphs; make them slightly translucent on larger screens. Also support swipe gestures: detect a touch/pointer drag of at least about 28 pixels and choose the dominant horizontal or vertical direction. Tapping the D-pad should not interfere with gameplay.

If the next head cell is outside the 17-by-17 playable area or overlaps any current snake segment, end the game, stop movement, play a short descending low crash sound, and show the game-over modal. Do not wrap around the edges. Keep a persistent best score using local browser storage under a Garden Snake best-points key; update it whenever the current score exceeds it.

Overlay a fixed HUD above the canvas. At the top-left show large bold white text on two lines: “Score: 0” and “Best: 0,” updating live. At the top-right show a compact white/gray hint on two lines: “Arrow keys / WASD” and “Swipe or tap the D-pad.” Use a system sans-serif font, strong weight, and a subtle dark text shadow for readability. The game should be responsive: resize the orthographic camera and renderer to fill the viewport, prevent page scrolling/zooming, and keep the HUD and D-pad usable on mobile. Include start, apple-eaten, and crash audio effects using short synthesized tones, initialized after user interaction.

More free browser games

Browse the whole Arcade →