跳转至

实时事件

前端通过 WebSocket 接收小镇事件。

常见事件包括:

  • NPC_MOVED:居民移动。
  • NPC_SPOKE:居民说话,同时驱动地图气泡。
  • NPC_EMOTED:居民表情。
  • NPC_IDLE:居民处于 idle 状态。
  • TOWN_STATE:小镇状态同步。

为什么要同步事件

地图气泡、小镇动态和 Agent 推理应该解释同一批事件,而不是各自显示互不相关的内容。

例如:

  1. 后端广播 NPC_SPOKE
  2. 地图显示聊天气泡。
  3. 小镇动态显示同一句话。
  4. Agent 推理显示这句话的来源和理由。

Idle 和成本控制

如果用户长时间没有操作,或页面在后台停留超过设定时间,小镇会暂停后端 AI 通信。用户重新移动鼠标、点击或返回页面后,系统再恢复。