You might have seen my posts over the last couple of days. Age Writer is now out.
It's a free, open-source plugin for Obsidian (the note-taking app) that lets you write Ages the way a Writer would.
EDIT: some context, since this got a lot of reactions
Thanks for the feedback, including the critical ones. I should have explained the intent better.
Age Writer started as a "what if": what could a descriptive language for worlds look like, one you write to create a world and then link to? That's the part of the Myst-like lore I always loved. Mystcraft isn't active anymore and modded Minecraft is too heavy for my PC, so I brought what I loved into the note-taking app I already use for stories and poetry.
- The descriptive text is only a short introduction. Its grammar is hard-coded, so it's limited, and I may improve it later. Your library can declare anything (jumping spiders, ants, neutron stars, flying cats) and it will show up in the descriptive book anyway.
- What matters most to me is making the linking panel as unique as possible, and seeing how far I can push physics rules to judge a world's stability. I'm far less competent in astrophysics than in writing. Yesterday I wanted a red sun and had to ask myself which physical parameters would match it. I'm learning physics and an art of writing at the same time.
- Stability: I had a stable world I loved, tried to correct it to match what I'd imagined, and it became unstable. Now i am worried i could lose my first world. That's exactly what happens to Atrus in Myst when he first learns to write, so I think I'm going in the right direction.
- AI: I know many people dislike it. I used it to help build the plugin. The idea and the direction are mine, and I'm happy to answer questions. Inside the plugin, no Ai is used. The descriptive texts are genereted procedurally using grammar rules that hard-coded and deterministic. While some of the grammar are from llms, you can always rewrite an existing grammar rule using a Library code block where you may redefine the words associated with a building block element
You describe a world in a few lines of a code block: a sun, water, sand, a fern, two moons. The plugin reads it back like a Descriptive Book: a description, a stability (stable, unstable, dying), and a living linking window onto the world with its own sky, shore, night and moons. What you leave unwritten is drawn from the dark, always the same way for the same book. Rewrite a world you've already explored and you damage it.
Worlds follow a simplified physics (star, orbit, core, air, water, light). Easy mode explains what doesn't hold; strict mode makes it cost stability and suggests the line you could write to fix it.
Your Ages stand on a shelf in your Relto: a floating island with a cabin, linking pillars, a pond, and a cat that sleeps by the fire in the evening. There's an Imager you can tune to an Age (crystals, lens, atmosphere, then lock), and a surveyor's notebook on the cabin table to check your work.
Run Generate a random Age for an instant world, or follow the welcome note, which is itself an Age.
This is sandbox mode: you write, explore and furnish at your own pace. A game mode is planned, and more to come.
Everything is local: no network, no AI at runtime. Every picture is drawn by code and every sound is synthesized.
Thanks for all the comments so far, and tell me what you'd want in the game mode.
Install
- In Obsidian: Settings → Community plugins → Browse → "Age Writer"
Links
Fan project, not affiliated with or endorsed by Cyan Worlds. No Myst asset (font, image, sound) is included. MIT licence.
This product contains trademarks and/or copyrighted works of Cyan. All rights reserved by Cyan. This product is not official and is not endorsed by Cyan.
No game assets or text are included. The plugin draws its own glyphs annumerals; if you already have a D’ni font installed, it can use it, but none is provided.