GenerateRandomSearch

Campaign Timeline Generator

An invented history is easy to write and hard to keep straight, and it always goes wrong in the same two places: an event dated before the thing that caused it, and a chain of causes that quietly closes into a circle, so a war is fought because of the treaty signed to end it. Both are matters of shape rather than taste, so both can be checked. Every record here is read back afterwards — the dates compared, the causes followed upwards from every entry — and what was checked is printed under the record.

What this generator does

Places the years first, so that later in the list and later in the record always mean the same thing, and then fills them. Each entry is a kind of event that something already in the record could plausibly have led to — a treaty after a war, a rising after a succession — and it names those earlier entries as its causes. Now and then one opens a fresh thread with nothing behind it. The ages are then cut so that they meet end to end and every year falls in exactly one of them.

How to use this tool

  1. Choose how many events the record holds and how many years it covers.
  2. Write the record, and read it age by age.
  3. Follow any “follows from” line back: the year it names is always earlier than the entry it sits under.
  4. Copy the link to keep this record, or the text to paste into your notes.

Understanding the controls

Events
Eight to forty entries. More entries means a denser web of consequence, because there is more earlier material for each one to follow from.
Years covered
The record runs from year zero to this year. A short span puts the events on top of each other; a long one spreads them out.
Repeat word
The word this record was built from. Anyone opening the same link gets the same history.

Common use cases

  • A backdrop for a campaign, so a player asking why a war started gets an answer that holds
  • The history behind a novel, with a chain of consequence rather than a list of dates
  • A starting point when a setting needs a past and a blank page is the problem
  • Prompts for a session of collaborative worldbuilding
  • Giving everyone at a table the same history from a single link

How this generator works

The check reads the finished record rather than a note of what was intended. That nothing precedes its own cause is proved by comparing the dates the record actually carries; that no chain of causes closes into a circle is proved by walking upwards from every single entry, not by trusting the order they were written in. Dates are whole years, so the comparison is exact and there is no tolerance anywhere in it.

Randomness and fairness

The record is built from a repeat word taken from your browser’s secure generator unless you type one of your own, so the same link rebuilds the same history. A repeat word exists to make a record reproducible; it is not a security measure, and nothing here is suitable for anything that has to stay secret.

For how randomness is produced across the whole site, see how Generate Random works.

Limitations and good to know

  • The history is invented. No real period, place or people are being described.
  • Which kinds of event can follow which is a short table, so the shape of a long record repeats more than a real chronicle would.
  • Causes are single links between events. Nothing here models a cause that took a century to work through, or one that had no visible effect at all.
  • Every event is dated to a year, so nothing finer than a year can be shown and nothing can last longer than the moment it is dated to.
  • The ages are cut where the years happen to fall rather than at the events that would really have ended them.

Privacy and your data

The record is built on your device and nothing about it is transmitted or stored. The repeat word is a short label this page made or you typed, and it is the only thing that appears in the address; it is never measured.