Runner Launch Arguments - nommiin/Tortoise GitHub Wiki
As you may know, the GMS2 Runner has support for many launch arguments. Listed below are the launch arguments I had found through disassembling the macOS Runner (macOS used due to symbols remaining in binary). Explanations taken from this article will be quoted.
-
-game <file>
: Takes in a GameMaker WAD file and loads it upon the initialization of the runner -
-exit <file?>
: Seems to take a GameMaker WAD file, seemingly for GameMaker player (related toyyg_player_run
function?) -
-debug
: Enables debug mode forCPhysicsWorld
(Box2D?) and setsGraphicsPerf::ms_DisplayFlags
to2
-
-trace
: Setsg_fVMTrace
totrue
, which seems to invoke some sort of logging function whenVM::Exec
/DoCallScript
are called -
-vmtrace
: Setsg_fVMDebug
totrue
, doesn't seem to do anything? -
-ext
: Disables any extension function calls -
-noerrors
: Setsoption_displayerrors
tofalse
and hides error messages from being displayed -
-oldexec
Setsg_fVMUse
tofalse
, which is checked inVMFlipRequest
but seems to be unused -
-noaudio
: Setsg_fNoAudio
totrue
, which stops sound from being played
This switches off all audio in your game, no matter whether you are using the legacy sound functions or the new audio ones.
-
-inawindow
: Setsg_fInAWindow
totrue
, which overridesoption_fullscreen
when reading the GEN8 chunk
Forces the game to start in a window, even when set to run in fullscreen mode.
-
-yydebugpath
: Seems to allow for the runner to take in a.yydebug
file from the debugger? -
-record <file>
: Makes the runner record keyboard (and gamepad?) input and saves it to the given -
-steam
: Setsg_SteamWorkshop
totrue
, not to be confused with Steamworks this argument actually seems to have been used by the GMS1.4 Workshop runner -
-software
: Setsg_SoftwareVertexProcessing
totrue
Will force the game to use Software Vertex Processing instead of hardware for rendering the game graphics. This is especially useful for those PCs that are using an on-board Intel GFX chipset or show display issues on older machines.
-
-intel
: Setsg_bManualClear
&g_IntelHWMode
totrue
, see this article for more information
This will switch on a fix for bad Intel drivers, no matter what GPU is being used. This work around for those bad drivers will slow things down, giving a noticeable performance hit for your game, so if you do not need the fix do not use it.
-
-audiodebug
: Enables audio debugging, identically to theaudio_debug(true)
function -
-networkdebug
: Setsg_DebugNetworkOutput
totrue
, which seems to log a message whenyySocket::SendDataToEvent
(async networking function?),yySocket::SendWSPacket
(websockets), oryySocket::SendPacket
is called -
-vanillaGFX
: Setsg_bVanillaGFX
totrue
, which seems to be unused on macOS (todo: see if this changes anything on Windows) -
-playback <file>
: Setsg_IO_Playback
totrue
, is complimentary to the-record
argument and plays back the recorded inputs -
-output <file>
:
sends console output to the filename
-
-debugoutput <file>
:
sends debug messages and console output to the filename
-
-headless
: Setsg_fHeadless
,g_fExitAfterFirstRoomCreationCode
,g_fNoErrorWindow
, andg_fDisableWindow
totrue
, seems to run the first room's creation code and then exit -
-profiledump <file> <interval>
: Seems to dump the profiler (or debugger) output to the given every ? (todo: test this further) -
-sleepmargin <value>
: Overrides the set sleepmargin value -
-multivb
: Setsg_OverrideVBmethod
totrue
and setsg_UseSingleDynamicVB
tofalse
, untested but might be related to Vertex Buffers? -
-novb
: Setsg_OverrideVBmethod
andg_UseDrawPrimitiveUP
totrue
, again seems to be related to Vertex Buffers? -
-compresstextures
: Setsg_CompressTextures
totrue
, forces textures to be compressed upon loading at runtime -
-manualvsync
: Setsg_ManualVSync
totrue
(todo: find out what this does) -
-nodirectinput
: Setsg_NoDirectInput
totrue
(todo: find out what this does) -
-nosteamrestart
: Setsg_fDoSteamRestart
tofalse
, seems to allow for the game to be launched without Steam open
-dir
gmplayer:
gmplayer://