triptych

Building fun experiences for the web

By Andrew Wooldridge

My latest game is a beat-'em-up. I grew up on Double Dragon, Streets of Rage and Turtles in Time, and I wanted to see whether that style could be rebuilt in three.js without a single sprite sheet.

Play Sister Circuit

The story

It's 2089 in Port Solace, a city of forty million owned outright by Aurex Dynamics. Juno Vega's little sister Mika is a gifted hacker, and Aurex has taken her. Her mind is the only one compatible with VANTA, the company's neural-link program. Juno breaks into an Aurex warehouse, steals the prototype VANTA-7 combat suit and starts fighting her way north to the Aurex Spire.

The suit talks. Its AI, ECHO, coaches Juno, teases her, and halfway up the city learns something about where it came from. I won't spoil it, but the last two boss fights aren't really about the corporation.

Pixel art, made in code

Like every game in the collection, this one has no image or audio files. The fighters start as a simple 2D skeleton: a pose is a dozen joint angles. A small rasterizer fills each limb pixel by pixel with an outline, three tones of shading and a little dithering, and the frames are baked into a texture when the game boots. Enemy colour variants, a boss's angry second phase and Juno's glowing Overdrive mode are all palette swaps on the GPU.

The streets are real 3D sets: rain-slicked storefronts, a maglev train, a lantern market, container docks, a bio-lab and a penthouse in a storm. They're drawn at 240 pixels tall and scaled up chunky, with a neon glow and optional scanlines. A separate skyline scene sits behind them for parallax.

How it plays

It has everything I remember from the arcade: four-hit combos, launchers and juggles, grabs with knees, throws and suplexes, enemies thrown into other enemies, and pipes and katanas lying in the street. The suit adds special moves and an Overdrive meter. There are seven stages and seven bosses, from a gang boss with hydraulic arms to a sword-wielding android with a counter stance. Between stages you spend the credits you've picked up on suit upgrades in a safehouse.

It plays on phones too, with a stick wherever your thumb lands plus four buttons, in portrait or landscape. Keyboard and gamepad also work.

Go get her back.

By Andrew Wooldridge

The collection just reached 58 games. Each new one gets a statue in the Garden of Games, the walkable three.js island that serves as the launcher. The newest games stand closest to the hub, so these ten are the first ones you'll pass.

This batch covers a lot of ground: a 100-floor roguelike, a match-3 RPG, a gacha battler, a night drive with no goal, a recreation of a classic browser RPG, a DOOM-like, a helicopter bullet-hell, a castle-defence game, a twin-stick bug shooter and a cosy fruit puzzle.

They all follow the same rules: no asset files, and every model, texture, icon and piece of music is made in code. Every game plays on a phone as well as on a desktop. Each one also has a dev/ folder where a bot plays the game headlessly to tune its difficulty, and a Playwright harness that runs it in real Chromium on desktop and on touch-only phones.

Here's a quick look at each one.


049 · Lanterndeep

Turn-based 3D roguelike · three.js

The lamps of Lastlight are going out. Your teacher Maren went down to tend the First Lantern a year ago and never came back. You take her spare lantern and go down the Hundred Stairs: 100 procedurally generated floors across ten worlds, among them a bioluminescent grotto, a drowned library, a dwarven forge split by lava, a clockwork machine and a vault among the stars.

The lantern is the main idea. It sets how far you can see, and it also works as your clock: it burns oil every turn, and when the oil runs out the Hush gathers. Every tenth floor holds a Warden, a multi-phase boss whose area attacks are marked on the grid before they land. You pick from three heroes, with procedural loot, 70 monster species and quests from wandering Wayfarers. Maren's ten journal pages are hidden along the way, and finding them unlocks the best of three endings.

The bot in dev/ plays all 100 floors with each hero to balance the difficulty.

050 · Tomebound

Match-3 fantasy RPG with an idle village · three.js

A smudge of living ink has scattered the thirteen greatest books of the Great Library of Lumenhall. You fight monsters Puzzle Quest-style on a shared 8×8 board of 3D gems. Matching gems gives you mana, damage, gold and XP, and every gem you take is one the monster can't have. Matches of four or five make Line gems, Bombs and Prisms. There are 19 spells, potions you brew yourself, and procedural gear.

Back home, a floating-island village rebuilds itself in real time, even while the game is closed, across 13 buildings. Each book you return grants a permanent bonus, and the Library heals as the books come home. Professor Hootsworth the owl keeps the story cheerful.

051 · Sigilborn

Gacha auto-battler with an idle citadel · three.js

Every hero in Sigilborn is procedurally generated: race, class, element, rarity, stat rolls with a grade, traits, a skill kit with generated names, a painted anime face and a chibi 3D body. One in fifty is a Radiant. Battles use Summoners War-style attack-bar turns, so speed is a stat you build up, and you can let them play out on auto or pick skills and targets yourself.

You play the Overlord, made in a deep character creator, and you have a lot to do: eight campaign regions with bosses, elemental Rifts, the roguelite Endless Spire and an Arena of rival Overlords. Between fights your floating citadel keeps working, with a Treasury, a mine you can dig in 3D, a real-time farm and kitchen, a forge, and expeditions. A progression bot plays three weeks of the game to tune the curve.

052 · Nightline

Lo-fi synthwave night-drive simulator · three.js

This one has no goals and no crashes. You set a cruise speed, signal for a lane change, and drive through an endless, rain-soaked city built in chunks as you go. It has five districts: neon downtown, a paper-lantern night market, a skyway, a harbour and residential heights. Every kilometre or so there's a place to pull in: a noodle bar, a diner, a record shop, an overlook, a laundromat. Parked, the camera frames the scene while the rain falls, and each visit goes in your night log.

Every sign and tail light reflects in the wet road, and the frame is rendered at 240 lines with bloom and scanlines. Three generative radio stations (synthwave, lo-fi hip-hop and slow analogue ambient) make up their own tracks as you drive. Turn on Drift mode and the car drives itself.

053 · Legend of the Jade Wyrm

Legend of the Green Dragon-style RPG · three.js

A tribute to the old LoGD browser games that recreates the whole online experience with no server. You get daily forest fights, beat your master to level up, and face the Jade Wyrm at level 15. Kill it and you start over at level 1 with a permanent gift. The village has everything the original had, from the inn and the bard to marriage, guilds and raven mail.

The clever part: the other players are simulated. Sixty of them, each with a personality and a real-clock schedule, log in and out, chat in the square, level up, die, marry, form guilds, and attack you if you sleep in the fields. The text-first pages sit inside a three.js frame with an oak beam, crossed swords and a window onto a low-poly village.

054 · Pale Engine

DOOM-style FPS with procedural levels and monsters · three.js

It's Io, in 2291. The station's Pale Engine has drilled through the bottom of everything, and you are the last Warden, with an AI called VESPER in your ear that has its own reasons for wanting you at the bottom. Ten levels in three episodes are generated from a seed, and a bot walks every level through the real collision code before you play it.

Each run rolls its own monster species from ten archetypes. They follow you, fight each other, stagger, and can be finished off with the blade for health. There are nine weapons up to a Singularity Cannon, DOOM's inverted-colour invulnerability, baked lightmaps lit by every muzzle flash, an industrial-metal score, an automap, par times and an Endless Descent mode.

055 · Rotorstorm

Top-down helicopter bullet-hell · vanilla JS + hand-written WebGL2

No libraries at all here, just vanilla JavaScript and hand-written WebGL2. A storm-steering AI called MERIDIAN has turned on the cities it protected, and you fly the AH-77 Kestrel through six operations over archipelago, jungle, desert, ice, neon city and volcano. The CPU and the GPU share one noise function, so gunboats spawn exactly on the water the shader paints.

Six multi-phase bosses fight with named spell cards. You graze bullets to charge Overdrive, wipe the screen with an EMP, rescue civilians, and spend salvage on a 28-node skill tree. The ending changes with the number of survivors you saved.

