Group
Groups represent sets of plugins, and are a way to concisely and extensibly load sets of plugins after other sets of plugins.
This structure can be used to hold group definitions. It is a key-value map.
- name
string
Required. A case-sensitive name that identifies the group.
- description
string
A CommonMark description of the group, e.g. what sort of plugins it contains. If undefined, the description is an empty string.
- after
string set
The names of groups that this group loads after. Group names are case-sensitive. If undefined, the set is empty. The named groups must be defined when LOOT sorts plugins, but they don’t need to be defined in the same metadata file.
Sorting errors will occur if:
A group loads after another group that does not exist.
Group loading is cyclic (e.g. A loads after B and B loads after A).
Merging Groups
When a group definition for an already-defined group is encountered, the
description
field is replaced if the new value is not an empty string, and
the after
sets of the two definitions are merged.
The default
Group
There is one predefined group named default
that all plugins belong to by
default. It is defined with an empty after
set, as no other predefined
groups exist for it to load after.
Like any other group, the default
group can be redefined to add group names
to its after
set.
Equality
Two group data structures are equal if the values of their name
keys are identical.
Examples
# Create a group for map marker plugins that loads after the predefined
# 'default' group.
name: 'Map Markers'
description: 'A group for map marker plugins that need to load late.'
after:
- 'default'
# Extend the predefined 'default' group to load after an 'Unofficial Patches'
# group that is defined elsewhere.
name: 'default'
after:
- 'Unofficial Patches'