如何製作 osu! mania beatmap
從 timing 到完成的 .osz,一步步的作譜教學。
osu! mania beatmap 是一組分布在各軌道上的音符,放在 timing 格線上,讓按下它們的感覺就像在演奏這首歌。製作譜面是一門手藝:大部分的工作是仔細聆聽,並決定玩家應該感受到什麼。這篇教學會依照 mapper 實際的作業順序,帶你走完整個流程。兩種 osu! 客戶端——lazer 或 stable——都適用,因為兩者都內建 beatmap 編輯器。想製作 osu! standard 譜面?請看如何製作 osu! beatmap。
1. 準備工具
- 歌曲。音質良好的 .mp3 或 .ogg,最好是你想做的完整版本。你必須有權使用它。
- osu!,免費。如果你還沒有,請看 osu! 新手。
- 花點時間熟悉這首歌。在放下任何音符之前,先聽好幾遍。弄清楚段落在哪裡轉換、鼓在做什麼,以及你希望玩家跟著哪些聲音打。
- 選用:一張背景圖片(常見尺寸為 1920×1080)。
開始時,打開編輯器,用你的音訊檔建立一張新的 beatmap。設定畫面會要求填入歌名、演出者,以及你作為作者(creator)的名字——你可以現在填,也可以最後再填。
2. 先從 timing 開始
Timing 要最先處理,因為每個音符都會對齊到它上面。格線錯了,上面的每個音符就都是錯的,再好的配置也救不了這張譜面。Timing 有兩個部分:
- BPM——每分鐘有幾拍,決定格線的間距。
- Offset——格線所依據的第一拍的精確時間點,單位是毫秒。
這兩者都是在編輯器裡加入 timing 點(紅線,也稱為 uninherited)來設定。用節拍器來檢查:把整首歌從頭播到尾,聽聽節拍器的聲音是否一直在拍子上。如果格線一開始對、到最後卻越來越偏,代表 BPM 有一點誤差;如果格線一直固定提早或延遲,代表 offset 不對。
會變速的歌需要在每個速度改變的地方加一條新的紅色 timing 點。現場錄音和較老的歌常常會有些微的速度飄移,這類歌最難抓 timing,值得找人幫忙。綠色(inherited)的點則不一樣:它們不會改變格線,而是改變捲動速度和 hitsound 音量。
更深入的說明以及查出 BPM 的實用方法,請見 osu! 的 BPM 與 offset 說明。
3. 決定鍵數與難度
鍵數——也就是軌道數——在 beatmap 的難度設定中設定。4K 和 7K 是最多人玩的;5K、6K、8K 和 9K 的玩家較少,但都有忠實的族群。選你自己玩的鍵數,因為你得親自測試這張譜面。
目標難度主要取決於音符密度和配置的要求程度。osu! 會為每個難度計算星數,但星數是結果,不是設定——你是透過自己做出來的內容來控制它。Overall Difficulty(OD)設定決定判定區間有多嚴格,HP 則決定血條下降的速度。
難度梯度。一組 mapset 通常包含好幾個逐步提升的難度,讓不同程度的玩家都能玩這首歌。很多 mapper 會先做最難的難度,把歌曲的結構定下來,再往下簡化。每往下一級,都應該感覺是同一首歌、只是音符更少更簡單——而不是另一種詮釋。
4. 跟著音樂配置
每個音符都應該是因為音樂裡的某個東西才存在。在做每一段之前,先決定玩家要跟著什麼打:
- 鼓——大鼓和小鼓給了段落脈動,也是最常被做成音符的東西。
- 旋律和人聲——通常是最好認的一層;適合較平緩的段落,也能讓譜面聽起來就是這一首歌。
- 和弦與重音——強拍、銅鈸和和弦轉換的地方,放和弦(同時好幾個音符)會很自然。
- 延續的聲音——長音、拉長的人聲和 pad 音色,正是長條的用武之地。
讓強度配合歌曲:安靜的段落要輕一點,歌曲最強的部分也應該是譜面最激烈的部分。使用 beat snap divisor(拍點細分)來精確放置音符——1/4 能應付大部分的音樂,三連音需要 1/3 或 1/6,1/8 則用於非常快的段落。不要用比音樂本身更細的細分。
5. 組合配置
配置(pattern)是音符在各軌道間的排列方式。osu! mania 常見的基本元素:
- Rice(單點)——單次敲擊的音符,是大多數譜面的基礎。
- 長條(LN)——要按住一段時間、在結尾放開的音符。按下和放開都會判定,所以每個長條的尾端都應該落在音樂裡的某個東西上。
- Jack(縱連)——同一軌上的連續音符。快速的 jack 很吃體力;請用在音樂重複同一個聲音的地方,不要拿來填空。
- 和弦——同時出現的好幾個音符。依重音的大小決定和弦的大小:重的打擊可以配大和弦,輕的就不該。
- Stream 與 trill——在軌道間移動的快速連打,以及兩軌之間的交互。
最重要的是讓配置好讀。相似的聲音應該配上相似的配置,讓玩家能靠聽來學會這張譜面。避免音樂沒要求的彆扭手部動作,並保持難度一致——在一張原本簡單的譜面裡突然出現一個特別難的配置,是很常見的錯誤。
6. 測試與修改
- 實際玩玩看。使用編輯器的測試模式,把整張譜面玩完,而不只是你剛做完的那一段。
- 邊玩邊再檢查一次 timing。小小的 offset 誤差,在遊玩時比在編輯器裡看更容易感覺出來。
- 找出彆扭的配置——任何讓你卡住、但原因不是難度的地方。
- 檢查一致性——整首歌之間,以及同一組的各個難度之間。
- 請別人給意見。其他玩家會注意到你注意不到的地方,尤其是在你自己的譜面上。
7. 完成並匯出 beatmap
在設定畫面填好 metadata——歌名、演出者、作者、來源和標籤——有背景圖片的話也加上去。接著從編輯器把 mapset 匯出成 .osz,也就是標準的 beatmap 封裝檔:音訊、背景和每個難度都在同一個檔案裡。開啟 .osz 就會把它匯入 osu!——如果沒有出現,請看如何安裝 beatmap。
如果你想在 osu! 網站上分享這張圖,請先閱讀 osu! mania 的 Ranking criteria 以及 osu! wiki 的作譜指南。
8. 用 AI 生成一個起點
手工做出一整組難度梯度要花好幾個小時,而大多數歌曲根本從來沒人做過。AI 生成是取得譜面的另一種方式:不是從空白的編輯器開始,而是從一組完整、可以玩的 mapset 開始。以下是使用本站生成器 ManiaGAI 的流程:
- 在 ManiaGAI 生成器上上傳歌曲,或貼上 osu! beatmap 連結或 mapset ID 來使用該 mapset 的歌曲。Timing——BPM 和 offset,包括變速——會自動偵測。
- 選擇鍵數(4K–9K)和難度,難度從 ★1 往上排。
- 如果你想,可以調整每個難度的風格,或保留預設值——預設值是該鍵數與星數的典型數值。
- 生成。幾秒內你就會拿到整組 mapset,合在一個 .osz 裡。
- 試玩看看——如果想把它變成自己的作品,就在 osu! 編輯器裡打開它,運用這篇教學的所有內容重新修改。
一首歌可能已經有 osu! beatmap,但也許沒有 4K 譜面、沒有你想要的難度,或根本沒有 osu! mania 譜面。貼上 beatmapset 連結,就能把這首歌當作新 ManiaGAI mapset 的起點。匯入的 mapset 只提供歌曲;ManiaGAI 會生成全新的譜面——不會轉換或複製原有的譜面。
它如何運作——timing 模型、訓練資料,以及我們如何衡量 timing 準確度——都記錄在技術頁面上。只重新生成某一段、保留譜面其餘部分的功能已在規劃中,但目前還無法使用。
9. AI 無法取代作譜的判斷
技術好的人類 mapper 仍然能做出更好的譜面。作譜是一種詮釋:決定哪個聲音重要、歌曲哪裡應該感覺沉重,以及這張譜面想表達什麼。當你的另一個選擇是完全沒有想要的譜面時,AI 生成就派得上用場——沒人做過的歌、沒人做過的鍵數或難度,或是需要一份草稿作為起點。如果你分享的譜面是由 AI 生成或輔助完成的,請說明清楚,不要把它當成手工作譜的作品來呈現。