00.) FOREWORD
Since my release, there have been a lot of question of how to do this or that with YAE, and it has made me realize that despite so many people having access to xEdit, they do not quite seem to understand how to use it. Consider this a beginner's entry to using xEdit in general, where we will be using YAE as the main focus. I'll try to be as thorough and detailed as possible. Despite how it looks, xEdit really isn't that complicated, and all of this can be done in a short amount of time, once your more familiar with how the program is setup.
If you're already familiar with how to make your own patches in this way, then this Article could still apply to you. This is because we will be editing the base damage given by our weapon Skills. A slightly complicated, but definitely easy thing to manipulate, which I know some people have been asking about since YAE's release, due to the unique way that it handles everything. Learning this should also give you some insight into editing other Skill System mods, like Be Exceptional and You Are SPECIAL, which use an almost exact setup.
01.) HOW TO BEGIN
This page is going to assume you already have xEdit setup, and have previously used it before. There are already guides on this, so there's no point for me to backtrack things that far. As mentioned above, our goal this time around will be to alter the damage that our weapons deal through Skills.
We'll be altering the Handguns Skill, specifically for the damage dealt with Revolvers. That way, they scale completely different from Pistols. In the future, this is something I'd like to do across the board with all weapons, but for right now, let's focus on the task at hand. Open up xEdit, and scroll down to You Are Exceptional. You should see something like this:

02a.) A QUICK LESSON ON NUMBERS
Now, let's take a short detour, and learn a few basic things that may help you in the future. They are a bit technical in nature, but I promise they won't hurt your brain (too much). However, "no pain, no gain", as they say. If your not interested in this, skip down to Section 03.
YAE (and most mods that alter Perks and character data) usually rely on variables (called a "Property" by Bethesda's system) to represent a number, which can then be changed on the fly later. This is an extremely useful tool, that is more or less a basis of programming and math, in general. There are multiple types of these variables (some which can represent entire ideals or phrases), but to keep things super simple here, we are going to limit our scope to the two main types: Actor Values, and Global Variables (the latter of which xEdit shortens to just "Globals").
Both of these variables are used to store "Floats"; meaning that they are decimal-based numbers. If you've messed around with xEdit long enough, there's a good chance that you've seen this word thrown around quite a bit, and were confused, but it quite literally just represents a value on whatever data entry you were looking at. There's also "Integers", which are specifically whole numbers only. This is important for data referencing numbers that we don't want to have a decimal; such as days of the week or the number of bullets you have remaining (why would you ever need one fourth of a bullet?), etc.
We're getting a little off track though, as for today, we just need to know that Floats exist, and that they are simply numerical values. Floats are the most commonly used type for this sort of thing, anyway. So, what exactly is the difference between Actor Values and Global Variables?
02b.) ACTOR VALUES
An obvious example, would be the Actor Value "Health". Each and every Actor in the game is likely to have this, yet all of them are going to have different amounts of it. If the Player has 200 HP, Dogmeat has 180 HP, and the Raider they are currently fighting has 300 HP, then their Actor Value Healths would respectively be: 200.0, 180.0 and 300.0 (remember, it's a Float, so it's going to have that .0 on the end, as you can have "part" of a Health, when it's lowered by taking damage).
If you've ever used console commands to change something on a character, you've probably seen stuff like "setav" or "modav"; these are simply shortened code terms for setting or modifying these Actor Values.
02c.) GLOBAL VARIABLES
In the case of YAE, I'm using this to handle the amount of Skill Points that your characters gain upon leveling, as I don't need variations of this. In other words, it doesn't need to be an Actor Value, because only the Player will ever gain Skill Points, and any changes made to this value have a very deliberate purpose. It also stores the SPECIAL attributes to be recognized by various Skills, and various other mechanics. It can also be used to store unique values used for percentile chance attempts, like when you "roll" to gain bonus ingredients through the "Herbology" Perk.
Unfortunately, due to the nature of Global Variables, xEdit changes will only take effect on brand new saves.
So, for the remainder of this guide, we'll be focusing on the previous variable type, which is the core of YAE, anyway.
03.) WEAPON SKILL DATA
When It comes to all my data entries, I tried to be as literal with my naming convention as possible. To that end, we're looking for a Perk called "yaePlayerSkillsPerk". As the name suggest, this controls all of the Skills that are held by the Player. In essence, this is the heart of YAE, and we're going to mess around with it a bit today. It should be located just past all the edited vanilla Perks; easy enough to find, as it is the first blank colored Perk on the list.
As a quick, interesting side note: data entries in xEdit appear in the order that they were created, from top to bottom. If you look around YAE enough, you can see that it started out with a very intended, organized design timeline in mind, but then quickly spiraled into chaos as I added more features than I had planned for, and bugfixes started rolling in.

