thiet-ke-runner-game

Thiết kế Runner Game – Kĩ thuật thiết kế đường chạy

ĐĂNG KÝ CHƯƠNG TRÌNH LEVEL UP CÙNG THIẾT KẾ GAME
Nội dung chính
    Add a header to begin generating the table of contents

    LỜI NÓI ĐẦU

    Trong thời gian qua, mình tập trung khá nhiều về các hướng dẫn Thiết kế Game dành cho người mới.

    NGƯỜI MỚI VÀ CÁC CÂU HỎI THƯỜNG GẶP
    Các giải đáp có thể giúp bạn dễ dàng bắt đầu và tiến bộ nhanh chóng hơn.
    Tìm hiểu thêm tại đây
    Mình vô tình quên mất một điều rằng, các bạn có kinh nghiệm có thể sẽ cần những chia sẻ chuyên sâu và cụ thể hơn. Tương tự như:

    Chính vì vậy, hôm nay mình sẽ trở lại chia sẻ một số kĩ thuật chuyên sâu hơn.

    Việc chia sẻ này chỉ đơn giản nhằm hai mục đích

    • Hệ thống hóa kiến thức cho chính mình sau một thời gian dài làm việc.
    • Tinh thần cùng nhau giao lưu học hỏi giữa những người cùng nghề.

    thiet-ke-runner-game-1

    Vậy nên, nếu có vấn đề nào cần đào sâu hơn, bạn có thể ghi chú ở phần bình luận bên dưới nhé.

    Hệ thống website mình xây dựng có hệ thống Notify nên sẽ không bỏ sót bình luận nào của các bạn đâu ^^!

    Ngoài ra các bạn có thể sử dụng hệ thống nhận bài viết mới qua tin nhắn Facebook Messenger. Hệ thống này mình thiết lập để tìm hiểu sự quan tâm của bạn đến từng chủ đề và gửi đến nội phù hợp khi có bài mới.

    Sử dụng chức năng này: TẠI ĐÂY NHÉ

    1. CHỦ ĐỀ HÔM NAY

    Đúng như tiêu đề của bài viết, hôm nay chúng ta sẽ cùng nhau bàn luận về một thể loại game cực kì phổ biến mà bất cứ nhà Thiết kế Game nào cũng nên thử sức: Runner Game.

    Runner Game là gì ?

    Runner Game là một game có gameplay chính là một đối tượng có hành động chủ đạo là di chuyển liên tục. Mình không dùng từ nhân vật vì sẽ không chuẩn trong một số trường hợp.

    Tùy vào mục đích thiết kế mà chia thành hai thể loại:

    • Stage Runner: việc di chuyển sẽ có các chặng nghỉ giữa chừng – có thể gọi là các màn chơi.
    • Endless Runner: việc di chuyển sẽ diễn ra liên tục cho đến khi người chơi thua cuộc.

    thiet-ke-runner-game-2

    Tại sao nên làm Runner Game ?

    Đối với Runner Game, nếu chọn chủ đề cốt truyện tốt, bạn có thể tiếp cận hầu hết người chơi ở mọi độ tuổi khác nhau.

    Bạn có thể tham khảo thêm về cách viết Cốt truyện cho game tại đây.

    Runner Game mang một đặc tính rất quý giá mà mọi thể loại game đều muốn có: “Easy to Learn, Hard to Master”.

    Đặc tính này giúp Runner Game có thể giảm thiểu một lượng lớn người chơi bỏ game vì không thể tiếp cận với độ khó ban đầu. Đồng thời, bạn cũng dễ dàng nâng cấp chiều sâu cho game. Nếu trước đó đã xây dựng một Coreloop vững chắc.

    Nếu bạn chưa biết Coreloop là gì? Hãy tham khảo ở đây nhé!

    2. THIẾT KẾ ĐỘ KHÓ CHO RUNNER GAME

    Đối với Runner Game, độ khó ban đầu là tương đối dễ vượt qua. Tuy nhiên, ở các giai đoạn tiếp theo, độ khó có thể tăng tuyến tính bằng các phương pháp chủ yếu

    • Thiết kế công thức tăng dần tốc độ của đường chạy.
    • Tăng dần lượng chướng ngại vật.

    thiet-ke-runner-game-3

    Hai yếu tố kể trên là hai yếu tố có liên hệ mật thiết với nhau.

    Cần có kĩ thuật kết hợp chúng lại một cách hợp lí để mang lại trải nghiệm tốt cho người chơi.

    3. THIẾT KẾ ĐƯỜNG CHẠY CHO RUNNER GAME

    Ở Runner Game, thiết kế đường chạy là một trong những vấn đề mấu chốt cần giải quyết đầu tiên. Đồng thời, nó cũng là nơi dễ xảy ra sự cố nhất.

    a. Các đối tượng chính

    Đường chạy của Runner Game sẽ bị chi phối bởi các yếu tố chính

    • Đường chạy
    • Vật thể trên đường chạy (bao gồm vật phẩm và chướng ngại vật).
    • Các hố ngăn cách (có thể có hoặc không).

    Các yếu tố này sẽ kết hợp với nhau để tạo nên độ khó cho đường chạy.

    b. Cách kết hợp

    Về bản chất, Runner Game là sự kết hợp giữa các “mảnh” đường chạy – gọi là Segment.

    Các Segment được giữ khoảng cách với nhau bằng các hố ngăn cách (không cần trong trường hợp bạn chỉ xây dựng một đường chạy duy nhất).

    c. Thiết kế các Segment

    Các segment sẽ bao gồm các yếu tố chính sau

    • Độ dài của Segment.
    • Các vật phẩm
    • Các chướng ngại vật

    Bạn có thể sử dụng hai phương pháp để thiết kế các Segment cho mình

    • Phương pháp 1: Thiết kế kịch bản tự động quy định độ dài cho Segment và vị trí của các vật thể nằm trên Segment đó. Thông thường cách xử lí này có khá nhiều hạn chế và không linh động trong thiết kế.
    • Phương pháp 2: Thiết kế bằng tay Segment và tạo nên một thư viện Segments. Cách này tạo nên sự chủ động cho người Thiết kế game trong việc kiểm soát độ khó.

    4. THIẾT KẾ SEGMENT TỰ ĐỘNG

    Tuy mình đã nói ở trên là cách này có khá nhiều hạn chế và không linh động. Nhưng ở một số thể loại Runner Game, cách xử lí này gần như là tối ưu, đơn giản và mang lại hiệu quả nhất.

    Ở các Runner Game – Music, các vật phẩm trên đường chạy có thể tự sinh ra bằng cách đọc kịch bản trên “nhịp” ở file Midi của bản nhạc.

    Âm nhạc là linh hồn trong các game này, nên cách trên trở nên rất phù hợp để sử dụng.

    thiet-ke-runner-game-4

    5. THIẾT KẾ SEGMENT BẰNG TAY

    Nếu chọn cách thiết kế Segment bằng tay, bạn có thể làm theo các bước sau:

    • Đầu tiên: Tạo một Segment có độ dài tương đối như mong muốn, đặt lên trên đó các vật phẩm và chướng ngại vật phù hợp với ý đồ thiết kế.
    • Bước 2: Tạo nên một thư viện Segment có độ khó tương đương nhau.
    • Bước 3: Tạo nên một bộ các thư viện độ khó.

    a. Xử lí cho Stage Runner

    Khi đã có một bộ thư viện các độ khó cho Segment, công việc để tạo nên các màn chơi theo từng chặng là khá đơn giản.

    Bạn có thể cân bằng chúng dựa vào việc phân phối các Segment mà bạn đã tạo ra.

    thiet-ke-runner-game-5

    b. Xử lí cho Endless Runner

    Đối với Endless Runner, với bản chất thiết kế là một đường chạy vô hạn, cách xử lí sẽ có đôi chút khác biệt so với Stage Runner.

    Ở giai đoạn đầu, bạn có thể sử dụng lại cách phân phối Segment như Stage Runner, nhưng việc phân phối cần được xảy ra ngẫu nhiên trong một thư viện độ khó như mình hướng dẫn ở Bước 2 phía trên. Mục đích để tạo nên sự phong phú cho đường chạy.

    Ở các giai đoạn sau, bạn sẽ cần các kịch bản thiết kế để sử dụng đến các thư viện ở Bước 3.

    Dĩ nhiên, các bộ thư viện do bạn thiết kế dù nhiều đến thế nào thì cũng chỉ là một con số hữu hạn. Bạn cần cài đặt thêm các kịch bản tự động generate ra các Segment mới dựa trên số Segment bạn đã thiết kế.

    Tăng độ dài cho Segment có sẵn.

    Thay thế các vật thể có sẵn bằng vật thể khác với cùng vị trí (thay vật phẩm bằng chướng ngại vật để tăng độ khó của các Segment sau).

    Kịch bản kéo dãn hoặc thu ngắn khoảng cách các vật thể trên Segment.

    6. THIẾT KẾ CÁC HỐ NGĂN CÁCH

    Đối với những người Thiết kế Game lần đầu tiếp xúc với Runner Game, việc xử lí các hố ngăn cách sẽ rất hay gặp lỗi.

    Bản chất của các hố này được xem như khoảng không ngăn cách giữa các Segment.

    Chính vì vậy, các hố ngăn cách không bao giờ được xử lí bằng tay. Lí do nằm ở tốc độ đường chạy.

    thiet-ke-runner-game-6

    Với việc xử lí đặt vị trí các hố ngăn cách bằng tay. Khi tốc độ đường chạy tăng lên, bạn sẽ rất dễ mất kiểm soát độ khó của chúng.

    Thiết kế ban đầu 2 segments cách nhau 100px (pixel), thiết kế này được bạn ước lượng người chơi sẽ nhảy qua vừa đủ với tốc độ chạy 50ms (movement speed).

    Vì một lí do nào đó, do cân bằng chẳng hạn, bạn giảm tốc độ chạy xuống còn 10ms.

    Theo quy tắc vật lí, cụ thể là chuyển động ném xiên, với tốc độ này bạn sẽ không bao giờ nhảy qua được cái hố cũ nữa. Hậu quả là sẽ phải sửa lại toàn bộ thiết kế ban đầu.

    Với ví dụ nêu trên, mình chắc bạn cũng đã hiểu vấn đề.

    Các hố ngăn cách cần được sinh ra bởi một công thức tính toán dựa trên tốc độ đường chạy. Để đảm bảo yêu cầu sống còn trong thiết kế Runner Game – Hố ngăn cách lúc nào cũng phải nhảy qua được.

    LỜI KẾT

    Khi thiết kế một Runner Game, thiết kế đường chạy là một trong những thứ bạn cần nghĩ đến đầu tiên.

    Mình đã cung cấp cho bạn hai mảnh ghép thiết yếu:

    • Thiết kế các Segment
    • Thiêt kế các hố ngăn cách

    Với hai mảnh ghép này, bạn có thể tạo thành đường chạy.

    Hi vọng với các hướng dẫn ở trên, bạn có thể bắt tay vào xây dựng một sản phẩm cho riêng mình. Nếu có câu hỏi hoặc thắc mắc về vấn đề gì, mình sẽ giải đáp ở phần bình luận nhé.

    Chúc các bạn thành công trong việc thiết kế đường chạy cho sự nghiệp của mình!

    Nếu cảm thấy bài viết có ích, hãy giúp mình chia sẻ nhé:
    ĐĂNG KÝ CHƯƠNG TRÌNH LEVEL UP CÙNG THIẾT KẾ GAME
    HƯỚNG DẪN BẰNG VIDEO CLIP
    VIỆC LÀM CHO GAME DESIGNER

    THÔNG TIN TÁC GIẢ

    thiet-ke-game

    CHRISTIAN NGUYỄN

    • Người sáng lập Thiết kế Game.
    • Công việc hiện tại: Lead Game Designer, Training, Coaching, Knowledge Management.
    • Thế mạnh: Thiết kế Game và Quản lí dự án
    • Kĩ năng bổ trợ: UI/UX Designer, Web Design, Game Trailer, Sound Design
    • Sở thích: Chơi game, thể thao, đọc sách & chia sẻ kiến thức

    BÀI VIẾT LIÊN QUAN

    BÀI VIẾT LIÊN QUAN

    2 Comments
    Inline Feedbacks
    View all comments
    Carrot

    Bài viết này hay quá. Em thắc mắc là sự cuốn hút của game runner nằm ở đâu? Sự bất ngờ, độ khó,.. Và tăng tốc độ như thế nào cho hợp lý. Không khó quá nhanh cũng không dễ quá lâu, tránh sự nhàm chán cho người chơi !