# 從 AI NPC 到 AI 原生世界  
## ——AI 原生社會遊戲的研究方法與判定框架

**作者：** Neo.K  
**機構：** EveMissLab／一言諾科技有限公司  
**日期：** 2026-10-07（整理日期；原稿未標註日期）  
**版本：** 原稿未標註（本次整理版）  

### 摘要

大型語言模型進入遊戲之後，「AI NPC」很快成為一個容易被混用的概念。

只要角色可以使用大型語言模型生成對話，人們便可能稱其為 AI NPC；如果角色具有記憶、個性與自主行動，又可能進一步被稱為「生成式 Agent」；當數十名 Agent 同時存在於持續運作的世界中，人們又容易將其描述為「AI 社會」或「AI 原生遊戲」。

然而，這些系統在結構上可能存在根本差異。

一個能夠自由聊天的 NPC，未必能真正影響世界。

一個能夠自主決策的 Agent，未必受到世界規則約束。

一群具有記憶的 Agent，未必能形成持續演化的社會。

一個每天都會產生事件的小鎮，也未必會因此形成歷史。

因此，本系列提出一套分析 AI 原生遊戲的結構性方法，並以 `my_ai_town` 作為主要實證案例，研究一個生成式 Agent 系統如何逐步跨越下列邊界：

\[
\text{LLM NPC}
\rightarrow
\text{Generative Agent}
\rightarrow
\text{Persistent Simulation}
\rightarrow
\text{Agent Society}
\rightarrow
\text{AI-Native Game World}
\rightarrow
\text{Open-ended Evolving World}
\]

本研究的目的不是評判單一遊戲「好不好玩」，也不是為特定專案提供功能清單，而是尋找：

> **一個由 AI Agent 居住的遊戲世界，要具備哪些最小結構，才會從生成內容的系統，轉變為能產生因果、歷史、制度與長期分化的世界？**

---

# 1. 問題不再是「NPC 會不會說話」

第一代 LLM 遊戲實驗經常將問題定義為：

> 能不能讓 NPC 自由說話？

這個問題本身並沒有錯。

但它只觸及：

\[
\text{Language Generation}
\]

而不是：

\[
\text{World Participation}.
\]

假設一名 NPC 說：

> 「我現在要去市場買花。」

如果這句話本身就被視為已經發生，那麼大型語言模型同時成為：

- 敘事者；
- 世界規則；
- 狀態修改器；
- 行動裁判。

這會產生一個根本問題：

\[
\text{Model Claim}
=
\text{World Truth}.
\]

只要模型說了，世界就得接受。

這種系統可以非常有趣，卻仍然更接近互動敘事生成器，而不是具有獨立存在性的模擬世界。

在較成熟的 Agent-World 架構中，兩者必須分離：

\[
\boxed{
\text{Agent Intent}
\neq
\text{World Truth}
}
\]

例如 `my_ai_town` 的 Agent 並不是直接修改世界，而是接收由 World 投影出的 wake packet，其中包含當前時間、天氣、身體狀態、附近居民、所在地點、工作任務、生活目的地、公告、Social Matter、衝突與醫療狀態等；Agent 隨後只能提交意圖，再由 World 驗證與執行。

這形成：

\[
World
\rightarrow
Observation
\rightarrow
Agent
\rightarrow
Intent
\rightarrow
Validation
\rightarrow
World'.
\]

因此，本系列第一項核心判準是：

## **World Authority Principle**

> **大型語言模型可以決定角色想做什麼，但不能單方面決定世界實際發生了什麼。**

這是從「聊天 NPC」跨向「AI 世界居民」的第一道結構邊界。

---

# 2. AI 原生世界的四個基本層

為了避免把不同系統混為一談，本系列首先區分四個基礎層：

\[
\boxed{
Simulation
+
Interaction
+
Persistence
+
Dynamics
}
\]

## 2.1 Simulation

Simulation 指世界存在獨立狀態。

例如：

- 時間；
- 天氣；
- 位置；
- 身體需求；
- 職業；
- 工作任務；
- 庫存；
- 傷病；
- 服務狀態；
- 社會事項。

這些狀態不能只存在 Prompt 裡。

它們必須由 World Runtime 持有：

\[
W_t.
\]

---

## 2.2 Interaction

Agent 必須能透過合法行動改變：

\[
W_t\rightarrow W_{t+1}.
\]

例如：

- 移動；
- 工作；
- 對話；
- 幫助；
- 拒絕；
- 攻擊；
- 送貨；
- 研究；
- 發布公告；
- 接受社會任務。

