NaNoGenMo / 2017

National Novel Generation Month, 2017 edition.
https://nanogenmo.github.io
186 stars 7 forks source link

An anthology of ghost stories #74

Open enkiv2 opened 7 years ago

enkiv2 commented 7 years ago

I might not actually get to this one, but it's worth documenting since I think it's a neat idea. Plus, I've got nearly the whole month still.

I found the following formula for a "classic" (i.e., M. R. James style) british ghost story:

  1. Begin by explaining how the narrator (not the main character) got the story, usually second-or-third-hand.
  2. Introduce the main character, usually a scholar, with antiquarian interests, on holiday abroad (France, Sweden, Denmark, Germany) or on assignment to do scholarly work.
  3. Introduce an old local family and their home, the buildings in that far country (Give the first vague hints of supernatural dealings in the descriptions).
  4. The antiquary finds the location of evil (The author doesn’t do more than hint this at this time, but will return to it later).
  5. Describes an old family member of evil reputation (again, only hints) and gives the first details of their evil history. This spurs the antiquary on to dig further.
  6. The antiquary finds out more, a vital clue to the evil events (though not explained at this time), asks a local about it and gets the cold shoulder or avoidance.
  7. Antiquary gets on with mundane assignment, but finds more clues (a diary, spell book, or other evidence of sorcery) .
  8. Antiquary makes first deadly mistake by accidentally or flippantly invoking the evil. He ignores the first sign that the evil is coming in reply.
  9. Antiquary confronts the local for more information. Local tells of events that took place after the evil ones were gone (hinting of supernatural survival as well as more hints and details about the supernatural familiar or assistant connected to the old villain.)
  10. Antiquary returns to site of evil and finds further details in the surroundings (engravings, paintings, carvings, etc.) and, for a second time, transgresses against the evil and ignores the signs.
  11. Time to leave and return to England. The antiquary returns to the site of evil one last time to say goodbye to the spirit of the villain. A third and final transgression, and the evil is released and the antiquary flees.
  12. The narrator now has to admit details become scanty. Journals become cryptic or sketchy. These only hint at the antiquary fleeing back home but under pursuit by two figures, the evil villain and his familiar. (The narrator’s tone can be oblivious, but details hint at the truth.)
  13. Antiquary makes a final, useless attempt to escape before being mysteriously found dead, which no one can explain.
  14. Variations: a) antiquary is rescued at the last second, b) confronts evil with a party of others and survives to find some mysterious object that explains or hints at why the evil existed.

(Source: http://www.innsmouthfreepress.com/blog/column-writing-the-mythos-the-handy-dandy-mythos-plot-structure/)

The great thing about this format is that many of the points can be generated almost totally independently -- and with a little bit of fudging, we can probably modify it so we only need to store the generated names between templates.

My modified format, to reduce complexity:

  1. Begin by explaining how the narrator (not the main character) got the story, usually second-or-third-hand. Don't bother storing the name of the narrator. Generate and store the name of the protagonist, whether or not we use it in this prologue portion.
  2. Introduce the main character, usually a scholar, with antiquarian interests, on holiday abroad (France, Sweden, Denmark, Germany) or on assignment to do scholarly work in the countryside. We're still in britain, and that way we don't need to generate four sets of regional names / architectural descriptions. Instead, the names of the people and places can be british, and the architecture can be a jumble of foggy moors, gothic ruins, lonely churchyards, drafty vicarages, etc.
  3. Introduce an old local family and their home, the buildings in that far country (Give the first vague hints of supernatural dealings in the descriptions). Store the name of the family, and one of the buildings
  4. The antiquary finds the location of evil (The author doesn’t do more than hint this at this time, but will return to it later). This is the building we stored descriptions of earlier
  5. Describes an old family member of evil reputation (again, only hints) and gives the first details of their evil history. This spurs the antiquary on to dig further. Store their name here
  6. The antiquary finds out more, a vital clue to the evil events (though not explained at this time), asks a local about it and gets the cold shoulder or avoidance. The vital clue doesn't actually need to be meaningful -- only evocative. Likewise, any dark history will do, so we can just generate tragic events.
  7. Antiquary gets on with mundane assignment, but finds more clues (a diary, spell book, or other evidence of sorcery). Don't store anything here. Again: evocative, not meaningful
  8. Antiquary makes first deadly mistake by accidentally or flippantly invoking the evil. He ignores the first sign that the evil is coming in reply. Make sure to mention the haunted artifact here, and store which artifact it is.
  9. Antiquary confronts the local for more information. Local tells of events that took place after the evil ones were gone (hinting of supernatural survival as well as more hints and details about the supernatural familiar or assistant connected to the old villain.) Doesn't need to be the same local!
  10. Antiquary returns to site of evil and finds further details in the surroundings (engravings, paintings, carvings, etc.) and, for a second time, transgresses against the evil and ignores the signs.
  11. Time to leave and return to England. The antiquary returns to the site of evil one last time to say goodbye to the spirit of the villain. A third and final transgression, and the evil is released and the antiquary flees.
  12. The narrator now has to admit details become scanty. Journals become cryptic or sketchy. These only hint at the antiquary fleeing back home but under pursuit by two figures, the evil villain and his familiar. (The narrator’s tone can be oblivious, but details hint at the truth.) Cryptic and sketchy is great: it means we don't need to keep details consistent!
  13. Antiquary makes a final, useless attempt to escape before being mysteriously found dead, which no one can explain.
  14. Variations: a) antiquary is rescued at the last second, b) confronts evil with a party of others and survives to find some mysterious object that explains or hints at why the evil existed.

