断点调试

断点调试

一个适用于Minecraft 1.21的Fabric模组,允许你在数据包中设置断点

优化

数据包断点

介绍

这是一个适用于 Minecraft 1.21 的 Fabric 模组,允许你在游戏中设置断点,并在到达断点时“冻结”游戏。

用法

  • 设置断点

在数据包中,你可以在 .mcfunction 文件里插入 #breakpoint 来设置断点。例如:

#test:test

say 1
say 2
#breakpoint
say 3
say 4

在这种情况下,游戏执行完 say 2 后,会因为遇到断点而“冻结”。

当游戏被“冻结”时,你仍然可以四处移动,做任何你想做的事,就像执行了命令 tick freeze 一样。 因此你可以检查游戏状态,或进行一些调试。

  • 单步执行

当游戏被“冻结”时,你可以使用命令 /breakpoint step 来执行下一条命令。在上面的例子中, 游戏遇到断点后,你可以使用 /breakpoint step 执行 say 3,然后再使用 /breakpoint step 执行 say 4。当所有命令都执行完毕后,游戏将解冻并继续运行。

  • 继续

当游戏被“冻结”时,你可以使用命令 /breakpoint move 来解冻游戏并继续运行。

  • 获取宏参数

如果游戏正在执行宏函数,你可以通过 /breakpoint get <key> 来获取宏参数的值。 例如:

#test:test_macro

say start
#breakpoint
$say $(msg)
say end

在执行 function test:test_macro {"msg":"test"} 后,我们将值 test 传给了宏参数 msg, 然后游戏会在 $say $(msg) 之前暂停。此时,你可以使用 /breakpoint get msg 来获取值 test。