脚本调试

当完成一款游戏的开发或者某个模块,发布之前,测试游戏变得十分重要,在迷你世界当中,游戏有不同的运行环境,所以需要在各种测试模式下对游戏进行测试变得至关重要。

Lua调试器 就是提供给开发者对 Lua 代码进行调试的一种工具。 迷你世界 Studio 默认显示代码调试视口,如果想要关闭,可以通过 视图->Lua调试 进行关闭。

view_lua

调试器能做什么

Lua调试器 是帮助开发者检查代码,确保代码正确性的工具。一般情况下,开发者通过 print() 将当前代码运行情况输出至 Lua日志窗口

lua_log_view

但是通过 Lua调试器 ,玩家可以不用添加代码的情况下使用断点对脚本中的代码进行查看。当脚本运行至断点处时会自动停止,此时开发者便可检查当前状态下变量的值以及游戏运行状态。

lua_view

断点调试

断点是脚本的运行暂停点,当Lua脚本运行到断点时,运行中的游戏会暂停。开发者可以在断点处查看变量和堆栈。

一、断点设置

  1. Workspace下双击Script文件,打开脚本编辑器,在需要调试的代码行位置添加断点。(点击需要暂停的的执行代码左侧,创建断点成功后会显示红色球形图标)

    lua_breakpoint

  2. 运行游戏,脚本运行到断点的地方,游戏被暂停,此时开发者可以在 Lua调试界面BreakPoint 页签内查看断点信息

    lua_breakpoint_view

    • Line: 断点所在脚本的行数
    • Script: 当前脚本所在的断点
    • IsActive: 断点是否处于活跃状态,点击可切换状态
    • 条件: 设置断点条件,当检测的变量符合条件才会进入断点

二、运行调测

当脚本在一个在一个断点处暂停时,我们除了可以查看当前断点信息外,还可以控制接下来的运行方式

lua_menu_operation

从左至右以此为:

  1. 禁用所有断点: 点击后所有断点将不会工作,再次点击将恢复
  2. 单步运行: 单步运行按钮可将调试器移动到当前行上的函数中。如果当前行上没有函数,调试器将移动到下一行。
  3. 逐过程: 逐过程按钮可将调试器移动到下一行代码,而不是移动到函数中。
  4. 单步跳出: 单步跳出按钮可将调试器移出当前函数并移动到起始函数调用的下一行代码。如果当前行不在函数内,此按钮将移动到下一行。
  5. 继续运行: 游戏继续执行,直到下一个断点处。

三、断点时变量查看

处于断点时,开发者可以对变量进行监控,只需要将该变量名称填入监视列表。

lua_view_debug_value

四、堆栈的查看

视图->Lua调试-> CALLSTACK

查看当前运行代码的确切位置。如果当前代码行存在于从其他函数调用的某个函数中,堆栈将显示函数的调用顺序以及进行调用的行号。

lua_view_debug_stack

Last Updated: