Subscribe to:

The Kiwi's TaleWitchBlasterDerelict Blow Stuff Up

Syndicate content

Final post

It's been a hell of a ride these past 6 odd years, but it's time to put the site to pasture.

As of now this site is closed, permanently. All comments and user registration have been disabled. As outlined in my previous post, administration was getting painful due to the incredible influx of spam, but the final straw was receiving an email from Hostgator today telling me that (presumably due to the constant spam attack) that this site had been abusing their CPU usage policy. It's no longer worth trying to preserve what this site once was, but hopefully something much better can come of it.

I want to personally thank Kirsty, Sam, Anthony, Stephen, Arran, Matt, Joshua, Sergio, Gui, Cobra, Koi, Justin, Malcolm, Philip, Greg, Michael, Kristie, Simon and everyone else that contributed to the site or the discussions around it (and sincere apologies if I missed you from that list). Also a special thanks to the freeware game site hosts that featured the games here - in particular to the late Mr Caiman - and everyone that wrote in to tell me what you thought of my work.

There's a Facebook page set up to take the place of this but as of writing there's nothing to show there. Hope to see you there sometime.



Thanks for everything,



What should I do with the site?

It's been about six months since I've posted anything here. Spam is worse than ever and Mollom (anti-spam system) is complaining that my site is overusing the free licence for it, even though dozens of spam messages STILL get past its filter every day. I could force users to register to post comments but I can also see that there are thousands of accounts registered by spam bots here too.

I haven't been entirely devoid of things to post about in the past few months (my last Gamejam project was turned into a one-off physical arcade cabinet, for one, though I've neither posted about it here or added it to the games page) but I haven't been making a hell of a lot of progress on my various projects either.

I feel like I need to start again. Maybe drop the Earok name and come up with something entirely new. Or rebuild the site just as a place to store my games, and go back to Blogger or a different platform for my posts.

What do you think?



Started another side project, this time it's a library that wraps Babylon.JS to Monkey.

Babylon.JS is a library developed primarily by Microsoft employees in their spare time. Unlike renderer-focused WebGL engines like ThreeJS, Babylon is designed to be used as a game engine, and as such it includes a lot of game orientated features like Collisions, Terrain Heightmaps and billboarded Sprites. 

My wrapper is far from complete but I've ported just enough to get the test suite running. You can see the Monkified versions of the tests running at (Note, some of these take awhile to start, there's approximately 20mb worth of assets used by the tests).

The github repo for the wrapper is at


The Twitter Archive of Babel, V1.3 (ONLINE MULTIPLAYER!)

New update to the Twitter Archive of Babel is out, now with online multiplayer! Only walking around and chatting to begin with. The only avatar available is one based on a sprite by Mr Wolf at Monkee's Image World.

It uses the Socket.IO library with Websockets, hosted on NodeJitsu (at least until my trial account runs out in a week!). I have to say, Node.JS is pretty neat, and it's not absurdly difficult once you've understood the basics.

Play it online here


The Twitter Archive of Babel, V1.2

