How this all started: part 1: Laskys, Sinclair’s Spectrum & Jetpac

In 1982, Laskys (UK)  was one of the most popular  high street electrical retailers. They were also one of the few national chains where you could see a selection of microcomputers on display and, in Cardiff at least, happily fiddle around with them without getting shooed away – a rare thing if you were a 9 year old computer nerd!

 
I vividly remember the first time I went into a Lasky’s store as until that point I’d only experienced my Atari 2600. Me and a friend, Gerald Pearce, had walked into the centre of Cardiff from the leafy suburb of Roath. Gerald was slightly older than me and had been allowed into “town” on his own, this was my first trip and I bounced alongside him in the sun. As we arrived in Queen Street, Gerald walked us over to a store with a large 70’s styled brown and orange logo, Lasky’s. We walked past the usual array of hi-fi equipment and televisions to the rear of the store where something magical was taking place.
 
It was here I first saw the ZX Spectrum. It was sandwiched between an Atari 400 running Missile Command and an Apple IIe (I think, it was a IIe, I was unashamedly mesmerised by the spectrum). Having had a 2600 I’d seen Missile Command plenty of times but even the 8-bit version was no match for what was sat next to it. Compared to to the chunky Atari, the Spectrum looked a bit like a tiny tin of biscuits: it’s probably around 1/5th of the 400’s size. The Spectrum also had a little rubber keys which I remember really liking as they felt squidgy to touch. But it was what the little black box was pumping out on to the colour TV that really caught my attention.
 
Next to Missile Command’s blocky game of warfare, Jetpac’s pristine lunar jetman whizzed around the screen at high speed and in high resolution. The purists will argue that the hardware inside the two machines meant the Atari was utterely superior. The rest of the 1980’s in the UK tell a different story. The Spectrum was the dominant machine of its day thanks to a pragmatic design which mean it was available cheaply and consequently developers jumped on it. The Spectrum was available from around £129 compared to around £300 for an Atari. 
 
