Difference between revisions of "Mod Loader"

From GTAMods Wiki
Jump to navigation Jump to search
(mod installation category)
 
(7 intermediate revisions by 2 users not shown)
Line 2: Line 2:
 
{{ToolBox
 
{{ToolBox
 
| name    = Mod Loader
 
| name    = Mod Loader
| version = 0.2.3
+
| version = 0.3.7
| date    = 02 February, 2014
+
| date    = 20 January, 2018
 
| author  = {{Ui|Link2012}}
 
| author  = {{Ui|Link2012}}
| game    = [[GTA SA]]
+
| game    = [[GTA III]], [[GTA VC]], [[GTA SA]]
 
| genre  = [[:Category:Mod Installation|mod installation]]
 
| genre  = [[:Category:Mod Installation|mod installation]]
 
| image  = [[Image:modloader_dir_modded.jpg|250px|Mods installed in Mod Loader]]
 
| image  = [[Image:modloader_dir_modded.jpg|250px|Mods installed in Mod Loader]]
Line 11: Line 11:
 
}}
 
}}
  
Mod Loader is a plugin that adds an user-friendly and easy way to install and uninstall modifications into the game without changing anything in the game installation. The user only needs to put the mods in the ''modloader'' directory and that's all.
+
Mod Loader is a plugin that adds a user-friendly and easy way to install and uninstall modifications into the game without changing the game's internal files. The user only needs to put the mods in the ''modloader'' directory and it will work.
 +
 
 +
Mod Loader won the ''Best Tool'' award on the GTANet Annual Awards 2014{{ref|1}}.
  
 
== Features ==
 
== Features ==
  
* Do not replace any original file, all the mods are installed by injection on the fly!
+
* All the mods are installed by injection on the fly, leaving the original game files untouched.
 
* The user can give several versions of the same [[DAT|data file]] and the loader will take care of merging them together!
 
* The user can give several versions of the same [[DAT|data file]] and the loader will take care of merging them together!
 
* The user does not need to manually take [[DAT|data lines]] from readme files, the loader is able to identify them and inject them in!
 
* The user does not need to manually take [[DAT|data lines]] from readme files, the loader is able to identify them and inject them in!
 
* Changes made to the directory while the game is running are applied immediately!
 
* Changes made to the directory while the game is running are applied immediately!
 
* Game menu for configurations, providing a even easier management of mods! [[Image:modloader_menu_modspage.png|200px|thumb|right|The in-game menu]]
 
* Game menu for configurations, providing a even easier management of mods! [[Image:modloader_menu_modspage.png|200px|thumb|right|The in-game menu]]
 +
* Profiles allowing the user to have many games in one.
 
* Dynamic loading screen, removing the flickering when there are too few [[gta.dat]] entries (usually on TCs).
 
* Dynamic loading screen, removing the flickering when there are too few [[gta.dat]] entries (usually on TCs).
 
