Skip to content

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Shmups Game

A classic shoot 'em up (shmup) game where players control a spaceship, dodge enemies, and shoot projectiles. This is a browser-based game built with JavaScript.

Description

This game is a modern take on the classic arcade shoot 'em up genre. Players control a spaceship that can move in all directions and shoot projectiles to destroy enemy ships. The game features smooth controls, particle effects, and increasing difficulty as the player progresses.

Project Structure

Shmups/
├── index.html              # Main HTML file
├── script.js              # Main game logic
├── fighterJet.js          # Player spaceship class
├── drone.js              # Enemy drone class
├── updateCustomProperty.js # Utility functions
├── server.py             # Enhanced Live Server
├── assets/               # Game assets (images, sounds)
├── drones/              # Enemy drone assets
├── LICENSE             # MIT License
└── README.md          # This file

Features

  • Smooth player movement with mouse control
  • Dynamic enemy spawning system
  • Projectile mechanics with particle effects
  • Collision detection
  • Score tracking and best time saving
  • Browser-based gameplay
  • Enhanced local server with image caching

Requirements

  • A modern web browser (Chrome, Firefox, Safari, or Edge)
  • Python 3.x (for running the enhanced Live Server)

Running the Game

The game includes an enhanced Live Server with improved image handling and caching. Here's how to run it:

  1. Make sure you have Python 3.x installed on your system
  2. Open a terminal/command prompt in the game directory
  3. Run the enhanced Live Server:
    python server.py
  4. The server will:
    • Start automatically on port 5500
    • Open your default browser to the game
    • Handle image caching for better performance
    • Support smooth continuous gameplay

Important Notes

  • The game works best in modern browsers
  • If the game doesn't start automatically, manually open http://localhost:5500 in your browser
  • Make sure no other service is running on port 5500
  • For optimal performance, use Chrome or Firefox

Server Features

  • Improved image asset handling
  • Automatic browser caching for better performance
  • Chunked file transfer for stability
  • Automatic port reuse handling
  • Enhanced error reporting

How to Play

  • Move your mouse to control the spaceship
  • Click to shoot at enemies
  • Avoid enemy ships
  • Try to survive as long as possible
  • Your best time is saved automatically

Troubleshooting

If you encounter any issues:

  1. Server Issues:

    • Make sure no other service is using port 5500
    • Try stopping and restarting the server
    • Check terminal for any error messages
  2. Game Issues:

    • Clear your browser cache
    • Refresh the page
    • Make sure all game assets are in their correct folders
    • Check browser console for any error messages
  3. Performance Issues:

    • Close other browser tabs/windows
    • Restart your browser
    • Make sure your browser is up to date
  4. Image Loading Issues:

    • Verify all image files are in the drones/ directory
    • Check file permissions
    • Try restarting the server

Development

If you want to modify the game or run it in VSCode:

  1. Open the project in VSCode
  2. Install the "Live Server" extension
  3. Right-click on index.html and select "Open with Live Server"

This will provide similar functionality to the included Python server.

License

This project is licensed under the MIT License - see the LICENSE file for details.

About

Modern arcade shoot 'em up: control a fighter jet, move freely, shoot enemies, with smooth controls, particle effects, and increasing difficulty.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages