The Event Horizon of a Rabbit Hole

A black screen framed with a white window. Text in the center reads "Game Over. You gave the computer your data! I told you not to do that!"

Hello! Last weekend, I took a brief break from writing about video games, and instead took a moment to talk about tabletop games and map design. As it happens, breaks and distractions would turn out to be a running theme of my week, in general and in game development. This is a reflection on those distractions – and how I deal with it. And, while we’re here, some musings on anxiety and ADHD.

Let’s begin!


Part 1: Context for My Strange Obsessions

I don’t particularly enjoy writing about myself. Historically, anyway. Of course, I enjoy writing, in general – hence the existence of this blog. But writing about myself – especially in a professional sense – has never come naturally, and can be pretty anxiety-inducing. Which is an unfortunate position to be in, seeing as you have to advertise yourself to land a job in the games industry. Or any industry, really.

I think of myself as more of a technical-leaning person, and tend to be at my happiest with my head down, plugging away at something convoluted. Design analysis, code debugging, whatever. I’ll gladly spend three days trying to parse the documentation for OpenOffice BASIC, and then turn around and spend the same amount of time staring at a blank page where my cover letter is supposed to be.

(Which is annoying.)

It goes almost without saying that everyone has more trouble doing things that they don’t enjoy doing. Even when the dislike or discomfort is minor, it can still make tasks feel much more draining than they ought to be. Or, at least, more than you feel they ought to be.

Over the years, my brain has made me very, very familiar with this phenomenon.


The "Epic Handshake" meme, with ADHD and Anxiety handshaking over "Not doing the thing you want to be doing right now."
He’s bad at managing tasks. She hates doing things. Together, they are… the Worst.

There are several pitfalls people can easily fall into when discussing ADHD, anxiety, and executive function – and I want to avoid those here. In particular, I think some of the language around these topics – especially when it overlaps with online, hyper-productive work culture – tends to touch on an inability to do things, or worse, conflates them with general incompetence. Which is…

…No. People aren’t merely the sum of their second-to-second productivity. 🙂

In my personal experience, the relationship between ADHD, anxiety, and staying on task is fairly pervasive – but not all consuming. It’s the sort of thing that causes me to open up my e-mail, see a response to a job application, and hear a little voice in the back of my head go-

“Ack!!!”

-before I open it and start working on a reply. Executive dysfunction and anxiety don’t actually stop me from doing things I need to do, so much as they change the time or way I go about doing them.


So anyways, pin all of the stuff I just said in the back of your brain somewhere, because it’s time for me to talk about what I did this week in gamedev. Don’t worry, though – it’ll come back. 🪃


Part 2 – “I Will Not Recreate Windows 8’s Bad UI

I find that every game project that I’ve ever worked on has followed a curve.

It starts with a honeymoon phase – you’ve just had a fun little idea for a game, popped open an editor, and started throwing together your ideas. And, if it works, you’ve got a real project on your hands. So you get into the early stage of development – setting up mechanics, messing around with level designs, and thinking about all the stuff you could do with your concept.

Inevitably, though, you reach what I’ll refer to here as the game designer’s put-up-or-shut-up part of the project; the part where you need to reign in your ideas, figure out what works, and start moving deliberately towards something you can actually finish – as much as any game can be finished. After that, you enter a “proper” production cycle, where you really buckle down and work on all the details, fun or otherwise.

I’ll give you three guesses what part of this process I just went through on Doorways 9.

Social media post from My_Kneecaps: "I've had one of those ideas that I have to make a mockup for to get it out of my head. I can NOT allow myself to actually make this, it would be far too much work.

I will not recreate Windows 8's bad UI. 

I will not recreate Windows 8's bad UI. 

I will not recreate Windows 8's bad UI."

Below the message is a rough mockup reminiscent of windows 8's UI.
Whoops.

At the start of October, I set up a roadmap that would carry me through to a finished product, and started cleaning up some of my garbage from when I was first learning Godot. There was a fair bit of work to be done – reorganizing files, removing unused/defunct scripts, and cleaning out any and all test content related to UI so that I don’t lose my mind later on. Most of it was, frankly, boring – hence my writing about TTRPG content last week.

From there I moved to the beginning of my roadmap, working a bit on cleanup and new content every day after work. Content like this region select screen, which I’m quite happy with.

A blue screen framed in a white window, titled: "Location - What region is this computer in?" Page content on the left includes: a privacy section with a checkbox labelled "Share my location data with Macrosoft*", an empty text box titled "confirm location. and a set of fine print reading ""Location data gathered through Doorways 9 will only be used by the Microsoft Corporation for improving this product, and for tracking internal statistics Macrosoft will not use transfer, or publish this gate for marketing or business purposes-provider your country of residence enforces regulations against such actions." The right side of the page features a white eyeball logo, and a list of alphabetical countries from Afghanistan to Andorra.

The Languages page was, in theory, similar to the regions one, with slight variations on the UI – introducing players to different elements before adding an actual threat to their use. In practice, I learned that some of the popup UI elements in Godot do not work like I thought they did.

Every version of english in microsoft's list, by region, in a large popup menu completely blotting out a game screen.

I had thought that these lists would frame themselves like the scroll container in the previous image, seeing as they are also scrolling menus – but alas. Actually (and somewhat infuriatingly) the popups treated keyboard navigation and viewport framing differently than the other lists I was working with – and would let the player navigate off-screen unless they scrolled or dragged with a mouse.

This is a problem for a game entirely about keyboard controls.

I spent several hours trying to figure out if I could get some of these UI elements to do exactly what I wanted them to, gameplay-wise. I quickly went from messing with settings to trying to create some variant classes of the menu UI, with little in the way of useful results. And, if, at this point, you’re sitting there thinking “why are you bothering with this? It seems like this isn’t intended for what you want it to do?” then…

Yeah. Yeah, you’re basically dead-on.


After basically an entire night trying to bend this UI element into something else, I got up, went for an evening walk, and then thought to myself:

Wait, why the hell am I doing this?

After about 60 seconds of reflection, the answer I came up with, essentially, was:

“…I’m bored? And tired?”

It was around Wednesday, October 11th at this point, and I had been working on Doorways 9 every night after my day job for about 11 days. Between the cleanup, the roadmap planning, and the wrestling with those damn UI themes, most of what I’d been doing had been quite dull. There was beginning to be a feeling – however unjustified – that I wasn’t accomplishing things at quite the speed I wanted to. The reason I wasted an afternoon on something like this was that it provided something to latch onto – a problem to actually think about, regardless of its actual importance.

🪃

Oh, look. It’s those ideas from earlier.


Part 3 – Escape Velocity

The next day I completely ignored the language select, and instead started building a brand-new game over screen. In contrast to my pace in the first part of the week, the process of building and hooking up whole thing took me about two hours, tops.

Coming off that, I jumped over to audacity and made a new sound effect – “click_that_kills_you.wav” – a modified version of my button click effect to indicate to the player that they’ve done something bad.

And, for good measure, I created a sadder, creepier version of the Doorways startup noise for the game over screen.

This one-two of UI and audio proved to be the reset I needed, and I filled out the remainder of my week by working on various odds and ends – culminating in today, where I mostly wrote this! I didn’t really even take a break from working, as much as I changed how I was going about it – and that, it turned out, was enough.


Part 4 – The Rear-view 🪃

This is the crux of my experiences with executive dysfunction in game development, and the quote-unquote thesis of this essay: game development needs to be kept interesting! Or else!

There’s a strong natural temptation, I think, to treat game development like a checklist past a certain point – to lay out everything that remains to be done, and to go line-by-line until the game is finished. As a former ADHD child who commonly got “make a checklist” as well-meant advice for keeping on top of things, I feel qualified to say that that method does not always work. Sticking to a plan is, in itself, something that requires effort – and that takes up space in your mind, on top of whatever it is you’re actually trying to do.

A set of 4 trello board to-do lists: "Introductory screens", "The part where stuff gets weird", "the part where she gets pissed", and "Your Operating System Wants You to Die"
My “roadmap”. Gotta keep it fun where I can, y’know?

That’s what happened to me this week: I was already busy and tired, going down a list of stuff I had to do, and tried to power my way through some things that were time-consuming – without much in the way of fun or interesting results. All that accomplished was putting me into a small rut, which made me a *tiny* bit anxious about needing to get things done, which ultimately caused me to start losing focus on what I was doing! And all this despite the fact that I’m an indie dev – so the only person in charge of the schedule was… me!

This wasn’t even a particularly bad week, as far as executive dysfunction goes; the dysfunction itself only lasted an afternoon at most, and I got done everything I wanted to do – and more! However, I thought the contrast between the start and end of the week was a good representation of my point:

Don’t get lost in thinking about what you “should” be doing, rather than what actually works for you in the moment!


Fin.

Oh boy. This one took a while to write. Again. And this one was harder to sort out than the TTRPG one. Next time I’m probably going to keep things limited to a small update post, because this is a bit much for one of my days off, y’know?

But regardless, thanks to everyone for reading! I hope you all have a great rest of your day!

Leave a comment