https://github.com/akaiko1/aurora

Galaga-like shooter made with GoLang and Ebiten

https://github.com/akaiko1/aurora

Science Score: 13.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (13.6%) to scientific vocabulary
Last synced: 10 months ago · JSON representation

Repository

Galaga-like shooter made with GoLang and Ebiten

Basic Info
  • Host: GitHub
  • Owner: Akaiko1
  • Language: Go
  • Default Branch: master
  • Homepage:
  • Size: 9.21 MB
Statistics
  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • Open Issues: 0
  • Releases: 3
Created about 2 years ago · Last pushed 12 months ago
Metadata Files
Readme

README.md

Aurora: An Ebitengine Shooter

Overview

Aurora is a simple 2D shooter game built with Golang and the Ebitengine game library. This project is currently in early development with basic gameplay features implemented.

Game Demo

Current Features

  • Basic top-down shooter mechanics
  • Player character with movement and shooting
  • Extensible weapon system with 4+ weapon types:
    • Normal: 5 projectiles, disappear on hit, balanced stats
    • Piercing: 2 projectiles, pierce through enemies, faster speed
    • Rapid Fire: 8 projectiles, very fast firing, thinner bullets
    • Heavy Cannon: 1 projectile, slow but powerful, large bullets
  • Simple enemy AI with random movement patterns
  • Optimized collision detection with spatial partitioning
  • Grazing system for scoring points by narrowly avoiding enemy bullets
  • Simple level progression with phases and scenarios
  • Togglable hitbox display (press B)
  • Background tiles with grass/no-grass variants

Getting Started

Prerequisites

To run this game, you need to have Go installed on your machine. You can download it from the official Go website.

Installation

  1. Clone the repository:

    sh git clone https://github.com/Akaiko1/aurora cd aurora

  2. Install the dependencies:

    sh go mod tidy

Running the Game

To run the game, execute the following command in your terminal:

sh go run main.go

Controls

  • Arrow Keys: Move your character
  • Space: Shoot projectiles
  • B: Toggle hitbox display
  • 1: Normal weapon (5 projectiles, balanced)
  • 2: Piercing weapon (2 projectiles, pierce enemies)
  • 3: Rapid Fire weapon (8 projectiles, very fast)
  • 4: Heavy Cannon weapon (1 projectile, slow but powerful)

Project Structure

  • main.go: The main entry point of the game
  • internals/game/: Contains game logic and rendering code
  • internals/entities/: Player, enemy, and projectile definitions
  • internals/physics/: Simple collision detection with hitboxes
  • internals/events/: Event handlers for game objects
  • internals/inputs/: Image and font loading utilities
  • internals/config/: Game constants like screen size and speeds
  • assets/: Game sprites and fonts

Planned Features

  • More enemy types and attack patterns
  • Power-ups and special abilities
  • Score system improvements
  • Sound effects and music
  • Menu system and game settings

Contributing

Contributions are welcome! Feel free to open issues or submit pull requests with improvements or bug fixes.

License

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

Owner

  • Name: Akaiko
  • Login: Akaiko1
  • Kind: user

GitHub Events

Total
  • Release event: 2
  • Push event: 13
  • Create event: 1
Last Year
  • Release event: 2
  • Push event: 13
  • Create event: 1

Dependencies

go.mod go
  • github.com/ebitengine/gomobile v0.0.0-20240518074828-e86332849895
  • github.com/ebitengine/hideconsole v1.0.0
  • github.com/ebitengine/purego v0.7.0
  • github.com/go-text/typesetting v0.1.1-0.20240325125605-c7936fe59984
  • github.com/hajimehoshi/ebiten/v2 v2.7.4
  • github.com/jezek/xgb v1.1.1
  • golang.org/x/image v0.16.0
  • golang.org/x/sync v0.7.0
  • golang.org/x/sys v0.20.0
  • golang.org/x/text v0.15.0
go.sum go
  • github.com/ebitengine/gomobile v0.0.0-20240518074828-e86332849895
  • github.com/ebitengine/hideconsole v1.0.0
  • github.com/ebitengine/purego v0.7.0
  • github.com/go-text/typesetting v0.1.1-0.20240325125605-c7936fe59984
  • github.com/go-text/typesetting-utils v0.0.0-20240317173224-1986cbe96c66
  • github.com/hajimehoshi/bitmapfont/v3 v3.0.0
  • github.com/hajimehoshi/ebiten/v2 v2.7.4
  • github.com/jezek/xgb v1.1.1
  • golang.org/x/image v0.16.0
  • golang.org/x/sync v0.7.0
  • golang.org/x/sys v0.20.0
  • golang.org/x/text v0.15.0