Ho! Another delayed post; I said I’d get to this before the semester was up, but this semester hit really hard, and I just haven’t had the time or energy for it. Well, it’s not Christmas yet, so I guess that’s something, no?

The real killer module this semester was Game Development, which consisted of a single group project with three other programmers and seven(!) 3D artists. I started to put a page together for the game we created, “SplashDash”, today; I still need to go over what I’ve written with furrowed brow and fill out the Freerunning Implementation section, but there are already download links for Windows, OSX, and Linux builds, a gameplay trailer, and lots and lots of screenshots to see!


SplashDash is a 3D, freerunning, score attack game, drawing inspiration from games like Jet Set Radio, Tony Hawks Underground, Mirror’s Edge, and de Blob.

Robots have taken over the world and subjected it to their ideals of order and optimisation. They’ve whitewashed all the walls and broken the spirit of the human population, who now go about their daily chores like mindless drones. The player is a teenager gifted with the ability to bring colour into objects with a single touch, and must use it to paint as much of the city as possible in the given time limit to inspire a human revolution.

My main responsibility was the implementation of the player movements, including running, analogue jumps, wallruns, ledgegrabs, vertical wallruns, wallrun jumps, and wall rebounds. I also worked closely with the programmer and artist responsible for the animations to try and make sure things looked as smooth as possible, and though some animation glitches remain I’m pretty pleased with the way things turned out.

The freerunning implementation is, honestly, pretty unrefined, as I’ve never coded such complex 3D movement mechanics, nor used Unity before, and time constraints on the project meant that I could not afford a lot of research or iterate as much as I would have liked. I opted to go with a system which did not require any hints or triggers to be placed into environment, so as to minimize the workload of environment construction. Let’s just say there are a lot of raycasts and a lot of vector maths involved; you can read more about it (once I’ve written it) and my other contributions on the SplashDash page.

We’ve all learnt a lot from this project – mostly about working with Unity, its flaws, quirks, features, limitations, and best practices, but also more transferable skills. We had some communication and organisational issues (which I’ve written about at length for a post-mortem as part of the assessment, and shan’t post online yet) that I think are easily solvable once identified; some simply by picking the right tools and channels, and others by encouraging certain practices. The project was also a good insight into the importance of sorting out your methodology and workflows out early on in a group project – I feel that with time invested in the right places at the start, things would have progressed more quickly, and in a more organised fashion.


Anyway, I think it’s pretty effective as a proof of concept – or not, as the case may be. We all agree that the movement is the most fun part, and that a linear time trial or racing mode, on maps similarly constructed to the tutorial level, would probably be more fun (especially with some nice acceleration mechanics thrown in to reward good freerunning flow). But it is quite fun, all the same, and I think the concept deserves further investigation which, if I ever find the time to experiment with a proper non block-based painting system, I might just be tempted to conduct.

Edit: P.S: Mute the game and go listen to the Jet Set Radio OST while you play :P

I’m a Night Owl

Can I cram the third of my Humble Bundle Reviews into that last thirty-six minutes of Boxing Day? Probably not – I’m too much of a perfectionist. But that won’t stop me. I have other things to do too, and the night is young.

NightSky Review
Physics-based action-platformer NightSky by NICALiS (awesome website) will test your reflexes, your mind, your skill, and your determination in ways you would never imagine possible, while constantly luring you further into its dreamlike world of silhouettes and ambient music. The gameplay ranges from supremely relaxing to incredibly frustrating, but is always satisfying whichever the case.

In NightSky you play a ball. I won’t go into the specifics of how you control this ball in case you, like me, decide to play Alternative mode from the get go. In Alternative mode you are dropped into the world with a list of the buttons required to play, and are given no further instruction. Since getting to grips with the game I have given it to my mother to try out the normal game mode, which spaces tutorials throughout the first few levels in the form of helpful hints at the bottom of the screen, and features less challenging obstacles throughout.

For the first few screens you’ll simply roll to the right, then you’ll encounter your first jumps. Dropping off the bottom of the screen resets you to the last checkpoint you passed; these are generally every three or so screens and are indicated by a simple fade-to-black. It’s a little while before the physics puzzles are introduced, and this is done very gradually. The most important thing to me though, is that the physics never become the definitive aspect of the game, your concentration is almost always squarely on controlling the ball.

The physics are, however, what separates NightSky from other platformers. Without the physics the game would not be what it is, and it’s actually quite unusual for me to like a game so dependant on its physics engine. Puzzles are worked expertly into the incredible level design in a way that, sadly, checkpoints are not. There were a particular sequence of levels that seemed to have been designed specifically to follow-up a time-consuming or pure-chance obstacle with a difficult, skill-based jump, only to throw you back to the beginning every time you failed the jump, and these really got on my nerves. Still, far from the frustrating grind of Super Meat Boy, NightSky somehow always makes me feel like I’m heading somewhere, and I’m still compelled to complete the game after already pushing through some really hellish levels. Perhaps it’s the reward system? NightSky usually rewards you after each challenge with a peaceful section, something new and creative, or a different type of challenge. Meanwhile, Super Meat Boy rewards you after each level with another incredibly difficult challenge of the same type, using the same tired obstacles (there’s only so long before I’m not impressed by saws and fire, okay?).

No really, NightSky constantly surprises you with things you just weren’t expecting? Did I expect to begin this level in a balloon with fans powered by my rolling? No. Did I expect this entire room to rotate with my weight? No. Did I expect to have to balance atop a log while it rolled through those obstacles in the first bloody level? No! I’ve been constantly amazed at the amount of creative and original obstacles I’ve encountered in this game, and these are interspersed with standard jumps and old obstacles in such a way that it’s never even overwhelmed me.

