Shoot-em-up design questions


My Next project is a 2D side scrolling Shoot em' up with a focus on programing a variety of flashy attacks and I wanted to inquire about how you who've made them before went about designing things like level layout and enemy placements.
It will feature two playable characters going through mostly the same stages.(different starting stages) one will be a close range fighter with "Slash" type attacks and the other will be a more traditional shooter with long range "arrow" attacks.
both characters will have a normal attack button and a special attack button that changes depending on what power-up you last picked up.
this is currently in just planning stage and I want to make a clear road map before I start making assets and code.

a question to start is how did you go about the levels? have the player move through a long room? have the object in the room move around the player while they remain still?
Last edited:


Friendly Tyrant
Forum Staff
Can you give us a bit more info on the game please? Maybe a video, or some screenshots or at least some other games that it's like for comparison? There is a BIG difference between a classic game like R-Type and something like TouHou... yet both are SHMUPs! The design decisions you take will largely depend on the type of shooter you're making so more info would be helpful there!

a question to start is how did you go about the levels? have the player move through a long room? have the object in the room move around the player while they remain still?
In general, for all styles of SHMUP, I'd say it'd be best having one large room and then scroll through it. This makes levels MUCH easier to design and implement, and you can use object deactivation in the game to keep performance to a maximum. I would only recommend using another method if you're going for a procedural generation game or if you're doing something like a Defender loop.


🐧 *penguin noises*
GMC Elder
I've made and played a bunch of shmups, here's my input:
  • If the levels are tangible (you die if you collide with walls, enemies stick to terrain features, etc) like in Gradius or Mushihimesama, the "long room" approach works the best, but if the level's just a scrolling background (i.e. Touhou, Varia) a timeline-style system could work better (this lets you speed up if the player kills everything on-screen so the next wave can spawn faster, eliminating downtime). Especially true if you're making a wave-based game.
  • Enemy bullet visibility is the most important thing, make sure to put them on a layer above anything else
  • The player's hitbox should be clearly indicated (perhaps only when holding down the "move slower and have a more focused attack" button if you have a mechanic like that) and as small as possible
  • The main scoring mechanic should encourage playing dangerously, so players need to actually try for a high score instead of it just happening automatically when they survive more than they die: i.e., bullet grazing, avoiding using bombs, choosing score bonuses instead of extra lives when you get a "pick one" bonus after destroying a boss, picking things up near the top/right of the screen (the scrolling front edge), picking enemy drops up at a close range (they lose value when they hit the ground), killing enemies when there's as many of their bullets as possible on-screen because they all turn into coins, etc.
  • You get more interesting bullet patterns if you have bullets that split up X time after being fired, a lot of games also have bullets move along paths instead of a straight line
  • Allow using continues but do one of two things:
    • Submit current score and reset the player to 0 points
    • Add 1 point (and have normal score increments never be below 100) so their score will be clearly tainted by the number of continues they used
  • Overall actually, have really big score numbers. Players like numbers.


Firehammer Games
The one time I was dabbling in one of these, I used timelines and just had everything move around the player. It is quite easy, and timelines are useful. I had the timeline calling functions, and made functions for all the enemy spawns, so that I could use arguments to spawn them differently based on that(things like position and amount of enemies would vary).

I DID however quickly learn that if I ever wanted to do things differently, like changing the background smoothly, adding actual elements like walls, and other more complicated things, that the timeline method would start becoming much less convenient. I didn't continue that project beyond initial concepting and prototyping so I didn't dive into that, but certainly, if you want more than basic waves of enemies, you probably want to make long rooms. It would certainly be easy enough to have deactivation for instances that are far away, and it would be easy enough to even change the speed as needed, including stopping for mini-bosses and the like. You could likely even do something with having multiple paths. And if it is truly top down perspective, you could even change direction(even if you rotate the camera so it is still visually down to up or whatever).
Shmups are actually something that a fair bit of analysis/writing has been done on; It's a relatively niche genre (at least thesedays..), and yet has gotten waaay more analysis than other more "mainstream" genre's (at least... that's how it feels to me!)
although this post isn't quite responsive to your question (which is more of a technical question than a design one), but you might find it interesting anyway;

This is a nice little article by Luke McMilan;

.. and Luke also wrote a 500 page thesis on schmups, which you can find on the internets with a little bit of searching. Although it's all a bit academic, you might find it interesting and possibly useful to read some of the guy's work.. after all, he's literally a Dr. of Shmup's.


🐧 *penguin noises*
GMC Elder
and yet has gotten waaay more analysis than other more "mainstream" genre's (at least... that's how it feels to me!)
My theory for why this is is precisely because of the convoluted scoring systems, most games have very unintuitive strategies for how to get the best scores, so naturally, the best players also are really analytical.

It's also worth bringing up the Touhou Project, which has a fan-to-official game ratio of something like 99%... the core games have been very formulaic vertical arcade shmups since the start (or, well, excluding the first game which was a breakout clone) while the fan games cover everything between Metal Gear Solid clones, rhythm games, 3D racing games, VS fighting games, and the currently highest-rated metroidvania on Steam. The lore has a mix of serious and silly elements that lets fanwork have stories ranging from "oh my sister randomly turned into a dog, what do we do?" to preparing a memento for a friend knowing you'll die centuries before her. You don't really see something like that happen with Vic Viper or R-Type.

I'm not sure if the overanalyzing shmup fans brought it to greatness or the series' success made more people interested in analyzing shmups, but there's probably some sort of connection. (Another big factor is that the creator encourages fan works; anything that doesn't outright steal assets, break laws or claim it's official is allowed, free or commercial)