如果 NPC 只能生成文字，但文字無法形成正式世界效果，那麼它仍然沒有真正「住在世界裡」。

---

## 2.3 Persistence

事件必須留下持久結果。

例如：

\[
\text{Trial}
\rightarrow
\text{Qualification}
\]

可能讓居民獲得永久職業資格；

研究成果可以形成正式 record、被圖書館 accession，並被後續生產系統引用；

居民記憶也會保存其個人經驗、人物關係、claim、confidence 與 evidence。

如果所有狀態在數分鐘後都回到原點，那麼世界雖然在運作，卻沒有真正形成歷史。

---

## 2.4 Dynamics

最後一層則是本系列最關心的：

> **一個狀態改變，能不能生成另一個問題？**

例如：

\[
\text{Service Demand}
\rightarrow
\text{Staff Shortage}
\rightarrow
\text{Social Matter}
\rightarrow
\text{Resident Response}
\rightarrow
\text{Assignment}
\rightarrow
\text{World Change}.
\]

`my_ai_town` 的 Social Matter Runtime 已正式區分：

- awareness；
- involvement；
- exposure；
- participant；
- response；
- assignment；
- result。

甚至居民必須先實際知情，才能成為 Matter 的回應候選。 

當 Simulation、Interaction、Persistence 與 Dynamics 同時成立後，系統才開始具有「社會」的雛形。

---

# 3. AI 遊戲成熟度的 L1–L6 分層

本系列提出六個分析層級。

它們不是產品評分，也不是高低優劣排名，而是描述系統具備何種結構。

---

## L1：Agent Autonomy

Agent 可以根據：

- 個性；
- 欲望；
- 記憶；
- 當前情境；

自主選擇行動。

核心問題：

> NPC 是否只是等待玩家觸發？

如果不是，則進入 L1。

---

## L2：World Grounding

Agent 的行動必須受到真實 World State 約束。

例如：

> 想去不存在的地方，不行。  
> 想使用不存在的物品，不行。  
> 想假裝完成工作，不行。  
> 想憑一句對話讓對方受傷，不行。

此時：

\[
Agent\ Policy
\subseteq
World\ Feasible\ Action\ Space.
\]

這是 World Authority 開始成立的階段。

---

## L3：Persistent Causality

世界能記住：

> 為什麼事情變成現在這樣。

包括：

- Action Result；
- Conversation；
- Memory；
- World Log；
- Causal Chain；
- Relationship History。

事件不再只是：

\[
E_t
\]

而是：

\[
E_t
\rightarrow
E_{t+1}.
\]

角色也能因為不同歷史軌跡而分化。

---

## L4：Endogenous Dynamics

世界開始自己產生問題。

例如：

\[
\text{Waiting Customers}
>
\text{Service Capacity}
\]

便產生服務壓力。

職位缺人則產生 Vacancy Matter。

居民的請求可以形成 Social Matter。

對話中的承諾，也可以變成後續 World Goal。

也就是：

\[
\boxed{
World State
\rightarrow
New Problem
}
\]

不需要腳本作者逐項指定。

這是「活著的模擬」和「具有社會動力的模擬」之間的重要分界。

---

## L5：Persistent Differentiation

接著必須出現：

> **今天發生的事情，永久改變明天的可能性空間。**

定義：

\[
\Omega_i(t)
=
\text{Agent }i\text{ 在時間 }t\text{ 的可行行動集合}.
\]

如果：

\[
\Omega_i(t+1)\neq\Omega_i(t)
\]

而差異來自 Agent 過去的歷史，那麼就產生 Persistent Differentiation。

例如：

\[
Trial
\rightarrow
Qualification
\rightarrow
NewOccupationOptions.
\]

或者：

\[
Research
\rightarrow
KnowledgeArtifact
\rightarrow
NewServiceDependency.
\]

此時世界開始具有：

\[
\text{Path Dependence}.
\]

---

## L6：Open-ended Structural Evolution

最後一層不是「事件更多」。

而是：

\[
\boxed{
\text{世界本身的可能性拓樸會被行動改寫}
}
\]

假設世界可以表示為：

\[
G_t=
(
Agents,
Places,
Resources,
Roles,
Relations,
Institutions,
Capabilities
).
\]

真正的結構演化要求：

\[
G_{t+1}\neq G_t
\]

而且差異不是系統預先排定的一次性事件，而是過去行動累積的結果。

例如：