04.) MAKING THE PATCH
Now that we've found the Perk that we're looking for, right click on it, and choose "Copy as Override into...."

Confirm the warning that pops up to edit the data, and in the following screen, check a box next to one of the <new file> entries. If you carefully look to the right, you'll see a number of options, spread apart by columns with designations. These will determine the type of patch you are creating. For now, we don't want this little patch to mess with our plugin limits, so we're going to flag it as an ESL by selecting the second option. I won't go into the specifics of when and why you should make something an ESL, but in this case, we're just altering a simple Actor Value. So, we should be fine.

You are then given the choice to name the patch whatever we would like. In this case, let's just go with "YAE Skills Perk Patch". In the future, you can name this patch whatever you, and it won't have to be one mod specific. Just make sure that if you go that route, you know what's in your patch, in case you decide to package multiple changes across many mods into one single file, and know that it only applies to your current modding setup or Instance (in the case of Mod Organizer).

Now, scroll down to the bottom of xEdit, and you'll see your newly created patch!

It should be in bold text; this means that the file hasn't been saved yet. Do so now, by going up to the upper left corner, and clicking the stack of thin bars. When you are prompted to save, simply confirm it. This step isn't required right now, but let's get it out of the way, just in case we accidentally lose some progress.

05.) THE PLAYER SKILLS PERK EXPLAINED
We're not done yet, that is just the setup! Let's take a closer look at what we actually came here for.
Go into your newly created patch, and select the data entry that we just copied over. Now that this Perk is copied into our own private patch, we may edit it freely, without directly and permanently damaging the mod that it references. So long as we keep this patch last in our plugins list (where it goes by default), it will overwrite the appropriate data in it's "parent" mod (a.k.a. YAE). Here's where things will get a little complicated, but only due to the way YAE handles it's Skills (normally, this part would be fairly straight forward). Don't worry, I'll be going over all of this in detail, and it's not as intimidating as it sounds.
So, first thing you need to know regarding YAE's weapon Skills, is that each is basically split into 3 factors, each with their own "Effect" (the entire sum of what one entry does) tied to an "Entry Point" (which controls the main aspect of that Effect, and generally what these types of data are referred to as). They effects are also applied in order of lowest to highest "Priority". These factors are:
(Priority 4) Mod Cone-of-fire Mult
(Priority 5) Mod Weapon Attack Damage
(Priority 6) Mod Weapon Attack Damage
No, that's not a typo: "Mod Weapon Weapon Damage" is coded twice. There might be some confusion here, so we'll address this first. In order for YAE to give Players a sense of weakness with weapons they aren't immediately familiar with, it causes them to suffer a damage penalty when using those weapons with a Skill below Rank 50 (which is where damage is set to x1.00; the vanilla damage rate).
However, if a Player's damage is too low, various anomalies may happen: such as allies failing morality checks and refusing to attack, or more obviously, your character dealing only 1 damage to enemies. To counter the possibility of these issues, I have capped the minimum damage that any weapon can deal to 30% of the default vanilla damage rate. Doing this required me providing this statistic with its own Mod Weapon Attack Damage Entry Point, conditioned to trigger if the Player's weapon Skill ever falls to Rank 15 or lower. Then, I simply conditioned the secondary Mod Weapon Attack Damage Entry Point to take over whenever the Player raises that Skill to Rank 16 or higher (rendering the other Entry Point worthless).
Hopefully that isn't too confusing? All you need to know going forward, is that one of these Entry Point always handles early Skill Ranks, and the other always handles those same Skills, but at higher Ranks.
As for the Mod Cone-of-fire Mult, that handles the "spread" of that weapon's attacks. Essentially, it acts as an accuracy modifier, although this particular Effect only applies while the Player is shooting from hip-fire. In the future I may find a way to change this to also include "Iron Sights", but I feel like if the Player is carefully aiming that should offset any penalty that they would get compared to casually aiming their gun. The stat itself is more precise the lower the number, effectively shrinking the "cone" of where your bullets "could" land. Hence why the associated Skill actually applies a negative value here; it's making you more accurate, the more skilled you are.
This Perk also does a ton of other things too: hacking and lockpick tier gating, the application of special abilities given by weapons, how much stimpaks heal for, etc... but for today, we're just going to focus on raw damage.
06.) EDITING THE PATCH
I'm sure that last guide section was a lot to take in, but it's about to make a ton of sense. For the sake of this tutorial, we're going to assume that you want all custom, modded Revolvers to do +100% more damage. Maybe you feel like their lacking power, due to their slow fire rate or maybe it's just my bias for them showing? Either way, for this guide, we'll be editing this very data. You can do this with any of the weapon Skills, but let's focus here (since it's entries are very easy to hunt down), and then later on we'll also alter a modded weapon to use this same data, effectively hitting two birds with one stone by teaching you how to make modded weapons compatible.
Go into yaePlayerSkillsPerk, and scroll down to the section marked "Effects". Conveniently enough, the first thing on this list are the 3 entries that handle Revolvers. This was due to some changes made after release, where I had to define Revolvers are "Pistols that also have the yaeCompatibilityKeyword_Revolvers" for some special modded weapons. Other than this entry, the list is hyper organized, in the order of the Skills themselves, albeit a bit backwards, as I originally designed this in the Creation Kit, which is much easier to read. Entry Points here are ordered by their "Priority", so for the sake of clarity, they are called Priority 4, Priority 5 and Priority 6, as shown below.

There's hundreds of entries here, though. So I can understand if it's hard to read through: this Perk does some heavy lifting. It definitely looks significantly more organized in the Creation Kit, although unfortunately the CK doesn't show comparisons to what your doing, and patching through there can be a lot more confusing in that sense. At the very least, for what we're doing today, we can ignore that first Effect (Mod Cone-of-fire Mult, which is the very first Entry Point you should see, listed as Priority 4). So, go ahead and minimize the view on that by clicking the little minus button next to its Effect, and let's take a look at Priority 5.

If you read the last tutorial sections carefully, you may already have an idea of what your looking at in the image above. The "Float" at the bottom represents the amount of damage that this particular skill will do at max rank, due to the part where it says "Multiply Actor Value Mult". The Actor Value in question is the yaeHandguns located right below it, but this Effect ONLY handles custom Revolvers, as per the Keywords placed upon this Entry Point under the "Conditions" row.
Select the Float within the right mod column (the one housing all changes our patch brings), and change that Float's value to 3.00 (or whatever number you prefer). This means that modded Revolvers will now deal x3 damage at Handguns Rank 100. If you were to save here, that effect would immediately take place in-game with this patch. However, there's an extra step we need to take while we're here.
Because we've increased the ceiling of our weapon's damage, we also have to alter the Skill Ranks that define when the minimum and maximum damages take place. For now, go into "Perk Conditions" and select the Float listed under "Comparison Value - Float"; this is the Skill Rank that needs to be reached in order for the damage value we set moments ago to be reached. Set this value to 34.0 (meaning, at Skill Rank 34+, we will begin to scale Revolvers off that x3.00 damage).

Now, scroll down to the next Effect for Mod Weapon Attack Damage (which should be right below, in Priority 6). Right away, you'll probably notice that things are a bit different, as it doesn't rely on "Multiple Actor Value Mult" as in the previous Entry Point. In order to keep a minimum damage value, this Entry Point is labled as a flat "Multiply Value", meaning it just applies the Float at the bottom, with no further influence. This is set to Skill Rank 15 or lower, and forces weapons operating at such to deal a flat 30% damage (remember, each Skill Rank currently adds +2% damage). Change those two values to reflect our recent changes, that way when your a third of the way through maxing this Skill (yaeHandguns 33 or lower), you'll do one third damage accordingly (Float 1.00).

Afterwards, we're finally done here, and you can freely close xEdit, upon which, you will be asked to save again. Make sure you do so!
07.) ENABLING THE PATCH
Once the patch is created, it will automatically be placed within Mod Organizer, and set in the right listing, similar to this.

