After a long hiatus in Game Development since last summer, is time to go back to working on my projects, in order to get the ball rolling again and get acquainted back with the tools and C# in general I started with a completely new and simple project from scratch, giving myself just around a month to finish, and publish it.
Compared with Panda Hell this project has a much more simple and short scope. The main MVP was completed during week 1, however this is not that big of a deal either as you can find tutorials in YouTube to do this classic snake-based game in ~20 minutes for all programming languages out there.
The main idea here is to grab a simple mechanic from an existing game, replicate it, add a few twists here and there, and create something different, but still keeping it simple and with narrow scope. For this project I choose the Snake Game, that classic you could play in your Nokia 3310, where must eat apples to generate score, but as you do, your size also increases, making it more difficult little by little.
During week 1: I created the main MVP, the classic snake game where the snake (player) grows as eats apples, and dies if gets out of the playing area, as well as it gets entangled with its own tail .
Now that the main mechanics are implemented is time to iterate and give it a twist, after all: Who wants to play again to Snake? And why people should play my version instead of the thousand of – more polished – versions that can be found out there?
Imagine the classic snake game, you move and pick apples, you earn score when you do. The first twist is a time counter, if the timer reaches 0 you die, so you can die if 1) You touch the borders, 2) You touch your own tail, or 3) The timer reaches zero.
There’s also buff/de-buff modifiers as well. For now I’ve added 4 pickup items (you can see their effect them at the video below, around minute 2:00), these items are:
– + time, – time: Adds or subtracts seconds from the timer.
– +speed, -speed: Makes the snake faster / slower
During week 2 (currently): I’ve spent an enormous amount of time setting up Unity Mobile 5 in order to test this on mobile devices. While setting this in Android has been pretty challenging and impossible to make it work so far due to hundreds of different issues (will write a post about this sooner or later), in iOS was a plug & play breeze and worked nicely. You can check some development workflow here:
Objectives for the week:
|– Make the game responsive to touch screen||Completed|
|– Quit and Restart buttons and functionality||Completed|
|– Adaptable/dynamic camera to fit all mobile devices||Todo|
|– Add HighScore functionality, must work between sessions||Completed|
|– Set TestFlight and deploy a test build to share||Todo|
|– Game feel: Add floating text||Todo|
|– Game feel: Add effect when items are picked up||Todo|
|– Gameplay: Add items x4 that buffs/de-buffs player||Completed|
|– Game feel: Make text more prominent and dynamic||Todo|
|– Game design: Start to plan levelUp system||Todo|
Last but not least: Why Ngu? This is just a codename for the moment, Ngu is the transliteration for งู , which means Snake in Thai. Most definitely won’t be the final name, as I need to go through all the art implementation before deciding so, but works for now to keep track of the project.
Interested in more details of how any of these features/updates were or are being developed? Join the subscription list: