Wednesday, 10 April 2013

Quick and dirty jam build: Unstoppable

I took part in last month's Manchester Game Jam, this time opting to do it from home due to my scarily pregnant wife (baby Isaac is here now, but that's a different blog post entirely!).

Anyway, in about a day or so (including a bit of pre-jam cheating, fight me) I put together a quick little arcade tunnel shooter sort of thing. It uses Away3D/stage3d to create wireframe graphics a la Battlezone, ditching textures entirely and creating everything from smoothed wireframe polys at runtime. It ended up being reasonably simplistic, but I was really happy with the feeeeel of it: the physics on the ship turned out really nicely, and after adding some simple directional tilting you really get the sense of a floaty ship. The ship control physics are just 2D easing so it's nice and snappy: it doesn't actually move down the Z axis: the scenery and enemies scroll backwards instead and keep respawning when they drop off behind the camera. Collision detection was awkward until I realised AS3's Point3D contains a distance checker, which saved me a bit of effort.

Below are some images I snapped while I was working through it, as you can see I almost ditched the stark wireframe in favour of coloured flat shading (like the final stage in Rez) but reverted back in the end.

I also put the whole thing on Github if anyone wants to poke around, I built it with IntelliJ Idea and I've included the whole project as it's pretty tiny. The code is absolute filth, but you can see how easy it is to get some sweet retro effects in Away3D.

Oh, and try it out here!


Saturday, 23 March 2013

Match Battalion - devlog #1

I finally got around to putting a decent amount of thought into what I'm calling the 'actual' build of our Fuck This Jam game. I promised myself I'd try and cover what I'm doing, if for no other reason than it's a good incentive to keep myself going. As you can tell by the title, we've tentatively chosen to call it 'Match Battalion'.

There's already a rough playable version that we made during the jam, so this post kinda sums up where we want it to go. We changed a few things, and made a few things! This will be a new build though, as of course we were up and against an insane-o-deadline last time around.

This project is what I'd definitely call a slow-burner anyway, the Fuck This Jam contest was absolutely ages ago. I'm fully expecting to drop in and out of this build, especially given that at the time of writing my wife is three days overdue with our first child... small windows of opportunity will be the way to go, I think. I don't want to mothball it entirely though: I always like having a side project on the go, and this one isn't for anyone (or for any money) so I'm happy to take it easy. Disclaimer: eagle-eyed readers will see this is the second project-kick-off post I've put up - the other game got stuck on hiatus for a while but will exist one day, honest.

Concept:
The idea for the game itself is pretty nailed-down at this point, it's basically a match-three puzzler crossed with a turn-based strategy game. The basic premise is that two armies fill the board (these are just sketches, it'll look nice in the end):


Players get a set number of moves per turn (as opposed to taking it in turns with each move). Movement is performed like a puzzler, and trying to move onto a square occupied by the enemy makes them fight. Obviously certain units are better against certain others, and the terrain the units are on will affect the outcome too. If the enemy unit is defeated, the winning unit moves in, followed by all the units behind them:


You'll also have units in reserve, off the board, so a big part of the strategy will be making sure you introduce units onto the play field correctly:


Units that are adjacent are classed as squads, and will be a bit more powerful, so it'll be advantageous to keep units together and think ahead a little. Similarly, breaking up enemy units so that you can fight the weaker individual units separately will be a solid strategy.

To win, either eradicate the other team, or take out their powerful commander unit.

There are no other mechanics really, we want this to be pretty streamlined and easy to figure out.

Code:
Just to mention briefly, I made the decision to ditch Flash Builder entirely, at least for my personal work, meaning that this game build will be the test bed for my switch the IntelliJ Idea. I hate so much about Eclipse-based IDE's, but the pricetag of 'free' usually stops me whining too much. However, FlashBuilder has taken a free IDE, made it more bloated and crashy, and stuck a giant pricetag on it. Sorry Adobe, I love your products, but I'm out.

Enter the new contender, IntelliJ Idea. I picked up a copy during JetBrain's End Of The World sale for about £35, and so far it's looking really, really good. It's taken me about an hour to get up and running with a test project compiling how I like it, and it seems very intuitive. I've not had to look anything up yet, which is a good sign. Once I'm into the build I might do a deeper comparison, but early signs are good.

Art:
My partner in crime Kieran finished up on tile and unit animations, and they're looking amazing as always. I'm using Starling to render, and was so impressed with TexturePacker's swf-to-spritesheet awesomeness I dropped money on a license. It's a fantastic little bit of software, the free version is pretty good on it's own too if you're interested. Here's our infantryman in spritesheet form (obviously there's an XML file that goes along with it, that TexturePacker takes care of nicely):


I put together a rough test with Starling just to gauge mobile performance, and I'm hugely impressed: I had a full map and 48 animated sprites running on my phone, 60fps with no issues (and my phone isn't that new either). The artwork stays crisp when it scales too, which I'm quite happy about.

I'm actually stopping work on the rendering/graphics now I know it works, as I'm more interested at the moment in getting something playable up and running as soon as possible: mechanics first, eye-candy second.

Next steps: I'm hoping I can get something playable up and running pretty quickly, using the old prototype code and sexifying it a bit. This is a personal project, but I'm determined not to let it get all horrible and messy if I can help it. Although, I've said that before....

Saturday, 2 March 2013

Manchester Game Jam, Feb 2013 - in photos!

Another month, another quick-fire game jam in Manchester!

This time we were jamming around the theme of TRAPS, and as usual everyone really pulled it out of the bag and made some amazing games.

We made, among other things: banana controllers, trapped treasure chests, magnet tanks, play-doh buttons, puns, monks, text adventures with Bruce Willis, Makey Makey hacks, laser typing challenges, and a game that got Chris running around Madlab (again).

This was my last chance to jam for a while due to the imminent baby arrival, so a giant personal thanks to everyone for making it a good 'un! (The jam will carry on running without me, in the capable hands of some of our regulars, including hopefully the full Ludum Dare weekend in April. Keep an eye on Twitter for updates!)