# Obsidian - Town Forge
![[images/Obsidian-Town-Forge.webp]]
[Watch on YouTube](https://www.youtube.com/watch?v=tDeXweXFjiw) · 31:26 · Josh Plunkett · 2026-08-14
## Outline
### 00:00 Intro
- Josh praises the [Watabou](https://watabou.github.io/) city and village generators, which most GMs already know and love.
- Towns and cities are hard to run at the table: many people, cultures and, above all, shops. Players ask "do you sell this?" and a GM improvising can hand out too many magic items, which breaks balance in a low-magic design like original D&D 5e.
- Goal: a button in Obsidian that says "here's a town, who lives there, what the shops sell, who's shopping."
### 03:12 What Is Town Forge
- His new plugin, coded with Claude.ai over three to four weeks on a Max subscription ("not a cheap plugin to make").
- Available at community.obsidian.md/plugins/town-forge or from the in-app plugin browser.
- Rolls random town or city maps similar to Watabou's, inside Obsidian. Josh admits it isn't as pretty, but it adds integration with his other plugins.
### 04:37 Installation
- Bare vault with assets and templates folders already set in settings.
- Settings → Community plugins → turn off Restricted mode → Browse → "Town Forge" → Install/Enable.
- A "Town Forge: open map preview" ribbon button opens the control panel.
### 05:32 How To Use
- The panel has zoom and pan, random name roll, and a seed.
- Terrain options: lake, coastal, inland, mountain, river. Mode is Full (settlement) or Landscape (terrain only, for simple battle maps).
- Settlement size runs from hamlet to metropolis. You also set approach-road edges (N/S/E/W/auto), farms, forest density, mountain size and mountain edges.
- Toggles for walls, castle, temple, market, barracks and tower (special pre-built buildings).
- Generation isn't perfect (river cutaways, a river between two mountains), but Josh treats the quirks as story hooks: "magic."
![[images/Obsidian-Town-Forge-t0705.webp]]
- To use a map, copy the code block into a note to render it, or use **Insert**. **Save PNG** exports an image.
### 09:33 1-Click Cities and Towns Setup
- Backstory: Claude sparked a run of plugins (one became six). Town Forge started as a 15-minute "Watabou in Obsidian?" experiment.
- **TTRPG Tools: Maps** (by Jareika) is the new replacement for Leaflet. It has a UI, so no bounds calculations. Enable "TTRPG Tools Maps export" in Town Forge settings, and install the plugin from there.
- Exporting a large town creates a note in a Maps folder, with subfolders per place type (shop, inn, stable...) and pins such as "The Drunken Smithy." It shows "no template found" until the templates are set up.
![[images/Obsidian-Town-Forge-t1225.webp]]
- Settings: distance unit, export folder, and template folder (e.g. `z_templates/TownForge`).
- **Pre-made content** checklist ("one-click maps that self-populate with places, people, items and adventure hooks"):
1. Install **Randomness** (Josh's random engine for dice, tables, portraits, cards and decks) and set its generator root folder for the .rdm table files.
2. Install **Templater** and turn on "Trigger Templater on new file creation." Josh warns this allows JavaScript to run: "If you don't trust me, then don't install it."
3. In Randomness, install the **Fantasy Portrait Pack**.
4. In Randomness, install the **Fantasy Hub content** (it needs Templater and Town Forge). Expect a harmless first-run error.
5. Click **Create place templates**. These are complex API-driven templates through which Town Forge queries Randomness and pastes results into notes.
- **Send icons** pushes Town Forge's icon set to TTRPG Tools Maps. Josh also recommends TTRPG Tools Maps' **Font Awesome** and **RPG Awesome** library downloads. Extract the zips (he uses 7-Zip) in the ZoomMap SVGs folder, then rescan: 2,232 icons were added.
### 20:41 1-Click Town Demo
- He generates a river town with N/E roads, lots of farms and a southern mountain range. Bridges are placed automatically ("that took days").
- Export to TTRPG Tools Maps creates the map note plus place notes in one click.
- In **Hale's Bell**, an inn in Ashstead, innkeeper Tomas Ashdown (human, male, old) has a portrait that matches his traits. There are room and board prices (Pathfinder 2e pricing, which Josh prefers over D&D's), items for sale, a guest (Edmund Ironwood), common-room flavour and a hook.
![[images/Obsidian-Town-Forge-t2220.webp]]
- A stable run by Urzul Stonefist (half-orc) sells a riding horse, pony and mule. Josh spots a bug: Edmund Ironwood repeats across places.
- How linking works: Town Forge tells Randomness the place type, and Randomness returns a matching keeper and matching goods. This keeps names, genders, ages and portraits consistent (no "male name with a female picture"). Vance's Herbalist sells herbalist goods.
### 26:45 1-Click City Demo
- He generates a city with walls, castle, temple, market, barracks and tower. Export takes a few seconds longer.
- The result has inns on the edges, farms with farmhands, a tower with a suspicious worshipper and an apprentice, a temple, a guardhouse and a castle.
- Heraldry was missing because **Heraldry Weaver** wasn't installed. After installing it, castles roll random heraldry (re-roll until you like it).
![[images/Obsidian-Town-Forge-t2845.webp]]
- Markets list stall types and "faces in the crowd." Shops (alchemy, magic, weapon, general) stock fitting items such as pendants, a wand and "creeping death." Josh calls it "not perfect" but a foundation to build on.
### 30:40 Outro
- He thanks his Patreon supporters, who make it possible to build tools like this, and asks viewers to like and subscribe.
## Things Mentioned
### Obsidian plugins
- **Town Forge** (free, community plugin by Josh Plunkett): https://community.obsidian.md/plugins/town-forge
- **TTRPG Tools: Maps** / Zoom Map (free, by Jareika): pinned interactive maps that replace Leaflet
- **Leaflet** (free): older map plugin being phased out
- **Randomness** (free, by Josh Plunkett): random engine, Fantasy Portrait Pack, Fantasy Hub content
- **Templater** (free): must trigger on new file creation, which runs JavaScript
- **Heraldry Weaver** (free, by Josh Plunkett): random heraldry and coats of arms
### Tools and websites
- [Watabou](https://watabou.github.io/) Medieval Fantasy City Generator and Village Generator (free web tools)
- Claude.ai (paid Max subscription, used to code the plugin)
- Font Awesome and RPG Awesome icon libraries (free, downloaded through TTRPG Tools Maps)
- 7-Zip (free archive tool)
- [Obsidian TTRPG Tutorials community](https://obsidianttrpgtutorials.com/) (free)
- [TTRPG Foundation Vault on Patreon](https://www.patreon.com/JPlunkett) (paid)
- Discord, Facebook groups, Reddit
### TTRPG systems
- D&D 5e (original, a low-magic design that Josh says loses balance with too many magic items)
- Pathfinder 2e (source of the item and lodging prices)
## Bios
- **Josh Plunkett**: An Australian GM and YouTuber behind Obsidian TTRPG Tutorials, known for Obsidian vault-building guides and the TTRPG Foundation Vault on Patreon. He has recently been building his own plugins (Randomness, Heraldry Weaver, Town Forge) with AI help.
- **Watabou**: Pseudonymous developer of popular free procedural map generators for cities, villages, dungeons and more, and the inspiration for Town Forge.
- **Jareika**: Developer of the TTRPG Tools plugin family, including TTRPG Tools: Maps (Zoom Map), which Josh recommends over Leaflet.