Làm thế nào tôi có thể phân phối powerups [đóng cửa]


7

Tôi đang thực hiện một trò chơi Bomberman -esque trong đó người chơi cố gắng loại bỏ nhau trên một đấu trường dựa trên ô vuông. Tôi hiện đang triển khai các powerups cung cấp cho người chơi đã thu thập cho họ phần thưởng (chẳng hạn như kho đồ lớn hơn hoặc tốc độ di chuyển nhanh hơn).

Làm thế nào hệ thống trò chơi nên đặt những sức mạnh này sao cho, với điều kiện người chơi thu thập sức mạnh gần họ nhất, trò chơi vẫn khá cân bằng?

Cách tiếp cận đầu tiên của tôi là sinh ra một powerup trên một ô trống ngẫu nhiên cứ sau vài giây. Vấn đề với cách tiếp cận hoàn toàn ngẫu nhiên này là người chơi có thể có lợi thế lớn ngay từ đầu trò chơi chỉ nhờ may mắn có nhiều sức mạnh sinh ra gần họ.

Lý tưởng nhất là tôi muốn tăng sức mạnh xuất hiện như nhau thường xuyên ở gần mỗi người chơi, nhưng đôi khi sinh ra gần trung tâm của bản đồ để khuyến khích sự cạnh tranh. Để rõ ràng, tôi muốn có một số yếu tố ngẫu nhiên - chỉ định chính xác sức mạnh sinh ra khi nào và ở đâu sẽ làm cho trò chơi có thể dự đoán được và buồn tẻ.

Những gì thay thế tồn tại?


8
Theo như tôi nhớ các phiên bản Bomberman khác nhau, chúng không bao giờ thực sự cân bằng. Trong thực tế, tôi cảm thấy họ có thể ít vui hơn nếu bản phân phối powerup đã được lập trình là "công bằng".
Tìm hiểuCocos2D

Câu trả lời:


8

Một thay thế sẽ là không đặt các power-up gần người chơi mà ở các vị trí liên quan đến việc chấp nhận một số rủi ro để đạt được điều đó. Bằng cách này, bạn sẽ khuyến khích người chơi ngừng ẩn có thể làm tăng yếu tố vui nhộn và sẽ thưởng cho họ vì "lòng can đảm" của họ. Trên hết, không ai có thể phàn nàn rằng ai đó chỉ may mắn nhận được một sức mạnh mạnh mẽ mặc dù một sự ngẫu nhiên nhất định vẫn được bảo tồn (nếu bạn tình cờ ở trong khu vực và xuất hiện sức mạnh thực sự mạnh mẽ, hoặc đúng hơn là tăng sức mạnh vô dụng, vv).

Ý tưởng thứ 2: Giống như trong Mario Kart, bạn có thể ủng hộ người chơi yếu nhất và tăng tỷ lệ anh ta nhận được các vật phẩm mạnh hơn. Bằng cách này, nó cũng sẽ rất vui cho những người chơi yếu chơi với những người cao cấp hơn. Tuy nhiên, bạn phải cẩn thận để không phản tác dụng mỗi bước di chuyển thông minh của người chơi bằng thuật toán của mình, nếu không bạn sẽ buộc người chơi rơi vào tình huống bốc thăm khiến toàn bộ trò chơi trở nên buồn tẻ vì không ai có thể thực sự chiến thắng.


1
Tôi thực sự thích câu trả lời này. Việc tăng sức mạnh nên được đặt càng xa mọi người chơi càng tốt, hoặc có cách để xếp một mức độ khó về độ khó và đặt nó vào vị trí khó nhất cho mọi người chơi, để tất cả người chơi phải cạnh tranh để có được tăng sức mạnh. Điều đó buộc người chơi phải đối đầu với nhau để có được những món quà và đó luôn là một động lực tuyệt vời.
Jamornh

1

