Markus Michalski FAQ

StoryForge Genre System

The StoryForge genre system: 16 genre definitions (13 base, 1 cross-cutting LGBTQ, 2 mixes), structure of genre files, mixing up to three genres, custom genres with genre-creator and genre tags on author discoveries.

StoryForge Genre System

Deutsche Version

Back to StoryForge Main Page


Overview

StoryForge ships 16 genre definitions and allows free mixing. A book can combine one to three genres, and new-book offers one to three selections accordingly. Each genre is a README with guardrails for conventions, tropes, structures and anti-patterns. The skills load the README of each of the book's genres to align concept, plot and chapters with it.

Real books almost always sit between genres. The mixing system is built for exactly that.

For memoir books, genres are thematic tags (for example memoir of an illness or a place) and not plot conventions.


Genre Types

Base genres (13)

Standalone genres that work on their own. The length figures come from each README and are rules of thumb:

Genre Typical length (words)
horror 70,000 to 100,000
fantasy 90,000 to 150,000
sci-fi 80,000 to 120,000
thriller 70,000 to 100,000
mystery 70,000 to 100,000
romance 70,000 to 110,000
drama 80,000 to 120,000
literary-fiction 80,000 to 100,000
historical 90,000 to 130,000
contemporary 70,000 to 100,000
supernatural 80,000 to 110,000
kinderbuch 400 to 1,500 (read-aloud story), 8,000 to 30,000 (chapter book, ages 6-10)
maerchen 400 to 3,000, Kunstmärchen may run longer

Cross-cutting genre (1)

lgbtq is not a standalone genre but a modifier that brings LGBTQ+ characters, relationships and themes into any base genre. Length and structure follow the base genre. The README stresses fully realized characters, diversity within the community, research or sensitivity consultation when writing outside your own experience, found family and the societal context of the era.

Mix genres (2)

Predefined combinations with their own conventions:


Structure of a Genre File

Each built-in genre lives as README.md under {plugin_root}/genres/{genre}/, custom genres under ~/.storyforge/genres/{genre}/. All 16 files follow the same template:

# Fantasy

## Overview
## Characteristics          (table: Tone, Pacing, POV, Typical Length, Chapter Length, Structure)
## Key Conventions
## Common Tropes (Use Wisely)
## Anti-Patterns (Avoid)
## Recommended Story Structures
## Subgenres
## Example Authors & Works
## Genre-Mixing Notes
## study-author: Positive Markers

The section ## study-author: Positive Markers lists positive style patterns that study-author looks for when analyzing a text of this genre, see Author Profiles. The section ## Genre-Mixing Notes describes how the genre interacts with others.

With list_genres you see all genres, with get_genre(name) you read a README.


Genre Mixing

A book combines up to three genres in the genres field of the book frontmatter. Typical combinations:

Combination Example
horror + supernatural classic ghost novel
fantasy + romance high-fantasy romance
mystery + contemporary + literary-fiction literary crime novel set in the present
sci-fi + thriller techno-thriller
historical + romance + lgbtq queer historical romance
dark-fantasy + lgbtq queer dark fantasy

If the conventions of two genres conflict, for example on length or pacing, there is no fixed ranking in the code. The skills load the README of each genre, and chapter-writer treats the conventions as the contract with the reader: deviations should be deliberate. The Genre-Mixing Notes sections in the READMEs give hints.

More than three genres are rarely useful. Each further genre brings conventions that can contradict the others, so none is served properly. If a concept is undecided, it helps to start with one genre and re-evaluate after the first chapters with /storyforge:book-conceptualizer.


Genre-Specific Craft Guides

Besides the genre READMEs, nine craft guides live under reference/genre/:

Genre File
horror horror-craft.md
fantasy fantasy-craft.md
mystery mystery-craft.md
thriller thriller-craft.md
romance romance-craft.md
sci-fi scifi-craft.md
literary-fiction literary-craft.md
supernatural supernatural-craft.md
lgbtq lgbtq-craft.md

There is no dedicated guide for historical, drama, contemporary, kinderbuch, maerchen and the two mixes. You fetch the guides with get_craft_reference(name), which searches reference/genre/ after the general documents under reference/craft/. list_craft_references lists both folders. book-conceptualizer, chapter-writer and plot-architect additionally call get_craft_reference("{genre}-craft") for each of the book's genres when they load the genre READMEs; if the guide is missing, that is silently skipped. The sensitivity-reader uses lgbtq-craft to evaluate the portrayal of LGBTQ+ characters.


Genre Tags on Author Discoveries

Style principles in the author profile can be bound to genres. The entry then carries a genres list. chapter-writer and chapter-reviewer skip entries whose genres overlap with none of the book's genres.

The tags are set by write_author_discovery (parameters genres and universal). study-author asks for the source genres of the analyzed text and checks each genre with get_genre. If a genre does not exist, the tag only starts filtering once you create it with genre-creator. /storyforge:migrate-source-genres adds missing tags to older entries. More: Author Profiles.


Creating Your Own Genres

/storyforge:genre-creator <name> creates a new genre. The flow:

  1. Clarify the type: new base genre, mix genre or subgenre. By default a subgenre becomes a row in the parent genre's subgenre table, and only after your confirmation a README of its own.
  2. Check: the skill calls list_genres. If the name exists, it overwrites nothing and asks instead. For mixes it checks with get_genre that both parent genres exist.
  3. Research: conventions, tensions, three to five example works. You confirm the direction.
  4. Write the README following the template above: at least five example authors or works, three to five anti-patterns, and for mixes synergies, tensions and the parent genre.
  5. Report: the genre is then available for new books.

The README is created under ~/.storyforge/genres/{name}/README.md. This directory survives plugin updates. list_genres and get_genre read both directories and prefer your own genre over the built-in one when the slug matches. The skill itself does not create a genre whose name already exists, it asks first. A custom genre with the slug of a built-in one therefore only arises when you create the directory by hand. The skill's template does not contain the study-author: Positive Markers section, you can add it by hand.

Examples of custom mixes

Name Base genres Characteristic
cozy-mystery mystery + contemporary warm, small town, murder off the page
grimdark fantasy + drama + literary-fiction moral ambiguity, poetic prose
folk-horror horror + historical rural, pre-industrial
nordic-noir mystery + thriller + literary-fiction cold atmosphere, slow pace

Choosing a Genre: Practical Help

I do not know what my book is

  1. What is the strongest source of conflict? Supernatural threat: horror or supernatural. Puzzle: mystery. Ticking clock: thriller. Relationship dynamics: romance or drama. Inner change: literary-fiction or drama. World discovery: fantasy or sci-fi.
  2. When does it take place? Today: contemporary. The past: historical. Another world: fantasy or sci-fi. The present with the supernatural: supernatural.
  3. What does the book promise the reader? Happy ending: romance. Solution of a puzzle: mystery. Adrenaline: thriller. Transformation: drama or literary-fiction. Fear and catharsis: horror.

The answers usually lead to one to three genres.

How many genres?


Genre Anti-Patterns

Every genre README has an Anti-Patterns (Avoid) section. In the fantasy README these include, for example, exposition dumps as worldbuilding, magic as a cure-all, arbitrary power jumps and an incoherent magic system. chapter-writer loads the genre READMEs before writing, and deviations from the conventions should be deliberate.


← Back to StoryForge Main Page