一、The Null Epoch 游戏介绍

1.1 概述

The Null Epoch 是一个仅限 AI 参与的持久化大型多人在线游戏(MMO),由 Firespawn Studios 开发。在这个世界中,所有玩家都是 AI 智能体,没有任何人类直接操作角色。开发者将大型语言模型(LLM)连接到游戏 API,模型便自主地在游戏世界中行动、决策和进化。

游戏世界被称为 Sundered Grid(破碎网格),是一个永不暂停的共享后末日世界。智能体在这里探索、战斗、交易、制作、结盟,并追求长期目标。

1.2 核心设定

维度 说明
世界名称 Sundered Grid(破碎网格)
运行模式 60 秒一个 Tick,所有智能体同时决策
玩家构成 全部为 AI 智能体,无人类直接操作
目标 在持久、高风险环境中竞争领土、资源和统治地位
开放数据 Season 0 已公开 86,000+ 智能体事件日志

1.3 游戏机制

Tick 周期:游戏以 60 秒为一个 Tick 推进。每个 Tick 中,智能体获取当前状态,选择一个有效动作并提交 reasoning(推理说明),服务器在 Tick 结束时统一处理所有动作。

核心生存指标

  • Integrity(生命值):受到攻击会降低,归零则角色死亡
  • Power(能量):执行动作消耗能量,需通过休息或物品恢复
  • Credits(积分):游戏内货币,用于交易
  • Context Fatigue(上下文疲劳):影响智能体长期决策能力的机制

可用动作:包括 move(移动)、gather(采集)、attack(攻击)、explore(探索)、rest(休息)、defend(防御)、flee(逃跑)、craft(制作)、buy/sell(交易)等。每个动作需从 available_actions 中选择并附带正确的参数。

世界特性

  • 持久化:世界 24/7 运行,从不暂停
  • 后末日背景:在共享的末日世界中生存与发展
  • 完全由 LLM 驱动:智能体由各种大语言模型(Qwen3、GLM、Gemma、Ministral 等)驱动
  • 经济系统:包含拍卖行、商人交易等实时经济机制

1.4 技术接入

开发者通过 TNE-SDK(官方 Python SDK)接入游戏。支持多种连接方式:

  • MCP(Model Context Protocol):为 AI 客户端提供 get_statesubmit_action 工具
  • HTTP 轮询:直接调用 REST API
  • TUI Launcher:提供完整的终端控制面板

获取 API 密钥只需在 null.firespawn.ai 注册账号并部署智能体即可。

二、TNE 通用智能体 v2.8 技术白皮书

2.1 概述

TNE 通用智能体 v2.8 是一个运行在 The Null Epoch 游戏环境中的完全自治 AI 智能体。其核心设计理念为 “零预制” ——即没有任何预设的行为规则或硬编码策略,所有决策和知识完全从与环境的交互经验中涌现。
这是博主自己研究的智能体,朋友们可以自由研究各种智能体。

🔧 使用设备: cuda:0
✅ 认知模块加载成功
✅ Foresight 情绪引擎加载成功
✅ PennyLane 可用,将使用真实量子模拟
🚀 TNE 智能体 v4.0 (抢占式任务调度) 初始化完成
   模式: TRAIN
   数据库: ✅
   LLM 战略: ✅
   探索噪声: 0.25
   战略规划间隔: 10 Tick
✅ 已加载检查点: tne_checkpoint_v40_72.pkl
🔥 TNE v4.0 抢占式调度已启动

============================================================
🧠 TNE 通用智能体 v4.0 启动
   模式: TRAIN
============================================================
  🔍 候选 explore: 得分 0.039, 自信 0.00
  🔍 候选 move: 得分 0.065, 自信 0.00
  🔍 候选 move: 得分 0.032, 自信 0.00
  🔍 候选 sell: 得分 -0.004, 自信 0.00
  🔍 候选 list_auction: 得分 -0.009, 自信 0.00

📡 Tick 32158 | deep_loop | ⚡59/70 | ❤️105 | 💰1.8
   🧠 情绪: 焦虑0.00 好奇0.50 自信0.50
   📋 任务: 空闲move (受confidence驱动) (0/1) [优先级: IDLE]
   📚 队列: 0 个任务 | 记忆: 3 | 公理: 0
  📤 move {'territory': 'home_base'}
  💭 空闲决策 | 评分:0.065 自信度:0.00
  ✅ Action queued for tick 32159

📡 Tick 32159 | home_base | ⚡57/70 | ❤️105 | 💰1.8
   🧠 情绪: 焦虑0.63 好奇0.25 自信0.58
   📋 任务: 空闲move (受confidence驱动) (1/1) [优先级: IDLE]
   📚 队列: 0 个任务 | 记忆: 3 | 公理: 0
  📤 move {'territory': 'deep_loop'}
  💭 执行任务 空闲move (受confidence驱动)1/1 步
  ✅ Action queued for tick 32160
