Sunday, March 24, 2024

Robust Action: A Thursday in Space Retrospective

Cover art for the game "Thursday in space"

“Single actions can be moves in many games at once.”

That’s John Padgett and Christopher Ansell describing robust action, the mechanism that the Medici family used to retain power in 15th century Venice. (Xavier Marquez also writes that robust action was how Francisco Franco managed adversarial factions in the 20th century.) 

TL,DR: When there’s more than one reason to do something, it’s more likely to get done. That’s true whether you’re manipulating political rivals or giving time and attention to the ideas in your own unruly brain. 

It’s why Donald and I participated in the 2023 Neo-Twiny Jam.

Why we did it

Our goals were: 

  • Publish a game in 2023
  • Develop mechanics that could be implemented elsewhere
  • Apply novel constraints to inspire creativity
  • Reach a larger audience through the game jam community

Making a public commitment to the game jam held us accountable. Participation was also linked with donations to an anti-hate group, which was a nice bonus.

How we did it

The jam’s 500-word limit was around the length of an in-depth blog post. That gave us room for an introduction, a conclusion, and 3 to 5 decision points that could be 70 to 100 words each, depending on how many choices we provided. 

We wanted the experience to feel like being an Amazon driver in space, and Donald’s artwork did a lot of the heavy lifting to reduce wordcount. He spent time googling images of tug boat galleys for reference, working to establish the cramped environment of the ship along with its worn and threadbare equipment

This was the first time our projects used Clip Studio Paint, and the short time frame forced Donald to learn the program quickly. The claustrophobic reference images started getting to him, but the end result constrains the player within a cramped world. 

Initial sketch of a ship interior from the game "Thursday in space"

Following Emily Short’s recommendation for writing the through line first, we put together a linear story that had 5 choices. Then we broke up the story to present the first 4 choices in any order — the Good Place approach of “taking something great and ruining it a little so you can have more of it” — which made each playthrough a bit different. 

We used one MS Word document to track the wordcount in our display text, and a separate Word document held design notes and lists of things to do. As we got closer to the game’s release date, we did more coordinating via Discord messages. Not very sophisticated, but everyone has their own approach.

More detailed, colored imagery from "Thursday in space"

Thursday in Space involved more CSS work than our previous games. The sidebar uses Terminal with Scan Lines code created by Patrick Himes, and custom work was done for the borders and rounded edges on the buttons at the end of every passage. Code randomly set each button’s destination passage by using pluck to pull from an array of the unread passages. When every passage was removed, the button sent players to the final choice. 

There were 24 different ways to get through the story, which meant that we had to rein in combinatorial explosion by making some choices less meaningful than others. The random order also made it more difficult to test things properly. (Some players have reported that the stowaway doesn’t behave consistently, which is a bug I haven’t been able to fix.)

How it turned out

A final animated .GIF from "Thursday in space"

We accomplished a decent number of our goals.

  • Publish a game in 2023

A clear win, in line with the eternally relevant gamedev advice of making and releasing lots of small games to develop your skills. 

  • Develop mechanics that could be implemented elsewhere

Another win, using CodePen and experimenting with new ways for storylets to work together.

  • Apply novel constraints to inspire creativity

On the one hand, the Neo-Twiny jam gave us the focus that we needed to accomplish the first two goals. On the other hand, some of the choices in this story felt less meaningful than others, which the audience noticed. 

  • Reach a larger audience through the game jam community

This didn’t go so well. Sorting the jam entries by popularity puts Thursday in Space in the bottom 20% of entrants. 

Consolation prize: We realized that we could re-use assets from Project Arcmor, our game from 2021, and then we linked to it as an easter egg inside Thursday, in space

Tuesday, February 13, 2024

Game design documents: Plans come in many forms

When I was creating my first games, I didn’t think I needed to bother with design documents. 

Eventually, I realized that I was creating them anyway. I left notes for myself in various formats:
  • Comments in the code itself. It’s right there, which makes it easier to reference, but it gets distracting. The other problem is that it gets tricky to clean up comments later (unless you’re okay with distributing exasperated rants about your buggy, poorly implemented code).
  • Plans written on paper. Working in a space outside the game’s systems — especially outside of the computer — helps for visualizing problems in new ways. The tough part is maintaining the discipline necessary to convert those solutions back into digital formats.
  • Digital files. Donald and I have been doing more with Google Drive documents, and digital records are useful for copying and pasting ideas between plans and projects. The risk is that “the map is not the terrain”: It’s easy to waste time perfecting the design document instead of developing the game. 
Each format has its own strengths, which is why the broader concept of “what a Game Design Document should look like” ends up being such an amorphous glob. I have found many perspectives online:

  • What should a Game Design Document consist of and why should I write one? Thomas Steffen asks and answers this question, asserting that “Builders don’t just build, they make blueprints and follow measurements.” He also notes that the document will need to be flexible enough to accommodate changes and iterations during production. 

  • How To: Write a Game Design Document is the full Game Developer treatment from Danielle Riendeau, discussing common elements and providing examples (design documents from Grim Fandango and Deus Ex).

  • Creating a Game Design Document is Brenda Romero sharing her thinking. She writes, “There are sometimes multiple ways to do something right in the game industry.”

  • Common game design documents is a collection of archetypes put together by Max Nichols. He dismisses the idea of a monolithic, contains-every-detail-you-need design document as “a tidy fantasy.” Instead, he lists different ways that teams can communicate necessary information.

  • Game Design Document template for independent developers was created by Jason Bakker. I liked his advice to “Be thorough, but don't be absolute. Remember that everything must be allowed to change and evolve over the course of the project, and the design document is a general description more than a blueprint.” 

There are also documents online for Grand Theft Auto, Diablo, Doom, and Monaco

Ultimately, the game design document ends up taking on whatever form is most useful for the team that needs to use it. (Game design is all about testing and experimentation, which includes experimenting with the tools you use to make it easier.)

Monday, January 1, 2024

Keeping Imperfect Records

During Blaugust, I read Ocho’s post about maintaining and managing a backlog of unplayed games. It gave me some things to think about. 

I like tracking the games I’m playing for two reasons: the mindless busywork of recordkeeping is soothing when I don’t have the time or energy for actual gaming, and it helps me manage some of the more extreme mood swings that can come from beating a game. 

A lot of times, I get close to finishing a game and put it aside because I don’t want it to be over. If I’m lucky, I return and take care of unfinished business — I finally beat Inazuma Eleven and Metal Max: Xeno last year, which was rewarding. (My attempt to return to The Last Story was less successful.) 

But beating a game is like being the dog that caught the car it was chasing. I’ll be absolutely blown away by the experience for as long as the game lasts, and then I suffer an existential crisis. What am I supposed to do now that this amazing ride is over? 

That’s when the backlog helps with a list of shiny objects unplayed/unfinished games that can serve as distractions. 

Those are the theoretical benefits. But practical experience has taught me that managing my relationship with the backlog is as important as managing the list itself. If the backlog is a system for managing games, it needs to be a well-designed system that fails gracefully

I don’t need another collection of unfinished projects to feel guilty about. Instead, I should be okay with a backlog that's not completely accurate, or even one that gets abandoned. My PS2 died, and I’m not likely to see the end of Rogue Galaxy, Dark Cloud 2, Wild Arms 3, and several other games. I don't need them haunting the list as perpetual failures.

I’m playing these games to have fun, not to discharge obligationsLoosely tracking my unplayed/unfinished game backlog has been working for me, and I don’t want to turn it into an obsession. 

I think I’ll keep things unchanged in the year ahead.