That December my brother and I looked at each other dumbstruck as we unwrapped our very own 48k Spectrum, complete with copies of Jetpac, Lunar Jetman, Atic Atac and an introduction to programming. The following year I wrote my first game, Acorn Invaders. A lifelong obsession had started.
 
 [Recommended reading: Bruce Everiss’ Blog on Games – Bruce used to be a senior Lasky’s exec before moving into the games industry http://www.bruceongames.com/?s=laskys


Draft Chapter Layout

Here’s the draft chapter stubs for the project

  • Gaming – hasn’t it always been social?
  • Classic games as blueprints for building tight game play (Liepa, Jarvis, Minter, Takahashi)
  • Social networks and their infrastructure
  • The game industry: a publishing primer on choosing the right model to release your game
  • Marketing: why you need to market early and often
  • Design for a social game and choosing the right design for you
  • Server Design, Scalability and Persistent worlds
  • Game Production and managing the process
  • Release
  • Conclusion, did it work?

David Crane’s Little Computer People.
Nothing to do with the chapter layout.
Or is it?

Peter Liepa on Boulderdash and Agility

One of the most unexpected pleasures from this project so far, and importantly one I could not have foreseen prior to it (theme of the project so far), is the amazing series of emails I’ve had with Peter Liepa, the creator of Boulderdash.

Peter has been incredibly generous with his time and also his enthusiasm to talk about his work but what has been revelatory has been that we both share the same philosophy for Agile development methods.

“Agile methods generally promote a disciplined project management process that encourages frequent inspection and adaptation, a leadership philosophy that encourages teamwork, self-organization and accountability, a set of engineering best practices intended to allow for rapid delivery of high-quality software, and a business approach that aligns development with customer needs and company goals.” – Wikipedia, http://en.wikipedia.org/wiki/Agile_software_development

As an undergraduate back in *cough* 1992, I remember feeling exhausted both mentally and physically, lugging around a copy of the massive Pressman tome on Software Engineering: A Practitioner’s Approach . It was filled with dry accounts of metrics, methodologies and process all interesting in their own way and useful for certain types of projects but there was a bigger problem that was not being addressed (I’m sure it has now!) This was 1992 and the world wide web was starting to rapidly infiltrate into the world via NCSA’s mosaic and it was changing, every day, probably every second somewhere.

I was captivated. I could open a terminal, fire up vi (http://en.wikipedia.org/wiki/Vi) and update my little web application that blocked rude websites from children (for schools 😉 and within minutes, everyone else could see my new and improved version. Then using email, users could send me message straight away telling me they liked the new version (or not!). Instant feedback, iterative development, structured releases and no long winded word documents. This felt an intuitive way to develop. Add in structured releases, source control and some QA and this is more or less Agile development.

Here’s my latest conversation with Peter:

I’m finding that my current research and hypothesis is quite biased toward my own experiences of software development and that I’ve always had leanings to use methodologies and formal processes to help the development cycle. It seems games development, even now, doesn’t have quite the same approach with the design and development process being more fluid, almost to not interrupt the creative aspect is that the case?

“Methodologies and processes are a good thing, but not much use unless they anticipate that the very act of development will cause things to change. Agile methodology handles that very well, and shifts the emphasis from a detailed long term plan to being able to ship something that works every day. Because there is true value in being able to use the software from Day 1, and every day after that. This guy puts it well: http://unspace.ca/innovation/speak, if you have the time to watch.”

Do you remember how you got the original idea for Boulder dash and how different was the released product from it?

“The project started off as somebody else’s clone of an existing arcade game that involved tunnelling through earth. I very quickly decided that was a non-starter, so I just rebooted by implementing some simple rocks/dirt/gravity/digging physics and playing with the parameters until I got something fun. The game evolved by ‘monetizing’ the physics into tasks and points, and then by endless polishing the look, feel, sound and gameplay. So, there was never really an original idea for Boulder Dash, as much as mucking around until something felt like fun. And then a lot of work, and even more in the wastepaper basket.

Out of curiosity I looked up three other games involving rocks and digging. They are “The Pit”, “Mr. Do”, and “Dig Dug”, all written in 1982 (which was a year or two before Boulder Dash). All are described in Wikepedia and there are clips on Youtube. It was fortunate that the clone I started off with was so lame I abandoned it, otherwise I may have set out to duplicate one of these. However, I didn’t have access to any at the time, or that’s what I may have done. Well, not really, because I’m not very good at sticking to upfront specs or exactly cloning other people’s work.”

Reward Systems, An Excerpt From Level Design: Concept, Theory, and Practice

Great little article on level design on  Gamasutra

[Gamasutra is presenting an in-depth excerpt from IGF nominated Dyson/Eufloria co-creator Rudolf Kremers’ new book Level Design: Concept, Theory, and Practice, which was recently released by AK Peters. This extract, just part of the book’s seventh chapter, looks at wish fulfilment and escapism occasioned by some of the best video game level designs.]

If somebody holding carrots beats you with a stick it would be very satisfying if you were to wrestle the stick away from your tormentor and make him give you all the carrots…

Rolling, rolling, rolling

Quick update: I’ve just swapped a few emails with Katamari’s legendary designer Keita Takahashi who’s in the UK as part of a project to create a childrens’ playground. He’s giving a talk next week and has amazingly invited me and this crazy project along. At the talk will also be the legendary designer, Martin Hollis, who was the designer of Goldeneye on the N64. I absolutely can’t wait. I imagine they are not quite as excited as me but then again, they’ve not met me and my crazy project yet.

Before I have a talk with Keita I’ll have another bash at trying to deconstruct the character design and see how much his vision for them altered as the project progressed. Maybe I’ll be suprised and find out the whole thing was meticulously planned and used CMM or Prince 2 to manage the project. I seriously doubt it 🙂


Peter Liepa on Boulderdash’s Rockford

It’s starting to become clear that over analysis could be a bad thing and that the design of a game is a lot more loose than I thought. As suspected early on into the process, this is largely a hangover from working in an industry where we have process and methodologies for everything. That’s not to say the games industry does not, especially in the larger studios, but it’s becoming obvious that the design and development phase is a more loose playground for creativity and too much formality might result in “analysis paralysis”. In fact, Lee’s already written a great comment on my need to be able to formally evaluate ideas post earlier on this week and I’ll address that next.

This morning Peter Liepa replied to my questions about Rockford’s character design, I was particularly interested in how he came to inject personality into him and if that was a deliberate design choice, based around a particular game mechanic. Peter’s reply, in line with Lee’s earlier comments, points out that the process is more creative and experimental than I first realised. Thinking about it, it has to be really. Damn those years shackled to the Capability Maturity Model (CMM http://en.wikipedia.org/wiki/Capability_Maturity_Model)
 
Peter, I’m curious about how you came to give Rockford the foot tapping and blinking characteristic when he’s idle. Did you have a strong sense of giving him personality from the start or was it more serendipitous stemming from something pragmatic like giving the player a visual cue to get a move on (as Boulderdash is a timer based mechanic?)
 
“The answer is somewhere in between, I think.  I don’t think I thought of Rockford in terms of personality. In fact, he was just a static symbol during early development, and he never had a name until after the publishers gave him one.”
 
Well that’s that blown out of the water. After all these years, I find out that it’s the damn publisher that gave my beloved bunch of bits his name. Damn their marketing prowess!

“On the other hand, I worked hard applying my limited animation ability to creating a believable character and movement given the small number of pixels available.  I probably had a number of poses in my animation editor, along with variations of the character.”

This is more like it! Alchemy!

“I’m guessing that I have been comparing, say, eye size and position between variations when I realized that I could make the character blink. Once I realized that having Rockford blink while idle gave him extra life and presence, I probably experimented with tapping.
 
But that’s a guess.  I don’t think I set out to give him independence, but once circumstances suggested it, I went with it.  And I don’t think that I was exactly prompting the player to get a move on – it was more that the game was quite quiet if Rockford wasn’t moving, and I was pleased with the extra depth it gave the character.”

So pretty much all of my assumptions were wrong. Brilliant. Actually it is brilliant, it should stop me early on into this process assuming too much. Perhaps it’s more simple, that only the overall project needs a formal plan with deliverables to test and release and what happens in between is a mix of creativity, experimentation, experience and previous influences. A manager’s nightmare I’m sure!

This Charming Man: #1 The Rockford Files

So where the hell does charm come from? At what point does the block of code you’ve loaded into memory and its instruction pointer start to become charming? Unsurprisingly, when it’s written by someone with a sense of humour, which is what makes these games stand out.

By the way, the best way to think about how that block of code becomes characterful is to think of it like a flip book that you probably made when you were small (or not, as I still do them for my daughter). You know, you take a bunch of pages (like the bottom corner of your maths exercise book) and draw a character on page 1. Then for every successive page you draw the character in a slightly different position. When you flip them all together at a constant speed you get your own movie.

Like this one:

One of the earliest examples of “character” animation I can think of is the main character Rockford that appears in Peter Liepa’s Boulderdash. Rockford, when he is left idle gets bored. This is what the BCDFF document says on it (http://www.elmerproductions.com/sp/peterb/):
 
“When Rockford is not moving, he faces forward (out of the screen towards the player). Rockford gets bored; he taps his foot and blinks his eyes. Blinking and tapping are independent of each other; in the C64 implementation, the upper and lower halves of his body are controlled separately.

Animation sequences are eight frames long, and each frame is displayed for two ticks, so it takes 16 ticks (about 0.27 seconds) to complete each animation sequence. At the beginning of each new animation sequence (ie every 0.27 seconds), if Rockford is not currently moving, it is decided whether Rockford will be idle, blink, tap his foot, or blink and tap his foot. There is a 25% (1/4) chance he will blink each animation sequence, and a 6.25% (1/16) chance that he will stop tapping (if he is currently tapping) or start tapping if he isn’t.”

My first question to Peter is to ask where this idea came from, as it totally elevated an already high quality game but also the precision that he used in order to breathe life into his character doesn’t seem random. Did he have a strong sense of giving him personality from the start or was it more serendipitous stemming from something pragmatic like giving the player a visual cue to get a move on (as Boulderdash is a timer based mechanic?) 


Esoteric functions: Some thoughts on Quality and Personality

Just a quick hack to sketch out a couple of topics before I dash out to get a large slide for our garden. 

 
The first is Quality: what it means, how you judge it, how you measure it, how do you know what it is when you see it etc. For example, why does the iPad look and feel like a high quality product? And are we all “feeling” the same thing? Sales figures say yes!
 
The second one I want to look at is Personality and how this comes about in terms of the end product. For example, the Volkswagen Beetle arguably has a ton of it. Pacman seemingly has bags of personality but looking at its original designs that isn’t immediately obvious. Did it come from marketing, did it come from artwork for the cabinets, did it come later from cartoons? Or is it the result of the product being more than the sum of its parts: that once all the pieces of the jigsaw are in place, what you have is more than a collection of oddly cut bits of wood?
 
More on this later!


http://www.geekosystem.com/pac-man-original-sketches/