New update to the Twitter Archive of Babel

  • Better performance
  • Cut down version for mobile (though the performance still isn't acceptable on a decent Android, need to do more work on this)
  • Touch controllable
  • Animation when warping between rooms
  • Side toolbar

Thinking about changing the name and concept somewhat, dropping the Twitter reference altogether and making it about "Every possible SMS that could ever be made". What do you think?

Hoping to get the multiplayer working in the next week or so.

Play it here:


The Twitter Archive of Babel, V1.1 Update

New update to the Twitter Archive of Babel:

  • Text is larger and more legible, taking up three lines per tweet instead of two. In addition the start of words, hashtags and handles always starts with a capital letters.
  • By pressing Enter it will add the chamber co-ordinates to the URL bar. This will allow you to bookmark or share your position in the world. For example, you can get to the chamber depicted in the screenshot by going to this link.
  • While the previous version of the world "wrapped around", this one does not. It is possible to go to the very top, bottom, north, south, east or west edge and be blocked from going any further (though difficult to reach any of the edges without teleporting).
  • Can hit the R key to enter a random chamber.
  • Additional layer of ciphering is used to give a more "randomly" distributed world.

I had a little bit of trouble getting this version to work until I completely cleared my browser cache (it appeared to have been caching some of the files from the previous version), if you have any issues please let me know.

Play it here


The Twitter Archive of Babel

I took a break from the Traffic Department 2192 remake to do something more quirky and experimental.

The Twitter Archive of Babel is a massive virtual world that contains (Within the limitation of 26 lowercase letters, @ and #) every single possible tweet with no exact duplicates.

So while the overwhelming majority of tweets in the world are utter gibberish, it contains, amongst other things:

  • Every possible tweet that has ever been made.
  • Every possible tweet that will ever be made.
  • Perfectly accurate predictions of every future event.
  • Every secret that has been lost to time.
  • The complete works of William Shakespeare, divided up into individual tweets.
  • Edit: And of course all of the above in every possible language that can be rendered with the latin character set

(In other words, Twitter is now redundant ;) )

The world is a series of almost identical, interconnected chambers connected to each other in the four cardinal directions plus staircases running up and down. It is cuboid in shape, 2946 chambers tall and wide with 2947 chambers across it's breadth. To put things in perspective, if the scale of each chamber was only 1 meter across, it'd still be 4.3 x 1040 times wider than the radius of the observable universe.

I was inspired by the short story "The Library of Babel" by Argentinian author Jorge Borges, which is set in a gargantuan library that contains every possible 410 page book. As much as I wanted to bring the world to life in virtual form, I figured it was just going to be too difficult to do it faithfully so I ended up using the much smaller scope of tweets.

The biggest frustration in developing it was probably giving the world the appearance of being sorted randomly. Each tweet is derived from the X, Y and Z index of the chamber plus the wall position, so I needed to make it so that the smallest change in any of those four coordinates would derive a vastly different tweet. Essentially what I needed was something like MD5, but completely reversable, so you could derive a tweet from coordinates or coordinates from a tweet. In the end I used an array of different ciphers to achieve the desired effect.

The raycaster engine I developed for it was based on some early work I did towards an HTML5 reboot of Derelict. Performance isn't fantastic but it is in a highly unoptimised state.

I'm not sure what to do with it next. Might do some form of online multiplayer mode where the chambers could be explored with a group. Definitely not happy with the clarity of the text, so I'll either need to double the texture size or double the text size. It may also be worth looking into some sort of API integration with Twitter itself.

The current version is up on a temporary page at

Traffic Department Remake Update #1

First update!

  • The full city of "Vulthaven" from the original game has been brought across.
  • Basic control and collision detection has been implemented, though this will be tweaked and refined during the course of the project until it "feels" right.
  • Like in the original game, there are different rendering modes - "Night" mode (which is deliberately nearly impossible to see) and "Infrared" mode. This was actually bit of a pain to implement because, unlike virtually ever other modern graphics platform, HTML5 canvas doesn't support any kind of colour blending mode (I ended up making separate image files for each rendering mode rather than leaving the engine to take care of it).
  • Like the original game, this has a "map mode", but unlike the original game it zooms all of the way out to view the entire city rather than just rendering a simple map.
  • While the primary target is still HTML5, because it's being written in Monkey it works just fine in Flash and C++.
  • As a side project, I've started a wikia dedicated to the original game, that I'll develop and update in tandem. I figured it would be a good way to keep notes and promote the original game. I hope fans of the original game will eventually appreciate it as a central depository for knowledge about the game!

That's it for now, next week I'll focus on combat.

As promised, this is a release-early release-often project, so the current prototype is playable here.

New Project!

It has been a while but I feel the time is right to kick off a new project: announcing another attempt to remake Traffic Department 2192!


What is Traffic Department 2192?

TD2192 is a classic DOS Shareware game by Safari Software. It tells the story of Lt Marta Louise Velasquez, a tough-as-nails pilot out for revenge on the invading "Vulture" Army. The game is most notable for its strong storyline told in a Visual Novel style, highly unusual for a shoot-em-up.


Why remake it?

Because it needs a remake! The original, while it has a small cult following, didn't get the attention it deserved upon release. Also, since it has never been ported, it is impossible to play the original on modern systems without emulation.


What will be different in the remake, and what will be the same?

The gameplay will be altered to take advantage of modern systems, in particular the much larger resolution of modern displays will allow for more frantic run-and-gun action. A more ruthless AI will give the game some much needed challenge. Split screen, netplay, level editors, an "instant action" mode and Gamepad support will be considered.

The storyline of course will be taken across verbatim ;) voice acting is certainly a possibility.


What platforms will the remake be available for?

The remake is being developed in Monkey, so HTML5 will be the primary platform but virtually anything else - from PC to iOS to Android to Mac - is a possibility.


What progress has been made thus far?

Not much, other than the level viewer displayed in the screenshot above! I was able to reverse engineer much of the artwork and map layouts from the original on a previous remake attempt, which I am bringing across to this one.


Who is on the team?

Nothing has been set in stone yet we're on the lookout for anyone who wants to take part - art, audio or even playtesting abilities would be appreciated!


When will it be released?

Who knows! I plan on a "release early, release often" schedule that will see incomplete alpha and beta versions released on a frequent basis to gather feedback and bug reports.


Can I still try the original game?

Absolutely, the game has been generously released as freeware under a Creative-Commons licence. Downloads and online playable versions are available at

Teach a man to Phish

This is a completely safe link to the login page for Dropbox. (Use a regular click, not middle or 'Open in new tab')


The above Phishing demo relies on two simple Javascript methods:

  1. "event.preventDefault()" on this page, the link above is actually a real link EXCEPT for some attached Javascript that stops the URL redirection and then directs the browser to my fake page at (I was inspired to do this by the fullscreen exploit demo at
  2. "window.history.pushState()" on my fake page, which simply changes the address in the URL bar without reloading. It's a relatively new HTML5 feature, and will probably only work on up to date versions of Firefox, Chrome et al.

Granted, you can't use it to change the domain part of the address, but it's not an issue if you've found a way to run Javascript on the target's domain to begin with. While as far as I know you can't run Javascript directly on, the subdomain barely looks any different, and I suspect there'd be other services just as vunerable if not more vulnerable.

Am I being overly dramatic about this or should this be a real concern?