2021-11-17 — Tempting fate and spreadsheets

I’m posting a second blog entry. That puts us one entry away from three. One occurrence is chance, two is coincidence, but three—that’s a pattern. If I get to three, this might actually turn into something. For some reason, that scares me. It’s not as if this is taking away from my writing time; I write this at odd hours whenever I happen to feel like writing it. For example, tonight’s was written because I had to reboot my computer, something I almost never do. Uptimes on my machines regularly reach into the months, and one of my servers crossed a year.

(sidebar: rebooting your computer regularly is important, etzy is a crazy woman, please do not follow etzy’s example)

Point of all this rambling is exactly what I put up in that title there: tempting fate. Whether or not you actually believe in fate is a topic for the philosophy corner. I do, though only in a very fanciful and inconsequential way. Also, I love the philosophy corner.

I know I’m irrational when I say that I believe in fate. Rationality is the core of my being, the essence of most decisions I make, and yet so often I want to throw logic and reason out the window. Usually because I want to make out with someone. But also because sometimes, life just seems to flow in ways it shouldn’t, ways it couldn’t, unless someone was pulling a string somewhere. This sort of idea plays directly into several of my stories, and is specifically called out by Rika in chapter one of TLS. Rika and I have a lot in common, but also not a lot in common. As with all my major characters, a part of me lives in them, some aspect of myself sliced away and merged into a complex web of origins-relationships-beliefs-goals-desires-dreams-etc that form a character.

This is typically the part of the program where I’d dive into examples… but these tend to get very personal, so I won’t be doing so. Instead, we’re going to talk about spreadsheets! (see me deliberately bury a topic below random philosophical ramblings to get people to read them)

I’ve been asked about my spreadsheets quite often, which is a sentence normally reserved for bankers and people obsessed with macros. I’m a writer. Spreadsheets aren’t usually our thing. Yet for a story like TLS, pushing millions of words and hundreds of characters, it is the only way I’ve been able to keep myself sane.

POTENTIAL SPOILER WARNING – while I will be editing the following pictures to remove spoilers, it is entirely possible something will slip through. Forewarned is forearmed and four-armed is a Machamp. I’m sleepy go away.

I build spreadsheets for every book I write these days. Some of them are more simple. We’re going to look at my spreadsheet for Riposte piece by piece here.


I say simple, but it has multiple tabs and all sorts of things, so let’s dive in.

First tab is just a Characters table. I use this to keep track of basic details for consistency. My characters are often designed on the fly, sometimes mid-sentence, and having a central table where I track their details is very helpful. For Riposte in particular, I also wanted to track the wins and losses of anyone in the League, plus current penalties. The only scripting on this tab is a conditional format for the Penalties column, which lights up in increasingly brighter shades of red as the number goes up.

Next, the Chapter tab:

This one has some actual formulas, one to aggregate wordcounts (because writers are obsessed with wordcounts) and another neat script which isn’t as important here, but will be when we get to TLS: duplicate-checking for the chapter title column. If I put the same title twice for two different chapters, both cells will light up red.

The aggregate column is =SUM($C$2:C19) & “, “ & SUM($D$2:D19). For the duplicate check script, I use a conditional format rule: =countif(B$1:B, B2)>1

It’s not efficient in the slightest, but what it does is: for every single cell in the range, count how many times that cell is the same as another cell in the same range. If the count ever goes above 1 (i.e. there are two identical cells in the range), mark the cell as red. Because it checks every cell in the range independently, both will light up red if there is a duplicate. Looks like this:

Simple, but it works well. In TLS, this becomes much more useful, as my chapter count passes 100 and I do start to risk repeating a chapter title. So far, I don’t believe I’ve repeated a single one across any of my books (though to be fair, only Riposte and TLS have titles so far. We’ll see how long that lasts)

From here, the Basics tab, AKA the rules! For whatever reason, I found it easier to organize the rules to Riposte in a spreadsheet table than in a Word document. Go figure.

un-edited, because I am a madwoman. But seriously: these may or may not be perfectly consistent with how the game is played in-universe—I have adjusted several rules on the fly while storytelling to match what I needed in a dramatic moment, and done my best to retroactively apply that to the rest of the game. Drama trumps perfect rules for me. However, I did try to keep things reasonably accurate to the design, since I feel a story is stronger when the game being played feels real to the reader. If I’m cheating the game to get a story moment, I know my readers can tell.

next, my table of Duelists: 