One thing I’ve barely touched on so far is the graphics. These are in a sort of silhouette with minimalist use of colour, so you don’t always know what something is until you roll into it. Backgrounds are usually all you get colour-wise, and they’re pretty enough to stop the game being bland. There are moving critters in some worlds (which I’m not too fond of), trees and grass that blow in the wind (lovely) and various other features. Overall the game is pretty, not stunning, but its aesthetics compliment the atmosphere well.

The atmosphere is one of peace, mystique, and a little danger, perhaps. This is enforced by the high black content and subtle use of colour; the experimental soundtrack provided by Chris Schlarb; and crisp, lifelike sound effects. The sound effects were my second surprise in this game. Knock on wood, rattle chains, move something heavy and large, or fall onto some rocks, and you’ll hear the purest incarnation of the sound you’d expect. This can be useful for identifying objects, but it also lends the world some living quality, and emphasises the lonely atmosphere, as the loudest, sharpest sounds in the world come from your interactions with it.

I don’t have any criticisms for the game really, apart from some of the cruel checkpoint spacing, so I’ll spend this paragraph talking about The Void, my favourite level so far in NightSky. The Void is beautiful, features some of the most satisfying (though by no means hardest) puzzles in the game, and no less than two fantastic vehicles for you to master. I really enjoyed playing through this level, and I hope that you will too.

Positive thoughts for this one then; well done NICALiS. This is probably my favourite of the Humble Bundle so far, so now I’m off to play some more NightSky. At night.


What Grinds My Gears

If there’s one aspect of the games industry that’s always annoyed me it’s the endless parade of rehashed puzzle games with polished graphics and un-inventive themes being sold on the internet for only £14.97! Usually it’s a company pushing these things out, be they publisher or be they developer, and while they’re always well made, and occasionally a lot of fun, I just wish that these same people were putting their time and creativity into more original games.

But what happens when an indie studio like Lazy 8 Studios decides to show them how it’s done? Time to get started on the second of my Humble Bundle reviews.

Cogs Review
Remember those sliding tile puzzles? I’m sure you’ve seen them before, but probably not recently (unless you’ve already played Cogs, in which case I wonder why you’re reading this). Well I hate those things. They’re hard, pointless, and you’ve usually already got the finished picture in a little panel on the right, or a piece of paper, so what’s the point? The whole thing’s a bit too much like jig-saws. However, Lazy 8 Studios somehow managed to make the damn things fun, compelling, satisfying, and rather pretty.

Cogs is an original, though decidedly steam punk take on the sliding tile puzzle. When making the transition into 3D the obvious concept would be to use a 3D model divided up into cubes. Obvious, boring, and ugly. Cogs takes a unique approach: The surfaces upon which your tiles exist are the sides of contraptions like rockets, tricycles, and other steam punk machinations. Your goal in most of these is not to create specific arrangements of tiles, but rather to make the contraption function by linking up the gears and pipes which are attached to the tiles. This makes the game fresh. This adds immense depth, and ensures from the get go that this is not just another rehashed puzzle game.

In the level above, for instance, you have, I think, only one source of gas, and you need to link it to every booster on the bottom of the rocket. Each side of the rocket has only a 2×5 grid for you to manoeuvre your tiles on, and in that space you must not only power that side’s booster, but also pass the gas on to the next side using the t-junction pipe. Don’t worry: this is one of the later levels; the early ones are much, much easier.

I can’t really comment on the learning curve personally – I took to the idea like a squirrel to nuts (…), but elements like pipes, chimes, and cogs of different heights and sizes are introduced gradually so as not to overwhelm the newcomer. I’ve gotten my parents and aunt to try the game out – they all loved it by the way – and while it took them longer to get used to the idea than me, once they got past the first few puzzles, new tiles and ideas didn’t seem to faze them at all.

I feel I should probably explain this second picture also. Here you have to coerce the device into playing a specific tune, which you can preview by clicking the bottom-left button. You do this by aligning gears with different arrangements of notches on them with the bells’ hammers, then switching them in and out to sort out the timings.

It should be emphasised here that puzzle games really aren’t my forte, and yet I really enjoyed the time I’ve spent playing this game. There’s something much more compelling here that other puzzle games should take note of. You’re not just completing puzzles on the same, bland, 2D board over and over for points, you’re making something that does something. There’s no set goal, you need to figure it out for yourself. That’s the magic here.

You’ve probably got the idea by now, so I won’t explain this one. Instead I’ll talk about the graphics. You can judge for yourself, but I think they complement this game well. They aren’t stunning, there’s no real flair in the design or execution, and some of the contraptions could have been more interesting, but the graphics are functional, pretty, and will run on a pretty low-end PC. I certainly can’t fault them, and don’t get me wrong, they may not be thrilling, but they are nice: pipes shine, wood is dull, brass looks polished, and steam looks like steam. One thing I would have liked to have seen are more interesting backdrops, though I think this might have detracted from the game’s aesthetic unless properly executed, and it would certainly have pushed back performance on low-end machines.

As I hinted just now, not all of the contraptions are as interesting as those described above. Many of them are simple shapes with devices planted around them, or even flat panels with items on one or both sides. I really would have liked to have seen more rockets, flying machines, trains and cars. Larger devices would also have been very interesting – perhaps multi-level devices that you can see materializing as you construct them in intricate detail. Hey Lazy 8 – Cogs 2?

Still, this was a very interesting game, and well worthwhile playing. Just to feel that way about a puzzle game is a novel experience, and I highly recommend you pick this up if you have any taste in games – be you casual, hardcore, mainstream or hipster. C’mon, you can pay whatever you like if you go for it within the next couple of days. Don’t miss out.