Tôi hy vọng rằng tôi đang đăng bài này một cách chính xác vì tôi là người mới trên trang web, vui lòng sửa tôi nếu tôi ở sai vị trí.
Đối với vấn đề của tôi: Tôi đang làm việc trên một trò chơi platformer cuộn bên 2D trong libGDX, và tôi đã gặp phải một vấn đề mà tôi đã xem xét trước đây nhưng chưa bao giờ nhận được câu trả lời chắc chắn. Đây là một ví dụ về những gì tôi đang thắc mắc: Trong các trò chơi như Legend of Zelda, khi người chơi bước lên công tắc, hoặc bắt một ngọn đuốc bốc cháy, điều này có thể mở một cánh cửa hoặc thả một con quái vật hoặc gây ra vô số những điều khác sẽ xảy ra.
Bây giờ, tôi tưởng tượng rằng điều này sử dụng một số loại mối quan hệ hoặc hệ thống nhắn tin kích hoạt sự kiện, nhưng có vẻ như sẽ điên rồ khi mã hóa tất cả các sự kiện này vào chính công cụ trò chơi, ngay cả khi sử dụng hệ thống dựa trên sự kiện.
Điều tương tự cũng xảy ra với các hệ thống hướng dẫn và hộp thoại: người chơi tương tác với một NPC hoặc một loại đối tượng trong trò chơi và hộp thoại / hướng dẫn tiếp tục tại một số điểm nhất định.
Trong trò chơi của tôi, tôi đặc biệt cần có khả năng kích hoạt các sự kiện sau khi một nhân vật làm một việc nhất định và tôi sẽ cần có thể kích hoạt một loạt các cuộc đối thoại. Tôi nghĩ rằng tôi biết làm thế nào tôi có thể mã hóa những thứ này, nhưng tôi sẽ có nhiều cấp độ mà tôi muốn phát triển với trình chỉnh sửa cấp độ như Tiled, thay vì mã hóa chúng. Vì điều này, tôi không biết làm thế nào tôi có thể tích hợp các sự kiện vào một hệ thống như vậy.
Câu hỏi của tôi là: các lập trình viên trò chơi làm gì để tránh mã hóa những thứ này vào trò chơi của họ? Với một cái gì đó giống như một hệ thống nhiệm vụ khổng lồ với vô số hộp thoại, hoặc nhiều cấp độ với các công tắc và sự kiện để kích hoạt, làm thế nào chúng được tích hợp vào trò chơi?
Cảm ơn bạn cho bất kỳ câu trả lời bạn có thể cho tôi, tôi thực sự bối rối về điều này :)
PS Nếu bạn cần rõ ràng hơn về những gì tôi yêu cầu, xin vui lòng cho tôi biết để tôi có thể cung cấp thêm chi tiết nếu cần.
PPS Tôi đã thấy bài đăng này Hệ thống sự kiện của trình soạn thảo Cấp độ, cách dịch sự kiện sang hành động trò chơi nhưng tôi đã thấy trên các trang khác mà mọi người qua lại về việc có nên sử dụng ngôn ngữ kịch bản hay một loại định dạng tệp như XML hoặc JSON, và nó rất khó hiểu ...