Initial thoughts on making snake
I need to make Snake, so I’m going to start by making a list of the components of the game, as well as some variations that may be interesting to implement.
The Mechanics of Snake
- The original game is based on an unseen grid
- The player controls head of the snake, going up, down, left and right
- The snake has a length, part of the snake will stay in a cell for that many ‘movements’ after the snake’s head has left it
- The snake will die if it tries to enter a cell that it already occupies with its body
- The level has one piece of ‘food’ at a time, which will spawn randomly on a cell the snake doesn’t occupy.
- When the snake’s head collides with the food, it collects it
- Collecting food increments the score
- The length of the snake increases immediately
- In some versions of the game there are bonus collectibles, which spawn occasionally and stay in the level for a fixed amount of movements and give bonus points if you collect them
- In some versions of the game hitting the edge of the screen will kill the snake, in others the snake’s head will appear at the other side of the screen
Possible Gameplay Variations
In order to make the game less stale, giving players a reason to play my game rather than the countless versions of snake that exist online I have made a list of potential variations to the mechanics that I can use.
- A snake with gaps.
Instead of adding length to the end of the snake, eating food could create it one cell behind the end, so the snake gets longer faster but it can move through itself in some places. - 360 degree control
Rather than having up, down, left and right, the snake could be rotated with only the left and right keys with the player having 360 degrees of control. For this to work the food would have to be much larger, otherwise collecting it would be incredible difficult.
I am pretty sure this game already exists. - Multiplayer
More than one snake competing, both for the food and to kill the other snakes, this could be good because there could be a number of different game modes or win conditions. - Enemy AI
The game could have AI who are designed to target the snake's head, colliding with them would kill the snake. - Varied world sizes or shapes
The game could have multiple levels, which are different sizes or shapes, making some easier or harder than others.
In Snake 2 whenever the snake left the map it would transport to the other side of the map, in this variation it could be that whenever the snake leaves the map, the map changes shape. - Obstacles that are procedurally added
Instead of the snake growing in length whenever it gets food, the game could just add an obstacle every time, so the core mechanics of the game are still present but the game has a different set of strategies needed to win.