AOE : Rise of rome : Cơ chế của AI computer - QuânSysAd's Blog

06 tháng 3 2026

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.per cho 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 .per bạ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.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.



Không có nhận xét nào: