Lucas' Simpsons Hit & Run Mod Launcher

This book documents all of the features, hacks and included mods that the Mod Launcher comes with.

Introduction

What is the Mod Launcher?

Lucas' Simpsons Hit & Run Mod Launcher is the tool at the heart of the Hit & Run modding scene. It ships with a large array of powerful hacks that mods can leverage to achieve all sorts of things, all without ever modifying a single file in your game install.

Download

This tool is available from the Donut Team downloads page.

Included Hacks

See Included Hacks.

Included Mods

See Included Mods.

Settings

See Mod Launcher Settings.

Command Line Arguments

See Command Line Arguments.

Donut Team Account Integration

See Donut Team Account Integration.

Version History

Version History

1.19

This update was released on October 2nd, 2018.

Highlights

  • Additional Script Functionality: Vehicle Character Commands
  • Language Localization Support for the Mod Launcher's Interface
    • The Mod Launcher still only comes in English.
  • Lens Flare Hack
  • Video Texture Support Hack

General

  • Added support for Language Localization.
  • Added "Limit to Single Core" to the "Game" tab of the Launcher's settings.
  • Added "dbghelp.dll" to the DLLs folder. This is used to save crash dumps.
  • Made the main window start on the screen the loading window was last on.
  • Made the error message shown when failing to load mods show after the main window.
  • Made the game only start in the correct width and height when starting windowed.
  • Made the loading window appear on the screen the main window was on when reloading.
  • Made the main window re-centre to the screen the loading window was moved to if it was moved to another screen while reloading.
  • Made the Mod Launcher restart if the shift key is held down when reloading all mods.
  • Made the unhandled exception message have an error icon instead of no icon.
  • Made "Size" on the Advanced tab of the Mod information panel available when using -noscanmodfiles for hacks and compiled mods.
  • Removed limitations on how many mods, hacks and mod settings could be injected into the game.
    • You don't want to know.

Command Line Arguments

  • Added -debugloadhacks.
  • Added -debugscreenshots.
  • Added -debugvisibilitytest.
  • Added -loadhackspause.
  • Added -noalpharendertarget.
  • Fixed an issue where the icon of the Mod Settings window when using "-settings" where the default .NET icon instead of the Mod Launcher's Icon.
  • Fixed a crash when using "-launch" with "Start in Correct Resolution" enabled (as is the default).

Hack: Additional Script Functionality

This update brings about the ability to add characters to the player's car or stage vehicles.

You can use this exciting new functionality to have passengers accompany the player in missions and just have characters present in a car.

CON Commands
  • Added the "AddVehicleCharacter" command.
  • Added the "SetVehicleCharacterAnimation" command.
  • Added the "SetVehicleCharacterJumpOut" command.
  • Added the "SetVehicleCharacterScale" command.
  • Added the "SetVehicleCharacterSuppressionCharacter" command.
  • Added the "SetVehicleCharacterVisible" command.

MFK Commands
  • Added the "AddStageVehicleCharacter" command.
  • Added the "RemoveStageVehicleCharacter" command.
  • Added the "SetStageVehicleCharacterAnimation" command.
  • Added the "SetStageVehicleCharacterJumpOut" command.
  • Added the "SetStageVehicleCharacterScale" command.
  • Added the "SetStageVehicleCharacterVisible" command.
  • Added the "SetStageVehicleAllowSeatSlide" command.
  • Updated "SetStageCharacterModel" to default the second argument to the player's current animation set instead of requiring the argument.

Hack: Bug Fixes

  • Added "Actors" > "Restore Wasp Collision".
    • This fixes an issue where destroying a certain number of wasps disables their collision until the level is fully reloaded.
  • Changed the tooltip for "Character Rotations" to be more specific about what it does. The hack's description was also updated to reflect this change.
  • Made "Fix Steering Animations" also fix the steering/swaying animation cancelling immediately/starting again repeatedly.

Hack: Custom Audio Format Support

Added support for Lua Path Handler Redirections on RSD files to FLAC and Ogg files.

Hack: Custom Files

General
  • Made CustomFiles.lua execute after all hacks that are supposed to be loaded are loaded.
  • Made this hack only mount "CustomFiles" folders that exist.
    • This change can dramatically improve performance if you have lots of mods enabled but only a few have CustomFiles folders (like Mod Hacks for instance).
Lua Scripting
  • Added "GetLauncherVersion". This returns the current version of the Mod Launcher.
  • Added "GetMainMod". This returns the InternalName of the current main mod (if there is one).
  • Added "GetSettings". This returns the settings of the current mod (or the specified mod) in a Lua table.
  • Added "IsTesting". This checks if the user is has the Mod Launcher's testing mode enabled.
  • Added "UseCallbacks". This is an advanced function for handling files with Lua that may or may not have a use case.
  • Fixed an issue where "ComparePaths" was always case sensitive and always slash sensitive.

Hack: Debug Text

General
  • Added an "actors" Page.
  • Added a "characters" Page.
  • Added a "loaded characters" Page.
  • Made Ctrl+C copy the current page text to clipboard.
    • Added "Allow Copying with Ctrl+C" to the "Advanced" tab of the hacks settings to disable that.

"cams" Page

Made this page exclude null cameras.

"intersects" Page

Made this page not say "Y: " before the Y and "Z: " before the Z of "Intersect triangle pos 3".

"missions" Page

Made this page exclude null missions.

"mission" Page

Made this page show "null" for null objectives instead of crashing.
This is helpful for debugging in the event the stage's objective is not getting added.

"traffic" Page

Made this page render the segments of the road the car is currently on (and the previous roads segments if the car is on an intersection).

"triggers" Page
  • Made this page include the type number of locators in brackets after the type name.
  • Made sphere triggers render as spheres now instead of boxes.

Hack: Debug Test

General

Removed the F9 dialog to list all entered triggers.

Menus Page

Made "Main Menu" > "No Glow Hide" work in the demo version of the game even though this version skips the Main Menu entirely.

Graphics Page
  • Added "No Texture/Alpha Operations/Arguments".
  • Added "PDDI Windowed".
  • Added "No Force Back-faces".
  • Removed "Lens Flare".
Speedometer Page

Made "Use Miles Per Hour" and "Show Units" work in the demo version of the game.

Vehicles Page
  • Added "Lisa Y Offset".
  • Made "Target Player" work in game versions other than Release English.
Sky Page

Made "Scale" and "Position" work in game versions other than Release English.

Miscellaneous Page
  • Made "Cursor" > "Show Windows Cursor" work in game versions other than Release English.
  • Made "No Splash Screen Loading" work in the demo version.

Hack: Interprocess Communication

Fixed an issue where the Pure3D Editor would hang when selecting locators or right clicking on 3D views in some cases with the following changes:

  • Made this hack still respond if the game is in a blocking modal loop or minimized while in fullscreen mode..
  • Made this hack uninitialise if the game crashes.

