Cấp độ thực hiện


7

Gần đây tôi đã bắt đầu tạo ra một trò chơi sidcroller, cho mục đích học tập. Trong khi tạo ra một số cấp độ cho nó, tôi vấp phải câu hỏi, làm thế nào để thực hiện các cấp độ này vào trò chơi của tôi. Tôi đã thực hiện (và tôi nghĩ rằng đây là cách phổ biến, sửa tôi nếu tôi sai, tôi đánh giá cao nó) một trò chơi dựa trên trạng thái, với trạng thái menu, trạng thái trò chơi, v.v. Vì vậy, cách phổ biến để thực hiện các cấp độ khác nhau trong trạng thái trò chơi là gì? Tôi có nên tạo một trạng thái mới cho mỗi cấp độ? hoặc trạng thái trò chơi phải là trạng thái "có thể chơi" duy nhất và "biết" (tuy nhiên đã nhận ra) mức độ hiện tại? Làm thế nào bạn có thể nhận ra tính điểm hoặc một cái gì đó tương tự (như hệ thống trực tiếp hoặc hệ thống điểm cao cấp đơn giản)

Câu trả lời:


4

Việc thực hiện khái niệm cấp độ thay đổi khá nhiều, nhưng hai kỹ thuật phổ biến xuất hiện trong tâm trí.

Hầu hết các trò chơi mở, những trò chơi có cấp độ / tiến độ chỉ là trạng thái bên trong của người chơi, việc triển khai bình thường là để tài sản trò chơi bắt kịp với trạng thái của người chơi (vì vậy nếu cấp độ của bạn bắt đầu "trong bến cảng", trò chơi của bạn sẽ khởi động bằng cách đặt bạn ở đó và bắt đầu tải.) Trò chơi đợi cho đến khi tất cả các tài sản tải xong, sau đó chuyển sang trạng thái "đã tải".

Các kỹ thuật phổ biến khác là có mức độ rõ ràng hơn. Cấp độ được tải vẫn đến từ thông tin phiên của người chơi, nhưng bạn tải cấp độ vào trò chơi và sau đó đặt các thực thể vào điểm bắt đầu của chúng. Đây là tiêu chuẩn cho các trò chơi có cấp độ nghĩa đen là đấu trường để chơi. Lưu trò chơi cho các trò chơi theo phong cách này có xu hướng chỉ lưu sự khác biệt từ các điều kiện bắt đầu của cấp độ.

Như bạn có thể thấy, cả hai đều không ngụ ý rằng bạn có một trò chơi theo cấp độ, chỉ có cấp độ đó là chơi bắt kịp thông tin phiên của người chơi hoặc tài sản được tải rõ ràng cho cấp độ và người chơi được đặt bên trong nó.

Trong ứng dụng phụ của bạn, thông tin này có thể được lấy làm thông tin phiên của bạn có chứa chỉ số cấp độ / ID, sau đó tải cấp độ đó trên trò chơi starr. Khi chỉ số cấp độ của bạn thay đổi, bạn lưu trữ tất cả thông tin cần đi cùng bạn từ cấp độ này sang cấp độ tiếp theo, sau đó giải phóng cấp độ hiện tại và tải cấp độ mới, cuối cùng thả trạng thái đã lưu của bạn.

Điểm hoặc tiến trình trò chơi thường được quản lý thông qua thông tin phiên, thường bao gồm cuộc sống hiện tại, điểm số, thời gian chơi, nhưng không bao gồm thông tin cấp độ nội bộ (như cấp độ sức khỏe, tốc độ, số lượng đạn trên màn hình). Sự tách biệt này rất quan trọng trong các trò chơi mà mức độ không phải lúc nào cũng được ánh xạ tới vị trí (ví dụ như các trò chơi mà bạn xem lại các vị trí), nhưng có thể giúp đơn giản hóa suy nghĩ của bạn ngay cả trong các trò chơi tuyến tính.


2

Đơn giản, trạng thái trò chơi có thể mang theo một chỉ số cho cấp độ hiện tại. Bạn sẽ muốn kích hoạt (ít nhất là một chức năng) khi cấp độ kết thúc, để bạn có thể dỡ mức hiện tại, cập nhật chỉ số cấp hiện tại, sau đó tải cấp hiện tại (mới) và bắt đầu chơi.

Bạn có thể tạo một trạng thái khác cho mỗi cấp độ, nhưng thông thường nó không cần thiết. Sự khác biệt dữ liệu giữa "front end" và "trong game" không giống với sự khác biệt giữa các cấp độ. Nếu bạn muốn trạng thái theo cấp độ, bạn có thể có một máy trạng thái khác trong trạng thái trò chơi, hình thức thô sơ nhất đó là một chỉ số đại diện cho cấp độ hiện tại. :)

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.