gavd.co.uk

Frail and faltering follower of Jesus

My games dev journey, Flash, Ruffle, and HTML5

By Gavin Davies

The end of Flash was a tragedy. Thankfully, Ruffle makes many old Flash games playable! This post is about my game dev journey.

Why I loved Flash

I LOVED Flash. It was an all-in-one package where I could integrate animation, music and code. It was just so EASY to pick up - the first time I played with Flash (Flash 3 I think?) I found that I could just intuit what it did, how to weave it together.

In the 2000s, I put out a bunch of games. Many of them are on this site. I also did private freelance Flash games development for some big name brands. I found I could move fast, reuse engines, and if I could imagine something, I could usually do it. This was before the curse of the smartphone, so I didn’t have to worry about “responsive designs” and users with bizarre and ever-shifting screen resolutions. Everyone had a keyboard and a mouse, and 640x480 was just fine to build your app in. You were building on rock, not on sand, like today. Flash was the only real way to make browser games, and it was darn good for it.

My Flash games are a part of my personal history - they mean a lot to me. Each one respresents a time in my life. They were part of a path to having enough money to put down a deposit on my first house. They feature artwork and music from my friends. Amoeba Amoeba, for example, I co-wrote with Davey J and Jon Reynolds, each of whom I’ve been friends with since I was 5 and we’d always talked about making our own Streetfighter style game!

The pulling of the rug

Then the rug was pulled. Fancy smug people in California decided Flash’s security issues were too much. I mean, I get it, there were lots of holes that would never be patched, but the HATE the smug people had for Flash, I still feel that personally. I LOVED Flash. To this day, I’ve experienced nothing nearly close to as FUN.

I got busy with other stuff, but I still regularly dreamed about making games - I mean that literally, I wake up in the night thinking I have 90% complete games I’d just forgotten about; fun and exciting games. It’s like dreaming about a room in your house that you’d forgotten. Then my head would clear of the sleep fog and I remember that Flash is gone.

Trying to move with the times

I tried to get into Android and iOs. I mean, they’re fine, but they’re so big and bulky with a billion moving parts and the barrier to entry is insanely high, even just to get on an app store you have to jump insane, ever-shifting hoops. It just wasn’t the same as Flash’s warm, comfy environment. Could I really be bothered re-learning from scratch? And what did I target? Mobile? I had a few cracks at simple mobile games including Soft Paws (goodness knows if that’s still available, I can’t bear to look) but it wasn’t the same as the joy of Flash development. Releasing onto an App store wasn’t fun like releasing games onto Newgrounds.com had been - there was no immediacy, no sense of real unfiltered people, just a boring corporate facade and an ENDLESS grind of “upgrade this SDK, upgrade that SDK, everything you knew is worthless once more”.

I tried Unity several times. I get into it, enjoy what I’m doing but it just…. fizzles out. The sheer effort to get a game together and then… Who would play it? App stores? Steam? I just don’t know. Back in the Flash days, you uploaded to Newgrounds, then Armour Games or Kongregate or someone would come along with a sponsorship offer. Your game would get resposted everywhere anyway. I remember a Chinese hacked version of one of my games appeared online once! It was so organic and natural and FUN. But I just didn’t know where to START with the new world.

Yeah yeah, Old Man Yells At Cloud. But this is MY story. Read it or don’t!

Then there were the game dev toolkits. There were like 15 billion of them. I am old enough to remember things like Freescape in the 80s/90s. I don’t know, they always FELT wrong. I think Flash felt right because my animator friends could get involved easily, it wasn’t a main thing of dorks.

Finding a way forward

Then one day I was reading about Wizardry on a blog. I started thinking; “hey, this simple first person 3D, I reckon I could do that in the Canvas API in HTML5” so I built a very simple corrior.

Then I added the ability to move around the corridor.

Then I added colour.

Then I added objects that could be at different positions on the vertical plane. And ladders, stairs, windows…

Oh man, I have a game! I’m ENJOYING THIS!

This engine demo became “Robbo’s Quest” (yes, the same Robbo as Markov Modular Music). And, happily, I released Robbo’s Quest onto Newgrounds, just like I did when I was young!

Yes, Robbo’s Quest isn’t the slickest game - it’s really an Alpha, a proof of concept - but the engine works, it’s fairly solid, and it’s 100% hand crafted. No libraries, no frameworks, no baffling array of tools, just JavaScript, HTML, a touch of CSS, and a bunch of build tools I wrote myself.

So, I am somewhat back in the game. Robbo’s Quest hasn’t gotten much traction, but I’m delighted that I managed to release it at all given I’m now a middle-aged family man!

Ruffle to the Rescue!!!

Most of my Flash games are playable once again due to Ruffle. Only Take to the Streets and End of Nightmares seem glitchy, everything else works like it’s 2005 once more! You don’t need to install anything, you can just browse to the games on this website or on Newgrounds.com and play them - the way it works is by WebASM, which I guess parses the .swf file and converts it into bytecode that runs in JavaScript. Or something like that. I’m just absolutely DELIGHTED that my games are playable again.

I don’t want to spend my life looking back, but I did want to show my children what Daddy built when he was young, confused, and lonely.

What’s next?

Today, an 8bitCadeXL arrived. I’ve got Arduino experience. Once we’ve built it, the kids and I are going to make a simple game. 8 bit console with 2.5kb of RAM? Them’s me specialties!