Snake Evolves by epicSpeedTurtle

[raw]
made by epicSpeedTurtle for LD24 (COMPO)
This is the game for the "Evolution" themed competition. And it tells about game evolution.

The controls are standart - arrow keys.

Feedback

dvdking
26. Aug 2012 · 17:31 UTC
great game
very interesting idea
SilentDonut
26. Aug 2012 · 19:22 UTC
Controls are not working that well and the music loop is really annoying, but apart from that, it's a nice game. :)
jijaweb
26. Aug 2012 · 19:44 UTC
Great game. Like it a lot.
Erephy
27. Aug 2012 · 07:25 UTC
It really evolves! :)
Great game, that 3rd snake made me mad though!!
bluefoxgs
27. Aug 2012 · 16:56 UTC
Cool game, I was having fun with the first stage of snake and then it changed and i was like "This is so cool :D" and then the third one was annoying and awesome at the same time!
Frozen Fractal
27. Aug 2012 · 21:08 UTC
I liked the music for the first ten seconds, but by then I'd heard all of it twice :) The controls are a bit laggy for me which makes it hard to play.
Cthulhu
29. Aug 2012 · 02:40 UTC
Haha my initial entry name was "SnakEvolution" but as the game evolved, this name wasn't accurate anymore!

Very nice gameplay but you've got a serious probleme with controls! Are you using something like a wait function? Because I would cause this kind of trouble :/

I reached the level 2 easily but I couldn't finish 3 because of these control problems :(

Good job anyway! This is the kind of game I'd like to implement!

I took a look a your source code and I've got an idea to improve controls:
I think the problems are coming from the fact that the key events are too fast. I mean that when an arrow key is pressed, (maybe) the user the releasing the key too fast and the boolean that is recording his state is set to false which leads to the key not being recorded.

In main.as, instead of registering Arrow keys state with booleans, you could register the 'lastPressedTime'. Then, when you wanna get the state of the keys you do like this:

if (CurrentTime - lastPressedTime < minTime)
// The key is detected as pressed
else
// The key is not detected as pressed

minTime should be something like 'timeBetweenSteps' (the time on which your proceed function is based)
amidos2006
29. Aug 2012 · 15:57 UTC
amazing idea :)
AleksandarDev
01. Sep 2012 · 21:39 UTC
Great game! I like snake games (I did one too "Aeon" for this compo) but you have to work on your controls. I assume that you check for key on each snake update, that is not right, you should check for keys on each update and apply last direction on snake update. In that way you would avoid "lag".