Skip to content

Adding support for mod added Weapons

Raulfin edited this page Mar 11, 2015 · 6 revisions

To add support for a weapon, the following information is needed, it can all be found in the mods esp.

  1. Weapon Name.
  2. Weapon EDID.
  3. Weapon Material. Check the keyword on the weapon and/or the main ingrediant in the crafting and tempering recipe (if any).
  4. Weapon Type. Sword, Greatsword, Katana etc.
  5. Does the weapon have a Template Item set?
  6. Is the Weapon Enchanted.
  7. Is the Weapon required 'by' ANY quest. Quest reward weapons generally are not required for a quest. Some are a bit odd though, like Nettlebane.
  8. Determine if the weapon is a Hero item or an Alternate item. Hero items are things like Aela's Shield, Conan's Sword, Andúril, etc. alternate items are things like Super Cool Sword. Hero = True, Alternate = False
  9. Should random enchanted versions be made. Hero = False, Alternate = True
  10. Should it be distributed. If the original mod already distributes the items, they should be excluded from further distribution. If the original mod already distributes the items but if random enchanted variants are being made the variants should be distributed. Hero = False, Alternate = True
  11. Remember that everything below is case-sensitive, steel != Steel, and that entries should be as exclusive as possible, if the weapons name is Bucklebury Ferry Guards Dagger don't bind it as Buck.

With that info open Weapons.xml.

  1. If #5 is false, create an entry in weapon_material_bindings;

      <binding>
     	<identifier>Material</identifier>
     	<substring>Weapon Name</substring>
     </binding>
    
  2. If #5 is false and the weapon name does not contain a common weapon type, create an entry in weapon_type_bindings;

     <binding>
     	<identifier>Weapon Type</identifier>
     	<substring>Weapon Name</substring>
     </binding>
    
  3. n1 If #6, #7 or #8 is true, create an entry in reforge_exclusions;

     <exclusion>
     	<text>Info</text>
     	<target>NAME</target>
     	<type>CONTAINS</type>
     </exclusion>
    

What goes here can vary, the <target> can be NAME, EDID or FORMID n2. The <text> is what the <target> checks for, and the <type> is how it is checked. <type> can be either;
CONTAINS - If the text is matched anywhere in the target the exclusion is true.
STARTSWITH - If the text is matched at the begining of the target the exclusion is true.
EQUALS or EQUALS_IGNORECASE. - If the text is matched exactly in the target the exclusion is true.

  1. If #6 or #9 is false and/or #7 or #8 is true, open Enchanting.xml and create an entry in enchantment_weapon_exclusions

  2. If #10 is false and/or #7 is true, open LeveledLists.xml and create an entry in distribution_exclusions_weapon. If the item is enchanted put it in the distribution_exclusions_weapon_enchanted subsection, otherwise put it in the distribution_exclusions_weapon_regular subsection.

  3. Do this for each weapon in the mod.

Tips

Using EDID for exclusions is almost always easier than using item names. Most modders will use custom EDID prefixes for every record in their mods, mine all use Raul_Weap_ for weapons. Using that all items in the mod can easily be excluded with just 1-2 entries instead of dozens. This will also help keep the file size down and speed up parsing.

Everything is case sensitive, except an EQUALS_IGNORECASE exclusion type.


Notes

n1An Exclusion needs to be as exclusive as possible, EDID exclusions such as Armor or Ench will exclude nearly every Vanilla and DLC armor and cannot be used, most mods use a custom prefix, like Skyrim Immersive Creatures uses 00_ for everything, every EDID exclusion should be as long as possible, at least 4-5+ characters long, or 3+ characters long if it uses an underscore (_) near the start.

n2FORMID is extremely rare and should almost never be used, I only use it for 1 item from Skyrim.esm and only because the item had to be excluded and the name was the same as a common weapon. Anything submitted with a FormID check will need a very good reason and absolutely no other way of doing it. FormID checks should only be used for Skyrim.esm and Update.esm, using it for DLC or USKPs will force requirements on every user.