Fallout New Vegas

ySI - Manual Patch Creation

Introduction

ySI provides sorting and icons for items within Fallout: New Vegas by default, using .json for sorting. Anything that ends up modifying an item from the base game will need to be patched, as well as items added by mods. Fortunately, this is possible through the creation of additional .json files, which are setup to correspond with ySI’s tags and icons, but may also contain custom tags and icons.

To best follow along with this guide, I recommend either having ySI.json, or one of my patches downloaded and open for reference. I will be using segments of code here, but it's best to view the file in a text editor like Notepad++.


Adding FormID overrides on an .esm/.esp basis

For the most part, the simplest way to provide a tag and icon using ySI is by manually overriding the FormID and referencing the .esm/.esp that it comes from. This can be seen in the example below (taken from myBig Guns Implementation patch):

{ "priority": 200, "tag": "(fba4)", "mod": "FalloutNV.esm","form": "1429D1" }

In layman's terms, this translates to: Set the priority of this tag to make the 12.7mm submachine gun from FalloutNV.esm use the tag "fba4". The priority aspect is really only needed for items that were previously tagged by ySI, such as in the default file. The default ySI.json provides both automatic sorting, and manual sorting (what we are talking about here). This means, all items from the base game and DLC should be covered, as well as items that fall within the automatic sorting from some mods.

However, this article isn't about automatic sorting, it's about manual sorting. So here we go.

Priority

The priority that is set will depend on whether or not you are overriding a previously existing tag. Generally, for most patches, you'll want to use a number that is high enough to override the default sorting. Most of the priorities set in ySI.json range between 100-151. For most of my patches, I use a priority of 200, as that guarantees an override. Numbers higher than that aren't necessary. Technically, 152 would override most things, but 200 is a safe bet for now.

Tags

ySI provides a relatively expansive number of icons and tags. However, there may not be a specific icon for your needs. We will get to adding new icons in a moment, but for now, let's just talk tags.

All tags are sorted alphabetically, in their respective categories. The tag listed above, "fba4" is a default tag set by ySI.json that corresponds with the icon found in \interface\icons named "WeapA_Pistol.dds". Because Sweet Six Shooter's Big Guns Implementation modifies the 12.7mm submachine gun beyond what the automatic sorting recognizes from the base game, this override forces the tag manually. This can be done with any tags found in ySI.json.

Adding new icons/tags

If you would like to add a new icon, you will need to create a new tag alongside it. To best organize with the tags set via ySI, you should look at the tag and icon connections at the bottom of ySI.json and create your tags to fit within that structure. Here's an example of a tag and icon, structured as a complete .json (also taken from my Big Guns Implementation patch):

{
"tags": [
{ "priority": 200, "tag": "(fba5)", "mod": "FalloutNV.esm","form": "08F213" }
],

"icons": [
{ "priority": 100, "tag": "(fba5)", "template": "ySIDefault","filename": "interface\\icons\\WeapA_Pistol_Heavy.dds" }
]
}


By creating the tag "fba5", any items with this tag will be listed directly below items tagged with "fba4". Where 0008F213 corresponds with the 12.7mm pistol, this means that any 12.7mm pistol from FalloutNV.esm will use the icon WeapA_Pistol_Heavy.dds and be sorted directly below most SMGs and handguns. If you wanted to override icons from ySI itself, you would use the same tag that ySI.json uses, but use a higher priority in the icon section of the patch's .json.

If you add more than one entry into each section, you will need to end each line with a comma. The final line in each section will not need the comma:

{
"tags": [

{ "priority": 200, "tag": "(fba5)", "mod": "FalloutNV.esm","form": "08F213" },
{ "priority": 200, "tag": "(fbd4)", "mod": "FalloutNV.esm","form": ["004340", "1056D2", "162019"] }

],
"icons": [
{ "priority": 100, "tag": "(fba5)", "template": "ySIDefault","filename": "interface\\icons\\WeapA_Pistol_Heavy.dds" },
{ "priority": 100, "tag": "(fbd4)", "template": "ySIDefault","filename": "interface\\icons\\WeapA_Other_MissileLauncher.dds" }
]
}

You can also add multiple items to each entry by enclosing them in brackets and using commas between FormID entries, as seen above.

Templates

For the most part, you can leave the template field as I have it laid out above, using "ySIDefault". There is an .xml file that ySI uses for the template, but unless you are familiar it, I recommend leaving it alone and sticking to the default.

FormIDs for the uninitiated

Now, if you've gotten to this point, you may already know what a FormID is, and where to find it. But, for those who may not be as familiar:
 

The FormID (or Form ID) of an object is the unique unsigned numerical identifier for that object, in hexadecimal. This is the 'short version' used by the engine while the game is running.
- GECK Wiki

All items added to the game have a FormID. If the item comes from the base game, you should be able to easily find this online from a resource like the Fallout Fandom wiki (link for 12.7mm pistol used in example above) or others.

If the item does not come from the base game or DLC, your best bet would be to examine the mod in question via xEdit. There are plenty of guides around using xEdit, but the easiest thing to do is only load the mod you are looking at, and its dependencies. From there, just find the item you are trying to add an icon/tag for, and use the last six letters/numbers.

For example: xx08F213. The "xx" here represents the Mod Index, which will almost always be different for everyone, minus the base game and DLC, and 08F213 is your FormID.

If you have entered what you believe to be the correct information, and ySI doesn't show any tags, go to \Fallout New Vegas where FalloutNV.exe is, and you should see a file named yUI.log. Looking through the log will show you all .json files being checked, and the respective FormIDs and EditorIDs that have successfully been tagged. If a FormID is not found, this may be due to either a typo or the item not corresponding with the mod referenced.

If you are unable to find FormIDs through xEdit directly, you may need to look at scripts written into the mod, and go through the EditorIDs listed, and then find their respective FormIDs.


Conclusion

So, there you have it. These are the basics to figuring out how to make your own manual patches for ySI. Once I take the time to look into the automatic sorting, and the sub-folder sorting, I'll add new articles. If there are any questions, or issues, feel free to either leave a comment or ping me on the TTW Discord
. I've added a lot of the formatting to try to make it easier to find specific bits of information, but if it ends up being too much I'll remove some of it.

Article information

Added on

Edited on

Written by

admiral0912

1 comment

  1. archerarcher
    archerarcher
    • premium
    • 31 kudos
    This is very helpful, many thanks.