Friday, 2 December 2011

A challenger appears!

I've been working on a game too, so I'm here to claim my prize! I call it GRAV:BEAT (formerly known as Stuts 2) and it's the sequel to a game I made many years ago but never released mainly because I wasn't happy with the performance. But since then a lot has happened on the Flash platform and we now have GPU-accelerated graphics through Stage3D, so when NaGaDeMon came up I decided to give it another go. The goals I set up for this game was to create a fast-paced game using the Starling framework with lots of special effects running at 60 fps. Oh! And with ball physics!

Hopefully this game will be released sometime in the not-too-distant future. This is what's left to do:
  • It needs more levels! I'm designing them with Inkscape so it's a quite nice experience :)
  • More features! I want to introduce new gameplay elements as you progress through the levels so that the player is curious to see what's next and keeps playing.
  • Some other stuff..
The game is running in Flash and is intended to be played on a computer with a keyboard. It will have highscores and ads from Mochi. When (if?) the game is finished for the primary platform I might look into porting it to mobile devices as well.

It actually feels like I'm really close to finishing the game, so stay tuned! Let's make this December a game design month too! :) All right! Let's go!

Thursday, 1 December 2011

Winning?

You "win" NaGaDemon if you make a game and play it. My RPG game has not progressed that much sins my last post and I can not really claim to have played a complete game at this point, so I guess I kind of lost.

However!

I also won! Wohoo! Because I went from "I would like to do this" to "This is what I'm doing" ad for me that is a really big change. And also, just because NaGaDemon is over does not mean that the game is over. I will complete this game/engine. My end goal is to publish at least one game in the Android Market using this engine. Either free or paid(or both?). I know how to do it, I know it can be done and I really want to do it. So thats's it: I will do it! :)

So what was the end result? Well, basically I'm at the point of the last post with the addition that when the player is thrown into the battle screen: there are 2 enemies there that starts tracking you by closing in one step each time you move. And once they get next to you, they attack you and you usually die. An by usually I mean always. There is rudimentary support for adding weapons and armour into the battle calculations but none exist.

So in short: I'm not done. There is a few things left to make it a "game". There are a lot of things left to make it a game. I will do a lot of things.

A fun month! I will do it again!

Wednesday, 30 November 2011

Success! Well, kind of? :)

The month is over and while I am far from having what would be called a complete (as in publishable) game, I am gonna declare NaGaDeMon won (at least more than lost ;))

All the basic features for core game play is done: The player is controlled by rotating the device (sometimes violently), there is a goal that needs to be reached before time runs out, there are enemies that eat some of your remaining time, and boosts that give you more time. The player also dies if losing control and bumping the head against the ground.

I have successfully deployed and played my game from start to end today, all five levels, dying sometimes, winning sometimes. Success!

But the main reason it's such a raging success is that I managed to do this, without spending insane amounts of time, and still: there's a big part of a game done, I've learnt a new environment and a new platform, I've re-learnt a lot of horrible trigonometry, made new friends and most importantly: remembered how fun it is to make games! There will be more.


Here, have some screenshots, and then I'm gonna talk a bit about what more there is and what is missing:

Super simple intro level, meant to teach the absolute basics.

Suddenly, the goal is... where?

And tricksier still.

So, like I said, all the core features are there and it works. So what needs to be added?

Graphics


Obviously! All of it is ugly placeholder graphics, with programmer's animations. The player needs to be interesting and make cool moves, and everything else needs an artist's touch.

Sound


Also placeholders, though I start to like what Dennis has done for the soundtrack (the sound effects is all my fault!)

Fail


The game needs to taunt the failing player and there needs to be a death screen.

Win and Highscores


The game is designed so that you are supposed  reach the goal with as much time left as possible, meaning that avoiding the enemies and collecting a strategic amount of candles at the same time as reaching the goal will net you bigger scores. This should also be tied to a server, of course!

For the obsessive-compulsive player, a big hit! ;)

Levels!


These are just placeholders, although the first two-three levels now are at least sketches on how to ease a player that don't know what to expect into how to play the game (hopefully). The level editing works so the process is fast, but it still would take quite some tweaking and testing to make good levels, as usual.

Level select


Select level screen, and unlock levels.

Replays


Haven't tried this, but should be possible to save each game and have replays, thanks to Box2D being deterministic, meaning that the physics will repeat the same things given the same input - which is current gravity each frame. They could be played on the start screen, they could be replayed from a menu - and other players could download and watch your speed runs! (Much like N does it).

Tweak and optimize


Make everything better and faster. :) There should be a lot to do on that front.

Other polish


Such as a help screen, menu system, real splash screen, fonts and so on.

Conclusion


I think this could very well be turned into a real game, but then I would need to enlist some help with graphics and sound. I'd also say that taking some time making maybe 15 good levels with nice rounded corners is very doable. So, am I? Definitely maybe. ;) I'd like to see this game in a completed form, and at the very least I'm going to spend some more time tying it together.

