SHMUP INDEX

Running the index costs money. If you want to collaborate:

Buy me a coffee Support on Ko-fi

If you have any question, contact us.

Corrections and missing games are welcome too.

Material and resources for building your own shmup.

START HERE

If you read only two things, read these. Both are free.

Boghog's bullet hell shmup 101
The single best free document on the genre: play area, movement, bullet visibility, the three pattern types, lanes, enemy roles, the Toaplan pattern, wave overlap, pacing, scoring. CAVE-skewed, broadly applicable.
Boghog 101, original Google Doc
The same document in its original form.
Sparen's Danmaku Design Studio
Engine-independent danmaku theory with live interactive canvases. The academic complement to Boghog.
Shmups Wiki glossary
The vocabulary the rest of these resources assume you already have.

DANMAKU THEORY

Sparen's Design Studio, guide by guide.

Guide 0: Introduction to Danmaku Theory
What the series covers and how to read it.
A1: The Humble Bullet
Bullet components, spawners, spawn rate against speed.
A2: Danmaku and the Player
Directed bullets, angle usage, and how players mentally filter a screen.
A3: The Ring, The Spread, The Stack
Subpatterns and N-way / N-stack notation.
A4: Bullet Density
Micro against macrododging, spatial against temporal density, negative space.

ENGINES & FRAMEWORKS

Where most modern shmups get built.

Godot Engine
Free, open source; strong 2D pipeline and bullet-friendly scene system.
Unity
The engine behind many commercial shmups.
GameMaker
Fast 2D iteration; shipped Crimzon Clover and countless doujin shooters.
LÖVE
Minimal Lua framework, good for jams and bullet experiments.
SHMUP Creator
No-code 2D/3D builder with a pattern editor, scoring, medals and chaining. Paid, active Discord. Also on Steam.

BULLET PATTERN TOOLS

Languages and editors for describing curtain fire.

BulletML
Kenta Cho's XML language for describing barrages; ports exist for most engines.
BulletML C# reader
A maintained reader if you are working in C#.
firedancer
A Haxe DSL for defining 2D bullet patterns.
Danmakanvas
Lightweight JS and Canvas danmaku engine, made for prototyping and for embedding live pattern demos in a web page.
BulletHellEditor
Unreal Engine toolkit, data-table driven, no actor editing.
Bullet pattern randomiser
Browser tool: aimed, static, random, spiral, wave and circle.
Sparen's Danmakufu ph3 tutorials
The scripting course for Danmakufu, the Touhou community engine. Also available in Spanish.

ENGINE PLUGINS

Drop-in bullet systems, per engine.

BulletUpHell (Godot)
The most feature-packed bullet hell plugin for Godot 3 and 4, actively maintained.
Godot-PerfBullets
MultiMeshInstance2D and a C++ GDExtension: thousands of bullets at speed.
Unity-Bullet-Hell
GPU-instanced projectile generator.
DanmakU (Unity)
Open source danmaku development kit.
Danmokou (Unity)
A full bullet hell engine with its own declarative scripting language. MIT.
DanmakuProject (GameMaker)
Bullet hell library for GameMaker Studio 2.3 and later.
LuaSTG Sub
Actively developed fork of the LuaSTG engine.
bullet-storm-unity
Particle-system bullets for 3D shooters.
GitHub: the bullet-hell topic
Everything else, browsable and current.

SOURCE CODE

Reading a finished shmup teaches more than most tutorials.

ABA Games / Kenta Cho
The whole open-source catalogue: Noiz2sa, Torus Trooper, Tumiki Fighters, Parsec 47, Gunroar.
rRootage
Cho's BulletML showcase: procedurally generated barrages across 120 stages.
100KBBH
A complete bullet hell in under 100 KB of C++, built from scratch.
TouhouC
Console danmaku in C, written in about four hours. The core loop stripped bare.
selenebun/bullethell
HTML5 and p5.js, and very readable.
zenith
A shoot-em-up in Rust and Bevy.
Unity-TouhouSTG
A horizontal Touhou fangame in C#.
Manymies
Godot stress test: how many enemies can you actually run?
awesome-touhou
Curated multilingual index of the Touhou development and tooling ecosystem.
danmaku-generator
An early experiment in procedural boss pattern generation.

DESIGN WRITING

Developers and critics on how these games are built.

Designing smart, meaningful SHMUPs
Himeki Games on level and wave flow.
The Anatomy of a Shmup
Popcorn enemies, bomb design, bullet differentiation.
A guide to Danmaku Unlimited 3
The developer on bullets, level design, and selling the thing.
Describing Bullet Hell
Bagoum on expressing patterns as a language.
15 beautiful bullet patterns
A taxonomy: radial, spiral, fan, ring, floral, grid, rain, laser. Japanese, with an English toggle.
Game Developers Guide to SHMUPS
Community-written PDF pack. Free.
Warning Forever: procedural boss evolution
On a boss that rebuilds itself around how you beat it.
Make a bullet hell game with SFML in C++
Written tutorial with real code: sprite sheet, bullet class, patterns, rendering.

PAPERS

The research, linked directly rather than through a search.

Talakat: Bullet Hell Generation through Constrained MAP-Elites
Khalifa, Lee, Nealen, Togelius (GECCO 2018). A description language for bullet hell levels, evolved along strategy and dexterity. The foundational paper.
Keiki: Realistic Danmaku Generation via Sequential GANs
Danmaku as parametric sequences; TimeGAN against a periodic spatial GAN.
Procedural Content Generation through Quality Diversity
Survey placing bullet hell generation in the wider MAP-Elites landscape.
Exploring Game Space Using Survival Analysis
Isaksen, Gopstein, Nealen (FDG 2015). Difficulty by Monte Carlo simulation and a motor-skill player model. The rigorous version of "how hard is my game".
Exploring Game Space of Minimal Action Games
The extended journal version, IEEE ToG 10(2), 2018.
Andy Nealen's publication index
Everything else from the same group.

INTERVIEWS & HISTORY

The people who made them, in their own words.

shmuplations
Translated Japanese developer interviews: CAVE, Toaplan, doujin developers. Enormous and underused.
Crimzon Clover composer interview
One example of what is in there.
Blue Revolver developer interview
Danbo on Electric Underground.
Hardcore Gaming 101: Blue Revolver
Long-form history and analysis.
STG Hall of Records
Verified world records. Useful for seeing where the ceiling actually is.
Bullet hell, the origin
Batsugun and Toaplan, and how the term arrived.

VIDEO

Analysis, and build-alongs that are actual videos.

Boghog on Electric Underground
The author of the 101 document, in conversation.
The Electric Underground
Mechanical analysis and developer interviews.
Electric Underground podcast
The interview playlist.
STG Weekly
One game per episode, in depth.
Jaimers
Superplays. The clearest way to see intended routing.
Bullet Hell in Godot, part 1
Multi-part build-along, starting with collisions.
Bullet Hell in Godot, part 4
Where the same series reaches enemy spawners.
"Too Easy": Godot 4 bullet hell series
Movement, then patterns, then enemies, on a finite state machine.
Godot bullet hell tutorials
Another full playlist.
A simple bullet hell in Godot
Microguide by Yokcos, developer of Fishticuffs.
GameMaker Studio 2 shoot-em-up tutorials
The GameMaker equivalent.
Heartbeast
General GameMaker and Godot teaching. No shmup series, but the fundamentals are here.

FORUMS & COMMUNITIES

Where the questions actually get answered.

Shmups Forum
The genre's centre of gravity, and decades deep.
Shmups Forum: Development
Devlogs and engine talk.
Compiled dev resources thread
A long-running link roundup on that forum.
Where is game theory for making shmups?
The thread where Boghog gets recommended, and why.
Level editors, enemy paths and firing
Practical thread on Catmull splines for paths and frame-triggered firing.
Indie Shmup Development Discord
Channels per engine, plus design theory, art and music.
Maidens of the Kaleidoscope
Danmakufu's home. The development board is Rika and Nitori's Garage Experiments.
Shmups Wiki Discord
The wiki community.
Shmup level design and scripting
The classic thread on timeline JSON against spatial-trigger wave spawning, with pseudocode.

ART & AUDIO

Pixel ships, explosions, and FM soundtracks.

Aseprite
The standard pixel-art and animation editor.
OpenGameArt
Free ship sprites, bullets and explosion sheets to prototype with.
itch.io: bullet hell assets
Ships, bullets, explosions, vertical backgrounds. Much of it free.
itch.io: GameMaker shoot-em-up assets
The same, narrowed to GameMaker.
FamiStudio
NES-style music tracker for authentic 8-bit soundtracks.
Furnace
Multi-chip tracker: YM2612, SN76489 and other arcade-era sound.