On Scrivener, Storymill and the value of Timelines

I’m not sure whether or not most people own and use Excel (or a similar spreadsheet) program in their other lives, but I found it easy enough to simply create a small spreadsheet called Timeline, with character names across the top and inverse auto-fill dates on the left, with the date of writing at the top and the earliest date of interest at the bottom.

It’s not a graphical representation (though Excel-jockeys who care about such things could easily make it so), but it does show very quickly (I keep it open on the dock when I’m working on the book) exactly who did what when and why. I’m working off a dozen charted characters with significant dates running back to 1927, and it’s kept me on chronological track so far.

Ahab,

Sounds very useful. Would you care to post a template? I’d like to see if I could convert the Excel file to one for Numbers.

Droo

Hmmm. I’m not sure it’s worth a template. All I did was open a new sheet, type character names across the top row, type the earliest date I thought would be pertinent down one row in the left-hand column, type four or five consecutive dates, and then drag down the column (Excel autofills then) until I got to 2008, and then sorted the column in reverse so it started with 2008.

Then I just typed in significant events in the pertinent boxes, dragging the cells to size as seemed appropriate for the content. I could have taken the time to write a formula for auto-calculating ages at particular points, but for this non-math-major it was just as easy either to do the math in my head, or with the Mac calculator (2008-1937 = 71), or with an on-the-fly Excel formula ( =e37-e42).

Is that clear enough? Or shall I post a sample file? As for Numbers, I should think you could knock up a file like this in about two minutes; that’s how long it took me to do the bare-bones in Excel, including looking up in Help how to auto-fill dates. Since then I’ve filled in dates as I go, and as the past reasons why people are doing something now become clear.

Yes, of course you can use a spreadsheet for this. I use Tables, a very handy application that has its place in my dock by the side of TextEdit, because it’s for calculations what TextEdit is for writing - fast and easy.

But… it’s not very comfortable to do it this way. Whenever one wishes to change the birthyear of a character, one has to carefully mark the whole row or column, cut it out, insert it at the new position, has to look not to overwrite something by mistake etc. … It’s not playing around, it’s work.

But of course, it can be done. A lot is possible with spreadsheets. I know guys who plan their novel plots in Excel. This, too, can be done. One row per scene, columns for POVs, etc. - why not? You can even filter by POV or location or the like. But it’s not as comfortable as it could be, otherwise there would be no need for an application like our beloved Scrivener.

What I dream of would be an interface where I can drag a ruler representing the lifespan of an character to the right or to the left in order to make him/her older or younger. Should not be impossible.

AndreasE
Did you see my little app I did for you yesterday?
Here:

jeanlouisvalero.fr/TimeLineCalc.osx.zip
Image 1.png

Plugin architectures are a great idea but they can be a real nightmare for the developer. The trick is to support them, without making the program a usability nightmare. And once you have one, you have to support everyone else’s plugin as well as your own application.

‘Keith! That last change you made broke my coffee making plugin!’

If you look at the best Mac apps in terms of usability, I don’t think many of them support plugins; they tend to rely on AppleScript.

As for Timelines, well again that works well in StoryMill because the app is geared specifically towards building fiction. I still think it should be a separate application.

Just my tuppence worth.

So, based on jean-louis’s post (and image), I’m guessing that what AndreasE wants is an automatic generation of age of character to event?

If that’s the case, then I understand why I wasn’t getting it (sort of…). I track characters as well as events in my historicals manually (including backstory) and that works for me. It can get messy, though, when different events are happening simultaneously, or tracking where characters are geographically as they move through both history and my story.

I am interested in the idea of tracking historical (as opposed to fictional) characters in Numbers since not a lot changes with the historical timeline. (Occasionally, there is different information from different sources, so that needs to be noted.) Haven’t even cracked open Numbers yet, so I guess this might be the time. :slight_smile:

My apologies to AndreasE if I’ve misunderstood again. :confused:

I should do some mockups in Photoshop. I know exactly what Andreas is asking for, because it’s what I want too. I outlined a few of these points myself in a post somewhere around here, just before Xmas I think…

In fact, maybe I should do said mockups and then blog them as an incentive to some budding software developer :wink:

Thanks, antony. That would help me a lot. I am apparently still not getting it. :confused:

I’d certainly be interested in seeing mock-ups. I’ve got a couple of ideas for some small sideline L&L apps relating to writing. It would be nice to dabble in a smaller project at some point (though Scrivener will always be primary), though probably not for a while…
All the best,
Keith

This may lead to a Scrivener Deluxe Suite. :slight_smile:
(Like Adobe Creative Suite)