Hack: Modern Computer Support

Fixed an issue in the game where the border was not removed when in fullscreen (particularly noticable on Windows 10).

Hack: Lens Flare

Added this new hack. This makes Lens Flares work just like the console releases of the game.

Hack: Resizable Window

  • Fixed issues when switching from a resizable window to fullscreen.
  • Made the game not change its resolution when loading its settings if the window size is changed before then.
  • Made the game maintain its center when changing resolution instead of re-recentering on the screen.
  • Made the game continue processing and rendering when a Windows context menu (like you'd get when right clicking the caption of the window) is open.

Hack: Video Texture Support

Added this new hack.

Version History

1.18.3

This update was released on July 12th, 2018.

Launcher Window

  • Added a sprinkle of unspeakable evil to mitigate the game hanging on exit in certain cases..
  • Fixed an issue where the Mod Launcher update dialog could appear over Mod Settings windows.
  • Fixed an issue where "3DPhoneBoothPreviewSupport.ini" wasn't included when compiling mods.
  • Made the game start at the resolution selected by the user.
    • This behaviour can be disabled with the new "Start in Correct Resolution" setting in the Game tab of the Launcher Settings.

Hack: Debug Test

Graphics Page

Removed "Default Resolution". This is now done automatically as mentioned above.

Hack: Debug Text

General

Made the in-world text of the "triggers", "character joints", "car joints", "dyna phys", "static phys", "road segments" and "car matrix" pages render under the frontend.

"fences" Page

Added this page. This page renders Fence collision in the world.

"intersect" Page
  • Added "Tree node min" and "Tree node max".
  • Added "Tree node parent offset".
  • Changed "Intersect normal" to "Intersect triangle normal".
  • Now renders the current intersect on top of the world.
  • Now shows the memory location of the current Intersect.
  • Now shows the vertex positions of the current Intersect triangle.
"paths" Page

Added this page. This page renders pedestrian Paths on top of the world.

"tree" Page

Now renders the bounding box of the tree node and renders all of the intersects inside it.

Hack: Modern Computer Support

Now outputs the detected OS version to the Console on startup.

Version History

1.18.2

This update was released on July 8th, 2018.

Launcher Window

  • Fixed an issue where the Mod Launcher update dialog could appear while loading mods.
  • Fixed an issue where the Mod Launcher update dialog could appear over the account window.
  • Fixed an issue where cancelling the Launcher Settings dialog would prevent the Mod Launcher update dialog from appearing.

Hack: 3D Phone Booth Preview Support

Made the game assert when loading if Phonebooth.pag in art\frontend\scrooby\ingame.p3d is missing the PreviewWindowRewardFG or RewardBG frontend elements required for the hack to work.

Hack: Bug Fixes

Fixed an issue where "BugFixes.ini" wasn't required and wasn't included when compiling mods that require the hack.

Hack: Custom Interior Support

Fixed a crash on startup that occurred with certain game executables.

Hack: Custom Shop Support

Fixed a crash on startup that occurred with certain game executables in certain circumstances:

  • If the mod used the "Locator" attribute on a "Selector" element inside a "PhoneBooth" element.
  • If the mod used a "Car" element inside a "FreeItems" element inside a "PhoneBooth element.

Hack: Debug Text

"states and actions" Page
  • Added " (no wait)" after actions that their set does not wait for.
  • Added "Walker locomotion action time", "Walker locomotive action next idle animation time" and "Walker locomotive action can play idle animation"
"lights" page

Removed "enabled" for lights and made disabled lights instead show " (disabled)" after them.

Hack: Debug Test

Miscellaneous Page

Added "No First Stage Repeat".

Version History

1.18.1

This update was released on July 5th, 2018.

Launcher Window

Mods List

Made the mods list remember which page it was on when exiting the Launcher and re-opening it.

Hack: 3D Phone Booth Preview Support

  • Fixed an issue when not using "DarkenLockedCars" where all cars in the phone booth would appear dark after closing and opening it.
  • Fixed interference between the lights in the phone booth and the lights in the car shop.

Hack: Additional Script Functionality

New Features
  • Added a new "none" display mode for SetCondDisplay. This mode is usable on all ASF conditions.
  • Added a new "hitandrunlost" condition. This will fail the player if they lose the Hit & Run they have during the stage.
  • Added a new "SetStageVehicleNoDestroyedJumpOut" command. This prevents a driver from jumping out of a car should it explode.
  • Added a new "SetStageAllowMissionCancel" command. This prevents the player from restarting or cancelling the mission on the stage.
  • Made ASF commands that take a boolean as an argument accept "true" or "false" as well as 0 or 1 instead of accepting any integer and treating it as true if it's not 0.
Bug Fixes
  • Fixed an issue where calling SetStageCharacterModel on a stage that calls RESET_TO_HERE that is preceded by another stage that calls SetStageCharacterModel (with the same model and animation set) didn't work.
  • Fixed an issue where pressing enter to continue after restarting from a failed delayed condition in a reset-in-car mission with "Action/Get Out" bound to enter would cause you to exit your vehicle after the mission restarted.
  • Fixed an issue where "hitandrunlost" stages that also call SetStageHitAndRun(100); to trigger a hit and run would automatically complete if you entered the stage without already having a Hit & Run.

Hack: Debug Test

Miscellaneous Page
  • Added "No Go To Objective Camera Focus" .
  • Added "Allow Cancel Initial Walk".

Hack: Debug Text

Added a "lights" page.

Hack: Force Mission Select Level Reload

Moved from the Settings page to the Developer page.

Other Additions & Changes

Made it so hacks in the "Hacks" folder whose versions do not match that of the Launcher get sent to the Recycle Bin instead of showing an error message.

Version History

1.18

This update was released on July 2nd, 2018.

Launcher Window

General
  • Added a "-launchersettings" command line argument that will launch the launcher directly into Launcher Settings.
  • Added an unhandled exception handler so the Launcher will provide helpful information instead of crashing.
  • Added "Game Install Virtual Store" to the "Open..." menu.
  • Changed how the account window is displayed when launching the Mod Launcher for the first time.
  • Changed the order that pressing the tab key cycles through the controls on various windows to be more appropriate.
  • Changed the progress bar when loading mods to no longer ease instead of waiting half a second for it to catch up.
  • Fixed a crash on Wine when selecting mods.
  • Fixed a random crash when communicating with the Donut Team website for Donut Team Account Integration.
  • Fixed an issue where adding an individual LMLM file in Launcher Settings caused it's Title (if there's no Title) and InternalName (if there's no InternalName) to include the LMLM file extension.
    • If you have mods affected by this issue, you will need to remove and re-add them.
  • Fixed the main window not being focused sometimes after loading mods.
  • Improved some error messages to be more specific.
  • Made changing the selected mod(s) smoother.
  • Made "Saved Games" in the "Open..." menu show "Mod Launcher" in brackets if "Always Keep Saved Games Seperate" is enabled.
  • Made "Saved Games" and "Screenshots" options in the "Open..." menu show the current Main mod's name in brackets (if one is enabled).
  • Made mods compiled with no properties in their Miscellaneous section of their Meta.ini able to load.
  • Made scanning mod files only include stuff that would be included when compiling (including custom rules in a mod's Compile section).
  • Made the entire launcher properly support different DPIs.
  • Made the loading window have the Mod Launcher icon in it's caption.
  • Made the mod launcher support reading command line arguments out of the "CommandLine.txt" placed next to it (if one exists).
    • Command line arguments specified in this file should be separated by new lines.
  • When compiling one or more mods, there will now be a window with a cancel button instead of freezing the main window.

Mods List

This part of the launcher sees a significant change in this update.

Introducing Pages! This divides mods and hacks into the "General", "Setting" and "Developer" tabs.

LucasModLauncher_MainWindow_1.18.png

There's also an "Unreleased" tab which only shows up if there are mods in it. You can use this tab to hide a top secret mod from prying eyes by adding this line to your the Miscellaneous section of a mod:

Unreleased=1

If you're not a fan, this can be disabled by right-clicking the mods list and unticking "Pages" to use the old mods list.

There were also these changes to the Mods list:

  • Added a setting to show enabled mods first in the right-click menu of the Mods list.
  • Added an "Enabled Non-favourites" category.
  • Added the ability to reload individual mod(s) by right clicking them.
    • Not supported on Frameworks at this time.
  • Made it so the "Output Path Only" and "Decompilable Only" right-click options are not remembered when restarting the Mod Launcher.
  • Made the mods list update before the mod load error message is shown.
  • Made the watermark work on Windows XP.
  • Made ticking and unticking multiple mods smoother.
Mod Information
  • Made file sizes of mods show 2 decimal places instead of 3 significant figures with the potential of exponents.
  • Made mod information not show a "Miscellaneous" category if no categories are defined.
  • Made mod information show "No information provided." if the mod provides none.
Launcher Settings

Launcher settings got a complete redesign in this version. There were also the following additions and changes:

  • Added "Show Message on Crash" to the Game tab.
  • Added "Donut Team Account Integration Support" to the Launcher tab.
    • If you're opted in, this setting can be used to temporarily opt out without removing your credentials.
    • This fully disables this functionality including the button on the main window.
  • Added "Close to Tray" to the Launcher tab.
  • Added "DPI Aware" to the Launcher tab. This makes the Launcher DPI Aware on Windows 7 or newer.
  • Made "Terminate on Crash" not work if a debugger is attached to the game.
  • Made clicking "OK" on the Launcher Settings window only reload mods if any settings that affect mods were changed.
  • Made it so licenses are listed in alphabetical order.

Mod Configuration (Meta.ini)

  • Added the "LegacyResource" section which allows mods to supersede other mods.
  • Added support for multiple internal names.
  • Added support for "Colour" settings. These aren't very useful for mods at this time.
  • Made the "Default" property on "Text" settings optional instead of crashing if it's missing.

Hack: 3D Phone Booth Preview Support

Added this new hack. This hack adds support for 3D Car Previews in the Phone Booth (similar to those found in Car Shops).

Learn more on the Documentation Website.

Hack: Additional Script Functionality

Added this new hack. This hack adds several new mission objectives, mission conditions, script commands and other new script functionality.

Learn more on the Documentation Website.

Hack: Aspect Ratio Support

  • Added a new FOV mode called "Average".
  • Fixed an issue that caused the aspect ratio to start off corrupt if the Resizable Window hack's "Start Maximised" setting was enabled.

Hack: Bug Fixes

  • Added a fix for a crash related to the options menu and the Unlock All Cameras cheat.
  • Added a fix for the crash that happens if the game is not focused fast enough on the license screen.
  • Moved the Main Menu Cheat Code Enter crash fix to the new Crashes group.

Hack: Custom Audio Support

Added this new hack. This allows you to control some audio related features of the game such as starting ambiance for story missions.

Learn more on the Documentation Website.

Hack: Custom Car Support

Added the "PreviewScale" property. This allows you to set a custom scale for the car when it's in a car shop.

Hack: Custom Car Shop Support

Removed this hack. See the Custom Shop Support section below.

Hack: Custom Files

Added a third argument to the "DirectoryGetEntries" function called "EndToStart" which returns the list of files and folders in reverse order.

Hack: Custom Shop Support

Added this new hack. This hack allows you to specify custom NPCs for car shops and allows you to blacklist or whitelist sars and skins at specific phone booths and skin shops respectively.

Learn more on the Documentation Website.

Hack: Debug Checks

  • Made the hack use Radical's official chunk names.
    • You can revert to the old names by using the new "Use Legacy Names" setting in the hack's settings.
  • Made "Experimental Missing Locator Detection" work outside the Release English version of the game.

Hack: Debug Test

Menus Page
  • Removed "Force Mission Select Level Reload".
  • Removed "No Cursor Until Mouse Move".

Graphics Page

Added "Default Resolution". This allows you to configure the default resolution of the game window before the game loads your settings.

Debug Page
  • Removed "Ignore Suppressed Drivers".
  • Removed "Starting Coins".
Vehicles Page

Added "No Destroyed Car Jump Out".

Audio Page

Added this page.

  • Added "Force Level RMS". This setting allows you to force a specific level's RMS file to always be loaded/used.
  • Added "No Pause Audio Fade".
Miscellaneous Page
  • Added "Disable Window Ghosting".
  • Added "No Handle File Not Found".
  • Added "Use Camera Position".
  • Added "No Animated Camera Letterbox".
  • Added "Use Tracking Heaps".
  • Removed "No Suppressed Drivers" (yes, there were two of these settings).
Other
  • Made the K Key reload the music RMS file and trigger an event named "Test" if it exists.
  • Made Shift+F10 fail the first condition of the active stage (if the stage has any conditions).

Hack: Debug Text Hack

  • Added settings that allow you to configure the look and feel of the hack and which pages are visible.
  • Added a "car matrix" page.
  • Added a "memory" page with information on a few different heaps.
  • Added a "music" page with various information about the currently loaded RMS files.
  • Added a "road segements" page that draws road segments in the world with names.
  • Fixed a crash when going to the "root tree node and animated icons" page when not ingame.
  • Fixed a crash with the "root tree node and animated icons" page while loading.
  • Fixed lag on the "dyna phys" and "static phys" pages while loading.
  • Made the hack work during movies.
  • Made the hack use Radical's official chunk names.
    • You can revert to the old names by using the new "Use Legacy Names" setting on the Advanced tab of the hack's settings.
  • Made the "car joints" and "character joints" pages show the joints in the world instead of listing them.
  • Made the "regions" page also show the current and loaded interior.
  • Made the "triggers" page list triggers the player is in and show triggers as boxes with names in the world.
  • Made "Animated icons" on the "root tree node and animated icons" page work outside the Release English version of the game.
  • Made "Contact car traffic locomotion AI segment" on the "traffic" page now include the road segment name in brackets.
  • Made the hack check for a font called "DebugText" and use that if it exists.

Hack: FLAC Support

Added this new hack.

This hack adds support for using FLAC files in place of RSD files.

Learn more on the Documentation Website.

Hack: Increased Reward Limits

  • Made it so the game won't get corrupt when trying to add more than 60 car health values to the save file. It now shows an assert message when trying to add more than 60 (except for when the mod is being used in Multiplayer).
  • Removed the assert when trying to add more than 60 reward cars.
  • Removed the limit of 64 reward cars.
    • NOTE: There is still a limit of 64 cars in one phonebooth but you can use CustomShopSupport to spread the cars across multiple phonebooths.

Hack: Increased Video Resolution Support

This hack now removes memory restrictions when playing RMV files.

Hack: Modern Computer Support

Made non-english versions of the game use 200,000hz as the maximum sample rate like the Release English version instead of 100,000hz.

Hack: NVIDIA Highlights

Added this new hack.

This hack adds support for NVIDIA Highlights.

Information on what this feature is can be found here.

Hack: Ogg Vorbis Support

Added this new hack.

This hack adds support for using Ogg files in place of RSD files.

Learn more on the Documentation Website.

Hack: Screenshots

  • Fixed an issue where the default screenshot sound did not work on Windows XP.
  • Fixed this hack failing to take screenshots on Wine or Oracle VM VirtualBox Guest Additions.

Other Additions & Changes

The following hacks were moved to the new Settings page:

  • Aspect Ratio Support
  • Borderless
  • Bug Fixes
  • Discord Rich Presence
  • Flippable Cars
  • Frame Limiter
  • HUD Map Ignore Player Height
  • Interior Jumping
  • Interior Kicking
  • Interior Sprinting
  • Multiple Instance Support (no longer hidden by default)
  • No Automatic Saved Game Load
  • No Cheats (no longer hidden by default)
  • No Fast Car Reset
  • No Inactive Dynamic Object Collisions
  • No Introduction Movies
  • No Jump Limit
  • No Mission Start Cameras
  • No Time Limits
  • Replayable Bonus Missions
  • Resizable Window
  • Screenshots
  • Unlock All Missions


The following mods were moved to the new Settings page:

  • No HUD
  • No Traffic
  • Repair Car On Reset
  • Speedometer
  • Text Names
  • Unlock All Rewards

The following hacks were moved to the new Developer page:

  • Console
  • Debug Checkes
  • Debug Hashes
  • Debug Test (no longer hidden by default)
  • Debug Text

The following new hacks were added to the Settings page:

  • Force Mission Select Level Reload
  • No Cursor Until Mouse Move
  • No Mute on Defocus
  • No Pause on Defocus
  • Skip Main Menu
  • Skippable Start Cameras
  • Starting Coins
Version History

Older Versions

These forum threads document all of the important changes from versions 1.11 to 1.17.2 of the Mod Launcher.

Version History (SHAR MP)

Version History (SHAR MP)

MP Version 16

General

Fixed an issue introduced in MP Version 15 where custom characters didn't work.

Version History (SHAR MP)

MP Version 15

General

Now based on Lucas' Simpsons Hit & Run Mod Launcher 1.19.

Version History (SHAR MP)

MP Version 14

General

Now based on Lucas' Simpsons Hit & Run Mod Launcher 1.18.2.

Version History (SHAR MP)

MP Version 13

General

Now based on Lucas' Simpsons Hit & Run Mod Launcher 1.18.1.

Version History (SHAR MP)

MP Version 12

General

  • Now based on Lucas' Simpsons Hit & Run Mod Launcher 1.18.
  • Changed it so the R key no longer deletes the mission icon on the HUD map. This also means the R key used to cycle debug pages in Debug Text is now re-enabled.
  • Improved synchronization of car rotations.
  • Improved synchronization of entering and exiting vehicles.
  • Now includes "npd.cho" and "npd_a.p3d" from Multiplayer Cars and Characters so every character has proper animations.

Settings

  • Added "Low Bandwidth" to the Server tab. This makes the client communicate with the server using the old tick-rate of 10.
  • Added "Play Offline" to the Server tab. This makes it so you can play by yourself without being connected to the server.
    • This is useful for testing secret stuff and multiplayer checks in your mod without having to use the actual server to do so.

Debug Pages for Debug Text

RakNet Page
  • Added "Actual bytes per second" which shows the combined total of "Actual bytes per second sent" and "Actual bytes per second received".
  • Added "Total bytes" which shows the combined total "Total bytes sent" and "Total bytes received".
  • Changed it so totals update continuously instead of every second.
  • Changed the formatting of bytes. They now shows in KB, MB, etc.
"resync" Page

Added this page.

Version History (SHAR MP)

MP Version 11

Currently, this changelog is available on this forum thread.

Mod Launcher Setup

1: Downloading the Mod Launcher

The first step is to download the Mod Launcher. You can do this by heading over to the Tool Downloads page and then clicking the download button.

Downloads Page

2: Extracting the Mod Launcher

Next, you want to extract the ZIP archive of the Mod Launcher you just downloaded.

Using Windows

To extract the archive using the built in Windows utility, simply Right Click > Extract All... to open the Extract Compressed (Zipped) Folders dialog.

From there, choose where you want to extract the Mod Launcher and then click Extract.

Using 7-Zip

To extract the archive using 7-Zip, simply Right Click > 7-Zip > Extract files....

From there, choose where you want to extract the Mod Launcher and then click OK.

3: Mod Launcher Folder

Now we should have a folder containing a few things:

  • A folder named DLLs: This folder contains DLLs used by the Mod Launcher. Unless explicitly instructed to do so by Donut Team, you should avoid making changes to the contents of this folder.
  • A folder named Hacks: This folder contains all of the hacks used by the Mod Launcher and mods created for it. Unless explicitly instructed to do so by Donut Team, you should avoid making changes to the contents of this folder.
  • A folder named Mods: This is one of several places where you can install mods for the Mod Launcher. There are a few mods included in this folder but you're free to remove them if you'd like.
  • Lucas Simpsons Hit & Run Mod Launcher.exe: This is, of course, the actual launcher itself.

4: Donut Team Account Integration

Let's go ahead and start up the Mod Launcher.

Upon first startup, you will be prompted for whether or not you'd like to allow the Mod Launcher to communicate with the Donut Team website. For more information about this feature, see Donut Team Account Integration.

Donut Team Account Integration Prompt

If you choose to opt-in to this feature, you'll need to link your Donut Team account by signing in with your account details or by using your Donut Team Token.

Account Dialog

5: Browsing for your Game Install

After the account prompts, you'll be greeted with the Main Window of the Mod Launcher which should look like this:

LucasModLauncher_MainWindow_1.18_NoMods.png

The first thing you'll want to do is click Open... in the bottom left corner and select Launcher Settings.... From there, move over to the Game tab.

Here you'll want to click the Browse... button next to Game EXE Path and browse for the Simpsons.exe in your install folder for the game.

LucasModLauncher_Settings_1_18_Game_Browse.png

6: Launching the Game

Now that you've told the Mod Launcher where your install of the game is, you can launch the game via the Launch button on the bottom right of the window. If you'd like the Mod Launcher to stay open in the background while you're playing, then untick the Close Launcher checkbox next to the Launch button.

Note that by default the following hacks are enabled in the Mods list with the following settings:

  • Aspect Ratio Support: Enables Automatic Aspect Ratio on the world and the HUD with an FOV of 78.
  • Bug Fixes: All user facing bug fixes are enabled.
  • Frame Limiter: The Target Frame Rate is set to 60 (except for on Loading Screens) and it is strongly recommended that you do not change this as the game's physics behave best at this frame rate.
  • Resizable Window: Presenting, processing and rendering while resizing are enabled.
  • Screenshots: Flash Screen and Play Sound are enabled.

The following hacks are always enabled when using the Mod Launcher.

  • Modern Computer Support: Makes the game work properly on Windows Vista or newer.
  • Modern Resolution Support: Makes the game support any resolution your graphics card supports instead of 6 hardcoded resolutions.

And you're done. Now you're playing with power.

Extra: Installing Mods

While you could simply enjoy the game as is, you can also install additional mods made by Donut Team or the community to enhance the game further.

Mods come in two forms, as a folder and as Lucas Mod Launcher Mod file (.lmlm). The install process for both is the same.

You simply place the mod's folder (containing Meta.ini and any other files the mod has) or the LMLM file into any of the following directories:

Mod Launcher Settings

The launcher itself has several different settings that allow you to configure it.

Additional Mods Tab

This tab has options for adding additional Mods Folders or Individual Mods to your Mods List.

Mods Folders Tab

This tab allows you to add additional folders that the mod launcher will search for mods when starting or clicking Reload on the main window.

Individual Mods

This tab will allow you to add individual mod folders or files to your mods list.

Game Tab

This tab contains several advanced settings.

Game EXE Path

This is the path to your installation of The Simpsons: Hit & Run. This needs to be set before the launcher is able to launch the game.

Crashes Section

Save Crash Dump

This makes the Mod Launcher save a crash dump that can sometimes be useful in debugging crashes if submitted to us.

If enabled, Crash Dumps can be found in Documents\My Games\Lucas' Simpsons Hit & Run Mod Launcher\Crashes.

This is enabled by default.

Terminate on Crash

This makes the Mod Launcher terminate the game immediately if it crashes. It is recommended you do not enable this feature.

This is disabled by default.

Show Message on Crash

This makes the Mod Launcher show a message when the game crashes containing the memory address where the crash occured.

This is helpful on Windows 10 as of the April Update where Microsoft removed the program crash message altogether and as a result made it harder to find out where the game crashed.

This is disabled by default.

Advanced Section

Always Keep Saved Games Seperate

This makes the Mod Launcher use a separate saves folder from the vanilla game even when no Main Mod is enabled.

With this setting enabled, your saves can be found in Documents\My Games\Lucas' Simpsons Hit & Run Mod Launcher\Saved Games.

This is disabled by default.

Keep Settings Seperate

This makes the Mod Launcher tell the game to load it's simpsons.ini settings file from a different folder than the vanilla game.

With this setting enabled, simpsons.ini can be found in Documents\My Games\Lucas' Simpsons Hit & Run Mod Launcher.

This is disabled by default.

DPI Aware

This makes the game support different DPI displays.

This is enabled by default.

Visual Styles

This makes the game support Windows visual styles.

This is enabled by default.

Ignore Compatibility Layers

This makes the Mod Launcher launch the game without compatibility mode enabled regardless of what the user has set on the executable.

This is enabled by default.

Start in Correct Resolution

This makes the game start in the correct resolution instead of briefly being in 800x600 before switching to the user's resolution.

This is enabled by default. 

Limit to Single Core

This limits the game to a single processor core.

This is disabled by default.

Launcher Tab

Check For Updates

This makes the Mod Launcher communicate with our website to check for updates in the background after starting.

This is enabled by default.

Donut Team Account Integration Support

This setting allows you to fully toggle Donut Team Account Integration without signing out.

This is enabled by default.

Close to Tray

This makes the Mod Launcher close to a tray icon instead of exiting.

This is disabled by default.

DPI Aware

This makes the Mod Launcher DPI Aware on Windows 7 or newer.

This is enabled by default.

Included Hacks

This is a list of all the included Mod Launcher hacks and whether they are requirable, tickable and/or always enabled as well as their initial release version and last release (if applicable).

Hack Name Requirable Tickable Always Enabled Initial Release Last Release
3D Phone Booth Preview Support ✔️     1.18  
Additional Script Functionality ✔️     1.18   
Aspect Ratio Support   ✔️   1.15  
Borderless   ✔️   1.13.1  
Bug Fixes   ✔️   1.15  
Cheat Keys   ✔️   1.23  
Console   ✔️   1.9  
Custom Animation Set Support ✔️     1.4  
Custom Audio Format Support ⚠️1     1.18  
Custom Audio Support ✔️     1.18  
Custom Bonus Mission Support ✔️     1.14  
Custom Car Shop Support ⚠️2     1.12 Legacy as of 1.18

Custom Car Support

✔️     1.16

 

Custom Character Support

✔️     1.17  
Custom Dialogue Character Codes ✔️     1.12  
Custom Files ✔️     1.23  
Custom Headlights ✔️     1.23  
Custom License Screen Time ✔️     1.5  
Custom Limits ✔️     1.14  
Custom Mission Skip Fail Counts ✔️     1.5  
Custom Road Behaviour ✔️     1.16  
Custom Save Data ⚠️1     1.17  
Custom Shop Support ✔️     1.18  
Custom Skin Preview Animations ✔️     1.23  
Custom Stats Totals ✔️     1.6  
Custom Terra Files ✔️     1.23 Removed in 1.5
Custom Text ✔️     1.23  
Debug Checks       1.17  
Debug Communication       1.17.1  
Debug Hashes ⚠️1     1.17  
Debug Test       1.17  
Debug Text       1.17  
Discord Rich Presence   ✔️   1.16.3  
FLAC Support ✔️     1.18  
Flippable Cars   ✔️   1.12  
Force Mission Select Level Reload   ✔️   1.18  
Frame Limiter   ✔️   1.10  
Hack Support ⚠️1   ✔️ 1.23  
HUD Map Ignore Player Height ✔️     1.16.1  
Increased Reward Limits       1.17  
Increased Video Resolution Support ✔️     1.11  
Interior Jumping   ✔️   1.10  
Interior Kicking   ✔️   1.10  
Interior Sprinting   ✔️   1.10  
Interprocess Communication ⚠️1     1.17.1  
Lens Flare   ✔️   1.19  
Lua Support ⚠️1     1.12  
Modern Computer Support     ✔️ 1.23  
Modern Resolution Support     ✔️ 1.10  
Multiple Instance Support   ✔️   1.23  
No Automatic Saved Game Load ✔️ ✔️   1.12  
No Cheats ✔️ ✔️   1.5  
No Cursor Until Mouse Move   ✔️   1.18  
No Fast Car Reset ✔️ ✔️   1.4  
No Inactive Dynamic Object Collisions ✔️ ✔️   1.16  
No Introduction Movies   ✔️   1.15  
No Jump Limit   ✔️   1.4  
No Mission Start Cameras ✔️ ✔️   1.16  
No Mute On Defocus   ✔️   1.18  
No Pause On Defocus   ✔️   1.18  
No Suppressed Drivers   ✔️   1.18  
No Time Limits   ✔️   1.12  
NVIDIA Highlights   ✔️   1.18  
Ogg Vorbis Support ✔️     1.18  
Replayable Bonus Missions ✔️ ✔️   1.12  
Resizable Window   ✔️   1.16  
Road Names ⚠️1     1.16  
Screenshots   ✔️   1.4  
Skip Main Menu   ✔️   1.18  
Skippable Start Cameras   ✔️   1.18  
Starting Coins   ✔️   1.18  
Unlock All Missions ✔️ ✔️   1.14  
Unlock All Outfits ✔️     1.14  
Unlock All Vehicles ✔️     1.14  
Unlock Bonus Game ✔️     1.14  
Video Texture Support ✔️     1.19  
Widescreen   ✔️   1.10 Removed in 1.15

¹ These hacks are technically requirable but are only intended to be required by other hacks and do nothing on their own.

² This hack is a legacy hack that can still be required by mods for backwards compatibility but it is no longer intended to be required by new mods going forward.

³ This hack was added in 1.2 or earlier. We don't have information further back than this version.

Included Mods

This is a list of all the Mod Launcher mods included with the Mod Launcher with descriptions of what they do.

Mod Name Function
No HUD Disables the HUD using the NOHUD command line argument.
No Traffic Disables traffic cars using the NOTRAFFIC command line argument.
Repair Car On Reset Makes your car get repaired when resetting to the road using the MANUALRESETDAMAGE command line argument.
Speedometer Enables the basic speedometer on the HUD using the SPEEDOMETER command line argument.
Text Names When this mod is enabled, CustomText will display the internal names of text strings in place of the actual strings.
Unlock All Rewards Enables the Unlock All Outfits, Unlock All Vehicles and Unlock Bonus Game hacks.

Command Line Arguments

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

Command Line Argument Description Initial Release
-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. 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, a subdomain of donutteam.com or localhost.

 

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

1.18
-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

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

 

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

?
-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
-debugscreenshots Makes the Screenshots hack save multiple screenshots of a single frame with various differences. 1.19
-debugvisibilitytest Makes the Lens Flare hack render the Visibility Test mesh instead of the actual lens flare. 1.19
-enabledmod "Name of Mod" Enables the specified mod1 if it's available. ?
-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. ?
-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. ?
-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
-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
-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. ?
-noalpharendertarget

Makes the Lens Flare hack use a render target that doesn't have an alpha channel. This is noticable when using -debugscreenshots.

1.19
-nocurl Prevents the Mod Launcher from using libcurl. 1.17
-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
-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
-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
-settings "Name of Mod" Launches the Mod Launcher directly into the settings of the specified mod1. ?
-slowload Makes the Mod Launcher wait 100ms between each mod or hack that's loaded. 1.18
-suspend Makes the Mod Launcher suspend the game before its code starts so you can attach a debugger. 1.18.2
-testing

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

 

Makes the CustomFiles Lua Function IsTestingadded in 1.19 return true.

1.18.2
-useragent

Specify a custom user agent for the Mod Launcher.

 

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

1.18.2

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

Donut Team Account Integration

The mod launcher supports signing in to your Donut Team account to enable community features.

Linking Your Donut Team Account

You can sign in by clicking the Account... button on the main window and inputting your login details or Donut Team Token.

Features

Play History

Play History is a community feature where the Mod Launcher will communicate with the Donut Team website and tell it what Main mod you're playing (unless the Main mod specifically opts out of this feature).

If the Main mod is approved in the Donut Team Content Submission System then anytime someone signed into the Mod Launcher plays that mod, it will register on the Recently Played page of the Donut Team website.

Language Localization

Language Localization

Localizing the Mod Launcher

The Mod Launcher only ships with English localization. However, it supports being localized via XML files.

You can start creating your own localization of the Mod Launcher by downloading this template, placing it in a "Languages" folder next to the Mod Launcher's executable and editing the Translation nodes inside it.

The language can be selected under the Launcher tab of Launcher Settings.

Language Localization

List of Localizations

This is a list of both official and un-official localization of the Mod Launcher's interface.

Language Author Mod Launcher Version Last Updated Download
English Donut Team 1.19 Built-in Built-in
Russian / русский Gordon CMB 1.19 October 4th, 2018 Download / скачать

Mods

Mods

About Mods

Synopsis

Mods for the Mod Launcher are made up of a series of configuration files and folders.

They can be compiled and shipped as a single LMLM file. These files can be decompiled by the end user as well if the developer allows it.

Structure

Mods may contain the following:

  • Meta.ini: The central configuration file for the entire mod. This defines the meta information for the mod, what hacks it requires, who made it and more.
  • Hack Configuration Files: Some requirable hacks have or require configuration files in the root of the mod. These are either INI files or XML files depending on the hack.
  • CustomFiles folder: Most mods have a CustomFiles folder. Files in this folder will override the ones found in the game's install folder, allowing mods to modify files without touching the game install.
  • Resources folder: Some mods also have a Resources folder. This is the intended place for Lua scripts used by CustomFiles and other resources used by those scripts.

Configuration

This is an example configuration a mod with comments explaining how it works.

This configuration file goes into Meta.ini in the root of your mod.

We do not recommend copying this entire example into your mod. We recommend only using what is necessary.

Due to the amount of properties and sections in Meta.ini this documentation is broken up into sections.

[Miscellaneous] Section

This section contains a wide variety of information about the mod.

[Miscellaneous]
; Title
;	The title of the mod that displays in the launcher. 
;	Optional.
Title=Example Mod

; InternalName
;	The internal name of the mod. 
;	This is used for directory names, play history and more. 
;	Optional but strongly recommended.
InternalName=ExampleMod

; Description
;	A description of the mod. Use \n for a new line. 
;	Optional.
Description=An example mod.\nText on another line

; Version
;	Set a version for the mod. 
;	Optional.
Version=1.0

; Category
; 	A category of the mod. Optional.
;	Repeat for multiple categories.
Category=Car Mods
Category=Character Mods

; Main
;	Set whether or not the mod is a main mod. 
;	Gives the mod it's own saved games and screenshots folders. 
;	Optional, defaults to 0.
Main=1

; Framework
;	Set whether or not the mod is a framework.
;	This makes it so the mod cannot be enabled on it's own.
;	Instead, it must be required by a mod by RequiredFramework.
;	Optional, defaults to 0.
Framework=0

; Disabled
;	Set whether or not the mod is disabled.
;	This will hide the mod from the launcher entirely.
;	Optional, defaults to 0.
Disabled=0

; Unreleased
;	Set whether or not the mod is on the unreleased tab.
;	Useful to hide secret mods from your main mods list.
;	Optional, defaults to 0.
Unreleased=0

; HideFromPlayHistory
;	Hides the mod from Play History and hides the title from Discord Rich Presence.
;	Optional, defaults to 0.
HideFromPlayHistory=0

; SettingsWidth / SettingsHeight
;	Set the width and height of the mod's settings window.
SettingsWidth=200
SettingsHeight=200

; AuthorGroup
;	Define an author group.
;	Repeat for each author group.
;	Not required to use groups but this allows you to control the order.
AuthorGroup=Vehicle Designer
AuthorGroup=Character Designers
AuthorGroup=Frontend Designer

; RequiredHack
;	Require a hack.
;	Repeat for each required hack.
RequiredHack=CustomFiles
RequiredHack=CustomHeadlights

; OptionalHack
;	Require a hack if it exists, otherwise this will be ignored.
;	Repeat for each optional hack.
OptionalHack=CustomSomething

; RequiredLauncher
;	Set the minimum required Mod Launcher version for the mod to work.
;	Usually based on which hacks/features the mod requires.
;	Optional but strongly recommended.
RequiredLauncher=1.18

; SupportedMod
;	Forces compatibility between this mod and the specified mod.
;	This mod will override the supported mod. 
;	Repeat for each supported mod.
SupportedMod=3DPhoneBoothPreviews

; ConflictingMod
;	Force a specific mod to conflict with this mod.
;	Recommended only for use where absolutely nessecary.
ConflictingMod=SomeModThatBreaksThisOne

; RequiredFramework
;	Require the specified framework to be installed in any mods folder for the mod to work. 
;	Repeat for each required framework.
RequiredFramework=AdditionalCharacters2

; OptionalFramework
;	Require the specified framework if it exists in any mods folder, otherwise will be ignored. 
;	Repeat for each optional framework.
OptionalFramework=AdditionalDynaloadCarModels

; SupportsEnglish, SupportsDemo, 
; SupportsInternational, SupportsBestSellerSeries
;	Set whether or not a mod supports specific versions of the game.
;	Defaults to 1 for all versions except the demo.
SupportsEnglish=1
SupportsDemo=0
SupportsInternational=1
SupportsBestSellerSeries=1

; DefaultLanguage, DefaultLanguageFrench,
; DefaultLanguageGerman, DefaultLanguageSpanish
;	Set the default language for the CustomText hack for each localization of the game.
;	This is only used if a mod has a CustomText folder with multiple CustomText INI files inside it.
;	Optional.
DefaultLanguage=English
DefaultLanguageFrench=French
DefaultLanguageGerman=German
DefaultLanguageSpanish=Spanish

[Author] Section

This section adds information about the author of the mod.
Repeat this section if there are multiple authors.

[Author]
; Name
;	The name of the author.
Name=Loren "Duck" Goodwin

; Website
;	The author's website. Must begin with http:// or https://. 
;	Optional.
Website=https://donutteam.com/

; Notes
;	Extra notes about the author. 
;	Optional.
Notes=A guy who made some things.

; Group
;	The name of the group(s) the author will be listed in.
;	Repeat for each group.
;	Optional.
Group=Vehicle Designers

; Credits
;	Set whether or not the author should be on the Credits tab instead of the About tab. 
;	Optional, defaults to 0.
Credits=0

[Setting] Section

This section can be used to add a setting to the mod that can be used in CustomFiles Lua Scripts.
Repeat this section to add multiple settings.

General
[Setting]
; UncompiledOnly
;	Set if the setting will be hidden and disabled when the mod is compiled. 
;	Optional, defaults to 0.
UncompiledOnly=0

; Type: 
;	Specify the type of setting.
; 		MultipleChoice
; 		TickBox
; 		Number
; 		Text
; 		Label
; 		Colour
Type=MultipleChoice

; Page 
;	Specify what page the setting is on. 
;	This allows you to organize your settings by pages.
;	Optional.
Page=Gameplay

; Group
;	Specify what group the setting should be in.
;	This allows you to categorize settings further by having groups on pages.
;	Optional.
Group=Car Settings

; Title
;	The display name of the setting. 
;	Defaults to the Name of the setting (unless it's a Label setting where the Title is required).
Title=Default Car

; Tooltip
;	The tooltip to display when hovering over the setting.
Tooltip=This setting allows you select a default car.

; NoReset
;	Specify if the value of the setting will reset when the user resets their settings to the defaults.
;	Optional, defaults to 0.
NoReset=0
MultipleChoice Settings

These properties are specific to a MultipleChoice setting.

; Name
;	The internal Name of the setting.
;	Used when using GetSetting in CustomFiles Lua scripts.
Name=DefaultCar

; Option
;	Specify an option for the the MultipleChoice setting.
;	Requires atleast one Option.
Option=Family Sedan
Option=Ferrini - Red

; Text
;	Specify if the value of the setting should be returned as text when requested by CustomFiles.
;	Optional, defaults to 0.
Text=0

; Default
;	The default value of the setting.
;	Optional, defaults to the first Option.
Default=0
TickBox Setting

These properties are specific to a TickBox setting.

; Name
;	The internal Name of the setting.
;	Used when using GetSetting in CustomFiles Lua scripts.
Name=EnableSomething

; Default
;	The default value of the setting. 0 or 1.
;	Optional, defaults to 0.
Default=0
Number Setting

These properties are specific to a Number setting.

; Name
;	The internal Name of the setting.
;	Used when using GetSetting in CustomFiles Lua scripts.
Name=HitAndRunDecay

; Integer
;	Specify whether or not the setting's value has to be an integer.
;	Optional, defaults to 0.
Integer=0

; Min
;	The minimum value of the setting.
;	Optional.
Min=-10.0

; Max
;	The maximum value of the setting.
;	Optional.
Max=10.0

; Default
;	The default value of the setting.
;	Optional, defaults to 0.
Default=0
Text Setting

These properties are specific to a Text setting.

; Name
;	The internal Name of the setting.
;	Used when using GetSetting in CustomFiles Lua scripts.
Name=Character

; Password
;	Specify if the textfield should be a password box.
;	Optional, defaults to 0.
Password=0

; Option
;	Specify specific options for the textfield.
;	Optional.
Option=homer
Option=bart
Option=lisa
Option=marge
Option=apu

; Default
;	The default text in the setting.
;	Optional.
Default=homer

 

Label "Setting"

These properties are specific to a Label "setting".

; Title
;	The text in the Label.
Label=These settings affect some stuff.

; URL
;	Specify a URL to link to from the label text.
;	Must start with http:// or https://.
;	Optional.
URL=https://donutteam.com/
Colour Setting

These properties are specific to a Colour setting.

; Name
;	The internal Name of the setting.
;	Used when using GetSetting in CustomFiles Lua scripts.
Name=ProbablyUselessColourSetting

; Default
;	The default color.
;	Must start with 0x followed by hexadecimal R,G,B,A values.
Default=0XFFFFFFFF

[SettingCondition] Section

This section can be used to add a condition for a setting being enabled in the Mod Settings window. The condition must be true for the setting to be enabled.
Repeat this section to add multiple setting conditions.

[SettingCondition]
; Type
;	Set the type of condition that must be met for this setting to be enabled.
;		Setting: The condition is based on the value of another setting.
Type=Setting

; Setting
;	The Name of the setting that is affected by this condition.
Setting=AddSkullsToBartsCar

; ConditionSetting
;	The Name of the setting whose value is checked by this condition.
ConditionSetting=EnableMemes

; Operator
;	The operator used to compare the value of the ConditionSetting to the Value inside this SettingCondition.
;		EqualTo
;			You must use this operator when adding a SettingCondition for a TickBox or Text setting.
;		NotEqualTo
;		GreaterThanOrEqualTo
;		LessThanOrEqualTo
;		GreaterThan
;		LessThan
Operator=EqualTo

; Value
;	The value to compare to the value of the Setting.
Value=1

[SettingWarning] Section

This section is used to add a warning when a setting is set to a certain value.
Repeat this section for multiple warnings.

[SettingWarning]
; Setting
;	The Name of the setting that the warning checks the value of.
Setting=AddSkullsToBartsCar

; Operator
;	The operator used to compare the value of the Setting to the Value inside this SettingWarning.
;		EqualTo
;			You must use this operator when adding a SettingWarning for a TickBox or Text setting.
;		NotEqualTo
;		GreaterThanOrEqualTo
;		LessThanOrEqualTo
;		GreaterThan
;		LessThan
Operator=EqualTo

; Value
;	The value to compare to the value of the Setting.
Value=1

; Message
;	The message to show when the conditions for the warning are met.
Message=Woah dog, this settings looks like a dank meme. Are you sure you want to enable it?

[LegacyResource] Section

This section is used to specify that the mod supersedes an old Legacy mod.
This is useful for new versions of frameworks that change the InternalName but otherwise maintain compatibility with mods that require it under the old name.

[LegacyResource]
; InternalName
;	The InternalName of the legacy mod this one is superseding. 
InternalName=AdditionalCharacters

; Title
;	The Title of the legacy mod this one is superseding. Optional.
;	This isn't currently used anywhere but it might be in the future.
Title=Additional Characters

[Compile] Section

This section is used to define rules for how to compile the mod.
This section is optional and is not required to compile a mod. It is only needed if you want to customize the process.

[Compile]
; OutputPath
;	The path to output the LMLM file to. Optional, if not specified the Launcher will ask when clicking "Compile...".
OutputPath=MyMod.lmlm

; Decompilable
;	Set whether or not the mod is able to be decompiled in the Mods List. Optional, defaults to 0.
Decompilable=0

; ExcludedFileName
;	Files with this name will be excluded when the mod is compiled. 
;	Supports * and ? wildcards.
ExcludedFileName=*.bak

; IncludedFileName: 
;	Files with this name will be included when the mod is compiled. 
;	This can be used to include file types that would normally be excluded.
;	Supports * and ? wildcards.
IncludedFileName=Something.txt

; ExcludedFolderName
;	Folders with this name will be excluded when the mod is compiled. 
;	Supports * and ? wildcards.
ExcludedFolderName=_Assets

; IncludedFolderName: 
;	Folders with this name will be included when the mod is compiled.
;	This can be used to include folders that would normally be excluded,
;		such as ones in the root that are not "AdditionalFiles", "CustomFiles" or "Resources"
;	Supports * and ? wildcards.
IncludedFolderName=Resources2OrSomething

; MinifyArt
;	Set whether or not to minify .p3d files (removes history chunks) when the mod is compiled. 
;	Defaults to 1 unless the mod is Decompilable.
MinifyArt=1

; MinifyPNGs
;	Set whether or not to minify .png files (removes unrequired data such as Adobe Fireworks data) when the mod is compiled.
;	Defaults to 1 unless the mod is Decompilable.
MinifyPNGs=1

; IncludeHidden
;	Set whether or not to include hidden files and folders. 
;	Defaults to 0 unless the mod is Decompilable.
IncludeHidden=0

; IncludeModifiedDates: 
;	Set whether or not to preserve modified dates on files and folders. 
;	Defaults to 0 unless the mod is Decompilable.
IncludeModifiedDates=0

; IncludeEmptyFolders: 
;	Set whether or not to include empty folders. 
;	Defaults to 0 unless the mod is Decompilable.
IncludeEmptyFolders=0

; RewriteMetaINI
;	Set whether or not to rewrite Meta.ini when compiling the mod.
;	Defaults to 0 unless the mod is Decompilable.
RewriteMetaINI=1

Hacks

Hacks

About 3D Phone Booth Preview Support

Synopsis

This hack adds 3D previews to the phone booth in place of the usual 2D sprites.

Configuration

This is an example configuration for this hack with comments explaining how it works.

This configuration file goes into 3DPhoneBoothPreviewSupport.ini in the root of your mod.

We do not recommend copying this entire example into your mod. We recommend only using what is necessary.

[Miscellaneous]
; BackgroundPath
;	The path to the P3D file containing the background of the scene.
; 	Defaults to art\\frontend\\scrooby\\resource\\pure3d\\rewardbg.p3d
BackgroundPath=art\\frontend\\scrooby\\resource\\pure3d\\rewardbg.p3d

; DarkenLockedCars
;	Set whether or not to darken cars that are not unlocked yet.
; 	Defaults to 0.
DarkenLockedCars=0

; FullScreen
;	Set whether or not the background is FullScreen.
; 	Defaults to 1.
FullScreen=1

; Radius
;	Set the radius of the cars on the pedestal.
; 	Defaults to 3.6.
Radius=3.6

Usage

Frontend Changes

This hack requires changes to the frontend file art\frontend\scrooby\ingame.p3d to function. Requiring this hack in a mod without making these changes will cause a crash when opening phone booths.

The specific changes involve adding the chunks highlighted in the image below to Phonebooth.pag.