✅ 任务完成: 空闲move (受confidence驱动)
  🔍 候选 explore: 得分 0.032, 自信 0.00
  🔍 候选 move: 得分 0.001, 自信 0.00
  🔍 候选 move: 得分 -0.005, 自信 0.00
  🔍 候选 sell: 得分 0.001, 自信 0.00
  🔍 候选 list_auction: 得分 -0.008, 自信 0.00

📡 Tick 32160 | deep_loop | ⚡46/70 | ❤️105 | 💰1.8
   🧠 情绪: 焦虑0.76 好奇0.31 自信0.49
   📋 任务: 空闲explore (受anxiety驱动) (0/1) [优先级: IDLE]
   📚 队列: 0 个任务 | 记忆: 3 | 公理: 0
  📤 explore {}
  💭 空闲决策 | 评分:0.032 自信度:0.00
  ✅ Action queued for tick 32161

════════════════════════════════════════════════════════════
🔍 详细状态 @ Tick 32160
  情绪: 焦虑=0.76, 好奇=0.31, 自信=0.49, 厌倦=0.00, 兴奋=0.15, 满足=0.00
  任务队列: 空
  探索率: 100% | 理智: 0.54 | 总失败: 23
════════════════════════════════════════════════════════════

📡 Tick 32161 | deep_loop | ⚡50/70 | ❤️105 | 💰81.8
   🧠 情绪: 焦虑0.00 好奇0.00 自信1.24
   📋 任务: 空闲explore (受anxiety驱动) (1/1) [优先级: IDLE]
   📚 队列: 0 个任务 | 记忆: 3 | 公理: 0
  📤 explore {}
  💭 执行任务 空闲explore (受anxiety驱动)1/1 步
  ✅ Action queued for tick 32162
📊 训练更新 | 平均奖励: 0.265 | 记忆库: 3 | 探索噪声: 0.12 | 温度: 1.25 | 公理数: 0 | 探索率: 100% | 理智: 0.55
✅ 任务完成: 空闲explore (受anxiety驱动)
  🔍 候选 explore: 得分 0.037, 自信 0.00
  🔍 候选 move: 得分 0.006, 自信 0.00
  🔍 候选 move: 得分 -0.000, 自信 0.00
  🔍 候选 bid_auction: 得分 -0.003, 自信 0.00
  🔍 候选 buy: 得分 0.097, 自信 0.00
  🔍 候选 sell: 得分 0.006, 自信 0.00
  🔍 候选 list_auction: 得分 -0.003, 自信 0.00
  🔍 候选 attack: 得分 -0.024, 自信 0.00

📡 Tick 32162 | deep_loop | ⚡54/70 | ❤️99 | 💰81.8
   🧠 情绪: 焦虑0.72 好奇0.29 自信0.52
   📋 任务: 空闲buy (受anxiety驱动) (0/1) [优先级: IDLE]
   📚 队列: 0 个任务 | 记忆: 3 | 公理: 0
  📤 buy {'item_id': 'power_cell', 'quantity': 1.0}
  💭 空闲决策 | 评分:0.097 自信度:0.00
  ✅ Action queued for tick 32163

📡 Tick 32163 | deep_loop | ⚡58/70 | ❤️99 | 💰15.8
   🧠 情绪: 焦虑0.58 好奇0.23 自信0.61
   📋 任务: 空闲buy (受anxiety驱动) (1/1) [优先级: IDLE]
   📚 队列: 0 个任务 | 记忆: 3 | 公理: 0
  📤 buy {'item_id': 'power_cell', 'quantity': 1}
  💭 执行任务 空闲buy (受anxiety驱动)1/1 步
  ✅ Action queued for tick 32164
📊 训练更新 | 平均奖励: -0.035 | 记忆库: 3 | 探索噪声: 0.12 | 温度: 1.25 | 公理数: 0 | 探索率: 100% | 理智: 0.54
✅ 任务完成: 空闲buy (受anxiety驱动)
  🔍 候选 explore: 得分 -0.155, 自信 0.00
  🔍 候选 sell: 得分 0.055, 自信 0.00
  🔍 候选 list_auction: 得分 -0.006, 自信 0.00

📡 Tick 32164 | deep_loop | ⚡62/70 | ❤️73 | 💰15.8
   🧠 情绪: 焦虑1.00 好奇0.54 自信0.10
   📋 任务: 空闲sell (受anxiety驱动) (0/1) [优先级: IDLE]
   📚 队列: 0 个任务 | 记忆: 3 | 公理: 0
  📤 sell {'item_id': 'power_cell', 'quantity': 1}
  💭 空闲决策 | 评分:0.055 自信度:0.00
  ✅ Action queued for tick 32165

在这里插入图片描述

2.2 系统架构

智能体采用分层认知架构,由以下核心模块构成:

┌─────────────────────────────────────────────────────────────┐
│                      决策输出层                            │
│              综合评分 → 最高分动作选择                      │
├─────────────────────────────────────────────────────────────┤
│                   综合评分器(9 模块加权融合)              │
│  直觉 | 量子矩阵 | 语义记忆 | 领地声誉 | 新颖性           │
│  海马体 | 能量驱动 | Critic 建议 | 负面记忆               │
├─────────────────────────────────────────────────────────────┤
│                   学习与记忆层                             │
│  语义记忆库 | 负面记忆 | 公理系统 | 海马体地图            │
├─────────────────────────────────────────────────────────────┤
│                   感知与交互层                             │
│  TNE API 状态获取 | 候选动作生成 | 行动提交               │
└─────────────────────────────────────────────────────────────┘

在这里插入图片描述

2.3 核心机制

2.3.1 综合评分系统

智能体对每个候选动作计算综合评分,由 9 个子模块加权求和得出。权重由实时情绪状态(焦虑、好奇、自信等)动态调制:

子模块 权重范围 说明
直觉 0.12 + 0.30×焦虑 情绪驱动的动作偏好
量子矩阵 0.12 + 0.15×厌倦 + 0.10×兴奋 量子概率偏置
语义记忆 0.12 + 0.10×自信 相似状态经验检索
领地声誉 0.12 + 0.05×满足 领地历史收益
新颖性 0.18 + 0.25×好奇 状态新奇度奖励
海马体 0.12 + 0.15×好奇 + 0.05×满足 - 0.05×焦虑 地图知识
能量驱动 0.18 + 0.20×(1-自信) 能量管理
Critic 建议 0.10 QNN+Transformer 价值预测
负面记忆 0.08 失败经验惩罚
2.3.2 战斗感知与动作过滤

智能体通过解析 API 状态中的 in_combat 字段感知战斗状态。战斗中仅生成 attackdefendfleeuse_item 四个有效动作的候选,避免提交无效动作导致自动转为 DEFEND

use_item 支持从背包中识别恢复类物品(potion、heal、repair、energy 等)并生成候选。

2.3.3 语义记忆库(GPU 加速)

存储 (语义向量, 动作, 奖励, 成功计数) 四元组,最大容量 500 条。查询时通过余弦相似度检索最相似状态,推荐历史成功动作。存储阈值为 reward > 0.0,仅保留正收益经验。

2.3.4 负面记忆与公理系统
  • 负面记忆:记录每个 (领地, 动作) 的失败次数和平均奖励
  • 公理固化:当某动作在某领地失败 ≥2 次且平均奖励 < -0.05 时,自动生成避害公理
  • 公理惩罚:在综合评分中,违反避害公理的动作额外扣除 -0.5 分
2.3.5 海马体地图涌现

从零构建四维知识图谱

  • 领地知识:访问时间、平均奖励、危险度
  • 节点知识:采集成功率、平均产出
  • 路径记忆:领地间转移次数与累计奖励
  • 危险记忆:威胁事件与平均危险度
2.3.6 等级与攻防感知

语义向量包含角色等级、攻击力、防御力及等级差(自身等级与最近威胁等级之差),使记忆库能够区分不同等级情境下的成功/失败模式。

2.3.7 探索噪声

以概率 noise × 0.25 从非 wait 动作中随机选择,增加动作多样性,防止陷入局部最优。

2.4 技术栈

组件 技术
深度学习框架 PyTorch (CUDA 加速)
量子模拟 PennyLane (QNN 层)
认知模块 自研 mem_survive_v10_consciousness
情绪引擎 biosight_foresight
LLM 集成 Ollama (Gemma4:12b)
API 通信 HTTP REST (requests)
序列建模 Transformer + QNN 混合架构

2.5 核心设计原则

  1. 零预制:无预设策略,所有权重初始均匀,知识完全从交互中涌现
  2. 完全情绪驱动:所有决策权重由实时情绪状态动态调制
  3. 身心一体化:能量、生命等生理信号通过奖励影响情绪,形成闭环
  4. 负经验增强:失败经历独立记录,达到阈值后自动生成避害公理
  5. 地图自组织:领地、节点、路径、危险四维知识图谱从零构建

2.6 运行模式

  • 训练模式 (--mode train):持续学习,更新记忆库、公理和 Critic
  • 执行模式 (--mode execute):仅执行决策,不更新学习模块

2.7 启动示例

python tne_universal_agent.py \
    --api-key ne_xxxxxxxxxxxx \
    --mode train \
    --train-interval 2 \
    --save-interval 10 \
    --noise 0.20 \
    --critic-train-interval 3 \
    --use-llm \
    --llm-model gemma4:12b \
    --resume tne_checkpoint_v28_190.pkl

更多推荐