Skip to content

可视化蓝图(Blueprint)

代码看不懂?踏海在浏览器 IDE 里内置了一套可视化蓝图编辑器——把插件逻辑表达成节点 + 连线的图(类似虚幻引擎的蓝图)。你不用读 Java,也能看清「玩家进服 → 读配置 → 踢出」这条逻辑是怎么走的,并直接在图上调整。

核心理念:图才是逻辑的真相,代码只是它的一种产物。 画布永远是你「已生成项目」的一个视图,不是从空白开始画。

怎么进入

在浏览器 IDE(/ide/:taskId)里,文件树顶部切换钮有第三个 「可视化蓝图」 图标,点击即可。整个 IDE 会以一段塌缩动画切换到蓝图舞台;左上角的 「← 代码视图」 随时切回。

进入即铺满:代码自动解析成图

这是关键体验——你不是对着空白画布。一进蓝图,系统就把项目里的 .java 文件自动解析成多张图

  • 每个事件处理、每个函数 → 一张独立的图;
  • 不同文件、不同方法分门别类列在左侧;
  • 画布上直接呈现已有逻辑的节点连线。

你要做的是在已铺好的逻辑上浏览、理解、微调,而不是从零搭。

节点与针脚

每个节点是一个逻辑单元,方块化的 Minecraft 浮雕风格,按类别着色:

  • 事件根 / 生命周期:图的入口(如 PlayerJoinEventonEnable)。
  • 控制流:分支、循环等。
  • 变量 get/set、字面量:数据的读写与常量。
  • 成员调用 / 动作:调用某个对象的方法(如 player.kickPlayer(...))。

节点之间有两类连线:

针脚含义
exec(执行流)白色粗线,表示「先做这个、再做那个」的顺序。
data(数据流)按类型着色的细线,表示「这个值喂给那个参数」。

未连接的数据输入会显示字面量输入框,可直接填值。

码 ↔ 图:双向确定性投影

蓝图不是「看个示意图」,它和代码是可互相还原的:

  • 码 → 图:解析 Java,重建出节点图(运算符优先级、调用链 a.b().c()new、静态调用、枚举常量等都被正确还原)。
  • 图 → 码:从节点图确定性地生成回 Java。

往返保持语义等价。对于节点词汇暂时覆盖不了的复杂写法,系统用逃逸节点把那段原始代码原样保留,绝不丢失或猜错——保证图永远是个语义成立的产物。

稳定身份:重新解析不打乱布局

代码改了、重新解析成图时,系统按结构/内容指纹给每个节点一个稳定身份:没变的部分保持原来的位置,只有真正变化的局部才重新布局。所以你不会因为同步一次代码就丢掉自己摆好的画布。

左侧「导入代码」面板还提供 「⟳ 从项目代码同步」,随时把最新代码拉成图。

设计边界(当前阶段)

蓝图系统仍在持续迭代,当前阶段聚焦把「代码 ↔ 图」这条双向通道做扎实、把已生成项目可视化。以下为有意划出的范围

  • 不做代码与图的实时双向同步(既改代码又改图、互相回灌)——采用单一真相源(图)。码→图只在导入时发生一次,之后以图为准。
  • 不做对你已搭好逻辑的破坏性整区改写——只做增量补全。
  • AI 在画布上的「预测式补全 / 举一反三」属于后续规划,当前不要求、也不依赖你输入任何自然语言。

小结

  • 蓝图把插件逻辑表达成节点图,图是真相、代码是产物
  • 进入即把已生成代码自动解析成多张图,在已有逻辑上浏览与微调。
  • 节点用 exec 执行流 + data 数据流 连接;覆盖不了的写法用逃逸节点原样保留。
  • 码↔图双向确定性投影 + 稳定指纹身份,同步代码不打乱布局。

下一步