Overview: AI Framework

The AI in EAW is a finite state machine: it exists in a particular state that changes based on input. It is built on a basic flow: A budget is the amount of credits (or in the case of tactical mode, effort) that the AI will expend upon a set of Goals that are part of the budget category. A budget may be "how much will I spend on buildings?" A Goal is an individual task like "build a unit" or "attack that planet". Goals are grouped into categories that are controlled by the budget for each category. A Plan is a method by which the AI will attempt to achieve its Goal. Plans are what you, the player, sees the AI do based on its Goals and Budgets. Budgets, Goals and Plans are controlled by the AI's eyes on the game: Perceptual Equations. These are algebraic/logic switches that tell the AI what to prioritise and what to ignore.
 * Budget
 * Goal
 * Plan

Modding Note
Budgets and Goals are controlled in XML via the Data/XML/AI folder and subfolders. Plans are Lua scripts, located in Data/Scripts/AI/