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.