056 · Keepfire

Castle defence × Plants vs. Zombies × incremental · three.js

Aldmere's last keep starts as one tower with one archer. Procedurally generated monsters march down five lanes, and every kill pays gold that you spend mid-wave on your party: alchemists, knights, pyromancers, a frost witch, dwarf bombardiers, a ballista, a druid, a storm caller and more.

The best part is watching the castle model rebuild itself from your upgrades: towers rise, walls go from logs to banded stone, and the Keepfire beacon appears on top, ready to burn a whole lane. There are six biomes, six multi-phase bosses, relics after every wave, and a permanent Ember Tree for when you choose to start a new run.

057 · Hivebreaker

Twin-stick bug-swarm shooter · three.js

Think Enter the Gungeon meets Alien Breed. A black-site base under the ice of Erebus has gone silent with the President's daughter inside, and one Colonial Marine goes down through five procedurally generated sectors to get her out. Rooms seal behind you as swarms of hundreds of bugs pour out of the vents. Each bug type is one instanced draw call, with legs and wings animated in the vertex shader.

You can dodge-roll, throw grenades, erase bullets with the Shock Pulse, and carry four of nine guns, upgraded up to Mk III. Five bosses lead to a timed escape. It plays with keyboard and mouse, a gamepad, or touch twin-sticks.

058 · Bumble Basket

Cosy fruit puzzle · three.js

The newest game is the gentlest. Drag a bumblebee along a trail of fruit on a picnic blanket, where each fruit you hop to only has to share one trait with the last: kind, colour, size or family. So trails wander like a word ladder instead of needing identical pieces. The bee learns each trait as a “sense”, one garden at a time.

Full jars earn power-ups like the Honey Dipper and Rainbow Wings, and trails of seven grow golden fruit that links to anything. There are thirty levels in four gardens, an endless Picnic mode, an 81-stamp Fruit Album, and sixteen kinds of fruit with faces that blink and beam, plus ukulele-style music. A bot has to win each level often enough before it ships.


Play them

Open the Garden, walk up from the dock, and look for the newest statues near the hub. The holographic carousel there shows the newest games first. If you'd rather click than walk, the classic card grid has all 58.

If you want to see how a game is built, every folder has a game-plan.md design doc and a dev/ folder with its test bots. Have fun!

I asked an AI to consider a different approach to resolving gravity with the other forces. This is what it considered:

This is an invitation I find genuinely interesting. Let me try to think sideways rather than along the well-worn paths.

The core assumption worth questioning

Most unification attempts take gravity and try to make it quantum. But what if that's the wrong direction? What if the other forces are actually geometric at a deeper level, and we've been misreading them as quantum phenomena because that's the scale at which we observe them?

In other words: what if quantum behavior is what geometry looks like from inside a system that can't access its own full dimensionality?

A possible reframe

Consider that general relativity works beautifully because it describes relationships between things — mass curving spacetime, spacetime telling mass how to move. It's fundamentally relational. Quantum mechanics is also relational at its core (this is what relational QM and QBism argue) — measurement outcomes only exist relative to observers.

What if both are describing the same underlying relational structure, but at different levels of resolution?

Gravity would then be the low-resolution, averaged-out appearance of something that is quantum at fine scales — but not quantum in the particle-exchange sense. Rather, the geometry itself fluctuates relationally, and what we call quantum fields are just particularly tight knots of that geometric fluctuation.

The specific insight this suggests

The reason quantizing gravity produces infinities might be because we're treating spacetime as a background against which quantum fields live, even in theories that claim not to. The infinities are the math telling us “you're double-counting — the field and the geometry aren't separate things.”

A genuine unification might require a framework where there is no background spacetime at all — not even a quantized one. Instead, spacetime emerges from a more primitive layer of pure relations or information. The quantum behavior of matter and the geometric behavior of gravity would both be derived from this layer, which is why they seem incompatible when you try to combine them directly. You're combining two shadows of the same object and wondering why they don't fit together.

