MSCLoader API - piotrulos/MSCModLoader GitHub Wiki

MSCLoader Namespace

Important

My Winter Car version is stripped from all legacy code that was marked as "obsolete" as of MSCLoader version 1.3.6 for better performance. (This change doesn't affect My Summer Car version)

Important

In ModSetup() only SetupFunction() is allowed, this is designed to only setup Mod class. Do not execute other code inside ModSetup(), follow strictly Order of execution in mod class otherwise you will break other mods or even loader itself (DO NOT guess how stuff work, read documentation and ask questions if you don't know the answer)

Classes

Warning

DO NOT! use harmony to patch playmaker actions, since this breaks entire state machine. Please learn and use PlayMakerExtensions instead!

Class Description Examples
ConsoleCommand Base class for console commands
ExceptionExtensions Exception extensions
Keybind Add easily rebindable keybinds. Create Keybinding in Settings
KeybindHeader Keybind Header Create Keybinding in Settings
LoadAssets Class for Loading custom assets from Assets folder LoadAssets methods
Mod The base mod class, all mods should have this class. Mod class structure
ModAudio Audio library (play local ".ogg", ".ogv", ".mp3", ".flac", ".wav", ".aiff" files)
ModAudioStream Audio library (Play online "audio/mpeg" streams)
ModConsole MSCLoader console related functions.
ModKeybind Mod Setting base class Create Keybinding in Settings
ModLoader This is main Mod Loader class.
ModSetting Mod Setting base class Create Mod Settings
ModUI UI elements like creating Message Boxes
ModUIDrag Make Unity.UI element draggable, attachable to UI gameobject
MSCExtensions My Summer Car specific extensions
MsgBoxBtn MsgBoxBtn class
Playlists Parse playlists files
PlayMakerExtensions PlayMaker extensions for Unity API
PlayMakerProxyExtensions Extension methods for PlayMakerArrayListProxy and PlayMakerHashTableProxy
PopupSetting Popup Setting Window Popup Settings Window
SaveLoad Save and Load Class for gameobject and custom class Unified SaveLoad methods
Settings Add simple settings for mods. Create Mod Settings
SettingsButton Settings Button
SettingsCheckBox Settings checkbox Settings Checkbox
SettingsCheckBoxGroup CheckBox group (aka radio button)
SettingsColorPicker Settings Color Picker Settings ColorPicker
SettingsDropDownList Settings DropDown List Settings DropDownList
SettingsGroupLayout Settings Horizontal/Vertical Group Groups and layouts
SettingsHeader Settings Header
SettingsKeybind Keybind Create Keybinding in Settings
SettingsResetButton Settings Reset Button
SettingsSlider Settings Slider Settings Slider
SettingsSliderInt Integer version of Settings Slider Settings Slider Int
SettingsText Settings Text
SettingsTextArea Settings TextArea
SettingsTextBox Settings TextBox Settings TextBox
UnifiedRaycast Unified Raycast, use this to get interaction raycast results Unified Raycast

Enumerations

Enumeration Description
CurrentScene List of possible scenes
Game List of supported games
Mod.Setup Type of Function to setup
SettingsButton.ButtonIcon Predefined button icons
⚠️ **GitHub.com Fallback** ⚠️