Thank you NaGaDeMon! And thank you Bjarne for making me do it... See you again next year!

Tuesday, 22 November 2011

Terrible pace

I've had such a terribly slow progress lately that this blog looks like it belongs to Stoffe. So terrible in fact that I just had to post for the most minuscule of triumphs. After battling with the Bitmap class for way too long and finally realizing that I was a terrible programmer, not that the Bitmap class was terribly implemented: I finally managed to create the pixel-upscale that I wanted.
The tiles in the image here are 16*16 with a pixel-size of 5*5. It is a bit too big naturally, but I thought it would make a better screenshot. I guess a typical pixel size for the final game would probably be 3*3 on a mid range screen.
The image is a bit crushed in this post, so click it to see the original if you want to see a more realistic view of the scaling in action.

Monday, 21 November 2011

Refactor, bugfix, implement, blog, rinse, repeat

New version: http://dl.dropbox.com/u/14713777/GhoulsnWheels.apk

See below for info on what's new.

A fair bit of Sunday's hacking went into restructuring poorly thought through structure. Not perfect now, but better, and a bit easier to work with.

Also got my first real bug report, Mr BZR (if that is indeed your real name) discovered that a part of the world was invisible but still had collision. Since the visuals and collisions are drawn from the same dataset, there should be something wrong in my code... a quick look in Inkscape confirmed that the collisions were correct, so something about the level drawing code then...

Sure enough, and thankfully easy to find (this time). An Obi-Wan error causing the code to ignore the second point in each polygon was a bit odd though, but oh well. :) Slipped past me earlier because most edges are pretty short and so doesn't affect the layout much. Good catch there!

So, some new stuff as well:

Time - it will run out. There's a countdown going on in the corners and when it's down to zero, well so are you. Would be nice to see how this looks on other devices because I'm pretty certain my values are off and therefore hard-coded to my device at the moment.

My First Enemy - a playset suitable for all ages. Not only will the countdown bring death and destruction, there's also a winged demon loose that steals some time from the player given the chance! (What actually happens will be made more visually clear, right now you need to know it to notice it I think).






Saturday, 19 November 2011

Let There Be Rock

Some small updates, same URL as before: http://dl.dropbox.com/u/14713777/GhoulsnWheels.apk (remove old first and install this instead).

Changes in this version:

Programmer. Composer. Lebemann.
Sound

  • an initial sketch of in-game music by the multi-talented Dennis Saarela. If I wanted to have this game made quickly, should have contracted him. ;)
  • kicking off the game with a skateboarding sound
  • death sound, one part inspired by the awesome shattering sound in old Wizball (though mine is nowhere near as shattering) and for the other part I added the Wilhelm Scream for fun (or lulz).
  • winning sound is just a classic sounding victory fanfare
All the sounds temporary/subject to change. Will see if it's reasonable to add some skateboard landing sounds as well, need to take into account time between contacts.

(think I might have had a crash in the sound playing when testing, not debugged yet, so don't be afraid if that happens :))

Can not fall off the world

Spent way too much time trying to have barriers around the world where the player would die if travelling too far away, but wasn't satisfied with gameplay nor how to visualize this. So now instead, the level has its own "gravity" of sorts and will return the player to the playing field if going too far away. Please let me know how this feels, both as concept in itself and the speed/distance etc.

Zoom out

It's now possible to see the whole level by putting two fingers on the screen at the same time (mostly useful on levels the size of the third one or bigger. Need to take into account even bigger levels and make it possible to scroll as well, perhaps. Currently freezes the action, that may well change.


The rest/the next

No changes to graphics or levels (sadly). Need to find someone to do the graphics. And the levels? :)

Next up should be:

  • timer countdown and objects to pick up and gain more time (this will also be the (high)score)
  • enemies, thinking two kinds for now:
    • flying demon that semi-hunts the player (goes in general direction but not homing directy) and that probably do not cause death, but is more annoying by pushing the player (if that works nicely) which in turn may cause death of course
    • gravity-affected objects such as rocks that will cause death, adding to the puzzle since they will roll and fall according to the changed gravity

After that it's time to start tying things together properly with start/death/win screens and also design some actual levels. 11 days to go, hopefully doable. Now it's time for a beak with some drumming and some (many) beers!

Wednesday, 16 November 2011

Testing time time time is fall in love time

fall in love time is testing time time

For those with an Android Device, here's a little APK: http://dl.dropbox.com/u/14713777/GhoulsnWheels.apk

Not gonna say much (no preconceptions) other than that if it works, you should be able to play three levels that will then loop.

At this point I'd be interested in hearing ANY and ALL feedback, no matter how obvious it must be that I can see it, no matter how big or small - anything. Please. Thank you!