Skip to content

Repository files navigation

Bullet Hell

A classic bullet hell style game built from scratch using HTML, CSS, and JavaScript. The objective is to survive as long as possible by dodging an ever-increasing barrage of projectiles from enemy turrets. Your score is based on your survival time, with high scores saved locally in your browser.

Live Demo

bullet hell gameplay gif

Features

  • Endless Gameplay: Survive as long as you can against waves of enemies.
  • Dynamic Difficulty: The game gets harder over time, with more enemies, faster projectiles, and complex attack patterns.
  • Two Enemy Types: Face off against Radial Turrets with area-denial attacks and Aimed Turrets that target the player directly.
  • High Score System: Compete against yourself with a persistent high score board saved via localStorage.
  • Responsive Design: The game canvas and UI adapt to any screen size.
  • Visual Effects: Features particle explosions and smooth animations powered by requestAnimationFrame.

Built With

  • HTML5
  • CSS3
  • JavaScript (ES6+)
  • Webpack

Getting Started

To get a local copy up and running, follow these simple steps.

Prerequisites

You'll need Node.js (which includes npm) and Git installed on your machine.

Installation & Usage

  1. Clone the repository:

    git clone https://github.com/jsueling/bullet-hell.git
  2. Navigate to the project directory:

    cd bullet-hell
  3. Install NPM packages:

    npm install
  4. Start the development server:

    npm start

    This will open the game in your default browser.

  5. To create a production build:

    npm run build

    This bundles the application into the /dist directory, ready for deployment.

Acknowledgements

  • The fullscreen toggle implementation is adapted from W3Schools.

About

Bullet hell themed game built with HTML, CSS, Javascript and bundled with Webpack.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages