Professional Front End Engineer. Unprofessional tinkerer.

Slog

07 Dec 2016

Or: How I Learned To Stop Worrying And Love The Scope Creep

So much potential. So much failure. Why did it happen? Scope creep, at absolutely every stage of development and no singular vision.

Let’s go through a rough history of the development because.. it’s kinda wild when I think back, and perhaps only through a self-blame deep dive can the healing process fully take root.

Scope Creep 1: Too many things

What was the initial idea?

The plan was to build some sort of ASCII world building roguelike, running over Telnet, that could be accessed on ancient serial devices like the Psion 5MX - which I think I did actually manage for a hot minute, but have no photos

screenshot 1

Scope Creep 2: Too retro dude

Telnet, really?

Yep, the ancient internet protocol. And it was a sound idea to some extent. I got a procedurally generated text world loading up over Telnet and felt like I was really onto something as you can see above.

Holy crap it is slow though. Nothing compared to a socket, so I decided to completely scrap that (core) idea and rewrite it with Node and Socket.io communication.

Got something going in terminal with node that I was pretty happy with. Not happy-happy but, yeah the flickering bothered me. No getting around it though, it was printing a full screen of text every frame.

screenshot 2

Scope Creep 3: Colour

Rebuilding with better tech means more technical possibilities (that should be ignored!). But I mean, a quick colour test with a few # characters and .. hot damn if that didn’t look like the most luscious, life-like tree I ever did see.

Scope Creep 4: Renderer

Even after every optimisation as I could think of, it was still super juddery and I just couldn’t live with it so - abandoning the core idea of the original project - I rebuilt it with a canvas web renderer. How could I resist CRT style bulge and vignette effects?

Scope Creep 5: Multiplayer

Despite such wooly gameplay ideas, the idea of multiplayer was too much to resist. And, it was only thanks to the intrepid Tom Gray jumping in feet first that it didn’t immediately fall apart as a concept.

Scope Creep Ad Absurdum: Sprites

Unhappy with the typeface of the world, I somehow abandoned the one remaining thing that gave this project any coherence at all which was to start replacing the ASCII text characters. Initially unicode for the hero, I think but in the last days of Rome I remember designing actual tree-looking tree sprites. Disastrous.

“Delete that.”

- Torben Ulrich, 2002

It was never going to be a playable game, and in retrospect we could probably have realised that pretty early on. Maybe we did, in fact but then again making games is just a learning exercise for me so it’s all gravy!

Here, enjoy a cool screenshot that a random world generation bug produced:

screenshot 8

© MichaelCook.tech 2023