Skip to content

bemusic/bemuse

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
Nov 28, 2022
Oct 28, 2021
Oct 23, 2022
Nov 28, 2022
Dec 21, 2014
Oct 22, 2022

Bemuse 〜beat☆music☆sequence〜

open-source web-based online rhythm game

CircleCI Codecov twitter
Quality Gate Status Maintainability Rating
Docs

Bemuse is an open-source, online, web-based rhythm game. It plays songs in BMS format (See: Introduction to BMS).

It is recommended to play this game on Google Chrome.

Table of contents:

Video Demo

Video Demo

Quick Tour

Music selection

  • You can play online songs instantly in your browser.

  • You can play custom songs by dragging a folder containing BMS files into this screen. There are over 5,000 songs published in BMS format by the community worldwide. You can find them using BMS Search.

  • There’s an online internet ranking system. You can compete with other players and see your rank online.

  • It has an insane tutorial.

Gameplay

  • Keyboard mode (7-keys). Play along the music with your keyboard.

  • Fully key-sounded. Each note has its own sound. The music will be affected by your game play.

  • Player together with friends using party mode. It helps you start the game at the exact same time.

  • Multiple difficulties. Each song has multiple difficulties to accommodate every player skill levels.

  • Adjustable speed. You can adjust the speed (spacing) of the notes to make it easy-to-sightread. This does not affect the speed of the song; lowering the speed causes notes to become more dense on-screen.

  • Scoring and grading system. Master the song to get the S grade (score over 500000).

Gameplay

  • BMS mode (7-keys + turntable). You can play using an IIDX controller or MIDI controller.

  • HD video support. Some songs will have a background animation in high-definition (720p).

  • Adjustable play area size. If the gameplay area is too long, you can adjust the cover it to make the play area more easy-to-sightread.

  • Early/Late indicator. Bemuse will tell you if you press the note too early or too late.

Options

  • Adjustable panel position. You can position the note panel on either side of the screen, or put it at the center.

  • Adjustable turntable position. You can put turntable on the left or on the right (BMS mode only).

  • Audio latency compensation. Some systems may have audio latency. Bemuse contains a calibration system to compensate for the audio latency.

Play now at https://bemuse.ninja/.

Technology

  • The web application is powered by React and Redux.

  • The game engine is powered by PixiJS.

Development

Install Node.js

# Install Rush
npm install --global @microsoft/rush

# Clone Bemuse
git clone https://github.com/bemusic/bemuse.git

# Enter the main repository
cd bemuse

# Install the dependencies
rush update

# Prepare all sub-projects
rush build --to-except bemuse

# Start development server
rush dev

For more information, check out the Developer Guide.

Note: Online ranking features are not available.

Sub-projects

This repository holds the code for other sub-projects, which are available for use on npm.

Project name Badge Description
bms npm JavaScript BMS parser
bmson npm JavaScript bmson parser
bemuse-tools npm Tools for hosting your own music server.
bemuse-indexer npm Library for scanning a directory for BMS/bmson files and generate a metadata.
bemuse-notechart npm Library for loading a notechart for use in game.

How to contribute

Our amazing contributors🌟

License

AGPLv3. Note that this license only applies to the main Bemuse project, not the sub-projects, which has its own license terms (mostly MIT).