- 新組織成立；
- 財產所有權改變；
- 技術被發明；
- 新職業形成；
- 社會派系產生；
- 新制度改變其他 Agent 的可行行動；
- 城鎮本身因居民長期行為而變成另一種社會。

這才是本系列所稱：

\[
\boxed{
Open\text{-}ended\ AI\text{-}Native\ World.
}
\]

---

# 4. Event Emergence 與 Structural Emergence

這是研究 AI 模擬時非常容易混淆的一點。

假設今天：

- A 和 B 吵架；
- C 去幫忙咖啡館；
- D 因為下雨沒有上班；
- E 臨時代班；
- F 在市場遇到 G。

這些都可以不是預先寫好的。

因此它們屬於：

\[
\boxed{
Event\ Emergence
}
\]

也就是：

> 在固定的世界規則與固定的可能性空間中，產生未預先指定的事件序列。

但是假設十天後：

- A 因此獲得新的職業能力；
- B 因此失去財產；
- C 成立新的組織；
- D 發明新的技術；
- E 取得新的權力；
- F 與 G 的聯盟改變其他居民的行為空間。

這就不只是事件序列不同。

而是：

\[
\boxed{
Structural\ Emergence
}
\]

也就是：

> 事件本身改變未來可以發生哪些事件。

因此：

\[
Event\ Emergence
\neq
Structural\ Emergence.
\]

這將成為後續研究 Attractor、Persistent Differentiation 與 Open-ended Evolution 的核心區分。

---

# 5. 為什麼「世界一直發生事情」仍可能沒有歷史

一個 AI 世界可以非常熱鬧，卻仍然停留在穩態。

假設居民具有：

\[
Energy,\ Satiety,\ Stress,\ SocialNeed.
\]

那麼：

\[
Hunger
\rightarrow
Eat
\rightarrow
Satiety
\rightarrow
Hunger
\]

以及：

\[
Fatigue
\rightarrow
Sleep
\rightarrow
Energy
\rightarrow
Fatigue.
\]

服務壓力也可能是：

\[
Pressure
\rightarrow
Help
\rightarrow
PressureResolved.
\]

衝突則可能是：

\[
Conflict
\rightarrow
Cooldown
\rightarrow
Normality.
\]

這些系統都很重要。

但它們大多屬於：

\[
\boxed{
Negative\ Feedback
}
\]

其目的就是將世界重新拉回穩態。

因此一個模擬即使每天發生不同事情，也可能最終形成：

\[
\boxed{
Stochastic\ Homeostatic\ Attractor
}
\]

也就是：

> 有隨機事件、有個體差異、有 LLM 決策，但整體仍不斷回到工作、吃飯、休息、聊天與睡眠的生活吸引子。

這不是錯誤。

對生活模擬而言，它甚至是一種必要穩定性。

但：

\[
\boxed{
Sustainable\ Simulation
\neq
Open\text{-}ended\ Evolution.
}
\]

這也是本系列後半部最重要的命題之一。

---

# 6. World Projection：Agent 不應看到整個世界

如果每一名 Agent 每次決策都收到整個世界資料：

\[
Agent_i\leftarrow W_t
\]

不只 Token 成本會快速爆炸，也會造成一種本體論問題：

> 每個 NPC 都變成全知者。

因此更合理的形式是：

\[
\boxed{
O_i(t)=P_i(W_t)
}
\]

其中：

- \(W_t\) 是完整世界狀態；
- \(P_i\) 是居民 \(i\) 的 World Projection Operator；
- \(O_i\) 是該居民實際可知的世界。

例如 Agent 的 wake packet 只投影：

- 自己；
- 附近居民；
- 所在地點；
- 自己的工作；
- 自己知道的公告；
- 自己知情的 Social Matters；
- 自己遭遇的事件；
- 自己的記憶。



所以：

\[
Knowledge_i
\subseteq
WorldFacts.
\]

這不只是效能優化。

它是 AI 社會能否存在：

- 秘密；
- 謠言；
- 誤解；
- 資訊不對稱；
- 探索；
- 專業知識；

的必要條件。

---

# 7. Memory 不等於 Log

另一項重要區分是：

\[
WorldHistory
\neq
AgentMemory.
\]

World Log 應該回答：

> 世界客觀發生了什麼？

而 Agent Memory 回答：

> 這名居民認為發生了什麼？

`my_ai_town` 的正式記憶條目已經包含：

- `subject`
- `interpretation`
- `source_kind`
- `source_resident_id`
- `claim_root_id`
- `confidence`
- `evidence_refs`
- state

並正式限制 confidence 在 \(0\sim100\) 之間。

親歷與二手消息也不是同一初始可信度；Formal Memory Builder 會給 firsthand 較高、hearsay 較低的初始 confidence。

同一 claim 若遇到一致證據，可以強化；遇到衝突證據，則可以降低 confidence、進入 doubtful / anomalous，甚至由後來的親歷證據修正為 corrected。

因此後續文章將使用：

\[
\boxed{
WorldTruth
\rightarrow
Evidence
\rightarrow
Belief
}
\]

而不是：

\[
WorldTruth=Belief.
\]

---

# 8. 本系列採用的核心分析單位

後續研究不再以：

> 「有沒有某功能」

作為主要判斷方式。

而是分析五種結構。

## 8.1 State

世界保存什麼？

\[
S_t.
\]

---

## 8.2 Transition

什麼事情可以使：

\[
S_t\rightarrow S_{t+1}?
\]

---

## 8.3 Authority

誰有權確認這次 Transition？

LLM？

World Runtime？

玩家？

系統事件？

---

## 8.4 Projection

哪些 Agent 能知道這次 Transition？

\[
P_i(S_t).
\]

---

## 8.5 Persistence

這項改變多久之後仍然存在？

分鐘？

一天？

整個存檔？

永久改變未來行動空間？

這五個問題，比單純問：

> 「有沒有 AI 記憶？」

更能判斷系統真正成熟度。

---

# 9. 研究方法：從專案功能轉向可重建結構

本系列使用 `my_ai_town` 作為主要案例，但目的不是複製其程式。

研究過程遵守：

\[
\boxed{
Implementation
\rightarrow
Structural Principle
\rightarrow
General Architecture
}
\]

例如看到：

```text
known_announcements
```

我們不只記：

> 系統有公告。

而要問：

\[
\text{Who Knows What?}
\]

看到：

```text
qualification
```

也不只記：

> 有職業系統。

而要抽象成：

\[
History
\rightarrow
CapabilityChange.
\]

看到 research booklet，也不是只描述：

> 有一本研究冊。

而是抽象成：

\[
Knowledge
\rightarrow
Artifact
\rightarrow
Logistics
\rightarrow
Service.
\]

最後再問：

\[
Knowledge
\rightarrow
Capability?
\]

這就是本系列所採用的：

\[
\boxed{
Clean\text{-}room\ Structural\ Extraction
}
\]

方法。

研究的是可重建原理，而不是依賴特定程式實作。

---

# 10. 系列的最終問題

本系列最後想回答的不是：

> 「如何讓 NPC 更聰明？」

而是：

> **如何讓世界因為 NPC 的存在而變得不同？**

兩者差異很大。

前者關心：

\[
AgentCapability\uparrow.
\]

後者關心：

\[
WorldHistory\uparrow.
\]

真正的 AI 原生遊戲不應只是：

\[
\text{Game}
+
\text{LLM NPC}.
\]

而應該逐步走向：

\[
\boxed{
WorldRuntime
+
AgentCognition
+
PersistentCausality
+
SocialDynamics
+
HistoricalDifferentiation
}
\]

最終形成：

\[
\boxed{
World
\rightarrow
Evidence
\rightarrow
Belief
\rightarrow
Intent
\rightarrow
Action
\rightarrow
World'
}
\]

並且：

\[
World'\neq World
\]

不只是因為時間增加了一分鐘，而是因為：

> **這個世界真的經歷過某些事情。**

---

# 11. 結論

生成式 AI 已經讓 NPC 從腳本角色，開始變成具有記憶、個性與自主決策能力的 Agent。

但：

\[
\text{Autonomous Agent}
\neq
\text{Autonomous World}.
\]

一個真正的 AI 原生世界需要的不只是更大的模型，而是更完整的：

- World Authority；
- Observation Projection；
- Action Ontology；
- Persistent Memory；
- Causal History；
- Social Matter；
- Information Topology；
- Persistent Differentiation；
- Cross-Domain Coupling。

因此，本系列將 AI 遊戲的核心研究問題重新定義為：

\[
\boxed{
\text{如何讓 Agent 的歷史，
真正成為世界的歷史？}
}
\]

第 1 篇將從最底層開始：

> **《意圖不是現實：Agent–World Authority Architecture》**

研究大型語言模型為什麼不應該直接成為世界真相，以及 Intent、Validation、Execution、Settlement 四層如何構成 AI 原生遊戲最基本的本體論邊界。