Snake : Supreme!

Snake, but with obstacles appearing over time

This game is played on a 32x32 board (the image above shows a simplified board). Tiles on the board are empty when the game begins, but water puddles, sponges and stars appear over time. The player uses arrow keys to navigate the snake, with the aim of avoiding colliding with itself or water puddles while eating as many stars as possible. The game ends when the snake either touches itself or tiles containing water puddles. The player's score is determined by the number of stars the snake has devoured.

Gameplay

Start: When the game starts, the snake is placed at a random grid on the board being static. Snake starts with a length of 3 grids with all 3 grids at the same row. A star is also placed in a random grid on the board that doesn't touch the snake. The snake is static at the beginnig. Once the player hits one of the arrow keys, the snake never stops moving.

Water Puddle & Sponge: Every 5 seconds, a water puddle grid appears on the board with probability 2/3 and a sponge grid appears with probability 1/3. A grid on the board can contain at most one sponge or water puddle.

Movement: When the arrow keys are pressed, the snake heads in the indicated direction. If the snake touches the grid containing the star, the tail of the snake grows for one grid, and the star's position is randomized to appear at a different grid. If the snake hits the wall, the water puddle or itself, the game ends. If the snake hits the sponge, all grids containing water puddles are cleared.

Finish: The game stops if the snake hits the wall, the water puddle or itself.

Drawing: The board is drawn in an axis-aligned orthogonal 2D space.

The following images show how the tail of the snake grows when a star is consumed:

Assets

CC0 Creative Commons:Free for commercial use, No attribution required
CC0 Creative Commons:Free for commercial use, No attribution required
CC0 Creative Commons:Free for commercial use, No attribution required
CC0 Creative Commons:Free for commercial use, No attribution required