A few days ago me, Ziryf and Pongball released Cuckoo Castle, a mini-metroidvania for the annual gameboy jam.
The gamejam ran for a week and we poured our souls into it. We took some days off from work so we could spend as much time on it as possible.
In Cuckoo Castle you take control of a lonely knight seeking to defeat the evil force that resides in the Cuckoo Castle, an enormous castle that appeared out of nowhere.
A quick summary of the game:
A small metroidvania.
2 unlockable characters
2 bosses
loads of enemies
epic soundtrack
a hit in the childhood
the game can be played here:
http://gamejolt.com/games/cuckoo-castle/87063
In this gamejam Construct 2 proved it's value more then ever. Super fast development speed, tiled integration(nice!), shader effects, sound just works, the list goes on. I tip my hat to you Ashley What a great product!
Insights
I hope you enjoyed our game. Here's some love for the community.
Shader effect stack.
One of the requirements of a gameboy jam is to make your game actually look like it runs on a gameboy.
A gameboy can display 4 colors, wikipedia: Color Palette: 2-bit (4 shades of "gray" {light to very dark olive green})
But we wanted a special 4 color palette, something that we thought was prettier:
Almost all art assets were made in those colors, some weren't though. So to make the whole game consistant with the palette we used a shader stack.
Shader stack on the game Layout :
monitor effect by @Somebody - dynamic range set to 70
// this flattens everything on the layout to 4 shades of grey
4x replace color by @Scirra
// this takes the 4 shades of grey and converts them to the custom palette
[/code:3vvwuovd]
With this applied we could basically throw anything in to the game, and it would still look like something that a gameboy would be able to display. So now we could get crazy with [i]soft brushes[/i] (which we used for the flames and lights) and achieve effects we couldn't otherwise.
[b]Metroidvania rooms[/b]
Most of the game takes place in one big layout. That layout contains special [i]cameraArea[/i] sprite objects that indicate the boundaries of the [i]rooms[/i] in the castle.
One of the nice things about a gameboy jam is that you know that the screen size is always going to be 160x144.
So a room that doesn't scroll is just that, 160x144 pixels:
[img="https://dl.dropboxusercontent.com/u/5573960/forum%20stuff/roomsc2.PNG"]
Rooms that [b]do[/b] scroll are bigger then that.
For the camera I clamp the positional values to the current active room. This way I create the illusion of different rooms, but actually it's just a really big layout.
[code:3vvwuovd]
every tick
clamp(playerMask.X+camera.xoffset, cameraArea.X+80, cameraArea.X+cameraArea.Width-80)[/code:3vvwuovd]
One of the best things about this approach is that once you have the rooms, you can easily generate a minimap.
If anyone has any questions don't hesitate to ask.