Simply click the checkbox, and your patch will be immediately available for use, or we can take things a step further. Double left click the Overwrite entry on that left side, and a window will pop up. This is where information regarding overwrites and other stuff you've done through xEdit are generally stored. Right click anywhere and create a new folder. Name it "YAE Skills Perk Patch", and then drag our patch.esp into it.

In the upper left corner of this same window, click "Open in Explorer", which should take you to where these files are stored on your computer. Right click the folder containing our Patch, and then select Cut. Now, go to where ever your currently storing all the mods you install via Mod Organizer, then Paste your patch folder into that location. Once that's done, go back into the Mod Organizer, find an empty space and right click it, and select "Refesh".
And just like that, your patch should appear on the left side of Mod Organizer, as if it were any other mod you've installed. Enabling it will also put it back into the right side, with your other enabled plugins. Now that you've set this up, you can even package this folder as an archive and share it with others. I'll leave it up to you to decide how you do this (personally, I prefer winrar).

08.) CUSTOM WEAPONS
Now, since we've altered a Skill to affect custom Revolvers, we're going to need a custom weapon that uses those values! For this example, I'll be using the mod 10mm Revolver Colt 6520, but you can use anything you want. Install your chosen weapon, but make sure that our patch is below both the weapon and YAE on your lists.
Note: This for the purposes of this tutorial, the 10mm Revolver Colt 6520 mod was chosen at random. I have never used it before.

