Friday, December 22, 2017

CalFree in Chains

And, it's out! CalFree in Chains is now available in public beta on the Steam Workshop.

This feels like a good stopping point for my devlog. Development itself will still be ongoing well into next year, but from here on out it'll almost entirely be one-off bugfixes and balance tweaks. I'll probably do an official post-mortem in January after the initial wave of players have finished the game.

The last week was a real whirlwind. I got a ton of good bugs, most of which were pretty straightforward but the sheer volume of which were challenging to complete. On top of that, I did two major overhauls of weak points in the game, including a late environmental puzzle and the final boss fight. AND, the third episode of Before The Storm dropped in the middle of all this, further complicating my scheduling. In retrospect, I really should have pushed back the release date... but I was so close to that delicious December 22nd that I wanted to hit it. Otherwise, with the holidays and year-end festivities, it definitely would have rolled into 2018, and I irrationally wanted to get this out before the end of the year.

There will be more analysis and reflection in the post-mortem, but for now, I wanted to close with a few random data points.


First, lexical analysis. The total wordcount for CalFree in Chains clocked in at around 167,747. That's 71% more than the 98,000 words in The Caldecott Caper, which means that CalFree in Chains is 71% better. I'm still well under the 330k of Dragonfall and 443k of Hong Kong, so I'm less concerned than I was previously about being too wordy.

There are a total of 173 swear words in this campaign, up from 114 in Caldecott.

I made a word cloud of all the, uh, words in the campaign.

Most of these make a lot of sense, though I was surprised to see Saito so prominent. He's a constant presence looming over the campaign, but I would have thought that words like "California" and "Protectorate" would be a lot more common than "Saito".


I'm debating whether to make a separate post on music... I did some interesting behind-the-scenes technical work that didn't make it into my previous post about music, and I also want to talk about my personal musical experience. This post is short, so maybe I'll do the latter now and save the former for a wiki article.

In Caldecott, I mentioned that after finishing the game I came up with "theme songs" for all of the major characters. That idea was in the back of my head while working on CFiC, and to an extent certain songs helped inform my understanding of various characters.

Each of my major campaigns has come during a different musical period for me. While working on the episodes of Antumbra Saga, I was in the midst of an indie rock phase. My time on Caldecott overlapped with an obsession with synth pop. And I started work on CalFree in Chains just as I was heavily getting into EBM / Industrial music. This is not coincidental, as both are reflections of my general mood and philosophy this year.

Ayria is the artist I listened to the most while working on this campaign, so much so that I can do most theme songs entirely from her discography.

Valiri: Just Another Long Shot
Moonflower: Girl on the Floor
Dorbi: Debris
Arelia: Fading From Me
Brian and Sira: Friends and Enemies
Rick: Infiltrating My Way Through the System
Lina: The Radio
Kora: Hearts for Bullets
Desorn: The Gun Song
Masato: Insect Calm
Isao: 1000 Transmissions
Slagarm: My Revenge on the World
Cirion: Hurting You Is Good For Me (I seriously feel like this is my theme song as a developer)

And, in non-Ayria music:

Arelia: Extinguish by Chiasm
Kora: Migration by Kidneythieves
Valiri: The Caffeine Cycle by Chiasm
Desorn: The Razor's Edge by Digital Daggers
Isao: Lucid Heart's Refrain by Invocation Array
Masato: Looking Glass by The Birthday Massacre
Rick: Sirens and Satellites by Ego Likeness
Tassender: Numbers by Great Northern

And a general assortment of songs that meet the mood and theme of the campaign:
No Horses by Garbage (It is scary how closely the video parallels the campaign)
Melt by I:Scintilla (Honestly, I had all of Optics on a non-stop loop for weeks. Perfect mood music for this campaign)
Catalyst by Invocation Array. (Hearing this song planted the initial seed that grew into CalFree in Chains, and I was thrilled that they let me include it in the final game)
The Day After by (the unfortunately named but very talented) Pzychobitch
Halo by Collide
Tell Me Why by Jakalope

Here's a little playlist with many of the songs from above, which is a decent sample of what my Pandora station sounded like while working on this game.

Finally, in the extremely unlikely case that anyone is looking for a particular devlog post, here's the complete list of all six months' worth of campaign status updates and modding techniques.

  1. Map creation, Sutro Baths.
  2. Dynamic hub.
  3. Mission design and planning.
  4. Mission dialogue.
  5. General dialogue creation, Google docs.
  6. Cover art, commissioning artists.
  7. Proofreading, editing, and revising.
  8. Crew influence system, design and coding triggers.
  9. Testing.
  10. Combat design and coding triggers.
  11. Scripted cut-scenes.
  12. Creating NPCs.
  13. Crafting and custom items.
  14. Loading screens.
  15. Atmosphere: light, sounds, and animations.
  16. Reactive dialogues.
  17. Companion banter and combat barks.
  18. Side-mission philosophy and design.
  19. Romance and sex.
  20. Hub design and scripting.
  21. Music.
  22. Initial play-through.
  23. Initial analysis and local updates.
  24. Command lines are awesome.
  25. Alpha testing.
  26. Recursion.


  1. I loved Antumbra and the Caldecott Caper. Really looking forward to playing Calfree in Chains, but I bought the game through GOG and not Steam so I don't have access to the Steam Workshop. Do you plan to release this on Nexus Mods or anywhere else? Thanks for all the hard work.

    1. Thanks for the kind words & your interest! I need to update some music-related things to work for the non-Steam version, and I plan to release to Nexus Mods once that's done. No date yet, but it'll probably be early January. Cheers!