Tôi đồng ý với câu trả lời trước về việc chấp nhận rủi ro. Tuy nhiên, nếu bạn đặc biệt muốn cân nhắc tính ngẫu nhiên để chống lại lợi thế, bạn có thể làm một cái gì đó như thế này:

  1. Đối với mỗi người chơi tạo một điểm ngẫu nhiên gần vị trí hiện tại của họ (nhưng không quá gần). Ví dụ, chọn một góc ngẫu nhiên. Chọn một khoảng cách, ví dụ min_dist + rand ^ 2. Tính điểm mà góc và khoảng cách từ người chơi và giới hạn trong khu vực chơi.
  2. Kết hợp các điểm ngẫu nhiên có trọng số theo mức độ lợi thế bạn muốn cung cấp cho mỗi người chơi.

Hoặc luân phiên:

  1. Chọn x điểm hoàn toàn ngẫu nhiên.
  2. Sử dụng điểm ngẫu nhiên có khoảng cách phù hợp nhất với tỷ lệ lợi thế.

1

Trong Bomberman, sức mạnh được sinh ra thông qua hành động của người chơi. Khi người chơi phá hủy một khối, có khả năng một sức mạnh được sinh ra trên ô của khối bị phá hủy. Có lẽ trò chơi của bạn nên kết hợp sức mạnh sinh sản với hành động của người chơi.

Giả sử trò chơi của bạn có các khối có thể phá hủy như Bomberman. Bất cứ khi nào một khối bị phá hủy, nó sẽ có cơ hội sinh ra một sức mạnh. Nó có thể là một cơ hội phẳng cho mỗi khối, nói 10%. Một cơ hội bằng phẳng như thế này về mặt kỹ thuật sẽ công bằng cho tất cả người chơi, nhưng có thể mang lại cho ai đó một chuỗi thực sự may mắn của nhiều lần tăng sức mạnh liên tiếp hoặc một chuỗi thực sự không may mắn không có sức mạnh trong một thời gian dài.

Thay vì sử dụng cơ hội phẳng cho mỗi khối, bạn có thể sử dụng cơ hội tăng dần và theo dõi nó cho mỗi người chơi. Cơ hội sẽ bắt đầu nhỏ, giả sử 1,5%, và sau đó tăng lên mỗi khi sức mạnh không được sinh ra. Khi powerup sinh ra, cơ hội giảm xuống giá trị ban đầu (1,5% trong ví dụ của chúng tôi).

Vì vậy, giả sử một người chơi phá hủy một khối và RNG cuộn với cơ hội 1,5%. Cuộn không thành công nên cơ hội cho người chơi đó tăng 1,5% lên tới 3,0%. Người chơi một lần nữa phá hủy một khối và không có sức mạnh. vì vậy cơ hội cho khối tiếp theo lên tới 4,5%. Khi người chơi cuối cùng sinh ra một sức mạnh, và cuối cùng họ sẽ có cơ hội tiếp tục tăng, cơ hội của họ trên khối tiếp theo sẽ trở lại giá trị cơ bản 1,5%.

Hệ thống này có một vài lợi thế cho cơ hội phẳng trên bảng:

1) Nó giảm thiểu các vệt may mắn thực sự bởi vì sau khi người chơi sinh ra sức mạnh, cơ hội của họ trên khối tiếp theo sẽ giảm đáng kể.

2) Nó giảm thiểu các vệt thực sự không may mắn vì cơ hội của người chơi sẽ sinh ra một sức mạnh liên tục tăng lên cho đến khi cuối cùng đạt 100%.

Bạn cũng có thể điều chỉnh cơ hội cơ bản cho mỗi người chơi tùy thuộc vào điểm số của họ hoặc yếu tố khác. Nếu bạn muốn người chơi thua cuộc có cơ hội quay trở lại, bạn có thể đặt cơ hội cơ bản của họ ở mức 2,5%, tăng 2,5% mỗi lần "bỏ lỡ".

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.