Complex Plotting: Tools and Approach

(December in Writing)

My third POV is re-outlined in broad strokes, and I’m working on drilling down into the scene level. It does feel like the story and characters are coming back alive for me.

However, most of December has been a struggle in writing productivity and focus. I have been improving my tools and outlines, so I’ll focus this blog post on those.

GoodNotes 5 and templates

I had purchased GoodNotes 5 for my iPad some time ago. I spent some time playing with the upgrade to GoodNotes 6, but I ended up turning all of the new features back off; I’m going to skip the upgrade.

I did end up playing more with templates, which led me to this repository with dark and black letter page templates in PDF and Affinity Designer formats. These make it fun to handwrite. The letters glow blue, green, and red against the black backgrounds.

I’m playing with the idea of starting a morning pages habit using GoodNotes, though it hasn’t stuck yet.

convert.py and dark mode PDFs

I have scripts running in GitHub actions every time I push changes to my repo. My stats.py script generates some repo and daily stats, and my convert.py script generates a PDF of my book as of that commit, using md2pdf.

I imported this PDF into GoodNotes to easily highlight, cross out, scrawl, and otherwise mark up my book without having to kill tons of trees and toner cartridges.

When I got back to this, I realized how much I wanted these PDFs to be in dark mode. Luckily, md2pdf offers a css option and an example css template. I reversed the colors in the template, tweaked the font sizes, and added a general @page section to darken the margins, and now convert.py generates a black background, white text PDF that I can import into GoodNotes.

Post-Its on a whiteboard

While I’ve tried many other, more complex plotting structures, I’ve settled on Dan Wells’ 7 Point Story Structure since it’s easier to nest multiple 7-point arcs than to try to fit, say, multiple 22-point side plots together. These 7 points form the skeleton of the story, then I add additional beats, scenes, reveals, etc in between.

Outlining using Post-Its on a whiteboard allows me to pace, think of a beat, write it on a Post-It, stick it to the whiteboard at the location I think best, and easily move it later if need be. This is more of a brainstorming process; I move the beats to a different medium once I get the basic structure down. I plot the 7 beats vertically and add additional arcs horizontally, a la

Main arcRomance arcMystery arcSide quest
HookHookHookHook
ResolutionResolutionResolutionResolution

and weave them together later.

Index cards

My problematic 3rd POV was especially resistant to [re-]plotting via Post-Its, for whatever reasons. I found this one easier to plot via index cards, jumbling all of the arcs together and not worrying about which scenes were Pinch 1s.

I added to this heap of index cards until I felt I had a complete story that pretty much worked, then I went back and split it into arcs and beats, fleshing out any missing pieces as along the way. (This deconstruction of a woven scene list into beats is way harder for me than the other way around, but for some reason this approach worked better for the 3rd POV.)

(Spreadsheets and other apps)

I played a bit with spreadsheets, which allow me to create large grids of beats and reorder them. I don’t love the binary file format and the fact that large grids almost require my larger external monitor… I like being able to work on my outlines anywhere rather than just at my desk.

This is also why I didn’t go with Scrivener or Plottr, but instead…

iSH and vim

I mentioned vim-table-mode in an earlier blog post. This lets me generate smaller tables, one per arc, e.g.

Revenge Arc

| Beat       | Description                                                 |
|------------|-------------------------------------------------------------|
| Hook       | Alice realizes Bob ate the last slice of pizza.             |
| ...        | ...                                                         |
| Resolution | Alice uses Bob's blood as paste and his organs as toppings. |

or

Relationship Arc

| Beat       | RelLvl | Description                              |
|------------|--------|------------------------------------------|
| Hook       | 0,0    | Charlie and Dee despise each other.      |
| ...        | ...    | ...                                      |
| Resolution | 10,10  | Charlie and Dee declare their True Love. |

Then I can weave them together, optionally tracking the relationship levels between characters alongside the beats. Previously, I used my laptop for this (or ssh’ed into it from my iPad). This worked, but I’m always looking for ways to make my iPad more of a self-contained writing tool.

I started playing with iVim on my iPad, which was nice, but when I set up vim-table-mode, I hit massive lag, to the point where everything was a typo (iVim would save my keystrokes, but switch the order of the letters I typed).

Then I tried diving further into iSH. I can mount Obsidian vaults and Working Copy repos with this trick. I installed Oh-My-Zsh for colors and easy filename completion. I set up vim with vim-table-mode. It’s definitely slower than my laptop, but it’s usable.

(Pushing the limits of iSH remind me a bit of my days with mobile automation)

I used this setup to translate the index cards into markdown tables with separate arcs and beats for my third POV.

Stats

(I cleaned up a bit and moved some manuscript files into my non-manuscript snippets folder again, making these stats a bit meaningless…)

Manuscript markdown files: 30
Manuscript words: 41326
Total markdown files: 434
Total words: 268136