(this one goes on for a while below this). I had a lot of fun designing all of these. They are not balanced in the slightest, before you get any ideas, though I tried not to go too overpowered for anything (especially any of the ones important to the story). I very well might write some stories for some of these characters and universes. There are also several in-jokes and cross-references here (one of the duelists is my friend’s D&D character, several are from my other novels, etc.). This spreadsheet helped a lot in making sure the duelist capabilities are consistent, and the highlighting helped me make sure I had a diverse set to make the game feel much wider.

In a similar vein, the Grounds tab:

More highlighting, details to keep me consistent, and making sure I had a good variety. I also included a “used” column, to let myself know if a ground had already been described or visited in the story.


So, that’s Riposte! Now, let’s dive into a TLS sheet, shall we?


The TLS spreadsheets are everything you just saw, but bigger. best bernadette peters voice Much muuuuuuch bigger. I’ve actually made a fancy infographic explaining the primary piece, so I’m just gonna re-use that here (click for full size, and please disregard 2018 etzoli’s begging for readers)

This is just the table for book 1. Book 2 is this, but for 66 chapters and nearly double the characters. Using these, I can generate interesting graphs about which characters show up the most, and whether or not that matches with my own impressions as the writer. I feel this gives me some insight into how “weighty” a character might feel to the audience, compared to how important I know they are to the narrative.

Likewise, I also have huge spreadsheets in TLS for wordcounts, because I am an obsessive.

There is a lot going on in this picture. On the left, we have the basics: chapters, in order, with a few numbering schemes and their wordcounts. We also have the perspective of each chapter (including mixed perspectives), and then the date I started and finished writing each chapter. Book 1 took me quite a while to finish, particularly compared to book 2. Finally, a column for the chapter lyrics I posted with each one, back when I was still doing that.

Both the chapter lyrics and titles have the previously mentioned script to highlight re-use. As we move over to the right, we get less organized, lots of various stats tables on things I find interesting to track. You might find them interesting, you might not! I figure someone out there is obsessed with spreadsheets like I am.

I’m posting this because I know there are other writers out there with big ambitions, stories far outstripping my own in length and complexity, and by authors who may not have found a system yet for organizing their work. Mine won’t work for everyone, but if it helps even one writer out there, I’d be over the moon.

Thanks for reading. I’m tired and I’m gonna go back to losing myself in katalepsis for a while. Riposte is nearly done, just one chapter left. I am etzoli, silly butterfly IT girl, and this has been a blog.

goodnight 💙


2 thoughts on “2021-11-17 — Tempting fate and spreadsheets

  1. I usually just hibernate my PC, not booting it for many days if I’m lucky. A time ago that was a necessity as I stored various unfinished work in the form of opened windows and folders. Now I’m trying to be less stateful but still I wrote a small window logger which tries to restore opened folders and show me a list of opened windows after the system crashes. And at least folders are remembered when I shut the system down or restart, which is more often now than crashes. And now I try to write more text-file notes to save what am I doing and why, and that’s of course has its helping even without impending crash. How do I love clearing those files bit by bit and deleting them. Or sometimes they are for long-term reminders.

    Though sometimes it seems lenghty hibernation-unhibernation sequences indeed do some strange things to various components, I can’t even pinpoint what exactly happens and if this (or long uptime) is the culprit really.

    > and people obsessed with macros

    Wait who.

    Also: not just mad and obsessive, but also hard-working. 🎞

  2. “life just seems to flow in ways it shouldn’t, ways it couldn’t, unless someone was pulling a string somewhere”
    Isn’t that just confirmation bias? Our knowledge of a non-sentient optimization process called “evolution” made gods-in-our-image unnecessary, and our knowledge of history and economics made wars and crises both explainable and predictable – is it so hard to imagine not someone, but *something* pulling strings, emergent from the collective action being more than sum of individual actions?
    Idealism is just so very *attractive* to people, as it doesn’t require you to learn the laws of matter and math like materialism does.

    Spreadsheets are so very sane, imagine people writing custom javascript to algorithmically fill HTML5 tables and charts, just because they can (and somehow want to).

    As for uptimes, well I’m always suspending to RAM (S3 sleep), which has minimal battery/power draw anyway, so my startups are even more instantaneous!
    Except booting into Windows to play games forces a reboot almost every week, darn.

    PS: If you really want to avoid accumulating state, mount tmpfs (RAM disk) as “/”, then symlink/bind the persistent stuff with a manual whitelist in the initramfs post-mount script. Hint: NixOS can boot with nothing more than “/boot” and “/nix” :)

Leave a Comment!