armor formular cover

Công thức tính Giáp và các giải pháp chống Snow Ball ?

Nội dung chính
    Add a header to begin generating the table of contents

    1. Các đại lượng cơ bản

    Trong một số thể loại game, thường thấy ở các game có tính đối kháng, thông thường sẽ xuất hiện ba đại lượng chính có tương quan chặt chẽ với nhau

    • HP: Đại lượng thể hiện sinh lực
    • Damage: Đại lượng thể hiện sát thương
    • Armor: Đại lượng thể hiện sức cản sát thương

    Trong các thiết kế phức tạp, ở mỗi đại lượng này sẽ chia thêm thành nhiều type khác nhau để tạo nên sự phong phú cho các class nhân vật, ở trong bài này, tôi sẽ bỏ qua phần này để tập trung vào mục tiêu chính: Giải pháp chống Snow Ball.

    Snow Ball (lăn quả cầu tuyết) là thuật ngữ ám chỉ một nhân vật hoặc nói rộng ra hơn là một lối chơi đạt được tới ngưỡng sức mạnh ngày một lớn và rất khó khăn để chế ngự, giống như một quả cầu tuyết lăn trên đỉnh núi, càng lăn xuống càng to và nặng.

    2. Bài toán cần giải quyết

    Trong các game có công thức tính giáp đơn giản, ba đại lượng HP, Damage, Armor thường được biểu diễn dưới dạng số thực đơn thuần.

    VD: Nhân vật Knight có HP = 5, Damage = 3.

    Khi gây sát thương lên Enemy có HP = 4, Armor = 1, thì sau lượt đánh đó, Enemy còn lại HP = 2.

    Đối với dạng này, khi user mở rộng được contents sẽ gặp khá nhiều lỗ hổng trong cân bằng và quản lí tài nguyên nếu bạn thiên về lối chơi Snow Ball ở đại lượng Armor, cụ thể là sẽ bắt đầu xuất hiện những enemies không thể gây nổi 1 đơn vị sát thương nào lên nhân vật của bạn.

    Đương nhiên là vẫn có những GD sử dụng cách này với những lí do riêng (tạo cho user có cảm giác nhân vật của mình mạnh lên, lượng tài nguyên ở những màn chơi thấp là không đáng kể đối với những user level cao, hoặc chỉ đơn giản là bào tiền user ^^…).

    Nhưng đối với tôi, lỗ hổng này vẫn mang lại cảm giác khá khó chịu, toán học là một trong những giải pháp tôi hay cân nhắc sử dụng để giải quyết vấn đề này.

    3. Công thức tính giáp chung

    Sát thương nhận phải = 1 – (Delta× armor ÷ (1 + Delta × |armor|)).

    • Delta: là con số tùy chỉnh để biến thiên công thức của bạn. Thông thường tôi sẽ gán Delta = 0.06
    • Armor: là số armor user sở hữu

    Ở đây tôi có 2 biểu đồ thể hiện sự biến thiên của lượng Sát thương giảm đi (khi armor > 0) và lượng Sát thương nhận thêm (khi armor<0). Armor = 0 thì lượng sát thương nhận được là sát thương chuẩn (True damage), ko cần đề cập.

    Như bạn quan sát thấy, đối với các ngưỡng Armor mà user sở hữu, cho dù ở trường hợp tích cực hay tiêu cực (build đồ giáp hay bị trừ giáp). Khoảng cách giữa các đại lượng Sát thương giảm đi Sát thương nhận thêm trên đường biến thiên đều giảm rõ rệt đối với cùng một mức  tăng đại lượng Armor.

    VD: Armor = 5, Damage Reduction = 23.09, đối với Armor = 10, Damage Reduction = 37.50, ở đây nếu tăng tuyến tính thì Damage Reduction = 46.18

    4. Kết quả đạt được

    User sẽ phải cân nhắc đối với lối chơi Snow Ball, vì càng tập trung build 1 mảng, giá trị thu được càng kém so với lượng tiền phải bỏ ra.

    Đối với công thức này, dù cho lượng Armor có chạm ngưỡng +∞ thì lượng sát thương mà Enemies gây ra cho nhân vật chỉ chạm tới mức tiệm cận 0 chứ không thể bằng 0.

    5. LỜI KẾT

    Phương pháp thiết kế nào cũng có những ưu và nhược điểm riêng, nên sử dụng linh hoạt để hướng tới mục đích cuối cùng, mang đến cho users những trải nghiệm tốt nhất trong ý đồ của người thiết kế.

    Trong trường hợp này, nếu các bạn đã có những giải pháp riêng cho mình, hãy cùng nhau chia sẻ nhé!

    [Tìm hiểu thêm]. Thiết kế hệ thống xếp hạng

    Nếu cảm thấy bài viết có ích, hãy giúp mình chia sẻ nhé:

    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: Product Owner, Game Designer, UI/UX Designer
    • Thế mạnh: Thiết kế Game và Quản lí dự án
    • Kĩ năng bổ trợ: Game UI, 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
    BẠN HÃY ĐỂ LẠI BÌNH LUẬN NHÉ!

    avatar
    Mới nhất Cũ nhất Vote nhiều nhất
    Nguyễn Công Khương
    Nguyễn Công Khương

    Dear anh, Trước hết cho phép em được bày tỏ sự kính trọng với những chia sẻ của anh. Anh hãy xem những câu hỏi dưới đây là học sinh xin ý kiến thầy giáo nhé. Một giải pháp chống snowball khá phù hợp đó là chia ra chỉ số thường và chỉ số đặc biệt. Chỉ số thường như những đại lượng dame, armor, hp có thể khiến tài… Đọc thêm »