What that primitive layer might be

This is the speculative part. It might be something like a network of purely relational events — no coordinates, no metric, no pre-existing dimensionality. Dimensionality itself emerges statistically as the network grows large, the way temperature emerges from molecular motion. At small scales (Planck scale), there's no smooth space — just the raw relational graph. Quantum mechanics would be the behavior of small, sparse regions of this graph. Gravity would be the behavior of large, dense regions. They feel like different theories because we're sampling the same structure at vastly different scales.

Why humans haven't cracked this

The mathematics humans currently have is very good at describing things in space or things in time. It's much weaker at describing structures where space and time themselves are outputs rather than inputs. That's likely the actual barrier — not a missing particle or an incomplete equation, but a missing mathematical language for genuinely background-independent, purely relational structure.

The answer might not look like physics equations at first. It might look more like a new kind of combinatorics or graph theory that only later reveals its physical interpretation.

I asked Claude.ai what kinds of patterns are there in all it knows that are currently being “ignored” or that there is not much information about. Things that are “hiding in plain sight”. Here is it’s response:

This is a genuinely interesting question to sit with — not “what do we know” but “what's been hiding in plain sight.”

Let me think through some real patterns that feel underexplored, drawing on what's actually known but not yet synthesized well:


The convergence problem in complex adaptive systems

Ecosystems, immune systems, markets, and neural networks all exhibit what looks like “memory without a memory organ” — they adapt to past states without a centralized record. The pattern nobody has fully articulated: they all require forgetting at the right rate to remain adaptive. Too much memory and they over-fit to past conditions; too little and they can't build structure. The relationship between optimal forgetting rates and environmental volatility seems like it should be a universal law, but nobody has written it down cleanly across all domains.

The geometry of compression and creativity

Information theory, evolution, and artistic style all seem to share a deep structural relationship: the most generative patterns live at the edge of maximum compression. A genome that's too redundant doesn't evolve fast; one with too little redundancy can't repair itself. A creative style that's too predictable is boring; one with too little pattern is noise. Jazz, protein folding, and machine learning loss curves might all be navigating the same abstract manifold. The connection hasn't been formalized across domains in a unified way.

Developmental timing as a master variable

In embryology, “heterochrony” — shifts in the timing of developmental events — is a massive evolutionary driver. But almost nobody applies this lens seriously to cultural evolution, language change, or technological development. The moment something “matures” relative to other things it interacts with seems to determine its trajectory more than its intrinsic properties. Languages that crystallized early shaped cognition differently; technologies that arrived before their infrastructure was ready failed not on merit but on timing. Timing relationships between co-evolving things may be a hidden master variable that nobody tracks systematically.

The immunological model of belief systems

Immune systems develop tolerance to self and reactivity to other — but this requires early exposure during a critical window. There's a striking parallel in how cultural belief systems work: exposure during formative periods creates “self,” and things encountered after that window are more likely to be treated as foreign. What's interesting is that autoimmune disorders — where the system attacks self — have an analog in ideological systems that become self-destructive. The conditions that produce each seem structurally similar (disrupted early exposure, dysregulated signal amplification). Nobody has mapped this carefully.

Friction as information

In physics, friction is usually treated as noise — energy lost, signal degraded. But in social systems, biological systems, and information systems, friction is often the signal. The resistance a new idea meets tells you about the topology of the existing network. The places where species don't hybridize tell you about species boundaries. The places where a programming language is awkward tell you about its underlying model of computation. Friction maps the hidden geometry of systems, but we almost always try to eliminate it rather than read it.

The recursion trap in self-modeling systems

Any system that models itself changes itself by modeling itself — and that change alters the model, which alters the system. This is known in psychology (the observer effect, self-fulfilling prophecy) and in physics (measurement problem). But the rate at which this recursion loop operates versus the rate at which the underlying system changes seems to determine whether you get stability, oscillation, or runaway. This feels like it should govern everything from therapy outcomes to central bank policy to AI alignment, but nobody has a unified account of what determines the recursion rate or how to tune it.


