Familiar Castaways

All aboard!

Ah, welcome! Welcome! I see some crewmates old and new, and a few familiar castaways too. Come and sit for a while?

I’m Cariad, and I’m a game developer. Well, just game jams here and there, really. But it’s been ages since I finished one, and I really wish I’d achieved more than I have by now. I’m grumpy about it, and I’m in the mood for a change.

It starts with capitalism

I’ve been self-employed for the last six years. The money wasn’t fantastic, but I had something better: time. I worked on open-source projects! I learned about art and music! I took online courses every week! I tried to have a game jam on the go daily! It was wonderful!

But the only money I earned was the money I made for myself. I worked all the hours I could, but I never shook the nagging feeling that I should’ve been a lot more doing more to safeguard my partner’s and my future.

So, my hobbies became hustles. I bootstrapped a couple of doomed commercial applications. I can’t remember how many blogs I set up to share the silly little things I loved, with an eye on whacking in some ads and sponsorships later. And, oh boy, I read too many success stories about folks selling little games on itch.io to pay for treats.

Development dissonance

You’d never know it from looking at my releases, but I tried. For years, I looped around:

  1. Try to think of an idea for a game. Something small enough to build quickly, but chunky enough to be meaningful. Lose sleep and panic for as long as it takes.
  2. Find an idea and start building it.
  3. Spend a couple of weeks building my own implementation of some small daft part of it because it’s interesting.
  4. Realise I’ve gone another month without income. Trash the game and resolve to trying a smaller idea next time.
  5. GOTO 1

My weakness is “building my own implementation of some small daft part of it because it’s interesting”. See, I love–like, aggressively love–software engineering, and I struggle to settle on solutions that are good enough when there are far more interesting solutions just under the surface.

Don’t get me wrong; this isn’t pride or snobbery. I just think coding is cool, and it’s tough to stop scratching the itch.

That’s how I ended up building my own inverse kinematics resolvers, rendering engines and narrative scripting languages rather than just shipping a damned thing.

So, there it was. I was trapped between two deeply and genuinely held beliefs:

And as obvious as it sounds now, I was too deep in the swells back then to see it. I needed an external force to snap the loop.

*snap*

And, oh boy, there ain’t anything like getting a job to snap familiar loops.

Six months ago, I quit self-employment and joined a local company to save the planet.

It’s a spectacular place, and a weight off my shoulders to know I’m working on a net positive to humanity. But I don’t have the time I used to for jams, so I haven’t opened Godot in months.

But, wait. Do I need to worry about small games any more?

Starting again with a slower boat

I feel a bit daft to admit, it took me nearly six months and a bit of help from (and many beers with) my new mate James to realise I don’t need to fret over those short-and-fast games any more.

Remember those competing beliefs?

It’s a tremendous privilege not to have to worry about how I’ll afford next month’s rent. And it’s tremendously comforting to have a rigid Monday-to-Thursday box in the next city over for my worksona, rather than having to live with her.

I can take a deep breath now, relax, and realise the truth.

Right. Let’s face some doubts head-on, and crack on!

The game

So, this is the exciting bit! Now I know I can do anything I want, what do I want to do?

I’ve got an idea. It’s vague, but that’s okay. All I know is it’ll be:

Yeah, I grew up on Monkey Island, and I’m unapologetically influenced by it. And, yeah, Grim Fandango broke me, emotionally. But Broken Age is probably more responsible for this than anything else.

Broken Age was the first adventure game I thought about the technical implementation of while I played. I wouldn’t want anyone at Double Fine to think I was bored or not immersed! I just remember playing it differently. I still loved it, and it lit a fire under me in a way that the rest didn’t.

So, I’m starting with a vibe. The rest will land later.

Preparing for particular problems

I know how my brain works. I know the ebbs and flows of my mental health. I know how I’m going to react to this awakening, because I react the same way to all the good things that happen to me.

I’m bipolar. I swing between weeks of cosmic energy and invincibility, then weeks of despair and self-sabotage. Mix in the same lack of self-confidence and imposter syndrome that everyone else around here has, and it gets messy.

The good news is, I’m old enough to recognise it and have strategies to deal with it.

Compartmentalising

