预设

文本与界面预设

tellraw JSON 文本生成器

tellraw 表面上是聊天命令,本质上是一个 JSON 文本问题。这个生成器页面聚焦那些最容易出错的文本组件部分:嵌套的悬停文本、点击操作、颜色、加粗状态,以及安全的命令值。

预设结果

一条玩家能阅读、能悬停、能点击的 tellraw 消息,而你不必手动转义 JSON 文本组件。

输出

tellraw JSON 输出

/tellraw @a {text:"Open the dungeon gate",color:"gold",bold:true,hover_event:{action:"show_text",value:{text:"Click to run the gate trigger",color:"gray"}},click_event:{action:"run_command",command:"/trigger dungeon_gate"}}

预设截图

本文使用的 NBTForge Workbench 状态,包含可见的控件以及生成的 tellraw 输出。

构建预设

  1. 打开 Text Workbench,把目标输出设为 tellraw。
  2. 先写出可见的消息文本,再叠加颜色与样式状态。
  3. 等到纯文本能正确渲染之后,再加上 hover_event 与 click_event。
  4. 复制 JSON 输出,并使用与最终接收者相同的选择器进行测试。

先写出可读 JSON,再追求花哨 JSON

tellraw 失败最常见的原因是 JSON 格式错误。先把可见文本搭好,再在上面叠加交互层。NBTForge 让这个顺序非常清晰,因为文本组件是先作为字段被编辑,然后才变成命令的输出。

面向地图的提示,第一句话尽量简短,把更多细节放到悬停文本里。点击操作应当只触发一个安全命令或 /trigger,而不应触发一长串隐藏命令链。

它在 Command Pack 中的位置

tellraw 经常与记分板触发器、标题消息、声音反馈以及任务状态搭配使用。当命令属于多步骤交互的一部分时,请把命令保存到 Project 里。

对同一类动作请使用一致的颜色。例如金色表示目标提示、绿色表示成功、红色表示被拒绝的操作。

  • 玩家点击流程尽可能使用 /trigger。
  • 悬停文本应当是补充说明,而不能承担最关键的指引。
  • 根据最终命令所处的上下文,分别用 @s、@p 和 @a 进行测试。

把预设落地到真实的 Project

请把 tellraw JSON 文本生成器当成一个已经过测试的起点,而不仅仅是一段可以复制的字符串。当输出第一次正常工作之后,请用清晰的 Project 名字保存它,记下目标 Minecraft 版本,并把这条预设和相关的设置命令(例如记分板、Boss 血条、战利品表或重置命令)放在一起。

在把预设正式应用到地图、服务器或 Command Pack 之前,请优先用复制出来的命令实体去执行,而不是直接依赖当前还开着的 Workbench。这样可以发现缺失的依赖、过期的选择器、错误的版本选择,以及那些只因为本地测试状态恰好存在才碰巧能跑的命令。

  • 通过共享命令保留所选的 Edition 与 Version。
  • 在使用伤害、击杀、清除或传送之前,先用无害命令测试选择器。
  • 把长命令搬到 Project 或函数风格的流程里,不要直接粘进聊天框。
  • 在修改实体、物品组件、坐骑乘客或数据包资源之后,务必再次检查警告。

FAQ

tellraw 可以在被点击时运行命令吗?

可以。请使用 click_event 配合 run_command,并把它指向一个在玩家上下文中合法的安全触发器或命令。

为什么我的 tellraw JSON 在某个版本能用,在另一个版本就不行?

文本组件的格式会随时间演变。请检查所选版本系列,并按照新格式重建组件,而不是盲目复制旧的转义 JSON 片段。

这条预设什么时候应该成为 Command Pack 的一部分?

当输出依赖于初始化命令、重置命令、战利品资源、记分板状态或反复测试时,就把它作为 Command Pack 条目;一次性、无害的单条命令依然可以直接从输出里复制。

打开这个工作流

从相关 Text 工作台开始,然后按你的世界调整预设字段。