Context

An important aspect of a shmup is the question of how the player’s ship handles damage. For example, the ship could have some sort of health or energy points that are reduced when colliding with an enemy or an enemy bullet. Once the health points reach 0, the ship is destroyed. Another possibility is that the ship is destroyed upon the first hit, no matter how upgraded that ship is.

Alternatively, previously collected weapon upgrades effectively serve as a kind of shield. When you get hit, the weapon is downgraded. Only when that’s no longer possible is the ship destroyed. That’s what’s implemented in this game, inspired by classic shmups like Final Soldier, or Super Star Solider.

Weapons

In the current state, the player ship has three primary weapons, only one of which is selected at any moment in time: a spread shot, a straight shot, and a laser beam. Additionally, it has a secondary weapon: homing missiles. The player starts with the spread shot active as the default weapon. The secondary weapon is disabled by default, but can be enabled by picking up the right power-up.

Spread Shot

The spread shot is a weapon that fires multiple projectiles at once, where a central bullet flies straight ahead, while additional bullets fan out at different angles. At its initial level it only fires straight ahead. Each upgrade adds more bullets to the spread shot and increases the maximum number of bullets that can be on the screen at any one time.

The spread shot weapon

The spread shot weapon in its default state … is really a linear shot

… upgraded once

… upgraded once

… upgraded twice

… upgraded twice

Straight Shot

The straight shot is a weapon that fires one or more projectiles directly forward, with all bullets traveling straight ahead. Each upgrade adds more bullets and increases the maximum number of bullets that can be on the screen at any one time.

The straight shot weapon

The straight shot weapon

… upgraded once

… upgraded once

… upgraded twice

… upgraded twice

Laser Beam

The laser beam emits a continuous beam straight ahead, damaging any enemy it intersects while it is active. Each upgrade widens the beam and increases its damage.

The laser beam

The laser beam

… upgraded once

… upgraded once

… upgraded twice

… upgraded twice

Homing Missiles

The only secondary weapon currently implemented in the game is homing missiles. It can be activated and upgraded by picking up the right power-up.

Homing Missiles

Homing missiles flying towards an enemy ship

Upgrades

These are the current placeholder sprites for the power-ups:

Spread Shot Power-Up

Spread Shot Power-Up

Straight Shot Power-Up

Straight Shot Power-Up

Laser Beam Power-Up

Laser Beam Power-Up

Homing Missile Power-Up

Homing Missile Power-Up

Each weapon can be upgraded by collecting power-ups. When the player picks up a power-up that matches the active weapon, the weapon is upgraded. If the player picks up a power-up that matches a different weapon, that weapon becomes the selected active weapon.

Here’s a quick flowchart to illustrate the idea:

Damage Mechanics

Each time the player is hit by an enemy or enemy bullet, the secondary weapon is downgraded or, if that’s not possible, disabled. Subsequent hits will downgrade the primary weapon. When that’s no longer possible, the ship is destroyed and the player loses a life.

Again, a quick flowchart:

Observations & Learnings

By collecting power-ups, weapons can be upgraded or changed, depending on if the power-up matches the currently active weapon. This seems like a simple way to let the player select the weapon without having to press any extra buttons which would distract from the gameplay. Plus, it adds a small strategic element to the game. Also, having collected power-ups to function as a shield seems like a nice mechanic.

Resources