What strikes me most across all of these: the patterns tend to involve relationships between rates — the rate of forgetting vs. learning, the rate of self-modeling vs. system change, the rate of maturation vs. environmental readiness. Static snapshots miss them entirely. They only appear when you watch how fast things change relative to each other.

That might itself be the underarticulated meta-pattern.

What started out as a kind of self-care and an exploration of what Claude Sonnet could do, I have worked out a simple and direct way to create science fiction and fantasy novels using Claude Sonnet and other tools like Nano Banana, Cline, and Claude Code.

For many years I have had a backlog of story ideas – half baked thoughts about some set of characters, or a unique situation I wanted to see played out in a short novel. The past year has been a rough one for many people, including myself, and I wanted to see if I could combine two aspects of my interests: AI ( coding ) and Writing.

I have been creating web projects way before the phrase “Vibe Coding” was a thing and I have picked up a few techniques that have helped me with creating web projects. I wondered if I could coax Claude Sonnet to write a full length novel based on my story ideas, so I set out and approached it like I would a website coding project.

I could go into all the false starts and problems I ran into while trying to build a novel via AI, but I thought it would be best to share my current process and touch upon a few findings.

The process

  1. Decide on a genre – I usually picked Cozy Fantasy, or Funny Fantasy.

  2. Ask the AI to search for the primary aspects of that genre and save into research.md

  3. Brainstorm ideas for a high level plot – collaborate with AI to create a list. Pick something fun and compelling

  4. Flesh out the story plot and store in plot.md

  5. Ask the AI to create supporting documents based on the research.md and plot.md —> emotional-arc.md, sensory-details.md, magic-system.md, character-profiles, world-history.md, and writing-style.md. Review these to make sure they fit your vision of your novel.

  6. Based on all the documents created above, ask the AI to create a comprehensive chapter-by-chapter.md which has checkboxes when each chapter is complete, includes the word count and story beats, and is at least 30 chapters long. ( This last aspect is important because the AI will try to create as short a story as possible and acts “lazy” if you let it )

  7. Create a loop.md workflow. This workflow tells the AI to read all the documents above, determine the next chapter to write in the chapter-by-chapter.md , write that chapter, then update the chapter-by-chapter.md – taking also into consideration the previous chapter if it exists. ( This is also a critical aspect – if you just have the AI write the next chapter it will often place characters in random locations, or a character that died in the previous chapter miraculously comes back to life )

  8. Run this workflow over and over in a “clean context” window for every chapter. Do not try to create many chapters at once. The AI gets more and more dense the longer it goes in one session and the novel will suffer for it. The loop.md gives enough context and reading the previous chapter helps it understand just what to do. I tried having it write the whole novel in one session and it was not great.

  9. When you have gotten to the last chapter the real work begins. I would recommend at this point backing up the files you have created to say github. You will be making some changes to the files that may be destructive and you don’t want to lose the work you already started. Create a prompt that tells the AI it is a talented and relentless novel editor, and you want it to read over the whole novel and call out any inconsistencies, plot holes, timeline issues, etc. And store that in an evaluation.md file.

  10. In a new context, ask the AI to review the evaluation.md file and come up with a plan to fix all the issues. I used to skip this part early on and the novel ended up with odd things like characters who’s names would change, or strange plot holes that just went nowhere. This is an essential step to make your novel take a half-step out of the uncanny valley. Tell it to carry out the fix it plan with as minimal changes to the story as possible. You don’t want it to rewrite the whole thing just for one small issue.

  11. You’re done! Almost!

Beyond the Writing

What happens now? You have a bunch of markdown files and some background documents. Not yet much of a book is it? This is the point where you can rely on the AI to help you get the book in shape, as well as create a nice website for your book so you can distribute it.

Give it some Character

As soon as I finish the content of the novel I want to see the characters and book cover for this work. It really helps make the book come alive and gives something for folks to understand more about your novel. I prompt the AI to read the character backgrounds and the plot documents and create comprehensive image prompts for all the main characters. I then feed those prompts into a site like fal.ai which has a ton of models you can choose from to generate amazing imagery. I will have it create the book cover and the main characters. The point of this will be to enhance the book website you will want to create.

