Keyword Fixes for Caenarvon Armours

⭐ ⭐ (129 endorsements) 📥 3,977 downloads 📌 v1.0 📅 10/29/2021
⚪ Last updated 2021

By Caenarvon · Armour

⬇ Download Mod Source: Nexus Mods ↗ 📅 Updated: 10/29/2021 📅 Created: 10/29/2021
⚠️ Install Order · 5 steps
1🛠️ SKSE64 — Skyrim Script Extender 64 Download ↗
2🔧 USSEP — Unofficial Skyrim Special Edition Patch Download ↗
3🖥️ SkyUI — SkyUI (MCM framework) Download ↗
4🧩 Address Library — Address Library for SKSE Plugins Download ↗
5🔧 SSE Engine Fixes — SSE Engine Fixes Download ↗

Install in this order, then this mod last — most mods fail to load without their framework and dependencies in place.

🔍 Analysis

  • 👍 3.2% endorsement rate — high engagement, a strong quality signal
  • 🏆 #57 of 233 Armour mods in this game by downloads

📋 About This Mod

Caenarvon's armour sets are really nice but they have just one problem: they don't have the heavy or light armour keywords and won't benefit from associated perks. These ESPs fix that.

By default, Skyrim's perks don't look for the type of the armour when applying perks, they look for specific keywords. Without those keywords, armour will only scale with the base skill and quickly find itself outclassed by even fur gear.

So here are a set of replacement ESPs to tag the armour correctly so that it benefits from perks. Uploaded with permission.

If you want to apply this to any other ESP you have, just use this xEdit script:

unit UserScript;var

slKeywordHA: TStringList;

slKeywordLA: TStringList;

slKeywordSH: TStringList;

slKeywords: TStringList;

//============================================================================

function Initialize: integer;

// keywords to add

slKeywordHA := TStringList. Create;

slKeywordLA := TStringList. Create;

slKeywordSH := TStringList. Create;

slKeywordHA. Add('0006BBD2'); // ArmorHeavy

slKeywordLA. Add('0006BBD3'); // ArmorLight

slKeywordSH. Add('000965B2'); // ArmorShield

//============================================================================

function Process(e: IInterface): integer;

kwda, k: IInterface;

i, j: integer;

exists: boolean;

//only processing armour

if Signature(e) <> 'ARMO' then

//determine correct keyword to add

if GetElementEditValues(e, 'BOD2\Armor Type') = 'Light Armor' then

slKeywords := slKeywordLA

else if GetElementEditValues(e, 'BOD2\Armor Type') = 'Heavy Armor' then

slKeywords := slKeywordHA

// get existing keywords list or add a new

kwda := ElementBySignature(e, 'KWDA');

if not Assigned(kwda) then

kwda := Add(e, 'KWDA', True);

// no keywords subrecord (it must exist) - terminate script

if not Assigned(kwda) then begin

AddMessage('No keywords subrecord in ' + Name(e));

Result := 1;

// check it isn't a shield - shields don't get armor keywords

// if it is, terminate

for i := 0 to slKeywordSH. Count - 1 do begin

for j := 0 to ElementCount(kwda) - 1 do

if IntToHex(GetNativeValue(ElementByIndex(kwda, j)), 8) = slKeywordSH then

// iterate through additional keywords

for i := 0 to slKeywords. Count - 1 do begin

// check if our keyword already exists

exists := false;

for j := 0 to ElementCount(kwda) - 1 do

if IntToHex(GetNativeValue(ElementByIndex(kwda, j)), 8) = slKeywords then begin

exists := true;

// skip the rest of cod

📊 Mod Details

Game
Skyrim Mods
Author
Caenarvon
Version
1.0
Downloads
3,977
Endorsements
129
Category
Armour
Created
10/29/2021
Updated
10/29/2021

🔧 How to Install Skyrim Mods

Download from Nexus.

📖 Full step-by-step install guide for Skyrim →

Visit the official mod page for specific installation instructions for this mod.

🎮 Need cheat codes or console commands? Check ur gaming wiki for Skyrim commands, item IDs, and more.

Keep browsing — more Skyrim mods await

📋 All Skyrim Mods 🏆 Top 25 📂 More Armour 👤 More by Caenarvon 🔎 Similar Mods 🌐 Best Armour (All Games) ⚠️ Fix Crashes & Errors 💾 Save Files 🔀 Check Compatibility ⚖️ Compare Mods 🆕 New Mods