命令行参数

在创建游戏时,一定要测试可执行文件,以确保最终编译是正确的,没有不可预见的错误或差异。但是,创建可执行文件意味着,由于无法访问调试控制台或编译器窗口,因此很难确定和调试可能发现的任何问题。但是有一个解决办法,那就是在游戏的可执行版本运行时,使用命令行参数来设置某些属性,从而允许您创建输出日志文件并测试其他特殊情况。

注意仅能在标准Windows目标模块上可用。

要让这个工作,你必须首先创建一个 Windows 可执行文件的游戏,并有它安装在您的测试机。一旦你这样做了,你需要创建一个快捷方式到桌面上的游戏。在这里,我们将添加要传递给*.exe的参数(要创建快捷方式,请右击RMB Icon游戏可执行文件,然后选择发送到 > 桌面(创建快捷方式))。

一旦你制定了快捷方式,你就可以在目标路径中使用下列任何一个参数:

-noaudio : 这会关闭游戏中的所有音频。

-inawindow : 强制游戏在窗口中启动,即使设置为在全屏模式下运行也是如此。

-output <filename> : 将控制台输出发送到文件名,包括代码基中的所有调试消息。

-debugoutput <filename> : 将控制台输出发送到文件名,不包括任何自定义调试消息,但包括来自运行程序的用于 bug 报告的额外信息。

-software : 将强制游戏使用软件顶点处理代替硬件来呈现游戏图形。这对于那些使用英特尔 GFX 芯片组或显示老机器上显示问题的 PC 尤其有用。

-intel : 无论使用什么 GPU,都会打开对糟糕的 Intel 驱动程序的修复程序。这些垃圾驱动程序会拖累你的游戏,给你的游戏一个明显的性能打击,所以如果你不需要修复不使用它。

-vanillaGFX : 关闭驱动程序制造商的任何检查,可以非常有用的测试您的游戏。

值得注意的是,如果需要,-output-debugoutput中的<filename>可以是相同的,因为在每次写入时都会打开和关闭该文件。

您现在应该到创建游戏可执行文件快捷方式的位置,然后右键单击它并选择“属性”。

Command Line Shortcut这将打开一个类似于上面的窗口。在这里,您可以将命令行添加到目标路径中。只需向前滚动到给定路径的末尾,添加一个空格,然后添加参数字符串。因此,例如,要创建一个调试文件输出,您需要这样的东西:

D:\Users\Me\GameMaker\CustomLoadBar-Default-1.0.0.0\CustomLoadBar.exe -debugoutput debug.txt

现在将在可执行文件的相同位置(不是快捷方式位置,而是安装游戏的位置)创建一个名为“debug.txt”的文件,其中包含完成的游戏的调试和编译信息。点击“确定”,然后使用快捷方式运行您的游戏,让它使用这些参数帮助您的调试。

有关如何调试游戏的详细信息,请参阅调试手册部分。

使用命令行进行A/B测试使用命令行进行A/B测试

YoYo运行器还得益于一个特殊的命令行参数:

-game <filename>: loads the given game file

你为什么要用这个?通常情况下你是不会这么做的,但如果你希望同时运行多个版本的游戏,你便可以使用这一方法,让 A/B 比较测试变得更加简单。使用这种方法,你可以和其他人一起进行重点测试,或者作为设计师,通过并行测试来获得更好的感觉。

要进行设置,您需要事先了解一些事情。首先,您需要Runner本身的路径。这可以在Windows操作系统的Program Data文件夹中找到(默认情况下,这可能是隐藏的,因此您需要更改查看属性才能看到它),典型格式如下:

C:\ProgramData\GameMakerStudio2\Cache\runtimes\<runtime_version>\windows\Runner.exe

注意,runtime_version文件夹将取决于您当前安装的运行时。你还需要<yourgame>.Win 的路径文件,因为这是我们要将运行程序指向的对象。找到它的最简单的方法是进入Temp文件夹(通常位于%localappdata%\Temp\GameMakerStudio\\),然后搜索 *.Win ,因为它会显示所有可用的选项,你可以简单地选择你需要获得完整路径的选项。

现在,我们可以创建到运行器的快捷方式,就像为可执行文件所做的那样,然后根据需要更改参数,但这意味着必须在测试之间打开并编辑它,这违背了我们将此功能用于并行测试的目的。相反,我们将创建几个小的“批处理”文件来处理这个问题。

为此,首先在桌面上创建一个新的文本文档,然后在记事本(或任何其他文本编辑器)中打开它。添加以下内容:

START C:\ProgramData\GameMakerStudio2\Cache\runtimes\<runtime_version>\windows\Runner.exe -game <LOCAL TEMP PATH>\<GAMENAME>.win

您需要设置临时路径指向您的游戏*.win文件,然后将其保存为"GM_Test_1.bat"到您的桌面(请注意,记事本将自动保存为*.txt文件,除非您从保存对话框选项中选择"所有文件")。您的最终命令应该看起来的示例如下:

START C:\ProgramData\GameMakerStudio2\Cache\runtimes\runtime-9.9.1.199\windows\Runner.exe -game D:\Users\Mark\AppData\Local\Temp\GameMaker\AlphaDog_Reboot\AlphaDog_Reboot.win

现在,创建另一个文本文件并添加同样的行,只是这次你要将其指向你想要进行并行测试的游戏的第二个版本的路径,你可以将其保存为“GM_Test_2.bat”。你可以双击LMB Icon它们中的任何一个来显示你的游戏的不同版本,将它们作为批处理文件意味着你可以很容易地再次打开它们来编辑它们并修改测试的游戏。