Skip to content
AhmedNAgy25Public

About

this is our computer graphics Project using java

Resources

Stars

5 stars

Watchers

1 watching

Forks

Latest commit

 

History

34 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

EchoSteps

  • EchoSteps is a 2D Java-based arcade game built using the Swing library. In this game, the player navigates a grid-based map to collect coins while avoiding ghosts. With each level, the difficulty increases by introducing more ghosts and faster challenges. The game features smooth animations, sound effects, and a clean retro UI.
demo.mp4

Project Structure

├── src/
│   └── echosteps/
│       ├── Main.java              # Entry point of the game
│       ├── GamePanel.java         # Main game panel and logic
│       ├── GameWindow.java        # Game window management
│       ├── Player.java            # Player character implementation
│       ├── Ghost.java             # Ghost entity implementation
│       ├── Coin.java              # Collectible items
│       ├── SoundManager.java      # Sound system management
│       └── GameConstants.java     # Game constants and configurations
├── assets/                        # Game assets and resources
├── sounds/                        # Sound files
└── .gitignore                     # Git ignore configuration

Features

Player_Name

Levels

  • Interactive gameplay with sound-based mechanics
  • Player movement and controls
  • Ghost entities with unique behaviors
  • Coin collection system
  • Sound management system
  • Custom game window and panel implementation

Game_Over

Under the Hood

  • Manual game loop using Timer and event-driven updates

  • Custom rendering using Graphics2D and double buffering

  • Object-oriented structure with encapsulated game entities

  • Simple and extendable architecture for future enhancement

Requirements

  • Java Development Kit (JDK) 8 or higher
  • Java Runtime Environment (JRE)

How to Run

This project includes a Makefile to simplify common tasks. Below are the available commands:

Makefile Commands

The Makefile automates building, running, and cleaning the project.

  • make build
    Compiles all Java source files from src/ into the build/ directory and copies all assets from resources/ into build/.

  • make run
    Runs the main class echosteps.Main using the compiled files and resources in build/.

  • make clean
    Deletes the build/ directory and all compiled files.

  • make restart
    Runs clean, then build, then run in sequence to rebuild and start the project fresh.

Usage

From the project root, run any of the commands, for example:

make restart

Development

The game is built using Java Swing for the graphical interface and includes custom implementations for:

  • Game mechanics
  • Sound management
  • Entity behaviors
  • Collision detection
  • Window management

Team Members

Thanks to these amazing people for their contributions:

  • [Ahmed Nagy]
  • [Abdelrahman Elaraby]
  • [Mohamed Abdullah]
  • [Ali Maher]
  • [Fekry Ahmed]
  • [Abdelrahman Mostafa]
  • [Mazen Abdelrasheed]

About

this is our computer graphics Project using java

Resources

Stars

5 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages