Skyrim

When I found out years ago that adding perks to the player and especially NPCs is a lot of trouble in the engine, I tried adding my permanent perk effects for the player to the TGWellFitted perk that the player starts with which already adds the set bonus spell for Nightingale Armor. Surprisingly, it just worked and left no trace upon uninstalling. Awesome. But getting any perk effects to work on followers and other NPCs proved nearly impossible down the road as neither magic effects nor SKSE scripts can add perks to NPCs, only the player. Not even the "addperk" console command works for NPCs. Many items don't work fully for NPCs as a result... unless you edit their NPC record and add the perk to them the hard-coded way. And if it's a mod's perk, well, then the NPC mod needs to reference it, so it has to create a patch that sets the mod as a master dependency. But TGWellFitted isn't a mod's perk, it's in Skyrim.esm! I put most of the effects which had to work at all times on the perk, and the result is that adding that perk to a follower will make nearly all the big perk effects in this mod work for them, like Volendrung's stun and Skull of Corruption's scaling. So you can add TGWellFitted "Well Fitted", renamed "Awesome Perk" to any follower's NPC record in an NPC mod without adding AA as a master file and more weapons will work for them. No patches, no problems, just a vanilla perk. The vanilla SilverPerk and 'SkillBoosts' perks should also be added to any such follower to let them benefit from silver weapons and certain enchantments, like in Capable Housecarls.
It should be noted that I have gone to great lengths to ensure that as many things as possible work without adding the perk. And unlike in vanilla, followers can use Glass Bow of the Stag Prince, except the falling damage and stagger reductions don't work for them no matter what.

The mod has a ton of injected keywords. This is what we call the SPIKE system over at Guard Dialogue Overhaul. It was once in an .esm that several mods depended on, but now they're injected into update.esm, and tons of other mods now use the same technique, so SPIKE really just refers to GDO's own injected keywords instead of the system. SPIKE keywords makes guards respond to items if GDO is installed. WAF keywords do several things, primarily switching smithing perk bonuses if WAF is installed or extending matching set bonuses to other sets. So it goes without saying that this mod benefits greatly from WACCF. The CRFExemptArtifactKeyword makes the Aedric artifacts with the DaedricArtifact keyword unable to be targeted by the daedric artifact hunting Vigilants of Stendarr in CRF. So they won't take Auriel's items. The DaedricArtifact keyword does not affect the achievement (or anything else it seems), so since it was included in vanilla and other mods than CRF could use it, I'm going to leave it like this.

There is an injected global value called IsAwesomeArtifactsInstalled. It is set to 1, and can be used to detect AA without needing to use a script. It has Form ID 01424201 in update.esm. So let's say you want to change the text on a loading screen in your mod based on the changes in AA. You can create your AA loading screen in your mod and add a condition that checks if the global value at 01424201 is set to 1, and add a condition to your vanilla loading screen which checks if the global value is NOT equal to 1. If AA is installed, the global value will be equal to 1 so it shows the AA loading screen, but if AA isn't installed, it will be unable to look up the address and returns with "NULL", which is not equal to 1, so it shows the vanilla loading screen. It's compatibility without any patch or script!

The Nightingale Arrow projectile is also injected so that projectile speed tweaks can change their speed without needing a patch. No one wants to have a patch for just 1 arrow.

This article will probably be edited and expanded over time.

Article information

Added on

Edited on

Written by

Argonil

0 comments