AOE : Rise of rome : Cơ chế của AI computer
Đây là toàn bộ cơ chế hoạt động:
Cơ chế game chọn file AI — toàn bộ hệ thống
3 lớp file hoạt động độc lập
┌─────────────────────────────────────────────┐
│ LAYER 1: .per → "Tính cách" AI │
│ LAYER 2: .ai → "Build order / Chiến lược"│
│ LAYER 3: .cty → "Sơ đồ xây dựng base" │
└─────────────────────────────────────────────┘
Mỗi lớp được chọn hoàn toàn độc lập với nhau.
LAYER 1 — File .per được chọn như thế nào?
Trong Scenario Editor, bạn trực tiếp chọn Personality cho từng computer player — nhiều personality được thiết kế đặc biệt cho campaign scenario, các personality còn lại có thể chọn là Aggressive hoặc Passive cho hầu hết tình huống.
Trong Random Map (không phải Scenario):
- Game tự động load
Random Map.percho tất cả computer player - File
Defensive.per,Aggressive.per... chỉ dùng được khi bạn chỉ định trong Scenario Editor - Đây là lý do file
.perbạn upload có tên "Defensive" — nó là một option trong Scenario Editor
LAYER 2 — File .ai được chọn như thế nào?
Trong Scenario Editor, bạn trực tiếp chọn Strategy (file .ai) cho từng computer player — tên của các strategy thường chỉ rõ unit chính mà computer dùng để tấn công và Age mà cuộc tấn công xảy ra.
Trong Random Map:
Mỗi civilization có một số file .ai tương ứng. Chưa rõ chính xác chúng được chọn theo tiền tố tên hay không — computer sẽ random chọn một file .ai phù hợp để thực hiện.
Ví dụ Hittite có 3 file: Hittite Bowmen.ai, Hittite Elephant.ai, Hittite Horse Archers.ai — game random chọn 1 trong 3.
Sơ đồ toàn bộ luồng quyết định
Bắt đầu game
│
├── Random Map?
│ ├── .per → "Random Map.per" (cố định, không đổi)
│ └── .ai → Random 1 file theo tên civilization
│
└── Scenario / Campaign?
├── .per → Bạn chọn trong Scenario Editor
│ (Aggressive / Defensive / Custom...)
└── .ai → Bạn chọn trong Scenario Editor
(Infantry Iron / Cavalry Bronze / Custom...)
Danh sách file .ai chung — dùng khi tộc không có file riêng
Những file này được tất cả tộc dùng trong Random Map nếu game không tìm thấy file riêng:
| File | Chiến lược |
|---|---|
Infantry Stone.ai |
Bộ binh Stone Age |
Infantry Tool.ai |
Bộ binh Tool Age |
Infantry Bronze.ai |
Bộ binh Bronze Age |
Archers Bronze.ai |
Cung thủ Bronze |
Archers Iron.ai |
Cung thủ Iron |
Cavalry Bronze.ai |
Cavalry Bronze |
Cavalry Iron.ai |
Cavalry Iron |
Phalanx Bronze.ai / Phalanx Iron.ai |
Phalanx |
Priest Bronze.ai / Priest Iron.ai |
Priest rush |
War Elephant Iron.ai |
Voi chiến |
Default.ai |
Fallback cuối cùng |
Các file shared build order này không tốt, vì vậy trong mod cải tiến, người ta đã xóa chúng để buộc computer phải dùng file AI riêng của từng civilization.
Kết luận thực tế
| Muốn làm gì | Cần sửa file nào |
|---|---|
| Thay đổi AI trong Random Map | Random Map.per + file .ai theo tên tộc |
| Thay đổi AI trong Scenario | Chọn trong Scenario Editor |
| AI tất cả tộc đều dùng brutal | Ghi đè Infantry Iron.ai, Cavalry Iron.ai, Archers Iron.ai |
| Chỉ một tộc dùng brutal | Ghi đè Hittite Bowmen.ai (hoặc file tộc đó) |
Sự thật về file .per trong Random Map
Hai file kiểm soát computer player là .ai và .per. Tuy tên là "AI file" nhưng file .ai không phải là file trí tuệ nhân tạo và không kiểm soát cách computer hành xử — đó là nhiệm vụ của file .per.
Vậy trong Random Map, file .per nào được dùng?
Câu trả lời thật sự là: game hardcode chọn .per theo difficulty level bạn chọn trong menu, không phải theo tên file "Random Map.per".
Cơ chế thực tế như sau:
Bạn chọn difficulty trong menu
│
├── Easy → Passive.per (hoặc tên tương đương)
├── Moderate → Moderate.per
└── Hard → Aggressive.per (hoặc file aggressive nhất)
Các file .per trong data2\ được map thẳng vào difficulty level — không có file "Random Map.per" tồn tại trong bản gốc RoR. Đó là tên mình đặt sai trong các câu trả lời trước, xin lỗi về điều này.
Danh sách file .per thực tế trong data2\ và vai trò
File .per |
Được dùng khi nào |
|---|---|
Passive.per / Defensive.per |
Difficulty Easy — AI thu mình, ít tấn công |
Moderate.per |
Difficulty Moderate |
Aggressive.per |
Difficulty Hard trong Random Map |
Các file khác (Hittite.per...) |
Chỉ dùng được trong Scenario Editor khi designer chỉ định thủ công |
Sơ đồ đúng hoàn toàn
RANDOM MAP
│
├─ Difficulty Easy → Passive.per (hardcoded)
├─ Difficulty Moderate → Moderate.per (hardcoded)
├─ Difficulty Hard → Aggressive.per (hardcoded)
│
└─ File .ai → random chọn theo tên tộc (đúng như đã nói)
SCENARIO / CAMPAIGN
│
├─ File .per → Designer chọn thủ công bất kỳ file nào
└─ File .ai → Designer chọn thủ công bất kỳ file nào
Hệ quả thực tế để mod AI trong Random Map
Muốn AI Hard khó hơn → sửa Aggressive.per trong data2\, đây mới là file thực sự được load. File Defensive.per bạn upload trước đó chính là file được dùng ở difficulty Easy.