Dự án cá nhân thực hiện bởi Châu Tuấn

Tác giả: chautuan

  • PATTERN DX

    PATTERN NÀY KHÁ LÀ DỄ

    TOUCH DX

    Bạn chỉ cần nhìn vào định dạng Majdata trên màn hình MajdataView, cụ thể:

    Như việc đặt TAP, bạn chỉ cần nhìn vào định dạng Majdata chỗ nào bạn muốn đặt TOUCH, dưới đây là ví dụ

    Khi mình nhập TOUCH : E8/B8/B1/E2, thì màn hình MajdataView sẽ hiển thị :

    Đơn giản mà đúng không? Ye nó rất đơn giản, lưu ý là hãy đặt sao cho nó phù hợp với khả năng chơi, cũng như không bị chéo tay

    Không giới hạn số TOUCH mà bạn có thể đặt một chỗ

    Dùng dấu / để ngăn cách và tạo thêm

    TOUCH HOLD DX

    Ở đây bạn chỉ cần nhập theo cú pháp sau : Ch[a:b]

    Ch[4:1] 

    Tùy vào Duration mà bạn quy định cho TOUCH HOLD, nó sẽ chạy lâu hơn hoặc nhanh hơn

    HIỆU ỨNG PHÁO HOA CỦA TOUCH

    Ở đây chỉ việc thêm chữ “f” vào TOUCH note, LƯU Ý LÀ TOUCH note, TAP, SLIDE sẽ không hoạt động với hiệu ứng pháo hoa 

    Cú pháp cho TOUCH thường : B7f, E8f

    Cú pháp cho TOUCH HOLD : Chf[a:b]

  • SLIDE

    Tương tự như HOLD, SLIDE cũng sẽ dùng Duration, tuy nhiên SLIDE bắt buộc phải có Duration thì mới có thể chạy hoàn hảo được
    Slide sẽ cần điểm đầu đến điểm cuối, có 8 nút tương đương 8 vị trí

    Ví dụ bạn muốn Slide đi từ 1 xuống 5 thì bạn ghi

    1-5[4:1]
    Kết quả

    BÊN CẠNH ĐÓ CÓ MỘT SỐ KIỂU SLIDE KHÁC BẠN CÓ THỂ DÙNG, BẠN CÓ THỂ THAM KHẢO CÁC LOẠI SLIDE DƯỚI ĐÂY

    SLIDE VÒNG I

    x>y[a:b]

    Được hiểu, nó sẽ đi xuôi viền, nếu bạn cảm thấy không hợp có thể chỉnh dấu “>” thành “<”
    Ví dụ : 1>5[4:1]

    SLIDE VÒNG II

    x<y[a:b]

    Được hiểu, nó sẽ đi xuôi viền, nếu bạn cảm thấy không hợp có thể chỉnh dấu “<” thành “>”
    Ví dụ : 1<5[4:1]

    SLIDE BẺ VUÔNG GÓC

    xVyy[a:b]

    Ở đây để dễ hiểu hơn thì Slide vuông này sẽ được dùng là chữ “V” lớn, cú pháp ở đây là dùng điểm bắt đầu và điểm sau là hai số đi qua
    Ví dụ ở đây là 1V35 thì Star sẽ chạy từ 1 chạy sang 3 qua 5
    Không nhất thiết là vuông góc, bạn có thể sử dụng 1V37 thì Star sẽ chạy từ 1 xuống 3 rồi sang 7 và tương tự

    SLIDE UỐN I

    xpy[a:b]

    Slide này sẽ như Slide uốn, tùy theo định dạng nó sẽ uốn theo yêu cầu của bạn, tránh trường hợp dùng số gần ví dụ 1 và 2 hoặc 7 và 8
    Ví dụ : 1p3[4:1]

    SLIDE UỐN II

    xqy[a:b]

    Slide theo dạng vòng một vòng rồi uốn đến đích, điều này cũng áp dụng cho một số kiểu khác, tránh trường hợp dùng số gần ví dụ 1 và 2 hoặc 7 và 8
    Nếu MajdataView báo lỗi, tức là bạn không thể sử dụng Slide đó
    Ví dụ : 1q3[4:1]

    SLIDE DẠNG SẤM SÉT XUÔI

    xqy[a:b]

    Slide theo hình dạng sấm sét, chữ S, để sử dụng Slide này bạn cần lưu ý số đầu và số cuối là hai số chéo nhau từ trên xuống dưới, từ phải qua trái, số phù hợp là : 1s5, 2s6, 3s7, 4s8, 5s1, 6s2, 7s3, 8s4
    Trường hợp MajdataView báo lỗi tức là Slide không phù hợp, bạn cần chỉnh theo đề xuất phù hợp bên trên, hoặc nhanh quá
    Ví dụ : 1s5[4:1]

    SLIDE DẠNG SẤM SÉT NGƯỢC

    xzy[a:b]

    Slide theo hình dạng sấm sét, chữ Z, để sử dụng Slide này bạn cần lưu ý số đầu và số cuối là hai số chéo nhau từ trên xuống dưới, từ phải qua trái, số phù hợp là : 1z5, 2z6, 3z7, 4z8, 5z1, 6z2, 7z3, 8z4
    Trường hợp MajdataView báo lỗi tức là Slide không phù hợp, bạn cần chỉnh theo đề xuất phù hợp bên trên, hoặc nhanh quá
    Ví dụ : 1z5[4:1]

    SLIDE DẠNG UỐN MỘT ĐƯỜNG XUÔI

    xzy[a:b]

    Slide theo hình dạng sấm sét, chữ S, để sử dụng Slide này bạn cần lưu ý số đầu và số cuối là hai số chéo nhau từ trên xuống dưới, từ phải qua trái, số phù hợp là : 1s5, 2s6, 3s7, 4s8, 5s1, 6s2, 7s3, 8s4
    Trường hợp MajdataView báo lỗi tức là Slide không phù hợp, bạn cần chỉnh theo đề xuất phù hợp bên trên, hoặc nhanh quá
    Ví dụ : 1s5[4:1]

    SLIDE DẠNG UỐN MỘT ĐƯỜNG NGƯỢC

    xzy[a:b]

    Slide theo dạng uốn một đường sang điểm đích, ở đây không như Slide sấm sét, bạn có thể cho điểm tới tự do, mỗi điểm tới khác nhau thì Slide qq này sẽ hiển thị khác nhau 
    Ví dụ : 1qq5[4:1]

    DELAY SLIDE 

    xzy[a:b]
    x là điểm bắt đầu, y là điểm kết thúc
    a là khoảng cách Delay, số càng nhỏ Delay càng lớn, số càng lớn Delay càng nhỏ
    ĐỀ XUẤT : Để đảm bảo Delay không quá lâu mình đề xuất bạn hãy dùng a
    a > 20
    VÍ DỤ :  1-5[25#8:1]
    Vì đây là Delay Slide cho nên, nếu Slide thường để [4:1] thì Slide Delay sẽ biến [4:1] thành [4:4] hoặc dài hơn

    SLIDE HÌNH TRÁI TIM

    7pp5[4:1]/4qq6[4:1] 

    Cú pháp : 6pp4[4:1]/3qq5[4:1] [Theo như hình] 

    Đây là ví dụ theo hình dưới, ngoài ra bạn có thể áp dụng hình trái tim với cú pháp khác ví dụ như

  • PATTERN (STD)

    Tất cả cú pháp để đặt Pattern, lưu ý rằng hãy nhập đúng, không sai, theo đúng hướng dẫn để có kết quả đẹp (lmao)

    TAP

    Đây là Pattern dễ có thể đặt, tránh trường hợp đặt quá 3 cái trong cùng một timeline
    TAP được xác định bởi số từ 1 đến 8 tương đương với 8 hướng
    Bạn có thể đặt tối đa 2 cái cùng lúc, được coi như Double Tap, không cùng số trong một đoạn phẩy, dấu phẩy sẽ là dấu ngăn cách các nốt, trừ khi là Utage hay là Chart Troll có thể đặt 3 cái trở lên, ví dụ như sau

    {8}1,,,,, <- TAP xuất hiện từ 1
    {8}1,2,3,4,,, <- TAP xuất hiện lần lượt 
    {8}1/2,,,,,, <- Double TAP 1 và 2
    
    (Đặt 2 TAP trong 1,2, thì TAP sẽ xuất hiện đồng thời theo hướng 1h, 2h và được ngăn cách bởi dấu /)

    TAP BREAK

    Để thêm TAP BREAK, chỉ cần thêm chữ “b” vào Pattern đó, ví dụ như bạn muốn thêm BREAK cho nút 1h thì chỉ cần ghi 1b, ví dụ như sau

    {8}1b,,,,

    Tương tự như DOUBLE TAP, bạn có thể thêm b vào cả hai để tạo ra DOUBLE TAP BREAK, ví dụ như 1b/2b, lưu ý phải có dấu ngăn cách là / để không bị lỗi Convert

    {8}1b/2b,,,,

    Hướng dẫn đặt TAP ở trên áp dụng đồng thời cho các nút còn lại, lưu ý rằng đặt tối đa 2 TAP không trùng nhau như 11 hoặc 1/1

    HOLD BREAK

    HOLD sẽ cần Duration để chạy, Duration đóng vai trò xác định thời gian mà HOLD sẽ xuất hiện cũng như kết thúc

    Dựa vào MajdataEdit, thì một khoảng thường sẽ chia dựa theo khoảng chia mà bạn đã đặt cho nó, về khoảng chia đã được hướng dẫn ở  HƯỚNG DẪN SỬ DỤNG MAJDATA  bạn có thể  BẤM VÀO ĐÂY  để xem lại
    Thường thì, MajdataEdit sẽ lựa chọn Duration dựa vào việc bạn viết vào đó, đây sẽ như một phép tính chia thông thường, ví dụ bạn ghi [4:1] thì nó sẽ là khoảng 1/4 trong khoảng chia đó, để dễ hiểu hơn thì bạn có thể nhìn vào bảng bên dưới như sau, bảng bên dưới sử dụng khoảng chia {4}

    Hãy xem các ví dụ về việc Input Hold:

    BẠN CÓ THỂ THÊM b VÀO ĐỂ TẠO BREAK HOLD NHƯ 1hb[4:1], BẠN CŨNG CÓ THỂ DÙNG DURATION KHÁC NHAU NHƯ [1:4] TỨC NÓ SẼ DÙNG KHOẢNG 4/1, [2:3] THÌ SẼ DÙNG KHOẢNG 3/2
    DƯỚI ĐÂY LÀ MỘT SỐ KẾT QUẢ SAU KHI BẠN NHẬP

    Một số ví dụ:

    1h[4:1]
    1h[4:1]
    1hb[4:1]

  • KHOẢNG CÁCH (CHIA)

    Khoảng chia là thứ để chia được một đoạn hay nhiều đoạn nhạc để Chart khác nhau,được kí hiệu {số}, ví dụ bạn chọn khoảng 4 thì nó sẽ chia đoạn 1 trong 4 đoạn thành 4 đoạn nhỏ trong đó

    Ví dụ, Majdata sẽ chia 1 khoảng BPM thành 4 phần như ảnh dưới

    Khoảng chia sẽ được tính ở 1/4 đoạn của 1 BPM, tức là:

    Khoảng chia ở đây sẽ là thứ để bạn tạo ra phẩy ngăn cách đoạn, khoảng chia càng lớn, phẩy sẽ càng nhiều và sẽ có nhiều đoạn trong một khoảng chia, Okay, lấy ví dụ cho dễ hiểu, nếu khoảng chia {4}

    Trong chart input, bạn nhập:

    {4},,,,

    Kết quả sẽ như sau : 

    Trong một khoảng chia như dạng{4}, thường sẽ được dùng cho 4 phẩy, đồng thời tạo ra 4 đoạn nhỏ để Chart cho hợp với Difficulty EASY, BASIC

    Lấy tương tự cho {8}, khi bạn nhập:

    {8},,,,,,,,

    Kết quả sẽ ra:

    Bạn sẽ thấy có 8 vạch (không tính cái cuối) tượng trưng cho 8 phẩy

    Một số lỗi về Khoảng chia

    LỗiKẾT QUẢ LỖICÁCH SỬA
    THAY KHOẢNG CHIA SAI CHỖLỆCH NHẠC, LỆCH PATTERN, KHÔNG ĐÚNG VỚI TIÊU CHUẨN CHARTĐể thay khoảng chia đúng, cần phải để dấu mũi tên trùng với vạch vàng dài nhất, hoặc trước đó phẩy phải đúng với khoảng chia ban đầu, ví dụ bạn để khoảng chia {8} thì bạn muốn chuyển sang khoảng chia {16} bạn cần lưu ý phải đủ 8 phẩy hoặc 16, 24, 32 phù hợp, tức là bạn sẽ phải nhân lên theo đúng số khoảng chia mà bạn dùng, để dễ nhận biết hãy xuống dòng, tức cứ 8 phẩy thì xuống dòng
    KHOẢNG CHIA KHÔNG HỢP VỚI TIÊU CHUẨN CHARTLỆCH CHART, LỆCH NHẠC VÀ KHIẾN PATTERN KHÔNG KHỚP VỚI NHẠCThực ra thì, đây là lỗi chung của những bạn mới làm Charter, đa số tất cả Rhythm Game đều sử dụng chung khoảng chia được tính là ƯỚC CHUNG LỚN NHẤT giữa 2 và 64, 64 được coi là con số lớn nhất đối với Rhythm Game, bạn nên sử dụng khoảng chia như sau cho phù hợp : 

    {1}, {2}, {4}, {8}, {16}, {32}, {64}

    trừ những bài BPM cao (>300bpm) thì bạn CHỈ ĐƯỢC SỬ DỤNG khi cần thiết, 

    {128}, {256}, {512}

    tất nhiên khuyến nghị là không nên chart bài BPM cao vì nó sẽ mệt =)))))))))
  • CHỈNH ĐỘ TRỄ VÀ BPM

    Độ trễ mình sẽ gọi là Offset, BPM là nhịp mỗi giây, để dễ hiểu thì cứ 4 Step sẽ được tính là một nhịp tùy theo độ chia nhạc của nó 1/4 . 1/8 . 1/16 ….

    Tất cả bài nhạc đều yêu cầu phải có BPM, để chart tốt hơn thì cần phải xác định Offset của nhạc nữa, chẳng hạn như việc mặc định nó là 0 mà bạn đặt cho mỗi BPM thì sẽ khó chart hoặc bạn chart nhưng pattern nó lại lệch so với nhạc, điều này rất khó, vậy nên trước hết bạn cần phải chỉnh BPMOffset trước

    CÁCH NHẬP BPM VÀO CHART

    Ví dụ, mình có một bài nhạc có BPM là 200, okay mình sẽ ghi vào trong MajdataEdit là (200) vào trong chỗ nhập Chart như ảnh dưới

    CÁCH NHẬP OFFSET VÀO CHART

    Khi bạn đã có Offset của một bài, thì bạn chỉ cần nhập độ trễ vào ô Music

    TỪ TỪ ĐÃ !
    Trước khi tiếp tục, bạn cần phải hiểu rõ cách để xác định BPM và Offset, vì hai thứ này rất quan trọng để giúp cho Chart của bạn chuẩn nhạc và dễ nghe hơn khi Chart.
    Vậy nên, mình khuyến khích bạn hãy biết cách xác định Offset và BPM của một bài sau đó sẽ bắt đầu Chart như bình thường
    Tips: Bạn cũng có thể nhờ những ai có kinh nghiệm trong làm nhạc, hoặc hiểu biết rõ về âm thanh thì sẽ giúp bạn xác định rõ hơn Offset và BPM, bạn cũng có thể nhờ mình thông qua Facebook

    Bên dưới là hướng dẫn cách xác định Offset và BPM (Tạm thời) và bạn có thể sẽ không hiểu, mình sẽ làm Video hướng dẫn chi tiết cách xác định sau

    CÁCH XÁC ĐỊNH OFFSET

    Hãy căn chỉnh sao cho MajdataEdit có thể đếm được BPM đúng với nhạc, 0 ở đây là mặc định, bạn hãy nhìn vào ô nhạc

    Hãy để ý xem khi nhạc bắt đầu thì xem chỗ bắt đầu ở đâu, thường thì những bài như này sẽ là tiếng trống, tiếng Kick, tiếng Slap, tiếng Hihat, trong bài này thì Drum là âm thanh bắt đầu nên mình sẽ lấy Drum làm chỗ bắt đầu nhạc, bạn hãy chỉnh sao để vạch vàng có thể chạm đúng với chỗ bắt đầu nhạc

    Vạch đỏ ở đây là chỗ bắt đầu, mình sẽ lấy chỗ này để bắt đầu làm Chart

    Để những vạch vàng xuất hiện, hãy nhập chút phẩy vào, bạn có thể sử dụng {4} hoặc {8} đều được để xác định Chart

    Để đảm bảo hơn, hãy nhập {4},,,, vào Chart input(Sau BPM)

    (200) <- BPM
    {4},,,,

    Khi nhập {4},,,, dưới (200) thì nó sẽ hiện như sau 

    Bây giờ quay lại ô Music, bạn nhập sao cho vạch vàng đầu tiên trùng với chỗ nhạc bắt đầu vào, ghi thử 0.15, bạn sẽ thấy vạch vàng (Khoảng cách {4}) đã di chuyển

    Nếu thấy chưa trùng nhạc (Trùng với 1/4 BPM) thì hãy thay đổi Offset, tương tự như sau, vạch vàng (Khoảng cách) sẽ thay đổi

    Đọc hướng dẫn xác định khoảng cách tại đây

  • BẮT ĐẦU TẠO CHART MỚI

    Đầu tiên, bạn cần có File mp3 của bài mà bạn dự định Chart, ở đây mình lấy ví dụ cho bài Break Through Myself

    Để đảm bảo có file nhạc nghe chất lượng hơn, hãy sử dụng nhạc 320Kbps, Sampling rate ≤44100Hz 

    Hãy đổi tên tệp sang “track.mp3” như sau

    Đổi tên thành:

    TẠO FOLDER BÀI HÁT RIÊNG

    Tạo một Folder riêng dành cho nhạc để tiện hơn trong việc tạo File Chart, bạn có thể để Folder là tên nhạc sau đó Copy hoặc Cut file track.mp3 vừa rồi vào File nhạc đó

    SETUP TẠI MajdataEdit

    Bây giờ, vào MajdataEdit, chọn File > New

    Dẫn MajdataEdit vào File nhạc và chọn track.mp3, rồi chọn Open, track sẽ được Import vào MajdataEdit và bạn có thể bắt đầu mọi công đoạn tại đây

    Tới bước này là xong, bạn đã tạo thành công một folder riêng để charting

  • Tinh chỉnh MajdataEdit

    Đầu tiên, để chạy Majdata thì bạn đảm bảo cần có hai chương trình chạy cùng lúc là MajdataEditMajdataView, nếu thiếu một trong hai cái có thể sẽ không chạy được hoặc là không xem được chart, mở MajdataEdit.exe lần đầu trong folder Release, khi đó hộp này sẽ hiện lên:

    Chức năng trong Editor Setting

    • Language : Ngôn ngữ
    • Rendering Mode : Majdata sẽ lựa chọn chức năng để Render chart từ MajdataEdit sang MajdataView để cho ra thành quả
    • Chart Refresh Interval : Khoảng thời gian mà Majdata sẽ Convert lại Chart từ MajdataEdit sang MajdataView, tuy nhiên để tốt hơn hãy để mặc định là 1000
    • Bright : Độ sáng
    • Speed : Tốc độ của Chart
    • Touch Speed : Tốc độ bấm auto trong MajdataView
    • Display at Center : Như trong maimai, sẽ hiển thị số liệu ở giữa màn hình
    • Auto Check Update on Startup : Tự động kiểm tra cập nhật khi mở Majdata