Theme: SNAKE
Rules and mechanic description below.
Welcome to the Core Mechanics Challenge!
This game jam is perfect for everyone—whether you’re a beginner learning to code and make games, or an experienced developer seeking a fun challenge!
It’s a great opportunity to learn programming, explore a new engine, build your portfolio, and finish with a complete, playable game.
For seasoned developers, it’s a chance to showcase your expertise or refresh skills that may need a little polishing!
About This Jam
The time needed to complete the jam depends on your skill level—1–2 days for a pro and 8–12 hours for a beginner. If you finish early, use the extra time to refine your code, enhance visuals, add features like controller support or multiplayer, and make your game unique to stand out.
This jam is designed to mimic a real development cycle, complete with evolving requirements and code reviews, giving you the experience of delivering a polished, finished game.
How It Works
At the start of the jam, you’ll be provided with a well-known game and a detailed description of its core mechanic. Your task is to implement it in a way that is flexible, reusable, and extendable, while documenting your progress using a version control system like Git.
Midway through the jam, new requirements may be introduced, challenging you to adapt and refine your solution to meet the updated criteria.
After submissions close, you’ll evaluate other participants’ entries. Judging will focus on code quality, playability, and any unique twists they’ve added to the base mechanics (more details below).
Theme Snake
Main Mechanic Description:
Objective: Control a continuously moving snake to eat food, grow in length, and avoid collisions.
Core Mechanics:
- Movement:
- The snake moves in one of four directions (up, down, left, right).
- Player input changes the snake's direction, but not its continuous movement.
- Food:
- Randomly spawns on the game area.
- Eating food increases the snake’s length.
- Game Over:
- The game ends if the snake collides with itself or the game boundaries.
Optional Features:
- Scoring system for food eaten.
- Additional features added mid-jam
- (Advanced) Teleport! Make specific two tiles (or more) that would teleport snake from one to another one entering tile at a time!
- (Easy) Add additional food. It should give different amount of "growth" to the snake. (snake becomes bigger by 2+ tiles)
- (Very Easy) Add obstacles to a map
- (Medium) Add extra life to a snake. If it collides with itself or another obstacle decrease the snakes life's amount and allow player to move another direction if possible, else - game over!
- (Very Easy) As snake gets longer - it should also move faster. (10 food approximately 2x speed, just speed increase must be visible).
- (Easy) Note: you can add extra "food power ups" that would slow the snake down for a limited time
What you will need
To participate you will need:
Rules
MUST
- All code must be developed during the jam!
- Project must be publicly accessible!
- Reused assets must be credited and comply with licensing.
SHOULD
Source code should be publicly hosted on GitHub. While GitHub is preferred for its popularity and ease of access for judges, repositories hosted on other public Git platforms (e.g., GitLab, Bitbucket) are also allowed. Alternatively, participants can upload their source code along with the full `.git` folder to preserve version history. Please note that GitHub is recommended for smoother judging and community interaction.
AI tools and tutorials are allowed, but you must understand and adapt the solutions you use.
Judging Criteria
- Code style: How "pretty" the code is for you? Is it the same across whole code project?
- Code complexity. How understandable the code is for you?
- Reusability/Modularity/Extendability: How easy it would be for you to change/work with this code or use it somewhere else?
- Is it a game? One star for each point:
- consistent art: art is same style across whole game and "fits" (no mixing of photorealistic assets with pixel art and ASCII). For example if the game is done as ASCII then it uses it across whole game. (this is to prevent people from dropping random assets just for a checkbox)
- consistent sound: same as with art, (should not mix good quality professional sounds with random bad mic ones for example)
- can be played, has win and/or loose conditions: as it makes sense for a current theme. You should be able to start the game, play it and finish it (by winning or loosing).
- has UI/UX: menus, start/end screens, score etc.
- has something extra: a nice twist, extended mechanics, levels, extra art and graphics, controller support, multiplayer etc. Anything that expands on initial game jam requirements.
- Git and development process: How good and understandable commit messages are? Can you see the "flow" of a project?