Now open xEdit back up. Go into the mod, locate the weapon, and as before, right click it and copy it into our mod.

When it asks "where" to send it, select our patch. It will ask you for permission to expand the "masters" needed for our patch (in other words, our patch will need both the gun mod and YAE active to actually work). Say yes.

Now, do the exact same thing for YAE, but this time, go under the Keywords section, and search for "yaeKeywordCompatibility_Revolvers". Again, copy this data entry as an override into our patch.
Note: Revolvers are the only weapon type that will ever need a special combination of Keywords for compatibility (in this case, both WeaponTypePistols AND yaeKeywordCompatibility_Revolvers). Normally, to make any modded weapon work properly with YAE, you would just need to add the one custom Keyword it provides, and remove any extra that might conflict (i.e. if you want a gun to be recognized as a Rifle, you don't want it benefiting from being a Pistol, etc.). Which is exactly why we're using it as a tutorial example here.

We have everything we need now. Go into the patch, and find our duplicate copy of the weapon we want to modify. Make sure that it doesn't have any conflicting Keywords: we don't need the Revolver to be accidentally identifying as a Shotgun or a Rifle. In the case of 10mm Revolver Colt 6520, it doesn't have anything like that, and because it's already labeled as a Pistol, it just needs our special Keyword. Right click it's Keyword section, and select Add.

This will give you a new blank space. Search, type or paste the yaeCompatibilityKeyword_Revolver into this new space, and we're done!

09.) CONFIRMING THE CHANGES
When you decide to finally use your patch, make sure that it is enabled, and also located below where you have both the weapon and YAE placed in your Mod Load Order. Make sure it's like this on both sides of Mod Organizer. The ideal place for stuff like this, would be right below it's "parent" mod, so place it directly below YAE. This ensures that you don't accidentally forget the changes you've made, or if there's some sort of mod conflict, you can immediately remember what you've done to possibly contribute to this.
Now, let's play some Fallout 4, and test this! Boot up your game by running F4SE (the only way in which YAE will work, anyway). Get ahold of your new gun, either by regular play or console commands (ESP Explorer is a great choice, too).
This is the damage I have with the Revolver before, at Handguns Skill Rank 36:

And the damage after, at Handguns Skill Rank 100! As you can see, the changes are going through just fine!

I apologize if this ended up being way more complicated, and far longer than it should be. I originally planned this guide to cover the altering of Base Skill Points per Level, but after 3 hours of writing (and finishing) the guide, my smooth brain realized that Globals couldn't be altered via xEdit. So go figure. But, now you know why making changes to YAE takes so long.
Hopefully you understood, and happy gaming!
0 comments