* [http://youtu.be/dfAKYOmcBGM?t=1m13s Bug-free] sound modding.
 
* [http://youtu.be/dfAKYOmcBGM?t=1m13s Bug-free] sound modding.
Line 25: Line 28:
 
== Supported Files ==
 
== Supported Files ==
  
Mod Loader supports all the files the default game provides (except for [[Audio streams|stream tracks]] at this moment) with the addition of some files well known in the modding scene. The supported file types are:
+
Mod Loader supports all the files the default game provides with the addition of some files well known in the modding scene. The supported file types are:
  
 
* [[ASI|ASI plugins]], [[CLEO#Plugins|CLEO plugins]] and D3D9 hooks.
 
* [[ASI|ASI plugins]], [[CLEO#Plugins|CLEO plugins]] and D3D9 hooks.
Line 32: Line 35:
 
* Generic files, , effects, script sprites and [[img archive]]s.
 
* Generic files, , effects, script sprites and [[img archive]]s.
 
* [[SFX (SA)|SFX]] files including wave files directly on disk.
 
* [[SFX (SA)|SFX]] files including wave files directly on disk.
 +
* [[Audio streams|stream tracks]].
 
* [[SCM]] files and [[CLEO#Custom scripts|CLEO scripts]].
 
* [[SCM]] files and [[CLEO#Custom scripts|CLEO scripts]].
 
* [[GXT]] and [[FXT#CLEO|FXT]] game text files.
 
* [[GXT]] and [[FXT#CLEO|FXT]] game text files.
 
* Intro movies.
 
* Intro movies.
  
== Configurability ==
+
== Profiles ==
  
The user is able to configure the loader either through the game menu or from the <code>modloader.ini</code> file which contains more advanced options than in the menu.
+
Profiles are the basic configuration system for Mod Loader. By default <code>modloader.ini</code> contains a ''Default'' profile but the user can create additional profiles either by creating a new ini with the profile content in <code>modloader/.profiles</code> or appending the profile to <code>modloader.ini</code> itself. Notice that profile names are not case-sensitive!.
  
 +
Profiles let you create a group of mods to load, files to ignore, exclusive mods and so on.
 +
 +
To make use a profile switch the current profile set the <code>Profile</code> key in <code>modloader.ini</code>, send a command line <code>-modprof</code> followed by the profile name to use, or have a <code>UseIfModule</code> condition on it.
 +
 +
The following configuration keys can be specified in the <code>[Profile.ProfileName.Config]</code> section.
 
{|class="wikitable"
 
{|class="wikitable"
 
|-
 
|-
Line 46: Line 55:
 
! Description
 
! Description
 
|-
 
|-
|''IgnoreAllFiles''
+
|''Parents''
 +
|<center>&#x2717;</center>
 +
|Profiles to inherit configurations from (comma delimited) ''(IncludeMods list, Configs, and so on)''.<br>Special values are '''$Current''' for the profile currently set in <code>modloader.ini</code> and '''$None''' for no parent.
 +
|-
 +
|''IgnoreAllMods ''
 
|<center>&#x2713;</center>
 
|<center>&#x2713;</center>
 
|Ignores all mods in the <code>modloader</code> directory, essentially disabling any mod.
 
|Ignores all mods in the <code>modloader</code> directory, essentially disabling any mod.
 
|-
 
|-
|''ExcludeAllMods''
+
|''ExcludeAllMods ''
 +
|<center>&#x2717;</center>
 +
|Ignores all mods in the <code>modloader</code> directory except for the ones in the ''[Profiles.ProfileName.IncludeMods]'' list.
 +
|-
 +
|''UseIfModule''
 
|<center>&#x2717;</center>
 
|<center>&#x2717;</center>
|Ignores all mods in the <code>modloader</code> directory except for the ones in the ''[IncludeMods]'' list.
+
|This profile is forced to be used by Mod Loader if the specified executable/dll module is loaded.
 +
|}
 +
 
 +
The following list sections are available:
 +
{|class="wikitable"
 
|-
 
|-
|''[IgnoreMods]''
+
! Configuration Name
 +
! Menu
 +
! Description
 +
|-
 +
|''[Profiles.ProfileName.IgnoreMods]''
 
|<center>&#x2713;</center>
 
|<center>&#x2713;</center>
|All the mods in this list are ignored by the loader while scanning for mods.
+
|All the mods in this list are ignored by the profile while scanning for mods.
 
|-
 
|-
|''[IncludeMods]''
+
|''[Profiles.ProfileName.IncludeMods]''
 
|<center>&#x2717;</center>
 
|<center>&#x2717;</center>
 
|All the mods in this list are going to be used even when ''ExcludeAllMods'' is set to true.
 
|All the mods in this list are going to be used even when ''ExcludeAllMods'' is set to true.
 
|-
 
|-
|''[IgnoreFiles]''
+
|''[Profiles.ProfileName.ExclusiveMods]''
 +
|<center>&#x2717;</center>
 +
|Any mod in this list will be loaded ONLY by this profile, any other profile will have this mod automatically ignored.<br>If another profile has a similar exclusive mod, both will have the mods as exclusive and use them
 +
|-
 +
|''[Profiles.ProfileName.IgnoreFiles]''
 
|<center>&#x2717;</center>
 
|<center>&#x2717;</center>
|All [http://en.wikipedia.org/wiki/Glob_%28programming%29 files globs] in this list are ignored by the loader while scanning for files.
+
|All [http://en.wikipedia.org/wiki/Wildcard_character wildcards] in this list are ignored by the profile while scanning for files.
 
|-
 
|-
|''[Priority]''
+
|''[Profiles.ProfileName.Priority]''
 
|<center>&#x2713;</center>
 
|<center>&#x2713;</center>
 
|Defines mods priorities, that's if two mods modify the same file which should have precedence over the other.
 
|Defines mods priorities, that's if two mods modify the same file which should have precedence over the other.
Line 80: Line 109:
 
|-
 
|-
 
|<code>-mod ''name''</code>
 
|<code>-mod ''name''</code>
|Only the specified mod is going to be loaded plus the ones in the ''IncludeMods'' list. This command line can be sent more than once to<br>specify varios mods to be loaded. This feature has been removed as of Mod Loader v0.2.3 for improvements.
+
|Only the specified mod is going to be loaded.<br>This command line can be sent more than once to specify varios mods to be loaded.
 +
|-
 +
|-
 +
|<code>-modprof ''name''</code>
 +
|The specified profile will be used
 
|-
 
|-
 
|<code>-nomods</code>
 
|<code>-nomods</code>
 
|Disables any mod from loading.
 
|Disables any mod from loading.
 
|}
 
|}
 +
 +
'''Notes:'''
 +
* The <code>-nomods</code>, <code>-mod</code> and <code>-modprof</code> command lines are mutually exclusive.
 +
* When <code>-mod</code> or a <code>-modprof</code> command line are used a anonymous profile is created so any changes to the related profiles aren't saved/loaded.
 +
 +
== See also ==
 +
* [[Mod Loader/Total Conversions|Installing Total Conversions in Mod Loader]]
  
 
== External links ==
 
== External links ==
Line 90: Line 130:
 
* {{GTAF|669520}}
 
* {{GTAF|669520}}
 
* [https://github.com/thelink2012/modloader Mod Loader Repository] - source code
 
* [https://github.com/thelink2012/modloader Mod Loader Repository] - source code
 +
* {{note|1}} {{GTAF|768699|Awards 2014 Winners}}
  
{{N|SA}}
+
{{N|SA|VC|3}}
 
[[Category:Tools]][[Category:Mod Installation]]
 
[[Category:Tools]][[Category:Mod Installation]]

Latest revision as of 10:23, 30 October 2021

Mod Loader
Mods installed in Mod Loader
Current version:0.3.7
Developed by:User.pngLink2012
Supported games:GTA III, GTA VC, GTA SA
Type:mod installation

Mod Loader is a plugin that adds a user-friendly and easy way to install and uninstall modifications into the game without changing the game's internal files. The user only needs to put the mods in the modloader directory and it will work.

Mod Loader won the Best Tool award on the GTANet Annual Awards 2014[1].

Features

  • All the mods are installed by injection on the fly, leaving the original game files untouched.
  • The user can give several versions of the same data file and the loader will take care of merging them together!
  • The user does not need to manually take data lines from readme files, the loader is able to identify them and inject them in!
  • Changes made to the directory while the game is running are applied immediately!
  • Game menu for configurations, providing a even easier management of mods!
    The in-game menu
  • Profiles allowing the user to have many games in one.
  • Dynamic loading screen, removing the flickering when there are too few gta.dat entries (usually on TCs).
  • Bug-free sound modding.

Supported Files

Mod Loader supports all the files the default game provides with the addition of some files well known in the modding scene. The supported file types are:

Profiles

Profiles are the basic configuration system for Mod Loader. By default modloader.ini contains a Default profile but the user can create additional profiles either by creating a new ini with the profile content in modloader/.profiles or appending the profile to modloader.ini itself. Notice that profile names are not case-sensitive!.

Profiles let you create a group of mods to load, files to ignore, exclusive mods and so on.

To make use a profile switch the current profile set the Profile key in modloader.ini, send a command line -modprof followed by the profile name to use, or have a UseIfModule condition on it.

The following configuration keys can be specified in the [Profile.ProfileName.Config] section.

Configuration Name Menu Description
Parents
Profiles to inherit configurations from (comma delimited) (IncludeMods list, Configs, and so on).
Special values are $Current for the profile currently set in modloader.ini and $None for no parent.
IgnoreAllMods
Ignores all mods in the modloader directory, essentially disabling any mod.
ExcludeAllMods
Ignores all mods in the modloader directory except for the ones in the [Profiles.ProfileName.IncludeMods] list.
UseIfModule
This profile is forced to be used by Mod Loader if the specified executable/dll module is loaded.

The following list sections are available:

Configuration Name Menu Description
[Profiles.ProfileName.IgnoreMods]
All the mods in this list are ignored by the profile while scanning for mods.
[Profiles.ProfileName.IncludeMods]
All the mods in this list are going to be used even when ExcludeAllMods is set to true.
[Profiles.ProfileName.ExclusiveMods]
Any mod in this list will be loaded ONLY by this profile, any other profile will have this mod automatically ignored.
If another profile has a similar exclusive mod, both will have the mods as exclusive and use them
[Profiles.ProfileName.IgnoreFiles]
All wildcards in this list are ignored by the profile while scanning for files.
[Profiles.ProfileName.Priority]
Defines mods priorities, that's if two mods modify the same file which should have precedence over the other.

Command Line

Mod Loader has support for command lines arguments to the game executable, possible commands are:

Command Line Description
-mod name Only the specified mod is going to be loaded.
This command line can be sent more than once to specify varios mods to be loaded.
-modprof name The specified profile will be used
-nomods Disables any mod from loading.

Notes:

  • The -nomods, -mod and -modprof command lines are mutually exclusive.
  • When -mod or a -modprof command line are used a anonymous profile is created so any changes to the related profiles aren't saved/loaded.

See also

External links