Project1

标题: 想了解下RGSS3究竟是如何判断调试模式的 [打印本页]

作者: 1003492579    时间: 2015-7-10 23:38
标题: 想了解下RGSS3究竟是如何判断调试模式的
我在开发过程中可以通过编辑器里面可以运行游戏,也可以直接运行game.exe运行游戏,不过前者可以进入debug模式后者却不行,我得到一个比较模糊的答案是运行时附加一个命令行,我比较想了解下这个命令行究竟是怎样的命令行,又是如何传递的,以及在脚本中是如何获取这个命令行的…………

最近开始填坑,准备入手个普耐尔9W,专门肝船和填坑……………………
作者: 喵呜喵5    时间: 2015-7-11 01:06
调试模式下,全局变量$TEST值为真,你可以在脚本中全局搜索这个关键词,看到的便是调试模式下提供的全部便利功能

具体是如何让其设为真的等楼下高人……虽然对我自己来说知道了也没啥意义就是了…………
作者: taroxd    时间: 2015-7-11 08:21
本帖最后由 taroxd 于 2015-7-11 08:30 编辑
喵呜喵5 发表于 2015-7-11 01:06
调试模式下,全局变量$TEST值为真,你可以在脚本中全局搜索这个关键词,看到的便是调试模式下提供的全部便 ...


最简单的方式:点测试游戏的时候用 RGSSEval 运行脚本 $TEST = true。当然,这个用命令行参数很容易做到。似乎就是 Game.exe test 或者 Game.exe btest。以后加密游戏有必要把脚本里的 $TEST 功能全部删掉

下面是远古大神的一个实现:

作者: tseyik    时间: 2015-7-11 09:22
本帖最后由 tseyik 于 2015-7-11 09:32 编辑

Scene_Map中
  def update_call_debug
    SceneManager.call(Scene_Debug) if $TEST && Input.press?(:F9)
  end
改成
Scene_Map中
  def update_call_debug
   # SceneManager.call(Scene_Debug) if $TEST && Input.press?(:F9)
   SceneManager.call(Scene_Debug) if Input.press?(:F9)
  end
就可运行game.exe进入debug模式
不過在公用事用SceneManager.call(Scene_Debug)也是叧一種方法



超级DEBUG脚本
https://rpg.blue/forum.php?mod=viewthread&tid=379201




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1