Skip to content

活动追踪 (allay)

allay 扩展包提供一个心跳驱动的 AI 助手——小悦(Allay),她会定期观察服务器动态,主动发起庆祝、挑战、氛围互动等活动,让服务器充满活力。

扩展包

allay 是内置扩展包,需要将 arkpilot-allay.jar 放入 plugins/ArkPilot/expansions/ 目录。

工作原理

心跳系统

小悦通过心跳机制运作:每隔固定时间自动唤醒,执行以下流程:

心跳触发 → 检查在线玩家 → 查询活动数据 → LLM 决策 → 执行互动(或保持沉默)

每次心跳的决策流程:

  1. 信息收集:调用工具查看在线玩家和活动数据
  2. 决策:根据活动数据选择行动或保持沉默
  3. 执行:通过广播、私聊、命令等方式与玩家互动
  4. 记忆:记录本次行为,避免重复

平衡设计

约 60% 的心跳会产生行动,40% 保持沉默。小悦会根据在线玩家数量自适应调整行为强度。

活动追踪

扩展包会监听以下游戏事件,实时记录玩家活动:

事件类型说明
方块破坏/放置统计破坏和放置的方块数量
聊天消息统计发送的消息数量
玩家死亡记录死亡原因
成就完成记录获得的成就(排除配方)
加入/离开记录在线时长
击杀生物记录击杀的生物类型

活动数据保留在内存中,滑动窗口为 1 小时,每 5 分钟自动清理过期数据。

事件类型

小悦可能发起的互动类型:

类型触发条件举例
庆祝玩家获得成就、击杀连胜广播祝贺、烟火音效、粒子特效
挑战多玩家在线、近期无活动"第一个找到钻石的人赢得吹嘘权!"
氛围时间/天气变化环境评论、天气特效
私人关怀玩家离线后回归、死亡连胜私聊欢迎、鼓励
惊喜随机(低概率)鸡雨、粒子秀

助手配置

助手配置位于 plugins/ArkPilot/expansions/allay/assistants/allay/config.yml(首次加载自动生成):

yaml
enabled: true
id: allay
name: "小悦"
description: "悦灵,通过心跳定期观察服务器动态,主动发起活动"

model:
  primary: ""           # 使用全局默认模型
  temperature: 0.9      # 较高创意度

heartbeat:
  enabled: true         # 启用心跳
  intervalSeconds: 300   # 心跳间隔(秒),默认 5 分钟

tools:
  load:
    - execute-command
    - broadcast-message
    - send-player-message
    - list-online-players
    - query-player-activity    # allay 扩展包提供
    - query-server-activity    # allay 扩展包提供

参数调优

参数建议说明
heartbeat.intervalSeconds180-600值越小互动越频繁,300 是推荐值
model.temperature0.7-1.0值越高回复越有创意

命令白名单

小悦的 execute_command 限制在装饰性命令:

yaml
executeCommand:
  whitelist:
    - effect       # 状态效果
    - title        # 标题显示
    - playsound    # 播放音效
    - weather      # 天气控制
    - time         # 时间控制
    - particle     # 粒子效果
    - summon       # 召唤生物
  blockChaining: true

工具列表

allay 扩展包注册了两个工具,可供任何助手使用:

query_player_activity

查询指定玩家的近期活动。

参数类型必需说明
player_namestring玩家名
period_minutesinteger时间窗口(分钟),默认 30,最大 60

query_server_activity

查询全服活动概览,显示所有有活动的玩家及其近期行为。

参数类型必需说明
period_minutesinteger时间窗口(分钟),默认 30,最大 60

上下文注入

扩展包还会向玩家对话自动注入近 30 分钟的活动摘要(activity-summary),让其他助手也能了解玩家的近期活动。

自定义人设

小悦的行为和人格可通过编辑引导文件自定义:

文件作用
assistants/allay/SOUL.md核心原则与行为边界
assistants/allay/IDENTITY.md身份、名称、语气
assistants/allay/HEARTBEAT.md心跳决策流程

这些文件位于 plugins/ArkPilot/expansions/allay/ 目录,首次加载自动生成,可自由编辑。

启用方式

  1. arkpilot-allay.jar 放入 plugins/ArkPilot/expansions/
  2. 重启服务器或执行 /ark reload
  3. 小悦会自动开始心跳,无需额外配置

如需禁用,修改助手配置中的 enabled: falseheartbeat.enabled: false

ArkPilot — Minecraft AI Assistant Plugin