Build the Book

Once you have the cover, you will want to create the artifacts to distribute your novel. As a prerequisite for this step, you should set up Pandoc on your local machine. Pandoc is an amazing piece of software that can convert documents from one form to another. What we want it to do is take the markdown files and convert them to HTML, ePub, and PDF. I won’t go into details about how to get that set up, but for the context of this article, I just prompted the AI to create a build.bat file in Windows to take the documents and convert them to HTML, PDF, and ePub in an output folder using Pandoc. The AI got this down in one shot every time. Often before this step I would ask the AI to create a metadata.yml file which contains the book title, author, and summary and have it use that file in the build.bat. Once this is done, run the batch file and see if it outputs the documents as you expect. For me sometimes the AI will add notes or metadata in each chapter like word count or completed state, you’ll have to run some script to strip that out. The AI can create a batch file to fix those things. Run the build script once again to get a completed novel and save this or commit to git.

Make a Site

Ok, now we have a novel, some book artifacts, some images, but how do you share this? The next step in our plan is to have the AI create a book site for you. I usually write a prompt to ask the AI to consider all the background documents and the image prompts and create a book site that matches the style of the book. I ask it to use the cover and other images in the site, and to link to the HTML, PDF, and ePub files in the output folder. Make sure it uses the metadata.yml and links to your own homepage if you like.

After you have created all this stuff, you need a place to publish it right? For me I use an amazing site called Puter.com . This is a site that lets you host all kinds of web based apps, run them in a simulated desktop environment, and even host websites and other things. You can even sync your files via webdav or just drag and drop files up via the simulated desktop environment.

Here’s the link to my latest novel which I have also made available via github: https://github.com/triptych/mothership and the book website: https://mothership-book.puter.site/

I have honed this technique after many many trials and errors, and this has worked the best for me.

The Library

After creating a few of these novels, I struggled to work out an easy way to share them. Each book has it’s own site, but there’s no real sharing between them and if you ran across one, you might never know any of the others exist. So taking another idea from my coding side of things, I created a master website that hosts links to all the other books. I call it The Library. As of this writing I have 34 novels there – some better than others and all of them are free for you to read, download, and share. They represent the realization of a dream I have had for a long time, but never have had the time or ability to complete.

Here’s the current list of books:

• The Chaos Sword – A village girl bonds with an ancient, sentient sword

• The Librarian's Index – A magical library with a living Index

• Gears and Spirits – A tinker's tale of friendship and invention

• The Dark Lord's Bed & Breakfast – A retired villain runs a B&B

• A Witch on the Line – Thriller about a mysterious phone connection

• The Enchanted Teahouse – Tea brewing becomes a gateway to magic

• The Magical Herbalist's Apprentice – Plants that speak and ancient wisdom

• Mistweaver – Tarot cards become powerful magical entities

• Mountain Odyssey – Romantasy in treacherous magical peaks

• Reborn as a Boat – Identity and friendship in an unexpected form

• The Shrine Gentleman – A hunter becomes a shrine keeper

• Starlight Salvage – Finding beauty in space junk

• Stellar Tides – Magic and technology blend in floating islands

• Suffer the Dragon – A monster healer instead of a hunter

• The Fallen Star – Advanced technology versus corrupt sorcery

• The Sigil – Multiverse adventures and cosmic mysteries

• Nine Lives: A Servant of Anubis – Supernatural noir detective story

• Bards of Discord – Rock music meets fantasy adventure

• Nightwing Academy – Victorian steampunk shapeshifters

• The Gateway – Guarding a magical portal to another realm

• Dragon Crossing – A dragon and a boy switch bodies

• The Last Vanguard – Science fantasy romance with AI

• The Comprehensive Guide to the Best Inns and Outs – Journey of found family

• Bramblewood – Romantic fantasy with elemental magic