I'll probably just do this with tracery, as a combination of several grammars. It'll require a substantial amount of writing (unlike my previous entries), so I'm not sure how much I'll be able to do, but if I get enough variety then it should be straightforward to generate a collection.

tra38 commented 7 years ago

It'll require a substantial amount of writing (unlike my previous entries)

A hacky approach is to just find existing public domain works and then modify them to fit into your outline. This is what I did for The Track Method, where I found sci-fi stories on Gutenberg and then modified them slightly to match my theme. But this is a pretty hacky solution, as while it reduces your writing time, you still have to look around for the right passages. In any event, this is a time-consuming process -- akin to just handwriting the story yourself. (You may know of some sources already though...)

Usual critiques of story generators tend to be some variant of "Yes, you can produce short evocative text snippets, but without structure, you can't scale your generator upwards". It seems approaches that require planning and outlines (story compilers, simulations, etc.) are an inverse of that, providing the structure to scale upwards, but are unable to generate the short evocative text snippets on their own.

This may not actually be a problem to worry about though - a human probably need to be in the loop somewhere (at least, if the story is to be enjoyable or useful to other humans).

But if it does become an issue, maybe we need to have two generators -- use a Markov chain or RNNs to generate short evocative paragraphs for individual topics, and then a large-scale planner to pick paragraphs from those individual topics.

enkiv2 commented 7 years ago

Yeah. My plan was to hand-craft templates for short stuff and plug them into the larger structure with a much independence as possible. Making sure that the number of generated details that need to agree between far-flung pieces of the macro-story is a big factor in reducing the complexity, which is why this particular formula excited me: we can make sure most details don't matter except as flavor text, or take something that normally would split our generator into several distinct paths (like "holiday abroad") and turn them into something where we can use only one grammar without ruining the appeal (like "holiday in the country"), or excuse mismatching details as indicators of a warped environment ("why is the haunted book in the haunted outhouse? demons are hard to predit!")

On Sun, Nov 5, 2017 at 1:43 PM Tariq Ali notifications@github.com wrote:

It'll require a substantial amount of writing (unlike my previous entries)

A hacky approach is to just find existing public domain works and then modify them to fit into your outline. This is what I did when I created The Track Method https://github.com/NaNoGenMo/2016/issues/15, where I found sci-fi stories on Gutenberg and then modified them slightly to match my theme. But this is still pretty hacky, and while it reduces your writing time, you still have to look around for the right passages. In any event, this is a time-consuming process -- akin to just handwriting the story yourself.

Usual critiques of story generators tend to be some variant of "Yes, you can produce short evocative text snippets, but without structure, you can't scale your generator upwards". It seems approaches that require planning and structure (such as story compilers, planners, etc.) are an inverse of that, providing the structure to scale upwards, but are unable to generate the short evocative text snippets on their own.

This may not actually be a problem to worry about though - a human probably need to be in the loop somewhere.

But if it does become an issue, maybe we need to have two generators -- use a Markov chain or RNNs to generate short evocative paragraphs for individual topics, and then a large-scale planner to pick from those individual topics.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/NaNoGenMo/2017/issues/74#issuecomment-341995117, or mute the thread https://github.com/notifications/unsubscribe-auth/AAd6GfmEcV7J_6-oSSJqNLP3UPjtR9Xcks5szgHpgaJpZM4QRaIJ .