In the past, most of the despair I felt over my game projects stemmed from not working fast enough to make them even close to financially viable.

Now that I don’t need to work fast at all, my strategy is really to just remind myself that it’s okay to not be okay, and it’s okay to take time off.

Compartmentalising my day job massively boosts my mental health by making a vivid distinct between the thing having my undivided attention and not thinking about the thing at all. I’m going to do the same thing with this.

So rather than work under my government name, I want a little “studio” name I can associate with. I’m not talking about a legal entity or anything like that; just a thing that helps me to keep a healthy distance.

Back when the heat was on, I made art under “Pixels All the Way Down”. Ah, she was a fine ship, but she reminds me too much of the old pressures and anxieties.

So for a fresh start with a fresh mindset, a fresh name: Familiar Castaways. A box I can work in when I want to, and a box I can put away without guilt or shame when I need to.

And I will be putting the box away when I need to. I’m not holding myself to working on this every week. I don’t think I’ll have anything close to done for years. I’ll put my finger in the air and say “2028”. I reckon I can build something by then and still have fun doing it.

Journalling

I know my mortal enemy lives inside my head and will try to convince me I can’t do it, and that it’s better to quit than embarrass myself. My strategy is to prove I can do it by collecting evidence, and to embrace the embarrassment.

That’s all done here, in this journal, and it’s why I’m prioritising getting this journal up before I start planning, drafting, coding or drawing anything. I want to start here with nothing and fill it with every achievement. I want evidence that I can defeat insurmountable problems to beat my stupid self-consciousness with. Carving out time to reflect on experiences is good, healthy and one hell of a confidence booster.

And embracing embarrassment builds confidence more effectively than avoiding it. Creativity is scary sometimes, right? It’s all subjective, so everything you create reveals something about yourself; your experiences, values, beliefs and prejudices. The more you think about it, the less appealing the proposition of investing time and energy in a thing that might alienate you from your friends and family. No wonder our self-preservation instincts kick in and tell us to shut up, keep our heads down and stop taking risks!

I can’t speak for anyone else, but I think I can defeat that mindset by pushing through the fear and noticing that nothing awful happens when I share art. That’s my plan, right there.

I won’t use the journal for accountability. I know some folks feel like posting their progress every week encourages them to have something to share on pain of embarrassment. I’ve probably been guilty of that in the past, too. But there’s no need for it! It’s more important to me, now, that I make progress at all than at any particular regularity. There’s no point in setting yourself up for failure. No point in setting a trap for future-you to walk into when they have a bad week.

And honestly, if you’ll forgive a little ego, it really motivates when I share something I build, drew or composed online, and I get a pat on the head for it. I don’t know where social media validation is in Maslow’s hierarchy, but I’m comfortable enjoying it and you’re free to judge.

Finishing

As much as I’m being driven by the joy of creation, the pursuit of perfection ain’t healthy. And if I endlessly sweat the details on the current thing, I never get to start the next thing.

So it’s critical that I finish the work I start, and that happens when I recognise that something is good enough.

Let’s take this journal, for example. I’ve been working on it for a few weeks now, and–honestly–it’s not as much fun as it used to be. I took a week off, which was cool and healthy, but now I’ve settled into a loop of tweaking and editing and good lord I just need to publish it.

And I will publish it! Soon! And I can keep that promise by recognising the parts that need work, and the parts that don’t. The website doesn’t need to be pretty right now, so I’ll make it pretty later. I prefer to write loose and casual, so I’ll comfortably dismiss most of what the grammar check suggests.

Just a couple more last-minute proofreads, then I’m done.

The technology

Like the game, I haven’t settled on an exact technology stack yet, but I’ve got some ideas I want to try.

Those three pillars are:

MonoGame

Not counting my old Amiga days, the first games I built were in Unity.

I didn’t love it. It was sluggish, too difficult to wrangle pixel-perfect 2D graphics, and I spent more time coercing Unity than embracing it.

I loved C# already because of my day job at the time, so MonoGame was a natural alternative to Unity to try. And it’s incredible! It’s a framework rather than an engine, so it’s super hands-off. You’ve got to build a lot for yourself, but that gives you a lot of freedom to build the foundations as you like.

Now, it ain’t perfect. It’s a rotten pain in the ass on macOS, and I never stood a chance of finishing anything with it during a jam’s time frame. I certainly moved to Godot for jams, but now that the time pressure’s off, I’m going home.

Spine

Spine’s the only technology in this list that I have no experience with at all. I’ve heard of rigging and kinematics before for sure, and I’ve rolled my own in the past out of interest, but I don’t fancy spending a year rolling it right.

The first time I heard of Spine was in Esoteric Software’s showcase for Cult of the Lamb. I thought it was neat! But I only wanted to do pixel art, so I didn’t look too deeply into it.

This new game, though, won’t be pixel art. Pixel art’s my comfort zone for sure, but my gut tells me it’s time to try something new. I’ll admit, I’m influenced by an exhaustion I’ve perceived in reviews of pixel art games. Maybe my perception’s wrong, but eh – why not go wild with a new style?

Naturally, the implication of me picking a character rigger is that I’ve ruled out traditional animation. If I was willing to put the next ten years of my life into the game, I’d be open to it for sure! I’ve done a little bit in the past and I really enjoyed the process. I’m certain there’s a nearby parallel universe where I’m blogging about the short film I’m planning to animate. It really boils down to the time I want to invest in the game. I want to build as much of it myself as I can, because that’s what I love, but any decision that pushes the development out beyond a few years is unjustifiable.

Ink

I think the first time I heard about Ink was in Jon Ingold’s GDC talk about coherent storytelling in open worlds. I watched it back when I was working on a “small” story-driven role-playing game with my own scripting language, and… well, obviously it didn’t work out. But I fell in love with Jon’s talks, started playing Inkle’s games, and honestly I just had a fantastic time.

I’ve experimented a bit with Ink already with some interactive fiction jams, so I’ve got a decent grasp on the basics. I’ve never tried embedding it inside a game to manage state and the like, so that’s something I need to try — but I’m optimistic!

Upcoming milestones

So, I’m full of energy and ideas and ready to roll. I don’t want to plan too far ahead because there too much I don’t know yet, but my first milestone is absolutely to settle on the technology. I want get some foundations down as soon as possible, and the technology is the worst thing to change down the line.

The story will change. The art will change. The gameplay will change. It’s good to keep that stuff flexible. But I’ll lose my mind if I end up rewriting the engine in different frameworks. That has to be stable sooner rather than later.

And so, my first three challenges are:

I expect these will take me through to the end of 2025. There’s more to building a character than learning Spine; I need to get comfortable making the assets too, probably in Procreate. After a few years away from C#, I’ll need a minute to get back into MonoGame. And if it’s still painful to use in macOS, I might pick up a Windows laptop and have to learn how to use a whole new operating system.

I’ve got a lot to do, and nothing needs to be even close to perfect. The goal is to figure out the foundations, nothing more.

The Actually Inevitable question

I’m sure I could avoid talking about AI and most folks reading this would be happy. But I also know for gosh-darned sure that some of you will want to know if I’m planning to use it, because it’s important to you.

And it’s important to me too, so let’s clear the air.

In broad strokes, I’m pro-AI. I work for one of the United Kingdom’s leading AI software companies, so you can’t accuse me of hiding that. I genuinely believe that AI is worth investing it and has the potential to improve every life on the planet.

But, that said–and solely in my own opinion and not the opinion of my employer–the most high-profile uses of AI we see today horrify me. I don’t condone the wholesale ripping and training on creative work without consent. I don’t condone publishing AI-generated works without a disclaimer. I don’t enjoy AI-generated works.

I won’t be using any AI-generated creative works in this game. Primarily because I want to do the creative working, but it really isn’t compatible with my values either.

But–and it’s a big but–I currently use and will continue to use AI to assist me.

Specifically:

If that’s too much AI for you to support me, that’s cool. I’m not going to try to convince you otherwise! Really, all I can say is: it helps with my confidence. It doesn’t make anything for me; it just helps me to build things right.

Setting sail

I think I’ve yapped enough now, so I’ll get this journal ready to commit and work up the confidence to push.

If you want to follow along, follow me on the socials! I’m @[email protected] in the Fediverse and @cariad.earth on Bluesky.

See you out there!