Filter
There are different types of Filter
filterByXy - Xy are connected by AND, if multiple are given
filterByXyOr - Xy are connected by OR, if multiple are given
filterByXyExcluded - Xy found here, will exclude the object
Xy is a placeholder for the filters that exist like, filterByKeywords, filterByWeapons, filterByFactions, filterByAlchs etc.
Example
filterByKeywords has 2 keywords and they match.
filterByKeywordsOr has 5 keywords and at least one needs to match.
filterByKeywordsExcluded has 10 keywords and if one matches, the match will fail.
If one option missing, the rules still apply.
filterByKeywords has 2 keywords and they match.
filterByKeywordsExcluded has 10 keywords and if one matches, the match will fail.
filterByKeywords has 2 keywords and only ONE out of two matches. The match failed.
filterByKeywordsOr has 5 keywords and at least one matches.
filterByKeywordsExcluded has 10 keywords and none matches.
The operation will fail, because filterByKeywords failed to match all it's keywords, even when filterByKeywordsOr and filterByKeywordsExcluded passed.
You can also use any combination of Filters
Example for Armors from Fallout 4, it also applies to Skyrim
ArmorTypePower [KYWD:0004D8A1]
(bipedSlots are always accessed by index)
filterByBipedSlots=11 :filterByKeywordsExcluded=Fallout4.esm|0004D8A1
This will filter all armors that have bipedSlot 41 (index=11, [A] Torso) and don't have the keyword ArmorTypePower
Filters work independent from each other. Which means that when the filterByWeapons has a match, filterByKeywords can also match the item.
If filterByWeapons has no match filterByKeywords still can have a match
If no Filter are set, all records will be accessed.
EXCEPTION: The player is always excluded from race or keyword filtering. If you want to patch the player, usefilterByNPCs:Skyrim.esm|7 and no other filter.
Skyrim Biped Slot Index List
Index Slot
0 Head
1 Hair
2 Body
3 Hand
4 Forearms
5 Amulet
6 Ring
7 Feet
8 Calves
9 Shield
10 Tail
11 LongHair
12 Circlet
13 Ears
14 ModMouth
15 ModNeck
16 ModChestPrimary
17 ModBack
18 ModMisc1
19 ModPelvisPrimary
20 DecapitateHead
21 Decapitate
22 ModPelvisSecondary
23 ModLegRight
24 ModLegLeft
25 ModFaceJewelry
26 ModChestSecondary
27 ModShoulder
28 ModArmLeft
29 ModArmRight
30 ModMisc2
31 FX01
1 comment
"The operation will fail, because filterByKeywords failed to match all it's keywords, even when filterByKeywordsOr and filterByKeywordsExcluded passed."
I guess I don't understand why the last two filters would not work if the first one failed. Can these filters not be used separately? Or are we assuming in this example that these filters are all linked? Is it similar to how SPID works? were if the command line edits the same record, the last line loaded wins the conflict?