Mr Speaker

mrspeaker's head in a monitor You find yourself at the entrance to the Hompage of Mr Speaker. In a darkened corner sits a trunk containing HTML5 games and some JavaScript tidbits. Next to it you spy a mastodon account. Exits are North, East, and .

(Nearly) Getting Started with ClojureScript

UPDATE: Holy cow, they fixed the docs! Sooo, I don't know if it was directly related to this rant, but the quick-start docs now rock! So go forth and ClojureScript!

So you've decided to do your next pet-project in ClojureScript because Rich Hickey is awesome and the Web is awesome, therefore, Clojure on the Web must also be awesome. This article walks you through the many-and-varied steps of trying to get up and running with ClojureScript, by closely following the repo docs.

Read on for more »

CHIMP-8: a lil’ CHIP-8 VM

And now for something completely different... a full implementation of a CHIP-8 interpreter, complete with "sound" (via the Web Audio API).

But why? Well, it all started when I fell over a link to an article about Another World, and ended many hours later with the complete (as I can be bothered making it) CHIMP-8 interpreter! Feel free to have a peek at the source on GitHub, then go off and implement your own. CHIP-8 is the perfect interpreter/VM to get your feet wet with.

Nodevember Conf talk: Gonzo Game Dev

Here's my talk "Gonzo Game Dev" from 2014's Nodevember conference. There were a few great games talks at the conference - most showing you how to make games properly. Mine focused on just gettin' done! Also got all preachy about games as art. You should watch it:

Gonzo Game Dev talk on youtube

Your first Ludum Dare

So, you've decided to take part in your very first ever Ludum Dare... congratulations! I'm assuming you don't know what you've got yourself in for, so just remember: your primary objective is to finish something that (even vaguely) resembles a game. It doesn't have to be good, it just has to be. Here are a few tips on maximizing your chance of success:

  1. Submit your game!
  2. Be prepared.
  3. Dream big, implement small.

Read on for more »

Selling Swift: what a fool believes

Ok, Apple comes out with a brand new programming language.

Creating a new programming language is the absolute surest way to invite a hurricane of internet pain from coders worried they've bet on the wrong horse. Generally they'll try to shout at the horse until it dies - mostly with nasty tweets.

Yet somehow Apple got away with it. The reaction was unreservedly, un-internet-ly positive; even the worst opinions around were like, "meh" with not a death-threat to be seen - an incredible achievement as anyone who has ever tried to release a new language or framework can attest!

How did they survive the terror of day zero, and thus giving Swift a fighting chance to flourish? The spark of evolutionary genius was to make the language (on a superficial level, at least) look exactly like all other languages at the same time! This familiarity translated in to superiority and pomp on the part of the coder, which let them consider the possibility of maybe possibly trying it out some time.

Swift looks pretty nice to me. I maybe possibly will try it out some time. But to paraphrase the internet, Is it just me, or do some of these comments seem familiar?
Read on for more »

Metal Meter Madness

Ludum Dare 29 delivered us the theme "Beneath the Surface", and I, in turn, delivered my first Ludum Dare novelty offering: Metal Meter Madness. It was my attempt at an 80s 8bit english-humour style farce in the style of Jet-Set Willy or Hover Bovver. However, due to hang-over-ness and appartment hunting, the wackiness meter never made it into the same ball park. Still, it was kind of a game, with kind of a point, with kind of sound fx and kind of some music. And that's all you really want from a Ludum Dare.

This was the first experiment with time-lapse-ing the affair. Every 5 seconds a screenshot was added to a folder - resulting in around 7000 images over the two days, putting my total development time at 35000 seconds (or, around 10 hours if you prefer). Here it is in all its glory:

Timelapse thumbnail

The simple genius of Flappy Bird

One week ago I would have sworn that Flappy Bird was a case of beautiful dumb luck: some guy threw a bunch of out-of-the-box elements on a screen, and accidentally created a world-wide phenomenon. But after subjecting it to scrupulous analysis during the process of "accurately" cloning it, I discovered so many fundamentally important details that I’m no longer sure it was luck. I'm starting to suspect that Flappy Bird is a minimalist work of gamedev genius.

Hear me out. The magic lies in the way the developer, Dong Nguyen, so sublimely twisted the normal "rules" of game development. He took a handful of well-known, irrefutable game-making adages and threw them to the birds... discarding the usual "must-implements" and implementing the usual "nice-to-haves". But which rules to break, and which to follow? That's the $50,000-dollar-a-day question!

Read on for more »