Difference between revisions of "HPL3/Modding/Mod Dependencies"
Line 23: | Line 23: | ||
Description="Mod description here" | Description="Mod description here" | ||
− | UID=" | + | UID="my_uid" |
LauncherPic="LauncherPic.png" | LauncherPic="LauncherPic.png" | ||
Line 35: | Line 35: | ||
==Using a Mod Dependency== | ==Using a Mod Dependency== | ||
− | In order to use a mod dependency, the [[HPL3/SOMA/Modding/Creating_a_Mod#Mod_Entry_File|entry file]] of the mod which uses the dependency needs to have a special attribute called <code> | + | In order to use a mod dependency, the [[HPL3/SOMA/Modding/Creating_a_Mod#Mod_Entry_File|entry file]] of the mod which uses the dependency needs to have a special attribute called <code>Dependencies</code>. It is a list of <code>UIDs</code> separated by commas. |
+ | |||
+ | In order to set <code>Dependencies</code> manually for a mod: | ||
+ | |||
+ | #Open the entry [[HPL3/SOMA/Modding/Creating_a_Mod#Mod_Entry_File|entry file]] of the mod you want to add a dependency to. | ||
+ | #Inside, add an attribute called <code>Dependencies</code> and list the <code>UID</code>(s): <syntaxhighlight lang="xml"> | ||
+ | <?xml version="1.0" encoding="UTF-8"?> | ||
+ | <Content Version="1.0" | ||
+ | Type="StandAlone" | ||
+ | Title="Your mod name here" | ||
+ | Author="Your name here" | ||
+ | Description="Mod description here" | ||
+ | |||
+ | Dependencies="my_uid" | ||
+ | |||
+ | LauncherPic="LauncherPic.png" | ||
+ | InitCfg="config/main_init.cfg" | ||
+ | /> | ||
+ | </syntaxhighlight> | ||
==See Also== | ==See Also== |
Revision as of 20:40, 26 August 2020
Mod dependencies provide a solution sharing mod content across multiple other mods. A few mods could depend on a parent mod to derive assets and other content from, instead of including it in their own mod.
Contents
When to Use Mod Dependencies
- The main occasion to use Mod Dependencies is when you want to distribute assets packs which include models, textures, materials, scripts, etc for people to use freely in their own mods.
- Mod dependencies can help to reduce the mod size you want to distribute, as a big portion of the assets themselves are not actually included in the mod, but come from an external source.
Setting Up a Mod Dependency
In order to turn a regular mod into a mod dependency, the mod's entry file needs to have a special attribute called UID
. This is used so other mods can reference your mod as a dependency. The convention of naming a UID is the form provider_name.mod_name
. For example, if the mod creator is named steve
and the mod name is called Castle Assets Pack
, the UID
for the mod will be steve.castle_assets_pack
.
In order to set a UID
manually for a mod:
- Open the mod's entry entry file.
- Inside, add an attribute called
UID
and give it a name:<?xml version="1.0" encoding="UTF-8"?> <Content Version="1.0" Type="StandAlone" Title="Your mod name here" Author="Your name here" Description="Mod description here" UID="my_uid" LauncherPic="LauncherPic.png" InitCfg="config/main_init.cfg" />
Now you can use the mod as a dependency for other mods.
Using a Mod Dependency
In order to use a mod dependency, the entry file of the mod which uses the dependency needs to have a special attribute called Dependencies
. It is a list of UIDs
separated by commas.
In order to set Dependencies
manually for a mod:
- Open the entry entry file of the mod you want to add a dependency to.
- Inside, add an attribute called
Dependencies
and list theUID
(s):<?xml version="1.0" encoding="UTF-8"?> <Content Version="1.0" Type="StandAlone" Title="Your mod name here" Author="Your name here" Description="Mod description here" Dependencies="my_uid" LauncherPic="LauncherPic.png" InitCfg="config/main_init.cfg" />