Command Line Arguments

This is a table of the various command line arguments that the Mod Launcher supports.

CommandLine.txt

As of 1.18, the Mod Launcher also supports reading command line arguments out of a file named "CommandLine.txt" placed next to its executable.

In this file, each argument and its parameters must be on a separate line. Parameters also should not have quotes around them where they normally would. The following is an example:

-watermarkopacity
1.0
-testing
-font
Comic Sans MS
20

As of 1.19, environment variables are supported in this file.

General

Command Line Argument Description Initial Release
-account Makes the Mod Launcher open directly into the account window. 1.22.3
-allowedmod "Name of Mod" Specify a mod name1 that will bypass -ignoreenabledmods respecting whether or not the user had it enabled. ?
-allowignoremodconflicts

Allows you to ignore mod conflicts when enabling mods.

 

As of 1.20, this also allows you to bypass conflicts detected when launching the game.

As of 1.22.4, this also allows you to skip the error message the Mod Launcher shows when you're using the minimum install of the game.

1.18
-allowpartialload Makes the cancel button on the loading window cancel loading halfway through keeping anything that was already loaded instead of closing the Mod Launcher. 1.18
-apiurl "DonutTeamURL"

Specify a custom Donut Team URL to use for Donut Team Account Integration.

 

Must be on donutteam.com, lucasstuff.com, localhost or a subdomain of those domains.

 

Example: https://api.donutteam.com/

1.18
-appid

This can be used to set a custom App ID for the Mod Launcher.

The App ID defaults to LucasSimpsonsHitAndRunModLauncher.

 

This also disables the updating of Jump Lists.

1.22
-noappid

Makes it to the Mod Launcher does not specify an App ID.

 

