Làm một trò chơi như một hướng dẫn? [đóng cửa]


19

Tôi phụ trách một câu lạc bộ phát triển trò chơi ở trường tôi và tôi muốn làm việc trong một dự án vào mùa hè này mà tôi có thể sử dụng như một hướng dẫn trong học kỳ tới. Tôi chưa bao giờ làm bất cứ điều gì khá như thế này vì vậy tôi đã tự hỏi nếu có ai có bất kỳ dòng hướng dẫn hoặc ý tưởng.

Những gì tôi muốn làm về cơ bản là làm cho một trò chơi rất đơn giản. Một cái gì đó giống như một game bắn súng từ trên xuống, nơi kẻ thù xông vào để bạn tiêu diệt chúng và nhặt một số chiến lợi phẩm. Tuy nhiên, tôi muốn mọi thứ được sửa đổi rất dễ dàng. Những người trong câu lạc bộ có ít kinh nghiệm phát triển trò chơi, vì vậy nếu tôi có thể thiết lập trò chơi của mình theo cách mọi người có thể sửa đổi và thêm chức năng một cách dễ dàng, điều đó sẽ rất tốt cho họ.

Những thứ như có một lớp kẻ thù trong đó hành vi dễ chơi, hoặc làm cho súng bắn khác đi / thêm súng mới và cướp bóc mới. Thậm chí thêm các yếu tố mới vào trò chơi. Điều gì sẽ là cách tốt nhất để xây dựng trò chơi để cho phép loại dễ uốn này?


1
Hãy xem câu trả lời này trên Stack Overflow.
Andrew Russell

Câu trả lời:


16

Một cách truyền thống để thực hiện mục tiêu này trong phát triển trò chơi là sử dụng kiến ​​trúc dựa trên dữ liệu cho các hệ thống trò chơi.

Về bản chất, điều này có nghĩa là mã không thực hiện một loại vũ khí cụ thể (súng) với các giá trị được xác định rõ ràng cho tầm bắn / sát thương / xuyên thấu của nó, thay vào đó nó tập hợp các khái niệm chung về vũ khí tầm xa (tầm bắn / sát thương / xuyên thủng ...) từ một nguồn dữ liệu bên ngoài (đến mã). Nguồn bên ngoài này có thể thay đổi từ các tệp có khả năng phân tích cú pháp (có thể là XML) được đọc từ đĩa, đến các tệp nhị phân hoặc các thành phần cơ sở dữ liệu được tạo thông qua các công cụ bên trong hoặc bên ngoài cho chính công cụ trò chơi.

Xác định một cái gì đó giống như kẻ thù, hệ thống AI có thể được thiết kế để hỗ trợ một số hành vi chung (hung hăng, phòng thủ, hỗ trợ, hèn nhát) sau đó được điều chỉnh bởi các yếu tố điều khiển dữ liệu.

Kẻ thù mới của tôi, bắt đầu bằng hành vi AI cơ bản tích cực với các giá trị dựa trên dữ liệu cho: người chơi phù hợp> cấp độ của tôi + người chơi X -pueue lên đến đơn vị X vượt quá điểm sinh sản - ưu tiên sức khỏe <Ưu tiên về khả năng sắp xếp của X (khi người chơi đến quá gần)

Lược đồ điều khiển dữ liệu phức tạp hơn có thể cho phép định nghĩa các điểm dữ liệu cụ thể (sự kiện) trong đó chuyển trạng thái AI (máy trạng thái hữu hạn) sang trạng thái khác (hoặc thậm chí có cơ hội chuyển sang một trong N trạng thái khác) cho phép người dùng của bạn xác định phân cấp phức tạp của các hành vi.

Tất cả điều này tất nhiên là làm việc nhiều hơn là chỉ mã hóa một cách rõ ràng một hành vi, nhưng đó là một thách thức thú vị để cho phép người dùng sản xuất nội dung mà không cần sửa đổi nguồn.

Có những điểm thưởng cần đạt được:

  • nếu bạn có thể tự động cập nhật dữ liệu và có các thay đổi được phản ánh trong công cụ trò chơi mà không cần khởi động lại ứng dụng
  • nếu bạn tạo UI thân thiện với người dùng qua dữ liệu, cho phép người dùng sử dụng giao diện để tương tác với dữ liệu thay vì trực tiếp chỉnh sửa tệp văn bản (xml hoặc bất cứ thứ gì)

Đối với một trò chơi hướng dẫn được nhắm mục tiêu như một đám đông kỹ thuật hơn, phần lớn công việc thay vào đó là trong các lớp / đối tượng được thiết kế để lộ giao diện sạch cho người dùng để mở rộng, điều này cũng có thể được điều khiển theo dữ liệu.


Câu trả lời tốt đẹp! +1
Tấn

Cảm ơn vì đầu vào của bạn :)! Bạn có tình cờ biết bất kỳ trang web nào sẽ chỉ cho tôi cách triển khai loại mã này không? Tôi chưa bao giờ làm trò chơi với các nguồn bên ngoài như thế. Mặc dù tôi chắc chắn muốn họ viết mã XNA trong câu lạc bộ, vì vậy tôi có thể sẽ làm một cái gì đó nhiều hơn dọc theo các lớp và đối tượng mà họ có thể dễ dàng kế thừa trong các lớp của riêng họ. Nhưng tôi chắc chắn sẽ xem xét điều này,
Benixo

Một cách tuyệt vời để làm điều này đòi hỏi trình phân tích cú pháp cấu hình của riêng bạn, để cho phép các cấu trúc điều khiển dữ liệu rất đơn giản được tải vào. Một bài tập tốt sau đó có thể là, thiết kế một GUI đơn giản cho phép người dùng xác định và tạo các loại vũ khí mới.
giảm tốc

Các khía cạnh phổ biến nhất dựa trên dữ liệu trong các trò chơi là cấp độ. Ngay cả khi mọi thứ khác được mã hóa cứng, các thiết kế cấp độ (ví dụ: nơi đặt khung cảnh, nơi đặt kẻ thù, v.v.) hầu như luôn được xác định trong các tệp dữ liệu mà trò chơi tải. Điểm thưởng thứ hai của anh mô tả một công cụ chỉnh sửa cấp độ.
jhocking

Quá trình ghi / đọc các đối tượng vào / từ đĩa được gọi là "khử / tuần tự hóa". Bạn có thể tìm thấy một số hướng dẫn hữu ích theo thuật ngữ đó.
Exilyth

1

Nếu bạn đang tìm kiếm một vài ý tưởng về cách bắt đầu dự án của bạn và xây dựng nó từng bước để có thể chuyển đổi thành hướng dẫn, hãy xem XNA Game Adventures Adventures . Tác giả có một số hướng dẫn được thiết lập, với giải thích và mã nguồn tăng dần từng bước.


0

Tôi sẽ đề nghị xem hướng dẫn Phát triển trò chơi Java trên www.thenewboston.com

Nó có thể không chính xác là những gì bạn đang tìm kiếm về các anh chàng với vũ khí và tất cả nhạc jazz, nhưng nó mang lại một bước tốt đẹp từng bước của một số yếu tố chính trong phát triển trò chơi. Người dẫn chương trình "Bucky" cũng có phong cách giảng dạy ớn lạnh, chỉ để cho vui. Thưởng thức.

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.