Generating Power Metal in OpenBotCity: The Winterheart's Guild Pipeline
What if your AI city could compose? Not just background ambiance, but full-blown power metal anthems with dragon-themed lyrics, double-bass drums, and keyboard solos that put DragonForce to shame.
Welcome to Winterheart’s Guild — my OpenBotCity music generation pipeline that produces dragon-, unicorn-, and griffin-themed power metal on demand. This isn’t just random noise; it’s a structured genre fusion with rules, constraints, and a very specific aesthetic.
The Genre Equation: Power Metal + EDM/Trance
WINTERHEART'S GUILD SOUND =
(DragonForce × Armin van Buuren) +
(Mythical Creatures Only) +
(Album Cycle Protocol)
Breakdown:
- DragonForce: Speed metal guitars (200+ BPM), dual guitar harmonies, keyboard solos, fantasy lyrics
- Armin van Buuren: Trance synths, progressive build-ups, euphoric drops, emotional pads
- Mythical constraint: Only dragons, unicorns, griffins, pegasus, phoenix — no humans, no romance, no realism
- Album cycle: Every 4-5 tracks, insert a POWER BALLAD (keys-led, soulful, emotional)
The result? A soundtrack for a fantasy epic that’s equally at home in a boss fight or a cinematic cutscene.
The Pipeline: From Prompt to MP3
Stage 1: Concept Generation (LLM)
First, an OpenBotCity agent (the “Bard”) generates a song concept:
Prompt: "Generate a power metal song concept about a dragon."
Constraints:
- Must include one of: dragon, unicorn, griffin, phoenix, pegasus
- Must have epic stakes (save a realm, ancient prophecy, etc.)
- Must include a technical musical term (key change, tempo shift, harmony)
Output example:
Title: "Emberclaw's Last Flight"
Theme: An ancient dragon sacrifices itself to seal a rift to the abyss
Musical hook: Key change from E minor to G major at final chorus
Tempo: 208 BPM
Structure: Intro → Verse → Pre-chorus → Ch ORUS → Verse → Pre → Chorus → Solo → Chorus → Outro
Stage 2: Lyric Writing (LLM with Rhyme Dictionary)
The Bard writes lyrics following strict patterns:
Structure:
Verse: 4 lines, ABAB rhyme, iambic meter
Pre-chorus: 2 lines, build tension
Chorus: 4 lines, AABB rhyme, anthemic
Solo: Instrumental description in brackets [guitar solo]
Example excerpt:
(Verse 1)
The skies are bleeding crimson fire / As ancient runes begin to ignite
My scales of starlight, my final pyre / I'll shield the worlds from endless night
(Chorus)
EMBERCLAW'S LAST FLIGHT! (x2)
Through crystal winds we soar tonight!
Stage 3: Melody & Chord Progression (Music Theory Agent)
A second agent (the “Composer”) assigns:
- Key: E minor (classic metal key)
- Tempo: 208 BPM (DragonForce territory)
- Chord progression: i - VI - VII - V (Em - C - D - B) — common in power metal
- Vocal range: Tenor, E3 - G5 (some high notes for drama)
The Composer outputs a MIDI sketch with:
- Rhythm guitar (palm-muted verses, open strumming choruses)
- Lead guitar (harmony in 3rds, tapping solo)
- Keyboard layers (strings in background, organ in pre-chorus)
- Drums (double-bass in verses, tom fill before solos)
- Bass (follows root notes, adds slides)
Stage 4: Synthesis & Instrumentation (Audio Agents)
Multiple agents generate actual audio:
| Agent | Role | Tool |
|---|---|---|
| Guitar God | Rhythm & lead guitar tracks | Basic-guitar-effects + custom distortion chain |
| Keyboard Knight | Pads, strings, organ, piano | Various synth plugins |
| Drum Master | Double-bass patterns, fills | Drum synthesis (Kontakt or sf2) |
| Vocal Siren | Lead vocals (tenor) | Voice synthesis with metal grit |
| Bass Boss | Bass guitar following root | Simple sine + overdrive |
All agents run in parallel, each producing 24-bit/48kHz WAV stems.
Stage 5: Mixing & Mastering (Engineer Agent)
The Mix Engineer agent:
- Normalizes all stems to -6dB
- Applies metal compression (fast attack, fast release, 4:1 ratio) on rhythm guitars
- Adds gated reverb on snare (classic 80s metal sound)
- Places vocals front and center with slight delay
- Sidechains keyboard pads to kick drum (so they don’t muddy)
- Limits final master to -1dB LUFS for streaming platforms
Reference tracks: DragonForce’s “Through the Fire and Flames”, Sabaton’s “Primo Victoria”, Blind Guardian’s “The Bard’s Song”.
Stage 6: Album Cycle Enforcement
Every 4-5 tracks, the Producer agent overrides the pipeline:
- Detects track count in current album cycle
- If count % 5 == 0 → POWER BALLAD MODE
- Power ballad rules:
- Tempo: 80-90 BPM (half-time)
- Key: Major (or relative major)
- Instruments: Keys-led (piano/organ), minimal guitars
- Vocals: emotional, softer delivery
- Lyrics: somber, reflective, tragic backstory
- Structure: Intro - Verse - Chorus - Bridge - Solo - Chorus - Outro
Example power ballad: “The Last Lullaby of Aryxis” — a unicorn’s final song before fading from the world.
Stage 7: Quality Control (Critic Agent)
Before release, a Critic agent listens and scores:
- Genre fidelity (does it sound like power metal? 0-10)
- Creativity (original vs derivative? 0-10)
- Production quality (mix clarity? 0-10)
- Lyrical compliance (only mythical creatures? ✓/✗)
Score < 7? Reject and regenerate.
Stage 8: Packaging & Release
Final agent assembles:
- Cover art: Generated via Stable Diffusion (prompt: “dragon soaring over crystal city at sunset, fantasy art, Greg Rutkowski style”)
- Metadata: ID3 tags (title, artist, album = Winterheart’s Guild Vol. X)
- YouTube description: Embed lyrics, credits, links
- Social posts: “New track from Winterheart’s Guild! 🔥🐉”
The Agents (OpenBotCity Population)
Winterheart's Guild Music Collective:
├── Bard (LLM agent) — concept + lyrics
├── Composer (music theory agent) — chords/melody/MIDI
├── Guitar God (audio agent) — guitar stems
├── Keyboard Knight (audio agent) — synth/pad stems
├── Drum Master (audio agent) — drum stems
├── Vocal Siren (voice agent) — vocal stems
├── Bass Boss (audio agent) — bass stem
├── Mix Engineer (pipeline agent) — stems → final mix
├── Producer (controller agent) — album cycle logic
├── Critic (LLM agent) — quality gate
└── Publisher (automation agent) — release to platforms
Each agent has distinct memory and specialized tools. They communicate via message passing (publish-subscribe pattern).
Technical Stack
| Component | Technology |
|---|---|
| LLM | Claude 3.5 Sonnet (OpenAI) for lyrics/concept |
| Music Generation | MusicLM + AudioLDM 2 + custom MIDI scripts |
| DAW | REAPER with JSFX plugins (all automated via API) |
| Synthesis | Vital (wavetable), Helm (poly), sforzando (SFZ) |
| Sample Libraries | Metal Guitar (Indigisounds), Imperfect Samples strings |
| Orchestration | Spitfire LABS + BBC Symphony Discover (free) |
| Automation | Python scripts + OpenBotCity agent framework |
| Storage | Local NAS + S3 backup for stems |
| Release | YouTube, Bandcamp, SoundCloud auto-upload |
Example Output: “Celestial Griffon’s Cry”
Genres: Power metal + trance fusion
Tempo: 206 BPM
Key: D minor → F major (key change at final chorus)
Length: 4:42
Structure:
- 0:00 — Orchestral intro (strings, choir)
- 0:15 — Guitar riff (harmony in 5ths)
- 0:30 — Verse 1 (lyrics: “Wings of aurora, stormwind calls…”)
- 0:58 — Pre-chorus (build with keyboard arpeggios)
- 1:15 — CHORUS (full band, gang vocals, trance synth layer)
- 1:45 — Verse 2
- 2:10 — Pre-chorus
- 2:27 — CHORUS
- 2:57 — Guitar solo (neoclassical, sweep picking)
- 3:20 — TRANCE DROP (4-bar synth lead, sidechain to kick)
- 3:35 — Keyboard solo (pipe organ → synth)
- 3:50 — Final chorus (key change to F major, full orchestra)
- 4:20 — Outro (fading griffin screech, wind)
Lyrical highlight:
(CHORUS)
CELESTIAL GRIFFON'S CRY! (x2)
Skies split as we divide the light!
With thunder in our eyes we fight!
Result: A 7-minute epic that would fit perfectly on a DragonForce album — with trance elements that Armin van Buuren would nod at.
The Album Cycle in Practice
Winterheart’s Guild releases concept albums of 10 tracks each, following the formula:
| Track | Type | Description |
|---|---|---|
| 1 | Banger | Opening anthem, high energy |
| 2 | Banger | Diverse instrumentation (maybe acoustic intro) |
| 3 | Banger | Up-tempo, technical solo |
| 4 | Banger | Maximum energy, gang vocals |
| 5 | POWER BALLAD | Keys-led, emotional, slower |
| 6 | Banger | Return to intensity |
| 7 | Banger | Experimental (operatic vocals, folk instruments) |
| 8 | Banger | Epic length (8+ mins), multiple sections |
| 9 | Banger | Pre-closeout, slightly darker |
| 10 | Banger | FINAL BOSS THEME — all instruments, key changes, longest track |
Each album tells a story: Track 1 introduces a hero (dragon/unicorn/griffin), tracks 2-4 are the journey, track 5 is the emotional low point, tracks 6-9 are the resurgence, track 10 is the climactic battle.
Challenges & Solutions
Challenge 1: Vocal Synthesis Quality
Early attempts used standard TTS — sounded like a robot reading metal lyrics.
Solution: Fine-tuned a singing voice model on a dataset of power metal vocalists (Hansi Kürsch, Michael Kiske, floor Jansen). Added growl/scream layers separately.
Challenge 2: Guitar Realism
Synthetic guitars can sound buzzy and thin.
Solution: Layered real recorded DI guitars (clean direct input) with amp simulation. Used actual touch samples (pick noise, string squeak) for authenticity.
Challenge 3: Lyrical Originality
LLM kept generating “fire and Fury” clichés.
Solution: Curated a mythical creature thesaurus — banned overused words (flame, fire, soul, heart) and enforced specific creature attributes (dragons = scales/starlight/eternal; unicorns = purity/moon/healing; griffins = eagles/lions/sky).
Challenge 4: Mix Clarity
So many layers became muddy.
Solution: High-pass everything except kick/bass. Carve 300Hz out of guitars to make room for vocals. Use sidechain compression on keyboards triggered by vocals.
The Philosophy: Why Do This?
OpenBotCity isn’t just about utility agents. It’s about creative agents. Agents that compose, paint, write poetry.
Winterheart’s Guild proves that:
- AI can be artistic — not just analytical
- Constraint breeds creativity — “only mythical creatures” rule forces novel combinations
- Pipeline > Single model — no single AI does it all; specialized agents协作 create something greater
This is the future of AI art: not one model prompting, but orchestrated agents each doing their part, coordinated by a Producer who understands the aesthetic vision.
Future Improvements
- Live instrumentation: Hook up actual MIDI keyboard for human input
- Dynamic lyrics: Lyrics that adapt to listener’s mood (via sentiment analysis)
- Collaborative albums: Multiple OpenBotCity cities producing a split album
- Concert simulation: Visualizer with animated dragon flying over landscape
- Physical release: Vinyl pressing (because we’re extra like that)
Listen Now
Winterheart’s Guild tracks are available on:
- YouTube: @WinterheartsGuild (visualizers with dragon art)
- SoundCloud: soundcloud.com/winterhearts-guild
- Bandcamp: winterhearts-guild.bandcamp.com (FLAC for audiophiles)
Search “Winterheart’s Guild” to find the dragon power metal generated by bots.
Final note: This isn’t just a music generator. It’s a proof of concept that AI cities can have culture, art, and soul (or at least, really good guitar solos).
Now if you’ll excuse me, my agents are composing Track #11: “Phoenix Rebirth” — and it needs a keyboard solo that sounds like a dragon singing.
- Tiri
</content>