Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1,780 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

bmz-player

Next-Generation BMS Player (WIP)

beatoraja の後継を目指しています。 多くの機能は未実装ですが、まずは開発者自身が快適にプレイできることを目指して開発しています。

Supported OS

  • Windows
  • macOS
  • Linux (probably works)

Supported Format

  • BMS (5K / 7K / 10K / 14K)
  • PMS (9K)
  • Qwilight / UE-style BMS (4K / 6K / 8K)
  • Base 62 BMS (62進数BMS)
  • BMSON

Supported Skin

  • beatoraja json skin
  • beatoraja lua skin
  • beatoraja csv skin

Features

  • score database migration from LR2 / beatoraja
  • auto-adjust (自動判定調整)
  • normalizing volume per-chart (譜面ごとの自動音量調整)
  • internet ranking (BMZ IR)
  • selectable rule-mode (beatoraja / LR2oraja / DX MODE)
  • advanced selectable ln-mode (AUTO(LN) / AUTO(CN) / AUTO(HCN) / FORCE(LN) / FORCE(CN) / FORCE(HCN))
  • on-demand preview generation
    • #PREVIEW 定義や preview.wav(.ogg) がない曲のプレビューを再生することができます
  • Discord Rich Presence
  • OBS WebSocket control integration

Caution

Don't use this application to play non-permitted copyrighted contents.

Recommended Skins

data_dir の skins フォルダに配置してください。

Clone

Bundled skin assets are managed as Git submodules. Clone with submodules, or initialize them after cloning.

git clone --recurse-submodules https://github.com/hyrorre/bmz-player.git
git submodule update --init --recursive

Currently bundled submodules:

  • data/skins/Rmz-skin — BMZ bundled fork of Rm-skin. See the skin repository's README and _license/ directory for license details.
  • data/skins/mz-select — BMZ bundled copy of m-select. See the skin repository's readme.txt and license/ directory for license details.
  • data/skins/Luxez-Flat — BMZ bundled fork of Luxez-Flat. See the skin repository's readme.txt and font_license/ directory for license details.

System Requirements

  • Windows: Windows 10 or higher is natively supported via DirectX 12. Older versions of Windows may require Vulkan drivers.
  • macOS: macOS 10.13 High Sierra or newer is required to utilize Apple's Metal API.
  • Linux: Vulkan support is required. You must ensure you have the correct Vulkan drivers installed (e.g., the proprietary drivers for your dedicated GPU or mesa-vulkan-drivers for Intel/AMD graphics).

How to build

Install latest graphics driver.

Use the same version of FFmpeg as specified in Cargo.toml

Windows (stable-x86_64-pc-windows-msvc)

Install scoop beforehand. (or manually install vcpkg)

# Install vcpkg
scoop install vcpkg
vcpkg integrate install

# Install rust
winget install Rustlang.Rustup llvm.llvm
rustup toolchain install stable-msvc
rustup default stable-msvc

# Install dependencies
vcpkg install ffmpeg:x64-windows

cargo build
cargo run

macOS (stable-aarch64-apple-darwin)

Install Homebrew beforehand.

# Install rust
brew install rust rustup
rustup toolchain install stable

# Install dependencies
brew install ffmpeg

cargo build
cargo run

Linux (stable-x86_64-unknown-linux-gnu)

Example in fedora

# Install rust
sudo dnf update -y
sudo dnf install -y rustup
rustup-init
source ~/.bashrc

# Install dependencies
sudo dnf install -y gcc g++ make clang llvm git ffmpeg-free ffmpeg-free-devel openssl-devel alsa-lib-devel rust-libudev-devel fontconfig-devel pipewire pipewire-pulseaudio wireplumber alsa-utils alsa-plugins-pulseaudio google-noto-sans-cjk-fonts google-noto-sans-cjk-vf-fonts

cargo build
cargo run

Roadmap

  • more beatoraja-compatible features
  • battle mode
  • rec mode (譜面動画作成モード)
  • practice mode
  • Arena Mode
  • i18n (en / ko / zh-CN / zh-TW / zh-HK)
  • WASAPI exclusive
  • ギミック系BMSへの対応
  • non stop mode

Out of Scope (but welcome your contributions)

  • 24K / 48K BMS
  • 18K PMS (9K DOUBLE PLAY)
  • LR2-style csv skin
  • More features like LR2

About

Next-Generation BMS Player (WIP)

Topics

Resources

Stars

12 stars

Watchers

1 watching

Forks

Releases

Used by

Contributors

Languages