วิธีทำ beatmap osu!
คู่มือทำแมพ osu! standard ตั้งแต่ไทม์ไลน์ว่างเปล่าจนได้ไฟล์ .osz ที่เสร็จสมบูรณ์
beatmap ของ osu! standard คือชุดของ hit circle, slider และ spinner ซึ่งแต่ละชิ้นวางอยู่ ณ จังหวะหนึ่งในเพลงและที่ตำแหน่งหนึ่งบน playfield แมพที่ดีให้ความรู้สึกเหมือนเพลง: คุณคลิกตามบีตที่ได้ยิน และเคอร์เซอร์เคลื่อนที่ไปตามการไหลของเพลง คู่มือนี้พาไปทีละขั้นในการทำแมพใน osu! editor ถ้าคุณทำแมพ osu! mania ดูที่วิธีทำ beatmap osu! mania
1. สิ่งที่ต้องมี
- เพลง ไฟล์ .mp3 หรือ .ogg คุณภาพดีของเวอร์ชันที่คุณอยากทำแมพ ตัดหรือแก้ไขเสียงให้เรียบร้อยก่อนเริ่ม: ถ้าแก้ทีหลัง ออบเจกต์ทุกชิ้นจะเลื่อนตำแหน่งไปหมด
- osu! ซึ่งฟรี ถ้ายังไม่มี ดูที่ มือใหม่ osu!
- เวลาฟังเพลงสักหน่อย ฟังหลาย ๆ รอบก่อน รู้ว่าอินโทร ท่อนเวิร์ส ท่อนฮุก และช่วงเงียบอยู่ตรงไหน และคุณอยากให้แต่ละท่อนให้ความรู้สึกอย่างไร
- ไม่บังคับ: ภาพพื้นหลัง (ขนาดที่ใช้กันทั่วไปคือ 1920×1080)
เปิด editor แล้วสร้าง beatmap ใหม่จากไฟล์เสียงของคุณ หน้าตั้งค่าจะถามชื่อเพลง ศิลปิน ชื่อของคุณในฐานะผู้สร้าง และชื่อระดับความยาก ทั้งหมดนี้แก้ไขทีหลังได้
2. ทำความรู้จัก osu! editor
editor แบ่งออกเป็นหลายหน้าจอ:
- Compose — ที่สำหรับวางและย้าย hit object คุณจะใช้เวลาส่วนใหญ่ที่นี่
- Timing — timing point: BPM และ offset ของเพลง รวมถึงการเปลี่ยนแปลงที่เพิ่มทีหลัง เช่น ความเร็ว slider และระดับเสียง hitsound
- Song setup — metadata (ชื่อเพลง ศิลปิน ผู้สร้าง แท็ก) การตั้งค่าความยาก และสีคอมโบ
- Design — สตอรีบอร์ด คุณทำแมพให้เสร็จสมบูรณ์ได้โดยไม่ต้องแตะส่วนนี้เลย
ใน osu!stable ปุ่ม F1–F4 ใช้สลับระหว่าง Compose, Design, Timing และ Song setup ส่วน F5 เริ่มเทสต์เล่นจากตำแหน่งปัจจุบัน editor ของ osu!lazer มีองค์ประกอบเดียวกันแต่จัดเลย์เอาต์ในแบบของตัวเอง ดูรายการคีย์ลัดทั้งหมดได้ที่รายการคีย์ลัดในวิกิ osu!
3. ตั้งไทมมิ่ง: BPM และ offset
ไทมมิ่งต้องมาก่อน เพราะออบเจกต์ทุกชิ้นสแนปอยู่กับมัน ถ้ากริดผิด circle ทุกตัวบนกริดจะเร็วหรือช้าไปเล็กน้อย และต่อให้วางดีแค่ไหนก็แก้ไม่ได้
- BPM — จำนวนบีตต่อนาที ซึ่งกำหนดระยะห่างระหว่างขีดของกริด
- Offset — เวลาที่แน่นอนเป็นมิลลิวินาทีของบีตแรกที่กริดเริ่มนับ
คุณตั้งทั้งสองค่าด้วย uninherited timing point (เส้นสีแดง) ใน osu!stable ปุ่ม F6 เปิดแผงตั้งค่า timing และ control point ส่วน Ctrl+P เพิ่ม uninherited timing point ที่เวลาปัจจุบัน เปิดเมโทรนอมแล้วเล่นเพลง ปรับจนเสียงคลิกตรงบีตพอดี
เพลงที่เปลี่ยนจังหวะ ต้องเพิ่ม timing point สีแดงใหม่ทุกจุดที่จังหวะเปลี่ยน เพลงที่อัดสดและเพลงที่อัดโดยไม่มีคลิกแทร็กอาจต้องใช้หลายจุด
ดูวิธีหา BPM ของเพลงในทางปฏิบัติได้ที่ อธิบาย BPM และ offset ใน osu!
4. วาง hit circle ตามจังหวะ
hit circle คือหัวใจของทุกแมพ osu!: ผู้เล่นคลิกแต่ละตัวเมื่อ approach circle หดเข้ามา circle ทุกตัวควรอยู่ตรงนั้นเพราะมีเสียงที่คุณชี้ได้ว่าคือเสียงไหน
- Beat snap divisor ตัวแบ่งนี้กำหนดว่าออบเจกต์จะสแนปกับขีดไหน: 1/1 คือทุกบีต 1/2 ทุกครึ่งบีต 1/4 ทุกหนึ่งในสี่บีต ใน osu!stable ปุ่ม Shift+1–Shift+9 ตั้งค่าได้โดยตรง เพลงส่วนใหญ่ใช้ 1/2 และ 1/4 ส่วนจังหวะสามพยางค์ (triplet) ต้องใช้ 1/3 หรือ 1/6
- เลือกเสียงที่จะตามในแต่ละท่อน — กลอง เสียงร้อง หรือเมโลดี้ — แล้วตามมันนานพอให้ผู้เล่นอ่านแพทเทิร์นออก การผสมเลเยอร์แบบสุ่มเป็นสาเหตุที่พบบ่อยที่สุดที่ทำให้แมพดูสับสน
- New combo เริ่มคอมโบใหม่ (Q ใน osu!stable) ที่ต้นประโยคดนตรี ซึ่งมักจะทุกหนึ่งหรือสองห้อง เลขคอมโบช่วยให้ผู้เล่นอ่านออกว่าจังหวะกำลังจะไปทางไหน
เว้นช่องว่างตรงที่เพลงพัก แมพที่ไม่หยุดเลยทำให้เหนื่อย และมักไม่สนใจว่าเพลงกำลังทำอะไรอยู่
5. สร้าง slider และ repeat slider
slider มีส่วนหัว ตัว และหาง: ผู้เล่นคลิกหัวให้ตรงจังหวะ แล้วลากตามลูกบอลของ slider ไปตามเส้นทางจนถึงปลาย slider เหมาะกับโน้ตที่ลากยาว ท่อนร้องยาว ๆ และเสียงที่ยังดังต่อหลังจากการตี
- การวาด slider ใช้เครื่องมือ slider คลิกเพื่อวางหัว คลิกอีกเพื่อเพิ่มจุดยึด (anchor) ที่ทำให้เส้นทางโค้ง ดับเบิลคลิกจุดยึดเพื่อทำมุมแหลม (สีแดง) และคลิกขวาเพื่อจบ คุณย้าย เพิ่ม หรือลบจุดยึดทีหลังได้
- Repeat slider ลูกศรย้อนกลับจะส่งลูกบอลกลับไปตามเส้นทางเดิม repeat เหมาะกับเสียงที่ซ้ำด้วยระดับเสียงเดิม เช่น แพทเทิร์นไฮแฮต หรือเสียงซินธ์ลากยาวที่เต้นเป็นจังหวะตามบีต
- ความเร็ว slider ลูกบอลเคลื่อนที่เร็วแค่ไหนขึ้นกับความเร็ว slider พื้นฐานของแมพและตัวคูณของช่วงไทมมิ่งปัจจุบัน การปรับค่านี้ทำให้ท่อนช้ารู้สึกสงบและท่อนเข้มข้นรู้สึกเร็ว — แต่การเปลี่ยนกะทันหันอ่านยาก จึงควรเปลี่ยนตามเพลง
- Slider tick คือจุดเล็ก ๆ ตามตัว slider คุณเปลี่ยนจำนวนได้ในส่วน Timing
ทำให้รูปร่างอ่านง่าย: โค้งเรียบ ไม่มีเส้นทางที่วกกลับมาตัดตัวเอง และปลาย slider ควรพาเคอร์เซอร์ไปอยู่ในตำแหน่งที่เหมาะกับออบเจกต์ถัดไป
6. ใช้ spinner แต่พอดี
spinner เต็มหน้าจอ: ผู้เล่นกดปุ่มค้างไว้แล้วหมุนเคอร์เซอร์รอบจุดกึ่งกลางจนกว่าจะจบ spinner เหมาะกับเสียงที่ลากยาวต่อเนื่อง ตอนจบเพลง หรือช่วงพักระหว่างท่อน
เว้นเวลาเล็กน้อยหลัง spinner ก่อนออบเจกต์ถัดไป เพื่อให้ผู้เล่นหาเคอร์เซอร์เจออีกครั้ง spinner ที่สั้นมาก ๆ หรือจบก่อนท่อนที่โน้ตแน่นทันที เล่นแล้วหงุดหงิด
7. ควบคุมระยะห่าง จังหวะ และระดับความยาก
ใน osu! standard ระยะห่างระหว่างออบเจกต์เป็นส่วนหนึ่งของความยาก: มันกำหนดว่าเคอร์เซอร์ต้องเคลื่อนไกลแค่ไหนและเร็วแค่ไหน
- Distance snap (Y ใน osu!stable) รักษาระยะห่างให้เป็นสัดส่วนกับเวลา ออบเจกต์ที่ห่างกันทางเวลามากกว่าก็จะห่างกันบน playfield มากกว่า เป็นวิธีที่ง่ายที่สุดในการทำให้แมพอ่านง่าย โดยเฉพาะในระดับความยากที่ง่ายกว่า
- Grid snap (T) จัดออบเจกต์ให้ตรงกับกริด ช่วยในการทำแพทเทิร์นที่เป็นระเบียบและสมมาตร
- Jump และ stream ระยะห่างมาก ๆ ระหว่างออบเจกต์ทำให้เกิด jump ส่วน circle 1/4 ที่วางชิดกันต่อเนื่องยาว ๆ คือ stream ใช้ jump กับเสียงที่หนักแน่นและถูกเน้น และใช้ stream กับเสียงกลองที่รัวเร็วต่อเนื่อง
- การตั้งค่าความยาก Circle Size กำหนดขนาด circle, Approach Rate กำหนดว่าออบเจกต์โผล่มาเร็วแค่ไหน, Overall Difficulty กำหนดว่าช่วงเวลาตัดสินการกดเข้มงวดแค่ไหน และ HP Drain กำหนดว่าหลอดพลังลดเร็วแค่ไหน ปรับขึ้นไปพร้อมกันเมื่อระดับความยากสูงขึ้น
สร้างการไล่ระดับ mapset ปกติจะมีหลายระดับความยากที่ค่อย ๆ ไต่ขึ้น ระดับง่ายใช้จังหวะเรียบง่ายกว่า (1/1 และ 1/2 มากกว่า) ระยะห่างแคบกว่า และการเปลี่ยนกะทันหันน้อยกว่า ส่วนระดับยากเพิ่มจังหวะ 1/4, jump และ stream
8. เทสต์ แก้ไข และ export
- เล่นมันด้วยโหมดทดสอบ (F5 ใน osu!stable) ให้ครบทั้งเพลง — ไม่ใช่แค่ท่อนที่เพิ่งทำเสร็จ
- เช็กไทมมิ่งอีกครั้งระหว่างเล่น offset ที่คลาดเล็กน้อยรู้สึกได้ง่ายกว่ามองเห็น
- มองหาอะไรก็ตามที่ทำให้คุณแปลกใจด้วยเหตุผลที่ผิด: ออบเจกต์ที่ซ่อนอยู่ใต้ slider ส่วนที่ทับซ้อนกันจนอ่านยาก หรือระยะห่างที่ไม่ตรงกับจังหวะ
- เช็กความสม่ำเสมอ ทั้งตลอดเพลงและระหว่างระดับความยากในชุด
- ขอฟีดแบ็ก — ผู้เล่นคนอื่นจะสังเกตเห็นสิ่งที่คุณมองไม่เห็นในแมพของตัวเอง
เมื่อเสร็จแล้ว ให้กรอก metadata (ชื่อเพลง ศิลปิน ผู้สร้าง แหล่งที่มา และแท็ก) และใส่ภาพพื้นหลัง export mapset จาก editor เป็นไฟล์ .osz ใครก็ติดตั้งได้ด้วยการลากไฟล์ไปวางบนหน้าต่าง osu! — ดูวิธีเพิ่ม beatmap ลงใน osu!
ถ้าจะแชร์แมพบนเว็บไซต์ osu! ให้อ่านเกณฑ์ ranking ของ osu! และบทความ beatmapping ในวิกิ osu!ก่อน
9. ใช้ OsuGAI เป็นจุดเริ่มต้นที่มี AI ช่วย
การทำแมพ mapset ของ osu! standard ทั้งชุดด้วยมือใช้เวลาหลายชั่วโมง และเพลงส่วนใหญ่ไม่เคยถูกทำแมพเลย OsuGAI ซึ่งเป็น AI ทำแมพ osu! ของ DanceGAI สามารถสร้างเวอร์ชันแรกที่เล่นได้จากเพลงภายในราวครึ่งนาที:
- เพิ่มเพลงที่AI สร้าง beatmap osu! — อัปโหลด MP3, OGG หรือ WAV หรือวางลิงก์ beatmap ของ osu!
- เลือกระดับความยาก โดยตั้งค่าดาวเป้าหมายได้ตั้งแต่ ★1 ถึง ★10 ผลลัพธ์แต่ละอันตั้งชื่อตามค่าดาวที่วัดได้จริง ในเวอร์ชันเบต้านี้ แมพมักออกมายากกว่าเป้าหมาย
- ปรับสไตล์ได้ตามต้องการ — slider, มุมแหลม, การเปลี่ยนระยะห่าง และระยะห่างของ stream แยกตามระดับความยาก
- สร้าง แล้วดูตัวอย่างพร้อมเพลงในเบราว์เซอร์ และดาวน์โหลดไฟล์ .osz
- ทำให้เป็นของคุณ — เปิดใน osu! editor แล้วปรับแก้ส่วนที่คุณจะทำแมพต่างออกไป โดยใช้ทุกอย่างข้างต้น
OsuGAI ยังเป็นเบต้า: รูปร่าง slider อาจดูหยาบ new combo เป็นไปตามกฎตายตัว และยังไม่ได้ผ่านการเทสต์เล่นอย่างกว้างขวาง อ่านความหมายของเวอร์ชันเบต้าก่อนพึ่งพามัน
AI สร้าง beatmap osu! (OsuGAI)
AI ไม่ได้แทนวิจารณญาณในการทำแมพ
mapper ฝีมือดียังทำแมพได้ดีกว่า การทำแมพคือการตีความ — ตัดสินใจว่าเสียงไหนสำคัญ เคอร์เซอร์ควรเคลื่อนที่อย่างไร และเมื่อไรผู้เล่นต้องการพัก — และนั่นคือสิ่งที่คู่มือนี้พูดถึงจริง ๆ AI มีไว้สำหรับเพลงที่ไม่เช่นนั้นก็จะไม่มีแมพเลย หรือเป็นดราฟต์แรกแบบเร็ว ๆ ที่คุณนำไปขัดเกลาเอง