## Minor Enchantment: Loads of Delight

Or, how to make waiting a little bit fun

April 30, 2026 by Chris Wallace

_In this installment of the Hidden Door blog, our intrepid engineer Chris Wallace introduces a new series: Minor Enchantments! This is a brief dispatch about a minor change to our product experience…which has a big impact on what you feel when you play. Take it away, Chris!_

Hi, it’s Chris, the only UK-based employee of Hidden Door. It’s actually me a few months ago, on a US holiday. That’s handy. While my American colleagues are out, I can monitor prod, pick up a few tickets, and...sneak in some _mischief_.

## We Ship This

Our small but mighty team ships a lot. “Startup pace” is much mythologized, so concretely: we deploy perhaps a dozen times a day. Shipping a thing, any thing, is a sequence of roughly one thousand decisions. Moving fast requires a team that shares enough context and trust that individual contributors can make a significant number of those decisions alone.

Orrr...you can wait until your teammates are on public holiday and just do things.

Many of those thousand daily decisions are inconsequential, and it is good and virtuous to do the minimum viable thing. For example, if I’m in deep thought about the correct state rehydration behaviour for websocket reconnects at different timeout horizons*, it simply isn’t the time to craft a bespoke loading transition when a placeholder will do. These in-the-moment decisions also get shipped! Perfect is the enemy of the good, so if leaving something functioning, but not delightful, creates an overall better experience, ship it.

*(if this technical word soup doesn’t mean anything to you, my advice is to keep things that way.)

## A Load of Fun!

For a long time, our loading screen upon entering a game showed white text on a dark background. The text read “Game Loading…” and that’s all. The absolute best!

It didn’t seem an important screen. It showed up for a couple of seconds when you entered a world, while the server beeped the necessary boops. Nonetheless, it bugged me. I load a _lot_ of worlds. So three seconds of boring screen each time is a lot of cumulative boring screen! Which made this minor element the perfect target for well-meaning mischief.

We’ve been fortunate to work with some amazing artists at Hidden Door, and we now have a bevy of custom emoji. They were designed for use in our social moments, where players share snippets from their adventures (Hey, [check some out](/content/explore/index.html)!). But why restrict ourselves to “intended” uses? I _intend_ some good chaos. How do you like me now!?

I whipped up a quick component that cycles through a loop of judiciously chosen emoji icons while the game is loading. It isn’t the most amazing interface ever, but my own reaction surprised me:

_Image credit: Ward Sutton for The Onion_

The component is somewhat carefully crafted: it respects motion preferences, it preloads the emoji assets so they can cycle at predictable intervals, it stays mounted for a short minimum time, even if loading is fast, so there’s no distracting flash of animation. There is Just Enough™ engineering behind it. But my, is it better than “Game Loading...“.

Such a small thing to be so unreasonably proud of it, yet something is working. This widget has grown from its humble origins on an interstitial loading screen to a motif in the product, reused for a bunch of loading states. Loading is never a good place to be, but we’ve found a way of putting a tiny touch of personality there. A literal human touch, [thanks to awesome, real life artists](/content/blog/location-art-design-inspiration-process/index.html)! It surprised me how much that little interjection changed the feel of the experience. It may be only a seed, but from it we may sprout delight.

Go see the widget in action. [Play now!](/content/play/index.html)
