Mặc dù tôi đồng ý với đoạn mở đầu của DampeS8N (tức là trò chơi AI chỉ cần đủ thông minh để khiến người chơi nghĩ rằng nó thông minh), tôi cảm thấy rằng câu hỏi này cần nhiều chi tiết hơn. Các cấu trúc dữ liệu được sử dụng có thể là các FSM cho tất cả các cấp, nhưng điều đó không thực sự trả lời cho câu hỏi như thế nào các hệ thống riêng lẻ hoạt động.
Disclaimer: Tôi hầu như không chơi các trò chơi Civilization nên sự hiểu biết của tôi về lối chơi bị hạn chế. Nếu có bất kỳ lỗi rõ ràng, tôi xin lỗi. Xin hãy sửa cho tôi, và tôi sẽ vui lòng chỉnh sửa.
Tôi sẽ lấy trích dẫn từ Điều IGN ban đầu .
1. AI chiến thuật
Ở cấp độ thấp nhất, AI chiến thuật sử dụng các lực lượng trong tay để giành chiến thắng trong một trận chiến ở quy mô địa phương.
Đây có lẽ là phần tiêu chuẩn nhất của hệ thống con. Có vô số cách để thực hiện điều này từ việc sử dụng các FSM, Cây hành vi (hoặc thậm chí thực hiện các hành động ngẫu nhiên, tùy thuộc vào độ khó của AI).
Tuy nhiên, vì đây là một trò chơi theo lượt, tương tự như Rủi ro, tôi nghĩ điều có nhiều khả năng xảy ra là mỗi đơn vị được chỉ định một điểm. Sau đó, có các số nhân được gắn vào điểm số này tùy thuộc vào các biến khác nhau (trung thành, tiền thưởng địa hình, v.v.).
Kết quả sau đó được tính bằng một cái gì đó như thế này:
If (AI unit score >> (much greater) enemy unit score) Then Completely destroy enemy unit
If (AI unit score > (somewhat greater) enemy unit score) Then Partially destroy enemy unit
If (AI unit score < (somewhat less) enemy unit score) Then Partially destroy AI unit
If (AI unit score << (much less) enemy unit score) Then Completely destroy AI unit
Nó có ý nghĩa rằng AI sẽ cố gắng và tối đa hóa điểm số này khi trong trận chiến.
Thêm vào một giá trị epsilon (ví dụ: cơ hội thất bại / thành công ngẫu nhiên nhỏ) và bạn đã có một AI có vẻ ngoài khá ổn (không ai muốn có một đối thủ hoàn hảo, điều đó thật không vui!).
2. AI hoạt động
Một bước tiến lên từ đó, AI hoạt động chọn chiến đấu để chiến đấu và đảm bảo rằng các lực lượng cần thiết đã có sẵn.
Tôi nghĩ rằng có một vài điểm về điều này:
- Đánh giá sức mạnh hiện tại
- Gia cố đơn vị
- Đánh giá chiến đấu nào để chọn / tránh
Đánh giá sức mạnh hiện tại - Điều này chỉ hét lên Bản đồ ảnh hưởng với tôi. Nó có thể dễ dàng được biểu diễn trên lưới hex. Vì hệ thống con này được định hướng chiến đấu, các giá trị ảnh hưởng có thể đại diện cho các giá trị sức mạnh của từng đơn vị trong vùng lân cận. Nếu bạn có một đội quân đông đảo tập trung trong một khu vực nhỏ hình lục giác, giá trị ảnh hưởng sẽ rất lớn và AI hoạt động sẽ tính đến điều này khi đánh giá các trận đánh để chọn. Đừng quên, các giá trị ảnh hưởng của quân đội đối lập cũng sẽ được tính toán. Điều này cho phép AI hoạt động để dự đoán các mối đe dọa tiềm ẩn.
Củng cố các đơn vị - Bằng cách nhận thông tin về các phe phái đối lập từ bản đồ ảnh hưởng, AI có thể xác định đơn vị nào đang bị đe dọa nhiều nhất. AI sau đó có thể ra lệnh cho các đơn vị thân cận đi và củng cố các bên bị đe dọa.
Đánh giá những gì chiến đấu để chọn / tránh - Một vài tình huống có thể xảy ra ở đây. Nếu AI phát hiện một đơn vị đang bị đe dọa VÀ không có đơn vị nào ở gần để giúp nó có thể a) quyết định hy sinh đơn vị đó (nếu họ chỉ là bộ binh thấp, thay vì một vị tướng không thể thay thế) hoặc b) Đặt hàng cho đơn vị rút lui. Ngược lại, nếu AI phát hiện ra một đơn vị kẻ thù yếu gần một đội quân, nó có thể ra lệnh cho các đơn vị loại bỏ kẻ thù này.
Đây là một bài báo hay sử dụng các bản đồ ảnh hưởng trong các trò chơi Chiến lược thời gian thực.
3. AI chiến lược
Tiến lên cao hơn, AI chiến lược quản lý toàn bộ đế chế, tập trung vào nơi xây dựng thành phố và phải làm gì với chúng.
"Tôi nên xây dựng một thành phố ở đâu?" chỉ là âm thanh như đánh giá vị trí. Các chương trình cờ vua và các trò chơi khác sử dụng nó để xác định mức độ mong muốn của một vị trí nhất định. Ví dụ:
Hex A: Gần tài nguyên, trên địa hình cao, gần đồng minh, gần kẻ thù Hex B: Xa tài nguyên, trên địa hình trung bình, khoảng cách trung bình với đồng minh, xa kẻ thù
Hàm đánh giá vị trí có thể có ba yếu tố như vậy:
Score = Proximity to resources (closer yields a higher score) +
terrain elevation (higher yields higher score) +
proximity to allies (closer is better) +
proximity to enemies (farther is better)
Và bất kỳ hình lục giác nào có điểm số cao hơn, sẽ là nơi thành phố được xây dựng. Thông tin thêm về các chức năng đánh giá có thể được tìm thấy ở đây .
Tôi cho rằng AI chiến lược cũng có một loạt các chiến lược giả định sẵn trong trò chơi tùy thuộc vào loại chiến thắng mà AI sẽ giành được.
4. AI chiến lược lớn
Đứng đầu nấc thang là AI chiến lược vĩ đại, quyết định làm thế nào để chiến thắng trò chơi.
Tôi nghĩ rằng đây có lẽ là đơn giản nhất trong số đó, và nó mang lại ấn tượng rằng nó ấn tượng hơn thực tế. Trong một trò chơi như thế này, sẽ chỉ có một số lượng hữu hạn các loại chiến thắng. Bài báo đề cập đến một chiến thắng Chinh phục, giả sử rằng cũng có những chiến thắng của Liên minh, v.v., nó có thể đơn giản như chọn ngẫu nhiên một trong các loại và sau đó chuyển nó sang các hệ thống khác.
EDIT: Tất nhiên như được chỉ ra bởi DampeS8N, loại bản đồ có thể đưa ra điều kiện chiến thắng tốt nhất, trong trường hợp đó có thể được mã hóa bởi các nhà thiết kế hoặc một số loại chức năng đánh giá bao gồm các biến khác nhau.
Tóm tắt
Tôi nghĩ điều thực sự quan trọng cần lưu ý về loại hệ thống này là cách thức các hệ thống con được xếp lớp, chúng thực sự không cần phải giao tiếp nhiều với nhau. Nó trông giống như một kiến trúc từ trên xuống với các thành phần được ghép lỏng lẻo. Từ quan điểm thiết kế kỹ thuật, nó sạch sẽ và linh hoạt và có lẽ lấy cảm hứng từ Hành vi mới nổi và / hoặc Kiến trúc dự phòng .
Tôi thực sự xin lỗi về độ dài của bài đăng này, nó đã biến thành một chút quái thú :(
Dù bằng cách nào, tôi hy vọng nó sẽ giúp!