This also disables the updating of Jump Lists as they work considerably better with an ID (as they're not bound to the path the program is located at).

1.22
-commsoptoutdeauthenticate

This makes the "Deauthenticate" button on the Account window fully remove your account from both the main Mod Launcher and SHAR MP.

1.22
-compile "Name of Mod"

Specify a mod name1 to compile.

 

If the mod does not define an OutputPath in the[Compile] section of its Meta.ini, you must also use -outputpath.

?
-outputpath "C:\Path\Mod.lmlm"

Specify a folder to build the mod(s) to when using -compile.

 

The LMLM file(s) will be named after mod(s) folder.

?
-configuration "Configuration Name" Launch the Mod Launcher with a specific configuration if it exists. 1.21
-notitleconfiguration Makes it so the title of the current configuration is not added to the title of the window. 1.21
-crashes "C:\Path\Here" Makes the Mod Launcher save crash dumps at the specified path instead of in your Documents folder. ?
-debuglaunch Makes the Mod Launcher show a detailed message containing information about how it's going to launch the game when clicking Launch. 1.18.3
-debugloadhacks Enables additional console logging from Hack Support when loading hacks. 1.19
-loadhackspause Pauses the console after all hacks finish loading. 1.19
-disablehack "InternalName" Disable a specific hack with its InternalName. 1.21
-enabledmod "Name of Mod" Enables the specified mod1 if it's available. ?
-font "FontName" FontSize

Set a custom font for the entire program.

1.21
-fontscale

Set the scale of fonts.

 

This command line argument was accidentally removed in 1.19 and later restored in 1.21.

1.18
-forceencryption

Makes it so the Mod Launcher will always encrypt mods regardless of their RequiredLauncher or other criteria.

1.22.2
-forceupdatepinnedshortcuts

Makes the Mod Launcher always update pinned shortcuts on startup even if they already have an App ID as well as when the running instance does not.

1.22
-nofixpinnedshortcuts

Makes it so the Mod Launcher never updates pinned shortcuts on startup.

1.22
-fullrowselect

Makes the mods list have full row select. This causes various usability issues.

1.18.1
-hack "C:\Path\Here" Gives the Mod Launcher access to the hack at the specified path. ?
-hacks "C:\Path\Here" Gives the Mod Launcher access to the hacks in the specified path. ?
-ignoredefaultmodsettings Makes it so mod settings that were manually set to their default will no longer be bold despite being set. 1.22
-resetdefaultmodsettings Makes mod settings get unset when you manually put them back to their default value instead of remaining bold. 1.22
-ignoreenabledmods Makes the Mod Launcher ignore any mods or mod hacks the user has enabled, only respecting those enabled with -enabledmodor those that bypass this with -allowedmod. ?
-ignorehacks Makes the Mod Launcher ignore any hacks, only acknowledging those added with -hack or -hacks. ?
-ignorelaunchmodconflicts Makes the Mod Launcher ignore any conflicts between mods detected when launching the game. 1.20
-ignoremods Makes the Mod Launcher ignore any mods, only acknowledging those added with -mod or -mods. ?
-ignorerequiredlauncher Makes the Mod Launcher ignore the RequiredLauncher property on mods and hacks. 1.18
-ignorerequiredsystem Allows hacks that do not support the host operating system to be loaded and enabled. 1.21
-launch Launches the game with the Mod Launcher with any mods you last had enabled (unless other arguments disable them). 1.10
-wait Makes the Mod Launcher stay running in the background when using -launch until the game exits. ?
-launchersettings Launches the Mod Launcher directly into Launcher Settings. 1.18
-legacyfilesystem

Makes the Mod Launcher use its old virtual file system instead of the new one added in 1.22.

1.22
-loadonmainthread

Makes the Mod Launcher load mods and hacks on the main thread instead of a background thread.

 

This was the default behaviour prior to 1.18.

1.18
-mod "C:\Path\Here" Gives the Mod Launcher access to the mod at the specified path. ?
-mods "C:\Path\Here" Gives the Mod Launcher access to the mods at the specified path. ?
-accountwindowtoken Re-enables the "token" field on the "Account..." window that was removed in 1.22. 1.22
-updatejumplist This makes the Mod Launcher update its jump list even if you use -noappid. 1.22
-noasyncwebrequests This makes it so all web requests are not asynchronous. 1.22.3
-noboldsettings This makes it so Mod Settings are never displayed in bold. 1.22
-nocheckforupdates This prevents the Mod Launcher from checking for updates regardless of your setting. 1.22.4
-nocheckmodchanges Makes it so the Mod Launcher does not keep track of Meta.ini files changing. 1.21
-nocloselaunchertickbox Disables the "Close Launcher" tickbox. 1.21
-nocommandlinefile Prevents the Mod Launcher from loading command line arguments out of CommandLine.txt. 1.20
-noconfiguration Makes the Mod Launcher start on the Main configuration. 1.22
-nocurl Prevents the Mod Launcher from using libcurl. 1.17
-nodeleteold Prevents the Mod Launcher from deleting hacks for old versions of the Mod Launcher. Instead it will show an error when trying to load the hack and ignore it.

This was broken in 1.21 but works again as of 1.22.
1.20
-nodotnetcheck Disables the Mod Launcher checking if you have .NET 3.5 installed. 1.18
-nodtcomms Disables Donut Team Account Integration regardless of your setting in the Launcher Settings. 1.23
-noedition Disables the "Edition" feature of Mods and makes it so main mods that have an Edition specified show their title like normal main mods would. 1.22
-nofilesystem Fully disables the Mod Launcher's virtual filesystem making it basically unusable as far as launching the game goes. 1.22
-nogamemodicon Makes it to the game window will not use the icon of the current Main Mod or Edition. 1.22
-nohacksupportcheck Disables a check added in 1.22.4 where the Mod Launcher will check if Hack Support is loaded and show an error message if it isn't after starting. 1.22.4
-nojumplist Makes the Mod Launcher clear its jump list on startup. 1.22
-noload Prevents the Mod Launcher from loading any mods or hacks on startup. This does not prevent them from being loaded with the Reload button. 1.18
-noloadhide Makes it so the main window of the Mod Launcher is not hidden while the loading window is visible. 1.18
-noloadingwindowlock Makes it so the loading window is not locked to the main window when using -noloadhide. 1.18
-noloadprogress

Makes the Mod Launcher silently load mods and hacks in the background instead of showing the loading window.

 

This was the default behaviour prior to 1.17.

1.18
-nomodslabel Hides the mods label on the non-Pages view. 1.18.1
-nonmodmods Adds a "Non-mods" category to the "General" tab that lets you enable non-mod hacks (such as CustomFiles) as though they are normal mods. 1.18
-proxy PROXYADDR

Allows you to define a custom proxy for the Mod Launcher to route through.

1.22.4
-noproxy

Makes the new web requests system added in 1.22.2 bypass any system level proxy.

1.22.2
-nosettings

Makes it so the Mod Launcher does not load your settings and does not save any settings (though changed settings will be used for the current session and thrown away when you close the launcher).

1.18
-noscanmodfiles

Makes the Mod Launcher skip scanning mod files when loading mods. This drastically reduces the loading time of the Mod Launcher however modified dates and conflict checking between files in the CustomFiles folders of non-compiled mods will break. The size of any such mods will also be unavailable in the Advanced tab of the mod's information. The "Show Newest File" option in the right click menu of the mod in the mods list will also not work properly.

1.17
-nossl Prevents the Mod Launcher from using SSL (HTTPS). 1.17
-notls12 Prevents the Mod Launcher from using TLS 1.2. 1.17
-nounhandledexceptionhandler

Disables the Mod Launcher showing a message box for otherwise unhandled exceptions. Instead it will crash in the usual manner programs do.

1.18
-nounreleased

Disables the Unreleased page on the mods list and makes Unreleased mods appear on the other pages they would otherwise be on.

1.22
-nounrequesthackevents

Makes it so hacks do not unrequest hack events they're not using after the first time they're told about them resulting in a detriment to the game's performance.

1.22
-noupdatejumplist

Makes it so the Mod Launcher will not update its jump lists.

 

This disables the "Jump List" tick box on the "Manage Configurations..." window. If a configuration in the Jump List is deleted with this enabled, it will not be removed from the Jump List.

1.22.
-noupdatelink

Hides the update hyperlink on the Main Window added in 1.22.

1.22
-nowatermark

Disables the watermark of the Mod Launcher icon in the Mods list.

1.20
-saveunreleased

Makes the Mod Launcher save when you're on the "Unreleased" tab when closing the program.

1.22
-scanallmodfiles

Makes the Mod Launcher scan all mod files regardless of whether or not they will compile in. This will cause the mod's modified date to potentially appear differently as well as causing its size to appear larger than it would otherwise. The "Show Newest File" option in the right click menu of the mod in the mods list may also show a different file than it would otherwise.

 

This was the default behaviour prior to 1.18.

1.18
-selectlanguage This forces the Mod Launcher's select language dialogue to always show up on startup. 1.22.4
-noselectlanguage This disables the Mod Launcher's select language dialogue. 1.22.4
-settings "Name of Mod" Launches the Mod Launcher directly into the settings of the specified mod1.

As of 1.22, this now includes the current configuration in the Settings window title unless you're using -notitleconfiguration.
?
-slowload Makes the Mod Launcher wait 100ms between each mod or hack that's loaded. 1.18
-spoofdotnetcheck This forces the Mod Launcher to show its message box about downloading .NET 3.5. 1.21
-suspend

Makes the Mod Launcher suspend the game before its code starts so you can attach a debugger.

 

As of 1.22 the message box now shows up earlier.

1.18.2
-testing

Enables some internal testing features of the Mod Launcher such as more strict assert messages.

 

As of 1.19, there is now an IsTesting CustomFiles Lua Function that returns true when this is enabled.

As of 1.22 this now shows an assert if the game is terminated but takes more than 1 second to exit. This version also adds a "Force Update Pinned Shortcuts" option to the "Open.." menu on the main window to update any pinned shortcuts to contain the Mod Launcher's App ID. This version also makes the "Hacks" category available on the "Settings" and "Developer" pages.

1.18.2
-updatecheckurl

Allows you to override the URL used to check for updates.

 

Must be on donutteam.com, lucasstuff.com, localhost or a subdomain of those domains.

 

Example: https://api.donutteam.com/

1.22.4
-updatemessage

Restores the old update message box that was replaced with a hyperlink on the Main Window in 1.22.

1.22
-useragent

Specify a custom user agent for the Mod Launcher.

 

Example:LucasSimpsonsHitAndRunModLauncher/1.19 (Windows NT 6.1; WOW64)

1.18.2
-uppercasetext

Makes all the localisable text in the Mod Launcher and messages it shows uppercase.

1.23
-lowercasetext

Makes all the localisable text in the Mod Launcher and messages it shows lowercase.

1.23
-watermarkopacity OPACITY

Lets you set the opacity of the watermark in the Mods List. Replace "OPACITY" with a number from 0 to 1.
Defaults to 0.24.

1.22

Hack Support Hack

These command line arguments pertain to Hack Support which powers all of the other hacks.

Command Line Argument Description Initial Release
-breakgame Makes it so this hack will break point the game as soon as possible after it gets loaded into it. 1.22.4
-gameappid Makes the game use the same App ID as the Mod Launcher which results in them sharing a taskbar button instead of appearing separately. 1.22
-ignoremissingaddresses Makes it so this hack will not assert if Hack Support tries to patch the game, call game code or read/write variables if there is no address for the current game version. 1.22
-installallsharedhacks
Makes the so all shared hacks get installed regardless of whether or not they're actually in use. 1.22
-language INDEX

This allows you to override the language of the game.

 

0 for English, 1 for French, 2 for German and 4 for Spanish.

 

This doesn't work in the original English release of the game.

 

This still requires you to provide the dialog RCF for the language you're overriding to.

1.22.4
-noaudiodevicecheck Disables an error message added in 1.22.4 that shows up if you try starting the game with no audio devices connected or when the Windows audio service isn't running. 1.22.4
-noblockredundantreset Makes it so this hack does NOT block the game from resetting it Direct3D device when it's unnecessary. 1.23
-nohacklanguagelocalisation Makes it so hacks do not support language localisation. 1.22.4
-nohandlefilenotfound Makes it so this hack does not handle the message shown when files are not found, instead showing the game's original message. 1.23
-nohardwareskinning Disables hardware skinning and instead makes the game use different code for skins. 1.23
-hardwareskinning Blocks hacks from disabling hardware skinning. 1.23
-nohookd3d Disables this hack hooking Direct3D. Enabling this breaks functionality in a great many hacks. Probably don't use this. 1.22
-hookd3d Forces this hack to hook Direct3D regardless of whether any enabled hacks require it to. 1.23
-noreloadcarcameradata Makes it so car camera data does not get reloaded when a car gets loaded (such as when calling it from the phone booth). 1.23
-noresourcemeta Disables Hack Support reading information out of the Meta files for Mods and Hacks.

This makes the Mod Launcher use the internal names of hacks in various places and makes Lua functions that get Meta information (such as GetModTitle and GetModVersion) return nil.
1.22.1

Anti-aliasing Hack

These command line arguments affect whether or not the Anti-aliasing hack will be displayed in the mod's list.

Command Line Argument Description Initial Release
-nomsaa Makes the launcher skip the check for what MSAA modes are supported which disables and hides this hack from the mods list. 1.21
-forcemsaa Makes the launcher show every MSAA mode in the hack's settings regardless of what is supported by your graphics card. 1.21

Custom Car Support Hack

These command line arguments only do something when the Custom Car Support hack is enabled.

Command Line Argument Description Initial Release
-nocarindexmapping Disables the hack dynamically re-mapping car indices to avoid conflicts between mods. 1.22

Custom Files Hack

These command line arguments only do something when the Custom Files hack is enabled.

Command Line Argument Description Initial Release
-noadditionalfiles Disables the AdditionalFiles folder. This will probably break mods that rely on that folder. 1.22
-slowgameload MILLISECONDS Makes the game wait the specified amount of milliseconds for each byte of any file the game reads to artificially increase load times. 1.22

Debug Text Hack

These command line arguments only do something when the Debug Text hack is enabled.

Command Line Argument Description Initial Release
-debugtextmode "MODENAME" Launches the game with a specific debug mode enabled. 1.22
-nofitdebugtext Disables the debug text being re-sized to fit on the screen. 1.22
-noscaledebugtext Disables the debug text being scaled according to the window size. 1.22
-nodebugtextgroups Disables grouping of multiple pages registered by a single Mod/Hack. 1.22

Direct3D 9 Hack

These command line arguments only do something when the Direct3D 9 hack is enabled.

Command Line Argument Description Initial Release
-fvf Enables support for fixed function vertex type. 1.23
-noqueryd3d9 Prevents other hacks from accessing or knowing they're running in Direct3D 9. 1.23

Lens Flare Hack

These command line arguments only do something when the Lens Flare hack is enabled.

Command Line Argument Description Initial Release
-debugvisibilitytest Makes the hack render the Visibility Test mesh instead of the actual lens flare. 1.19
-deactivatedworldspherelensflares Makes Lens Flares inside deactivated World Spheres get enqueued anyways. 1.20
-noalpharendertarget Makes the hack use a render target that doesn't have an alpha channel. This is noticeable when using -debugscreenshots. 1.19
-noocclusion Makes it so the hack does not use a occlusion query when the Direct3D 9 hack is enabled. 1.23
-occlusionsleep Forces the hack to wait 1 millisecond while waiting for occlusion. 1.23

Modern Computer Support Hack

These command line arguments affect the Modern Computer Support hack which is always enabled.

Command Line Argument Description Initial Release
-allowzerodeltatime Allows the game to exceed 1000 FPS which can cause the delta time to be 0 which can result in the player's position becoming NaN among other issues. 1.21

Resizable Window

These command line arguments only do something when the Resizable Window hack is enabled.

Command Line Argument Description Initial Release
-allowzerowindowsize Allows you to resize the client area of the game below 1 pixel on the width or height. 1.23
-nomaintainwindowcentre Prevents this hack from trying to maintain the centre point of the game window when the game resizes it. 1.23

Screenshots Hack

These command line arguments only do something when the Screenshots hack is enabled.

Command Line Argument Description Initial Release
-continuousscreenshots

Makes it so holding the F12 key will rapidly take screenshots.

 

This was the default behaviour prior to 1.22.

1.22
-debugscreenshots Makes the hack save multiple screenshots of a single frame with various differences. 1.19

XInput Hack

These command line arguments only do something when the XInput hack is enabled.

Command Line Argument Description Initial Release
-ignorepacketnumber

Makes the hack ignore whether or not the State packet number changed.

1.23
-nogetstateex

Makes the hack use XInputGetState function instead of a similar undocumented function. Using this argument will prevent you from mapping controls to the Guide button.

1.23
-noxinput

This makes it so the hack does not make the game use XInput.

 

Despite this seeming counter-intuitive, it would still allow the other features of the hack to work while Windows' XInput-to-DirectInput backwards compatibility handles inputs.

1.23.1
-noxinputdisable

Makes it so XInput does not get disabled when the window is defocused.

1.23.1
-noxinputenable

Makes it so the hack doesn't call XInputEnable if it's available. Instead it will use a function that replicates its functionality (the same one used by default when the function isn't available).

1.23

Notes

1 "Name of Mod" refers to the name of a mod's folder or LMLM file, not its InternalName.


Revision #30
Created Thu, Aug 2, 2018 4:18 AM by Loren Goodwin
Updated Tue, May 21, 2019 12:55 AM by Loren Goodwin