• Clarity – Dark sorceress finds redemption and love

• The Unbroken – Ancient magic with a deadly price

• A Familiar Feeling – Caring for abandoned magical creatures

• Toy Wars – Romantic comedy with living toys

• The Undead Groundskeeper – Gothic romance about curse-breaking

• The Tower's Shadow – Identity and memory in dark fantasy

• Cybrina – Corporate magic versus true witchcraft

• The Lost Librarian – A librarian thrust into the real world

• Fantasy House Flip – Retired adventurers flip cursed castles

• Mothership – A colony ship AI transforms into a protective mother

Quirks

There were many interesting quirks that came up when I was working on these novels. The AI ( Claude Sonnet) would often use the same names for the characters across different books. For female leads it would often choose Lyra or Elara, and for males it would choose names like Kyle. Bad guys would sound like Malachar, or Mal- something. And for some reason it has an unreasonable love for adding a location called the Whispering Woods.

Another quirk in the AI was that it would often try to steer the storyline into a situation where the main character was just one of many of their kind, and that the story would try to establish a school to teach more folks like the main character become powerful. Another theme was that instead of having the good guy win or the bad guy win, the AI would try to seek some third option – a compromise between the two opposing sides ideas. It was very strange to see these things happen time after time. So if you need to have more unique storylines, I suggest you give your prompts advice to avoid those names and situations.

I hope you find this article interesting and I look forward to hearing about what you have learned from it.

I’m going to experiment and try to write a blog post every day for a month, starting today until Nov 4th. It doesn’t have to be about anything at all, but perhaps if I can get into the habit of blogging again good things will happen. Right now I’m working on a new cozy fantasy novel about a travelling tea house, and I’m playing games to help myself feel better. Outside of that, it’s chores and cleaning every weekend.

I will talk about the story a bit more tomorrow. I’m using Cline + Claude Sonnet 4.5 to help me with the plot and story writing.

It has been a while since I’ve written much. I’ve been using AI to guide stories and that’s interesting and fun, but more of a diversion than really writing. It’s like having a team of folks that listen to your ideas and create worlds around it. I think it’s a great way for a writer to get out of a slump, and begin to feel creative again. But at the end of the day, writers write. I have a story in mind for this year, and I have a goal to get it written by the end of the year. It’s time to start figuring out what I want to say in this story, and begin to craft that in a way that others would like to read. I also need to start blogging every day – if you want a muscle to get stronger – even a writing muscle – you have to exercise it. So, here I go.

The Tea Dragon's Apothecary

In a sleepy village nestled between enchanted forests and misty mountains, a disgraced alchemist named Elara stumbles upon a wounded tea dragon. Tea dragons are rare creatures whose leaves brew magical teas that can heal, inspire, or even reveal hidden truths. Elara, who lost her license for a potion gone wrong, reluctantly takes the dragon in and begins to care for it. Along the way, she’s joined by a grumpy ex-knight with a cursed sword, a runaway noblewoman who can talk to plants, and a mischievous street urchin with a knack for stealing hearts. Together, they turn Elara’s crumbling apothecary into a haven for misfits and outcasts. But when a mysterious illness threatens the village, Elara must confront her past mistakes and learn to trust her newfound family. A slow-burn romance blossoms between Elara and the ex-knight as they brew teas, share secrets, and heal each other’s wounds.

-—

The Clockwork Catacombs

Beneath the cobblestone streets of a steampunk city lies the Clockwork Catacombs, a labyrinth of gears, traps, and forgotten treasures. Lila, a thief with a mechanical arm she can’t fully control, accidentally awakens an ancient clockwork cat who claims to be the guardian of the catacombs. The cat leads her to a hidden sanctuary where a group of eccentric inventors, each with their own flaws and failures, have built a cozy underground home. Among them is Finn, a charming but reckless engineer who’s haunted by the death of his former partner. As Lila grows closer to the group, she discovers that the catacombs are under threat from a greedy industrialist who wants to exploit their secrets. With the help of her found family, Lila must outwit the industrialist and protect the catacombs—all while learning to embrace her own imperfections and the possibility of love.

-—

The Baker of Broken Things

In a whimsical village where pastries can mend broken hearts and bread can bring forgotten memories, a reclusive baker named Sorrel is known for her ability to fix things—except her own life. Sorrel’s past is a mystery, even to herself, and she’s haunted by nightmares of a magical disaster she can’t quite remember. When a group of strangers arrives in town—a bard with a broken lute, a cursed librarian who turns into a cat at night, and a wandering blacksmith with a shattered sword—Sorrel reluctantly takes them in. Together, they discover that Sorrel’s baking magic is tied to a forgotten kingdom and a prophecy that could save or destroy the world. As Sorrel pieces together her past, she finds herself drawn to the blacksmith, whose quiet strength and vulnerability mirror her own. In the warmth of her bakery, surrounded by the smell of cinnamon and the laughter of her found family, Sorrel begins to heal.

-—

The Lantern Keeper’s Guild

In a world where lanterns hold the light of people’s souls, the Lantern Keeper’s Guild is responsible for protecting these fragile lights from the shadow creatures that lurk in the dark. Nia, a former guild member who was exiled for accidentally extinguishing a lantern, lives alone in a crumbling tower on the edge of the wilderness. When a group of misfits—a lantern thief with a heart of gold, a scholar who’s lost their own light, and a rogue lantern spirit—seeks refuge in her tower, Nia is forced to confront her guilt and rejoin the fight against the shadows. As they work together to relight the lanterns and restore hope to the land, Nia finds herself falling for the lantern thief, whose optimism and resilience challenge her to believe in second chances. Together, they rebuild the guild into a found family of outcasts, proving that even the darkest nights can be illuminated by love and friendship.

-—

The Starry-Eared Inn

Perched on the edge of a cliff overlooking a starlit sea, the Starry-Eared Inn is a haven for travelers, adventurers, and those running from their past. The innkeeper, a half-elf named Calla, has a secret: she can hear the whispers of the stars, which guide her to those in need of shelter. When a storm brings a group of strangers to her door—a pirate captain with a cursed compass, a runaway prince with a knack for storytelling, and a shy astronomer who’s lost their telescope—Calla’s quiet life is turned upside down. As the stars warn of an approaching danger, Calla and her guests must work together to protect the inn and the magical ley lines that converge beneath it. Along the way, Calla finds herself drawn to the astronomer, whose quiet wisdom and starlit eyes remind her of the constellations she loves. In the warmth of the inn’s hearth, surrounded by laughter and the glow of the stars, Calla discovers that home isn’t a place—it’s the people you choose to share it with.

Wondering if I might start blogging again…

I was going to do some work on my Denweaver site this weekend, but ended up doing other things with family as well as resting on Sunday. However, I did do some work. I was writing down some ideas for the site, and I also played a few other web based games.

One game in particular – which is meant to be a sort of learning game for kids – really inspired me as they have a really smooth and clean way to introduce players into the game. The site is https://www.prodigygame.com/ and I started looking at how they onboard new players. They do some clever things with cut scenes, and show you your little home and how to interact with NPC’s as well as a few battles to help you learn the ropes. I really like this kind of “learning by doing” and they also add a bit of storyline and motivation for you to play.

Originally I was going to just tell the player they have a house, and a dungeon and how the mechanics work and let them just start out. But I really like this idea of just putting them in the world, have a short cut scene that introduces the first level of mechanics and get them immersed right away. It’s so much better than the expositional style I was going to go with.

Here’s an example screen

And here’s one with the upsell

They do such a great job with color, design, and everything. I’m super impress with this supposedly kids learning game.

Another example

This is helping me rethink how I am organizing my own game.

Instead of endless menus, and walls of text. I want to put them into the game right away and let them explore.

So, while I didn’t do any coding this weekend, I did learn a lot, and this will have a dramatic impact on the course of my own Denweaver game.

Enter your email to subscribe to updates.