Difference between revisions of "About.xml"
m |
m |
||
Line 99: | Line 99: | ||
* The matching description in <descriptionsByVersion> will take priority over <description>, otherwise <description> will be used by default. The same applies to all other "ByVersion" alternatives. | * The matching description in <descriptionsByVersion> will take priority over <description>, otherwise <description> will be used by default. The same applies to all other "ByVersion" alternatives. | ||
* The "forceLoad" tags aren't very useful because many players use 3rd-party mod managers. | * The "forceLoad" tags aren't very useful because many players use 3rd-party mod managers. | ||
+ | |||
+ | [[Category:Modding]] |
Revision as of 20:12, 28 March 2022
This article explains every tag that is available for use in the About.xml file of your mod. This file should be placed in the About folder of your mod. This file holds metadata about your mod, such as the name, the author(s), the description, etc.
Tags
This a sample About.xml file. The tags you need to include in your mod are: <name>, <author> (or <authors>), <packageId>, <description>, and <supportedVersions>; all of the other tags are optional.
If your mod has any dependencies, you may use the <modDependencies> tag to list the mods by their packageId, and you may use <loadBefore> and <loadAfter> to specify if your mod should be loaded before or after any other mod. There are also "ByVersions" alternatives of many of the tags, these are used if your mod has different dependencies that depend on the version of RimWorld that is running.
<?xml version="1.0" encoding="utf-8"?> <ModMetaData> <name>Example Mod</name> <author>Mod Author, Contributing Author, Other Folks, etc.</author> <url>www.anything.com</url> <packageId>AuthorName.ModSeries.ModName</packageId> <supportedVersions> <li>1.1</li> <li>1.2</li> </supportedVersions> <description>Sample description. Which spans multiple lines. Is also includes whitespace, so unless you want ugly indentation on the workshop, you need to have it un-beautified like this. </description> <modDependencies> <!-- Using hugslib as an example here. --> <li> <packageId>UnlimitedHugs.HugsLib</packageId> <displayName>HugsLib</displayName> <downloadUrl>https://github.com/UnlimitedHugs/RimworldHugsLib/releases/latest</downloadUrl> <steamWorkshopUrl>steam://url/CommunityFilePage/818773962</steamWorkshopUrl> </li> </modDependencies> <modDependenciesByVersion> <v1.1> <li> <packageId>UnlimitedHugs.HugsLib</packageId> <displayName>HugsLib</displayName> <steamWorkshopUrl>https://github.com/UnlimitedHugs/RimworldHugsLib/releases/latest</steamWorkshopUrl> <downloadUrl>steam://url/CommunityFilePage/818773962</downloadUrl> </li> </v1.1> </modDependenciesByVersion> <loadAfter> <li>UnlimitedHugs.HugsLib</li> </loadAfter> <incompatibleWith> <li>erdelf.HumanoidAlienRaces</li> </incompatibleWith> </ModMetaData>
Tag | Explaination |
---|---|
name | The name of the mod. |
author | The mod author names, usually set to your Steam/Forum name. Can be a list separated by " and " or by commas. |
authors | An alternative way to input multiple author names. Formatted as a standard list of strings, using <li> nodes. |
packageId | Added in 1.0. Please make it human readable. Avoid acronyms where possible. Normally qualifiers separated by periods. |
url | A URL to be displayed on your mod info page(if available). Can be set to link to anything. Most link it to their Github/Workshop page/forum post. |
supportedVersions | Lists which versions of Rimworld your mod is compatible with. If your mod doesn't break across versions, list them all here. |
description | Describes your mod, can be multiple lines long. Whitespace sensitive. |
descriptionsByVersion | Same as above, but by version. Directly type description between <v1.3> and </v1.3>, for example. |
modDependencies | List of other mods which your mod requires to function. Format and tags given in the example About.xml above. |
modDependenciesByVersion | Same as modDependencies, except it specifies which mod version it needs. |
loadBefore | Lists of packageIds of the mods which should be loaded after your mod. Helps ensure your mod is loaded before another. |
loadBeforeByVersion | Same as above, but by version. |
forceLoadBefore | Lists of packageIds of the mods which are forced to be loaded after your mod by the in-game mod manager. |
loadAfter | Lists of packageIds of the mods which should be loaded before your mod. Helps ensure your dependencies are loaded in first. |
loadAfterByVersion | Same as above, but by version. |
forceLoadAfter | Lists of packageIds of the mods which are forced to be loaded before your mod by the in-game mod manager. |
incompatibleWith | List of packageIds of any mods which are incompatible with your mod. |
incompatibleWithByVersion | Same as above, but by version. |
Notes
- If <author> and <authors> are both defined, then the list in <authors> will be appended to the end of the list given in <author>.
- The matching description in <descriptionsByVersion> will take priority over <description>, otherwise <description> will be used by default. The same applies to all other "ByVersion" alternatives.
- The "forceLoad" tags aren't very useful because many players use 3rd-party mod managers.