引言
如果你做过游戏开发,一定写过 NPC。而且大概率是这样写的:
if (playerNear) {
attack();
} else {
patrol();
}
简单、直接、可控。但也有一个明显问题:
NPC 永远是'写死的'
而当你把 AI 引入到 HarmonyOS 游戏里,事情会发生变化:
const action = npcAgent.decide(state);
这时候你会发现:
你不再是在'写 NPC',而是在'创造一个角色'
一、从'脚本 NPC'到'智能 NPC'
先看最核心的变化。
传统 NPC
if (hp < 30) {
runAway();
} else {
attack();
}
特点:
- 可预测
- 可控制
- 可调试
AI NPC
const action = agent.decide({ hp, enemyDistance, history });
特点:
- 不完全可预测
- 有'行为风格'
- 会'变化'
本质变化:
NPC 从'规则集合',变成'决策系统'
二、第一感受:NPC'活'了
这是最直观的体验。
传统 NPC
玩家靠近 → 攻击;玩家远离 → 停止。
AI NPC
可能会:
- 先观察你
- 选择绕后
- 假装撤退再反击
开发者的第一反应通常是:
'这行为我没写过啊?'
没错—— 这正是 AI 的价值