A suite of a Main app (SCR) and optional “helper” apps.

Keith if you ever did decide to develop some more helper apps for SCR I know I would be wiling to pay more for a “deluxe version” or extra for small optional apps that work alongside SCR. So you could distribute SCR in two flavors, the standard SCR (alone) or the Deluxe suite (inlcudes a few helper apps)

Maybe some ideas for SCR 2.0 down the road can be “Helper Apps”?

Guess I’d better get to work, then :wink: You know that I’d be first in line to buy it…

I’m off to a comic con in a couple of days, so doubtful I’ll be able to get to it before the end of Feb, but I’ll certainly start thinking about it.

This is a very good topic. I’ve been forced to use a genealogy app lying around to help me make certain all my characters re the rights ages for marriages, births, etc.

Andreas’ idea is very good and this is how I would implement it.

First, I would not tie the index cards to times. I think that would be very difficult graphically.

I would do with a simple timeline in a basic table-looking format. Down the left I would have characters and across the top I would have events I need to show on my timeline. Each character would have a horizontal line with an arbitrary beginning and end, while each event would have a line running top to bottom. At each intersection the character’s age would be shown. These event lines should be (but not necessarily, this may be kind of fancy) “draggable”. As you can see in my attachment, they all are topped by “footnote” like numbers. Clicking and dragging them would pull apart overlapping ones. Say a lot of important events happen on one day - I don’t really need to see a proportional representation order is more important (others may differ on that, I suppose).

I guess if this time line got very filled it could be scrollable left to right etc.

This is all easy. Implementing may be more difficult.

Here a palette may come in handy. I would have a time line palette with two tabs “Characters” and “Events”. I can load in all my characters, giving them colours. And not only characters, but anything I want. Say I have a house built that plays an important role and I need to know how old it is when things happen to it, tornado what have you. Each “character” is given a birth-date in the palette from which ages will be calculated in the time line.

Now, as I’m typing away suddenly something “grand” happens. Right there on the spot I click some keyboard combination maybe control-T and a popup window lets me name this event and give it a date (maybe even a manual time-stamp down to the minute if I have a fast paced whodunnit). Hitting return sticks in a “[1]” or what have you into the text (shaded maybe, like annotations) and now this point in my narrative is locked into my time-line. Now my event is called “house on fire”.

Not only that, it is added to the bottom panel of the Inspector where the drop-down menu “Project notes/Document notes” now also includes “Project time line” with a listbox showing order, date and description.

Suppose I’m writing the next chapter which coincides in time with my preceding one. I can drag a timeline item from the inspector into my text and voila - I have the same time stamp and can add a description to the same timeline marker which now reads “house on fire/witch doctor casts spell” so I know those things happened at the same time.

Ok, that’s me brainstorming a bit. But that’s how I think I’d go about it. When I realise I need to move a scene back in time or forwards, I click on the [1] in the text and the popup window opens and I change the time stamp.

In my quick mock-up, I did not include ages in all the blocks and I did not show the Inspector open, which at this panel would show a list of time stamps in order with their dates & descriptions (as there doesn’t seem to be much room in the panel for them, though hovering over an age rectangle could certain bring up a help box containing that info like hovering over the binder does now for synopses).

I would not implement arranging index cards in the binder or cork-board according to these time stamps. First, that could get rough when one scrivening has several time stamps in it. And second, I think many books would not need it. Different chapters are going to often be different POV’s and so this would be more cumbersome than helpful.

For K’s part, this would be a significant addition of course. He’d need to introduce calculations for the time stamps and added new functions.

I think it would be helpful though. :slight_smile:

I agree with just about everything Dave said :smiley: Quick additions/clarifications/etc from my POV:

EVENTS:

  • Yes, the events have to be draggable, and the “expand cluttered periods” idea is brilliant.

  • You can select multiple events and drag them all at once.

  • Don’t even attempt linking them to the body of the prose. The timeline is its own thing.

  • Each event has an info/notes field, with title, the timeline date, and notes. Double-click to access.

  • Each characters’ “age flag” can also be edited, to add notes about each characters’ status for example. If you manually edit the characters’ age in this field, the characters’ birthdate and ages in other event lines will change to accommodate.

  • Dragging an event, or manually altering an event date, recalculates all characters’ ages during that event.

  • Events are semi-independent of the timeline. Removing or adding an event does not suddenly shift all other events up or down a notch.

  • Events can have date ranges, e.g. a war that lasts twenty years. Specific events can still be created within this range.

  • Event labels and appearance are configurable, similar to the labels in Scriv, with some extra control over the typography. E.g. a category of “Highest” could be created, which is set for bold red text. Any events tagged “Highest” are set in this colour. Any change to the label is reflected in all events already created.

YEARS CONFIGURATION:

  • The starting point is configurable. The “era abbreviation” (e.g. BC, AD) is configurable.

  • Multiple eras can be contained in one timeline. This is essential for spec fic, especially fantasy. E.g. the timeline starts at “1000 1st Era”, then at 1500 1E switches to “1 2nd Era” and counts up again from there.

  • It can also be configured to give “BC” style dates in a previous era, if preferred (e.g. “1000 1st Era” is actually “500 BK”, or “Before Klarrrg”, whose birth kicks off the 2nd Era. You get the idea.)

  • The app can of course handle characters born in “1498 1E” (or “2 BK”), and calculate their age at any given point in the 2nd Era.

MONTHS/WEEKS CONFIGURATION:

  • This would probably require a separate “month view” like a calendar. Need to think more about this. Either way, it would be fully configurable, i.e. you can specify eight months in a year, eleven days in a week, and you can name each of these months and days individually (e.g. “Dragonsday, 5th of Elfspasm” or whatever).

That’s all I can think of for now. I’ll give it more thought while I’m away :smiley:

I’d be happy with a small stand-alone application. It would at least be a reasonable first step to gather some experiences, feedbacks etc. before transferring what comes out of it into Scrivener 2.7 …

I try to add a picture I’ve created with a spreadsheet software. Imagine a screen like this, only beautified “Apple-style” (rounded edges etc.), where you would just grab every ruler with the mouse and drag it to the left or to the right.

Plus, you would be able to define your own calendar (important for fantasy and sf novels) and (dragable) events in that calendar - “in the 45th year of the regency of Emperor Scrivenus II., the Quux from the stellar kingdom of Foo attack the earth” would be a vertical line here.

And that’s it. A machine to create ideas regarding backstory and characters…

Sounds like at least some of us are on the same page :slight_smile: And I agree, I’m thinking about this as a standalone application. Incorporating it into Scriv would just bloat the app.

Besides, if Keith does actually build this, he deserves to be paid (separately) for it, imo. An app like this would be very valuable to spec fic writers, but I don’t know how useful other fiction writers, academics, journos etc would find it. Better to be a separate app, and let it find its own market.

Also, expanding on Andreas’ screenshot; a slider that allows you to zoom in and out of the timeline would be essential, I think, so that you could see individual years, or just decades, or just centuries, etc.

(Similar to how GarageBand allows you to zoom in on the detail of tracks, exposing more semi-beats with each magnification.)

Yes, or the possibility to fold away a certain part of the timeline.

Hi guys,
If Keith isn’t likely to punch out anything like this soon, I am thinking about giving it a crack myself.
At least as an interim measure until a good user interface guy can come along and wipe it out of the water.

My first thought is to do it in Java though - because
a) it is something I already know
b) it is cross-compatible with Mac/Windows/Linux etc. more so than the other languages I know (C,C++,etc)
c) It is something I already know.

I know that means sacrificing the wonderful Cocoa-ness of the Mac - would this be a problem for people? The alternative is for me to use it as a tool to learn Cocoa, which would take much longer.

Between my full-time job and writing, the Java route might lead to a usable program within a month or so, with plenty of input on the interface etc. from you guys after that. If I go the cocoa route, it will probably take more like 6 months, if I ever get it done at all.

If you are interested (and at this stage it is just something I am considering as a distracting hobby so I am not certain I will do it, and it will be free to use), could you let me know here along with the following information:

  1. How much would Java bother you, or would you prefer it for cross-compatibility?
  2. Suggest any features that you might like (at this stage, I’ll listen to anything and guarantee nothing… (Keith has taught me well).

Obviously, zoom in and out, draggable events and people (i.e. birth dates) would be good. Probably some way to associate people with events, so you can get a list of events that affect people (and their age at the time), probably some way to make certain dates recurring (festivals, birthdays, etc).

Have never written fantasy myself, but I will look to see if I can make the date system flexible for you people who need to confuse poor readers with months they have never heard of.

Anyway, feedback would be appreciated :slight_smile:

Matt

[Edit to add: Oh, and Keith - if you are planning to dabble in this side-project anytime soon, let me know and I will abandon all thought of the idea).

I like the ideas… and yes, a timeline will be useful for the fiction writer… but also for anybody writing histiorical fiction, et al

For a journalist it will be useful too. Just think of a nice research piece… that will give you some ideas of how a journo can use this.

And yes, I am willing to test it…

(Oh and Java is fine by me)
:smiley: