Bullet Hell

Saved games stay in this browser only.

About the game

Bullet Hell is a vertical shooter in the classic "bullet hell" style: you are a small blue ship at the bottom of the screen, and from the top come ships that fill the air with patterns of white bullets. You shoot back, and you survive by slipping through the gaps. The game has six levels, each with its own mix of enemies, and bosses close some of them. Enemies drop items when they fall: points, double points, a second gun, health and bombs.

The status panel at the bottom of the game shows your health as red squares and your bombs as green squares, and the circle on the right shows how ready the time slowdown is. A panel on the right of the page keeps the level, the score and the score multiplier, and lists the keys.

Amelia Clarke (selenebun) made it in 2020 with HTML, JavaScript and the p5.js library. The ships, the stars and the bullets are all drawn by the code on a canvas; the only file the game loads is the Source Code Pro font. It has no sound.

Playing it here

Click Play, then click once inside the game so it gets the keyboard. Hold the fire key while you move: the ship does not shoot on its own. The game is made for a keyboard with two hands, and it is easier on a large screen, where the whole play field fits at once. There is no saved progress.

Controls

Arrow keys layout WASD layout Action
arrow keys W A S D move
Z B fire (hold)
X N slow down time for a few seconds (then it recharges)
C M use a bomb: clears every bullet on the screen
P P pause

A few things worth knowing

Slowing time is your best tool. One press of X slows the whole game down for a couple of seconds, bullets and enemies included, so you can pick a path through a pattern that is impossible at full speed. Then it needs time to recharge, and the circle at the bottom shows how far along it is.

Keep one bomb for the boss. A bomb wipes every bullet from the screen, but only the bullets. When a boss fills the air, it is better to use it than to lose a point of health.

Collect the items. Blue pick-ups are 100 points and pink ones are 200; red ones restore health, green ones are bombs and yellow ones give you a second gun. Items drop where an enemy falls, so stay close to the ones you shoot down.

Credits and licence

Bullet Hell was written by Amelia Clarke and is released under the MIT licence. It uses p5.js 0.6.0 (LGPL-2.1, the Processing Foundation and contributors), which is served unchanged: its source code is hosted next to the game, and its licence is linked from this page. The font is Source Code Pro (Adobe, SIL Open Font License 1.1). Nothing was changed in the game.