home about projects profile
互動與遊戲 2026 互動與遊戲
回頭四按
// SYS 官方專案 現場展覽

回頭四按

載入中...

by bearbear

// project_overview

--err--

幫這個專案投票!
// project_details

Python

Pygame-CE

Librosa

Numpy


關於本作

《回頭四按》是一款4軌下落式節奏遊戲。
有別於傳統音樂遊戲需要耗費大量人力進行人工製譜,本作搭載了強大的「頻譜特徵解析引擎」,只要丟入任何 .mp3 音樂檔或貼上YouTube網址,遊戲就能自動生成最契合音樂節奏與旋律的完美譜面!

實體按鈕

核心特色

1. 全自動動態製譜

  • yt-dip 自動抓取youtube影片
  • Librosa 頻譜分析:遊戲背景運作著強大的 librosa 音訊處理引擎。
  • 雙模式智慧辨識:自動分析歌曲的低頻震幅與高頻旋律,智慧判斷歌曲是「節奏導向」還是「人聲導向」,藉此自動調整抓拍的敏感度。
  • 長按音符自動生成:不只有單點 (Tap),演算法還會根據音樂節拍間的空隙,自動演算並生成長按音符。

2. 動態音高打擊音效

  • Zero-Latency 內建合成器:為了達成 120 FPS 的零延遲打擊體驗,我們捨棄了外部 .wav 檔案,直接在遊戲啟動時利用 Numpy 運算 Sine 波形,即時合成了 12 個半音的電子打擊音色。
  • Chroma STFT 旋律同步:在製譜階段,AI 會同步計算整首歌的「半音階頻譜能量」。當玩家在遊戲中擊中音符時,遊戲會自動發出與背景音樂當下和弦完全相同的音高,讓打擊音效完美融入原曲!

3. 街機按鈕:有別於鍵盤和觸控的操作體驗

  • 透過arduino控制器讀取四顆按鈕狀態,利用pyserial建立連線。

玩法說明

  1. 選擇歌曲:在選單介面使用四個實體按鈕選擇音樂。
  2. 開始遊戲:按下按鈕開始解析並進入遊戲。
  3. 打擊操作:
    • 當音符落下並與底部的「判定線」重合時,按下對應的鍵盤按鍵!
    • 普通音符:準確點擊。
    • 長條音符:長按對應按鍵直到音符尾端通過。
  4. 生命值 (HP) 系統:
    • 漏失音符 (MISS) 會大幅扣除血量。
    • 連續擊出 PERFECT 或 GOOD 可恢復血量並累積高分 Combo!

技術棧

本作由純 Python 打造,完全開源且高度可擴展:

  • 核心框架:python 3.14+ / pygame-ce (針對效能進行了深度優化)
  • 音訊解析:librosa / numpy
  • 硬體整合:支援透過 pyserial 連接 Arduino 等外部實體街機控制器

ScreenShots

// Comments

載入留言…
// similar_projects

字靈師

// NO_SUBTITLE

互動與遊戲