Java 工具
需求
本页只记录 Java 源码注解中可确认的注册名和参数契约。工具在 Fabric 服务端世界上下文执行,通常作用于 Carpet 假人;客户端连接远程服务器时,客户端模组不能控制远端世界。
架构
Java Adapter 扫描 @ToolMethod / @ToolParam,生成 Schema 后动态注册。附属模组可通过插件入口增加工具,因此下表不是固定总数。
| 领域 | 工具 | 已确认参数 | 返回与风险 |
|---|---|---|---|
| 假人 | bot_spawn | name,x,y,z 必填;dimension? | 创建/唤醒玩家实体;可恢复写入 |
| 假人 | bot_despawn / bot_respawn | name;respawn 可带 x?,y?,z?,dimension? | 休眠可恢复;改变在线状态 |
| 假人 | bot_dismiss | name | 删除注册且不可恢复;高风险 |
| 假人 | bot_list / bot_info | 无;name | 只读 |
| 感知 | look_around | radius?(最大 64)、filter? | 世界只读 |
| 感知 | look_at_block / look_in_container | x,y,z | 世界/容器只读 |
| 感知 | look_time_weather / look_online_players | 无 | 只读 |
| 移动 | move_to | x?,y?,z?,entity?,break?,distance? | 移动;break=true 可破坏方块 |
| 移动 | ride / dismount | entity_id;无 | 改变实体骑乘状态 |
| 方块 | mine_block | x,y,z,options? | 破坏世界;高风险写入 |
| 方块 | place_block | x,y,z,block_name,facing? | 修改世界 |
| 方块 | use_block | x,y,z | 可能打开或触发方块 |
| 方块 | area_operation | mode,from,to,block_name?,radius? | 批量修改;高风险 |
| 背包 | drop_item | item_name?,count?,target_entity? | 丢失/转移物品 |
| 背包 | take_from_container / put_to_container | x,y,z,item_name?,count? | 修改容器和背包 |
| 背包 | equip_item | item_name,slot?,action? | 修改装备 |
| 实体 | set_combat_mode / stop_combat | mode,targetId?;无 | 可引发战斗 |
| 实体 | interact_entity / lead_entity | entityId,action,tradeIndex?;entityId | 改变实体/交易状态 |
| 生存 | eat / sleep / use_item | food_name?;action,bed_pos?,wait_seconds?;item_name,mode,target? | 消耗物品或改变状态 |
| 聊天 | chat / whisper | message,mode?;target,message | 向玩家发送消息;外部可见 |
| 消息 | message | action,message_id?,content?,filter? | 读取或修改消息状态 |
Java 工具统一返回工具结果包装;成功数据的具体字段由实现方法决定,源码没有稳定输出 Schema 的项目不在此臆测字段。
执行
先用 /alice status 确认 TCP 已连接,再在工作区核对实际 Schema。配置命令为 /alice config get|set|list、/alice reload(写入和重载需 OP)。批量方块、战斗、丢弃物品和 bot_dismiss 应先备份并限制目标。