Skip to content

leonis0585/BananaGame

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🎸 Bananana Rhythm Game - Developer Guide 🎵

📌 Overview

The Bananana Rhythm Game is a music-based rhythm game where players hit notes in sync with the beat to earn bananas 🍌. This short guide is intended for developers working on the game, providing insights into its architecture, key components, and setup instructions.

⚙️ Game Mechanics

🎼 Note System

  • Notes are generated based on predefined patterns. For example, in /data/default/easy.json, each row represents a sequence of notes: 1 indicates a note, while 0 represents the absence of a note in that row.
  • Each note corresponds to a key press (A, S, D, F, G) or on for mobile devices tap on the screen.
  • Notes travel down the fretboard towards the hit zone.
  • Timing accuracy determines the score.

🏆 Scoring System

  • Hit Notes ✅ → Adds points & increases streak.
  • Miss Notes ❌ → Reduces score & breaks streak.
  • Multiplier System ✖ → Consecutive correct hits increase score multipliers.

🎮 Game Modes

  • Classic Mode: Predefined note patterns.
  • Remix Mode: Allows playing remixed versions of the song.
  • Record Mode: Allows players to create and publish note sequences.

🛠 Key Technologies Used

  • Three.js for 3D rendering.
  • Web Audio API for sound processing.
  • Node.js for backend logic.

🔧 Setup & Development

📥 Installation

  1. Install dependencies:
    npm install
  2. Run the development server:
    npm run start
  3. Open the game in your browser at http://localhost:3080.

Here’s an improved and expanded version of your Game TODO List, providing more clarity and detail:


Game TODO List

Recording Mode Improvements

  • Ensure Recording Mode functions correctly by fixing any bugs and inconsistencies.
    • Implement support for uploading recordings from a JSON file, allowing developers to import custom recordings seamlessly.
    • Improve the built-in recording editor to modify and fine-tune recordings directly within the mode, enhancing user flexibility.
    • Create a default set of recordings tailored for each difficulty level (Easy, Medium, Hard) to provide players with a starting point and a smoother gameplay experience.

Game Gauge & Multiplier Fixes

  • Fix the game gauge multiplier behavior so that it spins correctly when moving backward instead of resetting in a full circular motion when a multiplier is lost.
  • Adjust the positioning of the game gauge to ensure it displays properly across different screen resolutions and aspect ratios, preventing visual misalignment.

Game Balance & Mechanics Adjustments

  • Fine-tune the game-difficulty balance by determining a fair number of missed notes before the player fails, ensuring a challenging but enjoyable experience.
  • Improve hitbox accuracy and tapping sensitivity on mobile and touch devices, ensuring precise and responsive note detection.
  • Implement multi-line (holding) notes, allowing players to hold down a key for several seconds instead of requiring multiple taps, enhancing note variety and complexity.

UI & Performance Optimization

  • Optimize UI scaling to ensure smooth and consistent visuals across various screen sizes, including mobile devices and ultra-wide monitors.
  • Fix the button light-up animation when pressing on mobile/touch devices, ensuring correct visual feedback when interacting with buttons.
  • Investigate ways to reduce memory usage by optimizing assets, such as:
    • Reusing icons instead of duplicating them.
    • Removing icons from the fretboard if they are already in use elsewhere, preventing unnecessary resource consumption.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors