About

Archive for June, 2010

World of Love

Thanks to a tip off from David Hayward, I managed to snag a last minute ticket for the World Of Love independent games conference organized by Pixel Lab, sponsored by Preloaded and hosted by Channel 4. I’m glad I did.

The day kicked off with Chris Delay from introversion demonstrating Subversion, a typically minimal game inspired by Mission Impossible (the TV show, not the movies). It ticked a huge number of boxes for me as a game, but the most interesting thing about the demo is that the game is nowhere near finished and it’s not often you get to see a game this early in production. I suggested to Chris that the game should feature Sporty Spy, Posh Spy, Ginger Spy and Scary Spy. Look out for those in the final version.

Possibly the most inspiring session of the day was Terry Cavanagh’s talk on game jams. Setting the scene with a description of his stalled over ambitious uber project, Terry the rattled off an amazing list of games he made at game jams like Sinewave Ninja which ultimately morphed in to the amazing v six times. I’ve had a ton of fun building mashups at Hack Days so I can imagine adding games to the mix would be amazing. I predict game jams will be coming to Brighton in the very near future…

Definitely the most amazing talk of the day was by Eskil Steenberg who was delighted to be talking at the first conference dedicated to his game, Love. After a brief tour around a beautiful procedurally generated and fully dynamic world, Eskil showed off the amazing tools that have allowed him to build an on line game on his own. A suite of networked art tools allowed him to model then procedurally UV map and texture a 3D model and then demonstrate how altering the model would result in updated UV maps and procedural textures in real time. It was like being given a tour of the future and when Eskil ran out of time I fully expected him to pull out a time machine to allow him to keep going.

The rest of the day included lots of really useful advice for indie game development including talks on business, finance, law and marketing which ended with the Frozen Synapse developers bursting in to blast the attendees with water pistols to demonstrate Kieron Gillen’s last marketing rule — you’re creative, so be creative with marketing.

Overall I prefer the many tracks and everyone gets involved format of GameCamp and at times the talks devolved in to extended biographies, but mostly it was a fun, thought provoking and inspiring day. I spent the evening asking the attendees for their top 5 games (it felt like it was that kind of event) and was very pleased to hear Chaos featured in multiple lists (it’s one of my favourites too, I developed a remake at university. On the strength of the UK indie scene demonstrated at World of Love I’m sure we’ll be seeing more indie games in top 5 lists in the near future.

HTML 5 multimedia

I’ve been morbidly fascinated by the Rich Internet Application technology blood bath for a while now: Whirled,Metaplace and others tried to stuff virtual worlds in to web pages using Flash, Second Life stuffed Flash in to virtual worlds via Webkit, Unity stuffed Mono in to a 3D engine and then took on the world and Silverlight and Moonlight stuffed the CLR in to web browsers and Erik Meijer stuffed a CIL interpreter straight in to Javascript.

All good fun and there are fortunes to be won and lost to be sure, but the smart money seemed to be on waiting for the dust to settle and then using the winning technology. Recently, however, amazing technologies like V8, Node.js and the resulting browser Javascript arms race have been adding weight to the Google viewpoint that all you need is Javascript: a philosophy made more pragmatic by Apple’s decree that all you get is Javascript.

A week or so ago I decided to test the hypothesis by building a drum machine using only HTML 5 and Javascript. My first discovery was that while the canvas element is perfectly capable, it’s a very low level API, even for building something as rudimentary as a step sequencer interface. After looking at a number of drawing libraries I settled on processing.js as a higher level drawing API, something I’ve been meaning to play with since we used it to build SLorpedo at Hack Day a few years ago. Processing.js is a neat hack, that despite an incomplete API and some subtleties around casting does a great job of running processing sketches within a browser without a plugin. It also uses a sloppy parser enabling you to drop arbitrary Javascript in to your processing sketch, which makes it easy to just create Audio() objects within the sketch to playback audio. Unfortunately while it was easy to add audio playback, the playback itself was pretty disappointing: Firefox just spluttered and belched sadly while Safari did a decent job of playing beats for a couple of minutes before its timing went to hell and then the browser crashed. The shiny future may yet be HTML 5 and Javascript, especially when the experimental extensions to Firefox become widely supported, but we’re not there yet.

To experiment for yourself, click on the squares on the grid below to add beats to the sequence. To see the code, view source.