Vous êtes sur la page 1sur 27

Help content Page 1 of 27

Automation Tools for TES5Edit


Installation

Installing AutomationTools.

Automation Tools requires TES5Edit, a Skyrim modding utility that allows for the editing of bethesda
plugin and master files, advanced methods of conflict resolution, and the application of scripts.
TES5Edit can be acquired from Nexus Mods here. It is recommended that you install TES5Edit in your
Skyrim directory in a folder titled "TES5Edit" for optimal script usage.

Once you've installed TES5Edit you can install the user scripts included in Automation Tools. To install
AT, simply copy the entire "Edit Scripts" folder included in the AutomationTools archive to the folder
containing TES5Edit.exe. ...and that's it! Now you can use the scripts in TES5Edit as directed in this
documentation file. Enjoy!

General TES5Edit Information


Script Application

Applying a script to some records.

file:///C:/Users/davidapr2/AppData/Local/Temp/~hhF0E6.htm 11/30/2016
Help content Page 2 of 27

Selecting a script from the dropdown menu.

file:///C:/Users/davidapr2/AppData/Local/Temp/~hhF0E6.htm 11/30/2016
Help content Page 3 of 27

Before script application you must load the esm and esp files relevant to its application in TES5Edit.
After they're done loading, which you'll know by the message "Background Loader: finished", you can
begin applying scripts.

To apply a script you first have to know whether or not it's a script that's applied to selected elements, or
one that is applied generally. In this documentation I specify whether or not you have to select records
before applying a given script.

Records can be selected using CTRL+Click or Shift+Click. Once records are selected you right click
one and then choose Apply Script from the dropdown menu. If no records are selected you can simply
right click anywhere in the main window and choose Apply Script from the dropdown menu.

Once you choose Apply Script, a window will come up. At the top of this window is another dropdown
menu from which you can choose the script you want to apply. This menu is alphabetized, so finding
scripts in it should be easy. Once you've selected your script you can simply click OK to apply it.

Elements, Paths, and Lists

Element signatures and names highlighted.

List of elements with indexes noted

I highly recommend you open TES5Edit to see what I describe here for yourself. It will greatly enhance
your understanding of what I'm talking about here.

Many of the scripts in this package will ask for "paths" to elements. These paths are fairly easy to learn.
If you select a record in TES5Edit you'll see the values associated with the record appear in the "view"
window. Within this window you should see labeled elements. E.g. RNAM - Race, DNAM - Data, Male
world model, Female world model, KWDA - Keywords, EDID - Editor ID, FULL - Name, etc. Some of
these elements may have elements stored inside of them. E.g. inside the BOD2 - Biped Body Template
element on an ARMO record you'll see the subelements First Person Flags, General Flags, Unused, and
Armor Type. A "path" is a means to communicate to TES5Edit what element you want to deal with for a
given procedure or function.

You'll notice many elements will have a 4-letter abbreviation, a hyphen, and then a name. The 4-letter
abbreviation is called a signature. When you're trying to communicate a path to TES5Edit you can refer
to the element by it's full name, including the signature. E.g. EDID - Editor ID. Alternatively you can
refer to it using just its signature. E.g. EDID. From there you can use slashes to denote paths to interior
elements. E.g. DATA\Value, DATA\Weight, BOD2\Armor Type, Male world model\MOD2,
OBND\X1, etc.

When asked for a path you can specify any path to an existing element. It's really quite easy once you
get the hang of it.

Recent work with TES5Edit has led to the creation of a new function which allows the usage of indexed
paths. These are paths that allow you to get at elements within lists of elements. But seeing as I having

file:///C:/Users/davidapr2/AppData/Local/Temp/~hhF0E6.htm 11/30/2016
Help content Page 4 of 27

explained lists of elements yet, I'll do that next.

Some elements in records in TES5Edit may contain elements that can contain an indefinite amount of
other, identically named elements. E.g. the Conditions, Factions, or KWDA - Keywords elements. These
are called Element Lists. You cannot use traditional paths to get to elements inside of an element list.
Doing so will only give you access to the first element in the list. This is where indexes come in. Each
element in an Element List is stored at a particular index. The first element in the list is at index 0, the
second at index 1, the third at index 2, etc. You can use an indexed path to refer to these elements, and
the elements inside of them. For instance, if you want to refer to the fourth element in the element list at
KWDA - Keywords you could say: KWDA\[3]. Or, if you wanted to refer to the Function element in the
second element in the element list at Conditions, you could say: Conditions\[1]\CTDA - \Function. You
can also use the [index] notation for elements that aren't in lists, but I'd recommend just sticking to
writing out the signature or name of the element instead.

Anywho, that should be all you need to know about Elements, Paths, and Element Lists. Good luck!

mteFunctions.pas
Summary:

mteFunctions.pas is a unit that contains functions that are used by my other scripts. These functions are
called from it via the "uses" parameter early on in each script. You can use these functions yourself if
you wish. This file is required for any of the other scripts included in this package to function.
Removing, editing, renaming, or improperly installing it will make it so the other scripts in this package
can no longer execute correctly.

Functions:

You can see the script's code for a list of the functions included in this unit, and how to use them. There
is a section before each function that tells you how to use them and gives an example. Simply add "uses
mteFunctions;" after your unit declaration in a TES5Edit script to gain access to the functions contained
in this unit.

NPC Generator

The NPC generator window.

file:///C:/Users/davidapr2/AppData/Local/Temp/~hhF0E6.htm 11/30/2016
Help content Page 5 of 27

Head part assets to be used in NPC generation.

The NPC Generator generates NPCs using loaded assets. Everything is randomly generated within
certain constraints. No two NPCs will look exactly the same, and generated NPCs look good. Can
generate up to 100 NPCs per script run, and generates them at a rate of about 2 per second.

Basic Usage:

Step 1: Load the assets you want to use in NPC generation into TES5Edit (the .esp files associated with
them). E.g. ApachiiHair.esm. List of supported asset types:

file:///C:/Users/davidapr2/AppData/Local/Temp/~hhF0E6.htm 11/30/2016
Help content Page 6 of 27

¡ Outfits (OTFT)
¡ Color records (CLFM)
¡ Voice Types (VTYP)
¡ Head Parts (HDPT)
¡ Races (RACE) [Note: The script doesn't support custom races yet.]
¡ NPCs (NPC_)
Step 2: Apply script, no record selection necessary.
Step 3: Specify the settings you wish to use for the NPC generation. Settings listed below:
¡ Number of NPCs: Integer number from 1-100. This is how many NPCs will be generated by the
script.
¡ Template NPC: You can choose an NPC to use as a template using this field. This isn't used for
the TPLT element in the generated NPCs, it's the base record that's copied for each created NPC.
¡ Gender: Random, Male, or Female. All generated NPCs will be the gender specified here. If
random is chosen, each generated NPC will be randomly male or female.
¡ Race: Random, or one of the races in the dropdown menu. All generated NPCs will be the race
specified here. If random is chosen, each generated NPC will have a random race from the list.
Modded races may or may not work with the NPC generator, depending on how the race's assets
are implemented.
¡ Asset parameters: If you want to skip using Bethesda assets in the generation of NPCs, you can
specify which assets you want to skip here. This can be useful if you don't want to generate NPCs
with low quality Bethesda hairs/eyes/brows when using mods that add character assets to the
game. NOTE: It's important that you have the other assets loaded, and (if they're in ESP files)
choose to use them, else the script may have no assets to use when choosing a head part for an
NPC, leading to errors.
¡ Scar chance: A percentage value from 1 to 100. This is the chance that the NPC will be given a
randomly chosen scar.
¡ Last name chance: A percentage value from 1 to 100. This is the chance that the NPC will be
given a last name.
¡ Vary NPC height: Enable this to vary NPC height from the default race value. The variance is
specified in the two edit boxes below. (E.g. default values are from Race Height - 5 to Race
Height + 5)
Step 4: Click OK, then select the file you wish to create the NPCs in, or create a new one.
Step 5: Watch it go! There shouldn't be any errors with NPC generation unless you have improperly
installed/edited the .txt files the generator uses for names and outfits. (some custom assets could cause
issues as well, though I've never encounted such an error.)
Step 5: Close TES5Edit and save the file you stored the NPCs in.
Step 6: Open the file in which you stored the NPCs with the Creation Kit as the active file. Select all the
NPCs you generated and press Ctrl+Alt+F4 to generate NPC face geometry. This will make certain the
NPCs appear ingame correctly. You can also place the NPCs somewhere in the world for testing if you
have a specific cell in mind. Alternatively, you can just use the player.placeatme command to place the
NPCs while ingame. You'll have to know their FULL names or FormIDs if you wish to use the
placeatme method (so you may want to take note of those).
Step 7: Close the CK, saving the file if prompted. You can now go into Skyrim and test the NPCs out.

Text Document Customization:

In the subfolder "npcg" in your Edit Scripts folder you will find a bunch of text documents. All of these
text documents, excluding outfits.txt, are where names for the NPCs are stored. There are three text
documents per race in this folder:

l <Race>FemaleNames

file:///C:/Users/davidapr2/AppData/Local/Temp/~hhF0E6.htm 11/30/2016
Help content Page 7 of 27

l <Race>MaleNames
l <Race>FamilyNames

The FemaleNames document is the first names given to females of the race; the MaleNames document
is the first names given to males of the race; and the FamilyNames document is the last names given to
NPCs of the race.

In addition to these race specific documents there is are documents called GeneralFemaleNames,
GeneralMaleNames, and GeneralFamilyNames. These documents are blank by default, but names added
to them will be used by NPCs of all races. So, as you knew was coming, you can modify these text
documents to add or remove names as you see fit. The names currently used were downloaded from
UESP thanks to FiftyTifty.

In addition to NPC names, you can also modify the outfits available to NPCs generated with the script.
All you have to do is add or remove Outfit Editor IDs from the outfit.txt document. Invalid EditorIDs
will be ignored, but having too many invalid entries can slow down script execution. To verify that your
outfit entries are functioning correctly see the User Variables section.

User Variables:

User variables section of the NPC Generator script.

The script has thirteen user variables that you can enable/disable in the script's code. You will find these
in the constants section of the script immediately after the unit declaration (line 33 as of v1.6).

file:///C:/Users/davidapr2/AppData/Local/Temp/~hhF0E6.htm 11/30/2016
Help content Page 8 of 27

Ten of the available variables are skip booleans. You can set one of these to true to skip that part of NPC
generation when the script runs. E.g., setting skipoutfit to true will leave all your created NPCs without
an outfit, and skiptintlayers will cause them to be created without any defined tint layers.

Then there is the processesps boolean. This user variable is true by default, and allows the user to
process assets in loaded esp files in TES5Edit. When true, it will prompt the user to use assets in each
loaded esp file whenever the script is run. Set it to false to remove these prompts and only use assets
from .esm files. esm file assets are automatically loaded when the script is run, so make sure you only
load the .esm files that have important NPC assets when you start TES5Edit with the purpose of
generating NPCs.

Then there is the pre string. This is the prefix string used in NPC editor IDs before their editor ID is set
to their name. You probably don't need to bother with this.

Finally, there is the debug boolean. Enabling this boolean variable will cause the script to print more
messages to the log. Enabling it is useful if you want to make sure you're properly entered outfits in the
outfits.txt file, or if something isn't working and you want to see why. If you have a problem with the
script that you would like resolved, please enable debug and post a copy of your message log after
attempting to run the it. Saying "it's not working" without providing useful information (as is included in
the message log) will severely impede people's ability to assist you.

Code Modification:

The beginning of the tint layers section of the script's code.

If you want to take your NPC generation to the next level, you could modify the script's code. The Tint
Layer section is probably the easiest, and most interesting area to edit. You can find this area of the code
from lines 1077 to 2317. (yeah, that's over half the script!) If you're really motivated to adjust the
randomly generated tint layers from the values I painstakingly researched and chose you can send me a
private message on the nexus forums. :)

file:///C:/Users/davidapr2/AppData/Local/Temp/~hhF0E6.htm 11/30/2016
Help content Page 9 of 27

Armor Mod Builder

The Armor Mod Builder window.

Armor Mod Builder builds a standalone armor mod using user input values and a folder of .nif files.
Generates Armor records, Armor Addon records, and can generate Constructable Object records
(recipes) as well. Supports 6 armor pieces: Cuirass, Boots, Gauntlets, Helmet, Shield, Cloak.

Basic Usage:

Step 1: Open TES5Edit with the master/plugin files that have ingredients that you'd want to use in
Constructable Object records. (Usually just the Bethesda Master files)
Step 2: Apply the script, no record selection necessary.
Step 3: Specify the parameters you wish to use for building the Armor Mod. Parameters are listed

file:///C:/Users/davidapr2/AppData/Local/Temp/~hhF0E6.htm 11/30/2016
Help content Page 10 of 27

below:
¡ Create constructable object records (recipes): Check this box to create recipes for the armor pieces
created by the script. Checking the box will make the Item and Condition sections available to
you.
¡ Items: Click the [+] button to create a new item entry, or the [-] button to remove an item entry.
For each entry you can specify the item you want to use and the base count you want to use for
that item. The base count is the amount of that item that will be used in the recipe for the cuirass
armor record. Other armor pieces will require smaller amounts of the item.
¡ Conditions: Click the [+] button to create a new condition entry, or the [-] button to remove a
condition entry. For each entry you can specify the condition function you want to use from a list
that includes the functions I can imagine someone using for an Armor Recipe (it doesn't include
all possible condition functions). Then you can specify the comparison type, the comparison
value, and the condition variable (e.g. perk for a HasPerk condition). Finally, you can tick a
checkbox if you want the recipe to be usable when only some of the set of conditions are fulfilled
(the "or" checkbox). E.g. Condition 1 OR Condition 2.
¡ Armor prefix: The prefix used by the armor pieces. This will be used in the EditorID and Full
names of the records created for the armor.
¡ Armor type: Heavy Armor, Light Armor, or Clothing.
¡ Armor material: this governs where the armor will appear at the forge if you chose to create
Constructable Objects for it.
¡ Base armor value: This is the base DNAM (armor rating) for the armor set you're creating. The
base value is what is used on the cuirass. Values for other pieces of armor are extrapolated from
the value used for the cuirass. For reference it starts at 12, which is the armor rating of an Iron
Cuirass.
¡ Base weight value: This is the base weight for the armor set you're creating. Once again, the base
value is what is used on the cuirass. Values for other pieces of armor are extrapolated from this
value.
¡ Base gold value: This is the base gold value for the armor set you're creating. This will be the
value that is used on the cuirass. Values for other pieces of armor are extrapolated from this value.
¡ Meshes directory: This is the subdirectory from your Skyrim directory where .nif files for the
armor you are creating can be found. E.g. Data\Meshes\Armor\iron\ is the subdirectory for Iron
Armor .nif files after they've been extracted from their BSA. This directory must physically exist
(it can't be in a BSA archive), and must contain only the nif files associated with the Armor you're
creating. For more information on the meshes directory and how the script deals with .nif files, see
the Nif Files section.
Step 4: Click OK and review the .nif file tagging the script has performed. If everything looks correct
click OK again. See the Nif Files section for more information on this subject.
Step 5: Select the file you want to build the armor mod in, or create a new one.
Step 6: Watch it go! The script should create Armor Add-on, Armor, and (if you selected it)
Constructable Object records for your Armor mod, as per your settings. If models aren't found for
specific Armor pieces, those armor pieces will not be created.
Step 7: Close TES5Edit and save the file you created the Armor Mod in. Feel free to test it out in
Skyrim, it should work perfectly.

Nif Files:

The Nif Tagging confirmation window.

file:///C:/Users/davidapr2/AppData/Local/Temp/~hhF0E6.htm 11/30/2016
Help content Page 11 of 27

The script doesn't do anything with the nif files you use for the Armor Mod. That is to say, you need to
have the .nif files ready before running the script, and the script doesn't look at them for anything other
than their filename.

The script tags .nif files based on their filename. Thus, it's important to follow a certain naming scheme
if you want the script to automatically tag your .nif files. Alternatively, you can manually tag them at the
"Confirm Nif Tags" window if you don't want to follow a naming scheme that the script supports.

Naming conventions .nif file automatic tagging:

l The script recognizes if a .nif file corresponds to an armor piece based on whether or not a
substring exists in its filename.
¡ Boots substrings: boots, feet, greaves
¡ Gauntlets substrings: gauntlets, gloves, hands
¡ Cuirass substrings: cuirass, outfit, body
¡ Helmet substrings: helmet, hood, head
¡ Shield substrings: shield
¡ Cloak substrings: cloak
l The script recognizes if a .nif file corresponds to a specific gender based on substrings or
subdirectories (folders within the specified Meshes Directory). E.g. a nif file found in the "m\"
subdirectory is considered "male". The script looks only in the specified subdirectories for .nif
files, so other subdirectory names aren't supported.
¡ Subdirectories: "male\", "female\", "m\", "f\"
¡ Substrings: male, female, "m" as last character of filename before _1 suffix, "f" as last
character of filename before _1 suffix.
l The script recognizes special helmets via the following substrings:
¡ Khajiit helmet: kha
¡ Orc helmet: orc

file:///C:/Users/davidapr2/AppData/Local/Temp/~hhF0E6.htm 11/30/2016
Help content Page 12 of 27

¡ Argonian helmet: arg


l The script recognizes first person models via the following substring:
¡ "1st"
l The script recognizes world models via the following substrings:
¡ mgo (male world model), fgo (female world model), go, gnd, world
l The script ignores files ending with the _0 suffix.

If you're still confused after reading all this, I recommend you look at the Glass, Orcish, or Iron
armor .nif files. (and possibly every vanilla Armor's nif files). These armors follow a correct scheme, so
if you replicate their naming scheme auto-tagging should occur just fine.

What follows below is a list of the nif tags the script uses, which you can see in one of the dropdown
menus in the Confirm Nif Tagging window. These tags are pretty self explanatory. fp is short for first
person, unknown is used when a nif file isn't tagged, and nif_0 is used for nif files ending with the _0
suffix (these files are ignored).

l fp cuirass
l fp male cuirass
l fp female cuirass
l fp gauntlets
l fp male gauntlets
l fp female gauntlets
l world cuirass
l male world cuirass
l female world cuirass
l cuirass
l male cuirass
l female cuirass
l world boots
l female world boots
l male world boots
l male boots
l female boots
l boots
l world gauntelts
l female world gauntlets
l male world gauntlets
l gauntlets
l male gauntlets
l female gauntlets
l world helmet
l female world helmet
l male world helmet
l helmet
l female helmet
l male helmet
l argonian helmet
l khajiit helmet
l orc helmet
l argonian female helmet
l khajiit female helmet

file:///C:/Users/davidapr2/AppData/Local/Temp/~hhF0E6.htm 11/30/2016
Help content Page 13 of 27

l orc female helmet


l argonian male helmet
l khajiit male helmet
l orc male helmet
l shield
l world cloak
l cloak
l unknown
l nif_0

User Variables:

The script has two user variables that you can enable/disable in the script's code. You will find these in
the constants section of the script immediately after the unit declaration (line 19 as of v1.3).

The first boolean is called "debug". You can enable it to see some debug messages in your message log
when the script runs. This feature isn't fully implemented throughout this script, so you probably don't
need to use it. (initially it was used to debug the nif file tagging, but seeing as you have the Confirm Nif
Tags window, you probably don't need to do that...)

The second boolean is processesps. As it was with the NPC generator, setting this boolean to true will
allow you to process assets in loaded esp files. You will be prompted for each loaded esp file if you set
this boolean to true.

QuickChange

The QuickChange window, with one of each function present. (excluding ArrayImport, which was
added in v2.4)

file:///C:/Users/davidapr2/AppData/Local/Temp/~hhF0E6.htm 11/30/2016
Help content Page 14 of 27

QuickChange allows the user to perform batch modifications to selected records. Add elements, change
element values, remove elements, apply a formula to integer-valued elements, copy elements, or import
element values from a csv file. This script can do it all!

Basic Usage:

Step 1: Open the files you want to make modifications to in TES5Edit.


Step 2: Select the records you want to make the modifications to and apply the script.
Step 3: Click the [+] button to create a new function entry, or the [-] button to remove a function entry.
For each entry you can specify the function you want to use and the parameters for the function. Below
is a listing of the available functions and their parameters:
¡ Add: Creates the element at the specified <Path>. If an element is greyed out on a record this is
the function you use to create it. If the <Value> field is edited and not blank, the element will be
given the Edit Value entered.
¡ ElementAssign: Creates a new list element at the specified <Path>. E.g. "Conditions" will create a
new "Condition" element. If the <Value> field is edited and not blank, the element will be given
the Edit Value entered.
¡ Remove: Removes an element at the specified <Path>.
¡ Replace: Replaces the value of the element at the specified <Path> with the specified <Replace>
value if its current value matches <Find>. Enter * for <Find> to use the <Replace> value
regardless of the found value.
¡ Formula: Applies <Formula> to the integer-valued element at the specified <Path>. Supported
operators: + for addition, - for subtraction, * for multiplication, / for division, and ^ for power.
You need a space before and after each operator except for the power operator ^ and the division
operator when it is used after a parenthesis. Parenthesis are supported, and I recommend you use
them as much as possible. x is the variable for the starting value. Some examples:
2 * x + 50
x^2 - 1
((3 * x) + x)/2
((5 * x)/2)^2 - (2 * x) + 4
¡ Restore: Restores the element at the specified <Path> with values from the chosen file. This only
works on override records that have a lower override or base record in the specified file.
¡ TemplateRestore: Restores the value at the specified <Path> on a weapon or armor to the value
used by its template record. (e.g. for enchanted weapons/armor)
¡ Copy: Copies an element from the specified "File \ Group \ Record \ <Path> " to the selected
records.
¡ Import: Imports values to the selected records from a .csv file exported with QuickDisplay. The
default path for csv exporting is the default value for the <FilePath> field, but you may have to
change this if the path doesn't match the path of the csv file you want to import values from.
¡ ArrayImport: Imports values from an array text document exported with QuickDisplay onto the
selected records at the selected path. This allows you to set multiple values stored in a single
element list simultaneously. E.g. Keywords, Factions, Head Parts, Conditions, etc.
Step 4: Click OK when finished. The script may encounter errors if you entered incorrect paths or
values for your chosen functions. See the Elements, Paths, and Lists section if you need help with paths.
Step 5: Verify that the modifications were executed correctly, and continue editing the file until done.
Step 6: Close TES5Edit, saving the file(s) you edited.

file:///C:/Users/davidapr2/AppData/Local/Temp/~hhF0E6.htm 11/30/2016
Help content Page 15 of 27

QuickDisplay

The QuickDisplay window with some entered paths.

A csv file exported with QuickDisplay in OpenOffice Calc.

QuickDisplay allows the user to quickly display and export values from selected records. Enter the paths
you want to get values from, choose your export options, and you're done. Can be combined with

file:///C:/Users/davidapr2/AppData/Local/Temp/~hhF0E6.htm 11/30/2016
Help content Page 16 of 27

QuickChange to export values, change them, and then import them back.

Basic Usage:

Step 1: Open TES5Edit with the files you want to display values from.
Step 2: Select the records you want to display values from and apply the script.
Step 3: Click the [+] button to create a new display entry, or the [-] to remove a display entry. For each
entry you need to specify the path you want to get values from. The data type should be string in almost
all circumstances. See the User Variables section for more information on how to use the other data
types.
Step 4: If you wish to export the values to a document for later viewing check the appropriate box. CSV
files can be exported, modified, and then re-imported, while txts can only be exported.
Step 5: Click OK. The values will be posted in the message log for the selected records at the specified
paths, and exported if you chose to do so.

Array Type:

In QuickDisplay v1.5 I added an "Array" type. This allows you to enter the path to an Element List and
export all of the values on the list. This works by creating a text document for the record currently being
processed by QuickDisplay and putting into that text document the values from the list, and then
specifying <FileLink>FormID.txt in the csv to point QuickChange to the correct file when importing.
That means a few things:

1. You can only use one Array export per QuickDisplay run.
2. You can use an Array export to deal with records which have a different number of
Keywords/Factions/Head Parts/any other type of element that is stored in a list.
3. The Array export cannot work on element lists where the value is not available in the elements in
the list. E.g. Tint Layers have the element structure of Tint Layers\[i] Layer\TINI, Tint Layers\[i]
Layer\TINC\Red, etc. [i] being an index. The values accessed by the Array export are those of the
elements in the list, so Tint Layers\[i] Layer. For tint layers this will be an empty value because
the actual values are stored at deeper paths.

User Variables:

The script has two user variables that you can enable/disable in the script's code. You will find these in
the constants section of the script immediately after the unit declaration (line 12 as of v1.4).

You should only have one of these user variables set to true at any given time (you can use both, but the
script will only export native values if you do). The two are user variables are booleans called editvalues
and nativevalues. editvalues is true by default, and allows you to deal with the greater majority of values
as strings as they appear in TES5Edit. Setting nativevalues to true will allow you to get at the native
values associated with certain elements. E.g. integers values. You probably don't need to use native
values most of the time, unless you're dealing with flags or something.

Editing Exported.csv

If you choose to export values to a csv file you can then edit the values in this csv file and then import
them using QuickChange. Editing the csv is pretty easy, all you need is Microsoft Excel or OpenOffice.

When you first open the csv file the columns may be too small for the content. In Microsoft Excel you

file:///C:/Users/davidapr2/AppData/Local/Temp/~hhF0E6.htm 11/30/2016
Help content Page 17 of 27

can fix this by selecting the cells, choosing format, and then clicking AutoFit Column Width. In
OpenOffice you can fix this by selecting the cells, clicking format, going to columns, choosing Optimal
Width, and clicking OK.

Once you've resized the columns you can edit their content. Don't touch anything in the record column
or anything in the first row, as this information is how QuickChange will know where to apply the found
data when importing. The rest you can change to whatever values you want to use. Once you're done,
save the csv while preserving old formatting, run QuickChange with the records you exported values
from selected, and use the Import function.

Replace FormID

The Replace FormID window.

The Replace FormID script allows the user to replace all references to a given FormID on the selected
records with a reference to a different FormID.

Basic Usage:

Step 1: Open TES5Edit with the files you want to Replace FormIDs in.
Step 2: Select the records within which you want to replace a given FormID with a different one and
apply the script.
Step 3: If you don't already have the FormIDs you want to find/replace memorized or written down
somewhere check the "Allow loading of formID lists" checkbox, else enter the 8-character hexadecimal
FormIDs and skip to step 5.
Step 4: Select the file from the first dropdown list, the signature of the group from the second dropdown
list, and the EditorID [FormID] from the third dropdown list for Find and Replace.
Step 5: Click OK. If you selected any records in Bethesda master files (e.g. Skyrim.esm) proceed to step
6, else skip to step 7.
Step 6: Select the file you want to create the override records in, or choose -- CREATE NEW FILE -- to
create a new one.
Step 7: Verify your modifications and close TES5Edit, saving the modified files.

Perk Tree UI

file:///C:/Users/davidapr2/AppData/Local/Temp/~hhF0E6.htm 11/30/2016
Help content Page 18 of 27

The Perk Tree UI with the Smithing tree loaded at grid scale 60.

The Perk Tree UI allows the user to load, view, edit, and save Perk Trees. This UI is considerably better
than the one in the CreationKit, as it provides a 1:1 representation of how the perk tree will look ingame
and allows for greater precision.

Basic Usage:

file:///C:/Users/davidapr2/AppData/Local/Temp/~hhF0E6.htm 11/30/2016
Help content Page 19 of 27

Step 1: Open TES5Edit with Skyrim.esm and any esps you have that modify perk trees that you wish to
adjust.
Step 2: Find the Actor Value Information record containing the perk tree you want to modify. If this
record is in Skyrim.esm or another Bethesda Master File you'll need to right click it and choose Copy as
Override to place it in a new or existing file before editing it.
Step 3: Apply the script to the perk-tree-containing AVIF record.
Step 4: Use the interface to make your changes. The interface options are listed below:
¡ Nodes and perks: You can find out what perk a node corresponds to by hovering your mouse over
it. When you do so, a hint window should appear telling you what perk that node corresponds to.
¡ Selecting perks: You can double click any perk node on the tree to select it. Once selected it will
turn a green color. You can deselect it by clicking the background.
¡ Moving perks: To move a perk in the tree, first make sure movement is enabled. Then, simply
click and drag the node to move it.
¡ Toggleable options: The perk tree UI window has several toggleable options. You can show/hide
grid lines, show/hide connections, snap to/free perks from the grid, and disable/enable perk
movement. I recommend against snapping perks to the grid unless you're specifically interested in
saving grid positions for the perk tree you're working on. In addition, I recommend you make all
your perk movements and then disable movement before changing perks, creating connections, or
removing connections. This will make certain you don't accidentally move a perk slightly when
selecting it.
¡ Changing perks: Once a node is selected, you can change what perk it corresponds to using the
dropdown menu at the bottom of the window.
¡ Adding perks: To add a new perk node to the tree, click the Add Perk button. A new node will be
created at grid position (0,0), which you can then move around and implement in the tree as you
see fit.
¡ Removing perks: After selecting a perk, you can remove it from the tree by clicking the "Remove
Perk" button.
¡ Creating connections: To create a connection between two perks (the lines you can navigate
across on the perk tree ingame) you're going to use the Create Connection button. I recommend
you disable movement of perks before you do this so you don't accidentally shift the position of
perks when you're trying to select them. Start by making sure no perks are selected, then click the
Create Connection button. Select the first perk you want to make a connection from, and click the
"Perk 1" button. Select the second perk you want to make the connection to, and click the "Perk 2"
button. The connection will then be created. Note: if you have a perk selected when you click the
Create Connection button it will be used as Perk 1.
¡ Removing connections: To remove a connection between two perks you're going to use the
Remove Connection button. Start by making sure no perks are selected, then click the Remove
Connection button. Select the first perk you want to remove a connection from, and click the
"Perk 1" button. Select the second perk corresponding to the connection you want to remove, and
click the "Perk 2" button. The connection will then be removed. Note: if you have a perk selected
when you click the Remove Connection button it will be used as Perk 1.
Step 5: Close the window when you're done. You will then be prompted regarding what aspects of the
perk tree you want to save. Generally speaking, you should check all of the options the majority of the
time. There shouldn't be any issues with saving everything. However, in some situations you may want
to save only specific changes. The options for saving are explained below:
¡ Saving New Perks: There is no actual option for saving new perks. Newly created perks are saved
automatically, including their grid and offset positions. If you don't want to save new perks you
have to click Cancel or the close button for the save dialog.
¡ Save Grid Positions: This option tells the script to overwrite grid positions for perks that were
already in the tree with grid positions extrapolated from the modified perk tree you made. To learn
more about grid positions and offset positions, please see Grid and Offset Positions.

file:///C:/Users/davidapr2/AppData/Local/Temp/~hhF0E6.htm 11/30/2016
Help content Page 20 of 27

¡ Save Offset Positions: This option tells the script to overwrite offset positions for perks that were
already in the tree with the values to create a perk tree appearing exactly like the modified perk
tree you made. These are the absolute positions of the perks, and are of greatest importance for the
Perk Tree's appearance ingame.
¡ Save Connections: This option tells the script to save all changes you made to connections
between perks. That includes removing connections that you deleted, and creating connections
you made. Check this if you did anything to connections between perks that you want to save.
Step 6: Click OK to save the changes, or click cancel to discard your changes. Closing the window is
equivalent to clicking cancel.

User Variables:

The gridScale constant in v1.1.

The Perk Tree User Interface has one notable user variable, the gridScale variable. This variable can be
set in the constants section of the script. You can find it at line 67 as of version 1.2.

The gridScale variable is used to set the size of a grid unit. This is the length, in pixels, of the side of a
single grid square. Increasing this value will "zoom in" on perk trees, and decreasing will "zoom out" on
them. The value starts at the default safe value of 60. This is the highest value you can use without
causing "clipping" (perk nodes going off of the screen) of the vanilla Skyrim perk trees. However,
several vanilla Skyrim perk trees can be viewed with a larger gridScale value, e.g. 90. Feel free to set
this value for ease of viewing as you see fit for the perk tree, or trees, you're editing.

Grid and Offset Positions:

The position of perks in perk trees functions on two levels. The first level is whole number based, and
results in the creation of a "perk grid". So, for instance, you could have a perk at grid position (1, 2) a
perk at position (1, 0) and a perk at position (1, 3). This would result in a vertical line of perks. When
you check "save grid positions" the script will extrapolate grid positions for moved perks using
rounding.

The second level is float based. A "float" is a real number with a decimal portion. E.g. 0.20667. This
float number is treated as an "offset" from the grid position. E.g. if you have a perk at position (1, 2) and
have the offsets (0.20667, -0.43333) it's effectively placing the perk at (1.20667, 1.56667). When you
check "save offset positions" the script will save offsets to your perk tree such that it appears ingame
exactly like it looked in the window.

file:///C:/Users/davidapr2/AppData/Local/Temp/~hhF0E6.htm 11/30/2016
Help content Page 21 of 27

CCOR Compatibility Script

The CCOR Compatibility script can be used to make any ESP that adds recipes to the forge/tanning
rack/smelter compatible with kryptopyr's Complete Crafting Overhaul Remade.

Basic Usage:

Step 1: Open TES5Edit with the latest version of CCOResource.esp and the ESPs you want to make
compatible with CCOR.
Step 2: Apply the CCOR Compatibility Script to the ESPs you want to make compatible with CCOR.
Make sure you don't select CCOResource.esp.
Step 3: Either create a new file or select an existing file to serve as your CCOR patch file. NOTE:
Patching the same file twice will lead to recipes having the same condition/s multiple times. This should
be harmless, but I'd avoid doing it anyways.

Break it Down

Break it Down UI.

file:///C:/Users/davidapr2/AppData/Local/Temp/~hhF0E6.htm 11/30/2016
Help content Page 22 of 27

A breakdown recipe for Ebony Armor.

Break it Down can be used to produce breakdown recipes at the Smelter for Ingot-based recipes, and
breakdown recipes at the Tanning Rack for leather-based recipes.

Basic Usage:

Step 1: Apply Break it Down to the Constructable Object records used to produce the Weapons/Armors
you want to create breakdown recipes for.
Step 2: Enter the Editor ID prefix/suffix you want to prepend/append to the EditorIDs of the items
produced by the COBJ recipes you've selected. E.g. if the item produced is ArmorEbonyCuirass and you
use the default prefix, the resulting Editor ID would be: b_BreakdownArmorEbonyCuirass.
Step 3: Specify further options for what you want to break down. You can choose to create recipes for
weapons with enchantments (not player-created enchantments), allow the user to breakdown items they
have equipped, create recipes for the breakdown of Daedric items, and create recipes for the breakdown
of Chitin items..
Step 4: Choose your Leather Strips option. This is for Tanning Rack breakdown recipes, and specifies
when a breakdown recipe should yield Leather Strips. The never options makes it so no breakdown
recipe will ever yield Leather Strips, and the Always option makes it so all breakdown recipes yield
Leather Strips instead of Leather. The 1 Leather option makes it so items that cost 1 Leather have a
breakdown recipe that yields 3 leather strips.
Step 5: Click OK, then specify the file you want to create the breakdown recipes in.

Re-Evaluator

file:///C:/Users/davidapr2/AppData/Local/Temp/~hhF0E6.htm 11/30/2016
Help content Page 23 of 27

The Re-Evaluator with the default conditions.

The Re-Evaluator can be used on Constructable Object recipes to re-evaluate the value of the item
produced based on the total value of the ingredients used. The value can then be weighted using other
conditions, such as perk prerequisites for making the item, or the presence of certain items in the recipe.

Basic Usage:

Step 1: Apply the Re-Evaluator to the Constructable Object records used to produce the
Weapons/Armors you want to re-evaluate the values of.
Step 2: Specify the functions for value weighting you want to use. You can click the +/- buttons to
add/remove conditions, respectively. The available condition functions are listed and explained below:
¡ HasItem: True if the recipe has the specified item in it.
¡ HasPerkCondition: True if the recipe requires the player to have the specified perk.

file:///C:/Users/davidapr2/AppData/Local/Temp/~hhF0E6.htm 11/30/2016
Help content Page 24 of 27

¡ HasKeyword: True if the item produced has the specified keyword.


¡ HasSubstringInFULL: True if the item produced has the specified substring in its FULL name.
¡ HasSubstringInEDID: True if the item produced has the specified substring in its Editor ID.
Step 3: You can click the S/L buttons to Save/Load your list of conditions. The saved conditions are put
in a text document.
Step 4: You can export the resulting item values to a CSV or save them to the records by ticking the
corresponding checkboxes at the bottom of the script.
Step 5: The values produced will be logged in TES5Edit's message log, and saved to the records/CSV if
you selected those options. The script will not save values on records are in Bethesda Master files. You
have to copy the records as override to an editable ESP if you want to save new values to them.

Renamer

All of the conditions and functions the renamer offers.

The Renamer allows you to change the FULL names of items in bulk. This can be done using several
versatile functions and conditions which you can choose yourself. Make your own Renamed Items mod
in mere minutes!

Basic Usage:

Step 1: Apply the Renamer script to the records with FULL names you want to change.

file:///C:/Users/davidapr2/AppData/Local/Temp/~hhF0E6.htm 11/30/2016
Help content Page 25 of 27

Step 2: Specify the functions for renaming you want to use. You can click the +/- buttons to add/remove
conditions, respectively. The available condition functions are listed and explained below:
¡ True: Always true. The function paired with this condition will always be executed.
¡ HasSubstringInEDID: True if the record has the specified substring in its Editor ID.
¡ HasSubstringInFULL: True if the record has the specified substring in its FULL name.
¡ HasKeyword: True if the record has the specified keyword.
¡ Replace: Replaces all instances of the text before the comma with the text after the comma. E.g.
Elven,Silly would replace all instances of "Elven" with "Silly" on the selected records.
¡ SnipTextBefore: Removes all of the text after the specified substring. E.g. if you entered Elvish,
and processed Elvish Helmet, the resulting name would be " Helmet".
¡ SnipTextAfter: Removes all of the text before the specified substring. E.g. if you entered Boots,
and processed Iron Boots, the resulting name would be "Iron ".
¡ AddPrefix: Prepends the entered text to the name.
¡ AddSuffix: Appends the entered text to the name.
Step 3: You can click the S/L buttons to Save/Load your list of conditions and functions. The saved
conditions and functions are put in a text document.
Step 4: You can export the resulting names to a CSV or save them to the records by ticking the
corresponding checkboxes at the bottom of the script.
Step 5: The names produced will be logged in TES5Edit's message log, and saved to the records/CSV if
you selected those options. The script will not save names on records that are in Bethesda Master files.
You have to copy the records as override to an editable ESP if you want to save names to them.

Virtual Broom

The Virtual Broom UI

The Virtual Broom allows you to quickly and easily disable references in cells. You can specify which

file:///C:/Users/davidapr2/AppData/Local/Temp/~hhF0E6.htm 11/30/2016
Help content Page 26 of 27

references you want to disable by STAT model paths or signatures, for other references. Clean out all
that clutter and get a clean cell in seconds!

Basic Usage:

Step 1: Apply the Virtual Broom script to the cells you want to sweep up references from.
Step 2: Add/remove path entries as needed with the +/- buttons. The Path entries are partial paths to nif
models, as seen on the referenced STAT record. E.g. NorSarcophagusVertBottom01 has the
Model\MODL value: "Clutter\Ruins\RuinsSarcophagusVert01.nif". If you entered Clutter\ as a path, and
a reference to this or any other STAT record whose path starts with "Clutter\" was found, the reference
would be disabled. You can, of course, be as specific or unspecific as you want. You could say
"Clutter\Ruins\", or even "Clutter\Ruins\Ruins".
Step 3: Add/remove signature entries as needed with the +/- buttons. The signature entries are regarding
the signature of the record referenced. E.g. if you enter LIGH, all references to LIGH records in the cell
will be disabled.
Step 4: Click OK to apply the script and disable/remove the references matching one or more of the
entered conditions. The script must be run on a CELL record in a non-bethesda file, so deep copy those
cells and references as override before running the script on them.

User Variables

To delete references instead of disabling them change the boolean constant "disable" to false at the
beginning of the script's code.

NPC Transmogrifier

NPC Transmogrifier UI

file:///C:/Users/davidapr2/AppData/Local/Temp/~hhF0E6.htm 11/30/2016
Help content Page 27 of 27

The NPC Transmogrifier is a script similar to the NPC generator. Using loaded assets, it randomly alters
an existing NPCs appearance.

Basic Usage:

Step 1: Apply the NPC Transmogrifier script to the NPCs you want to transform.
Step 2: Set the options in the form to your preference.
¡ The Transformation parameters can be used to select which parts of the NPC you want to
transform. You can choose to skip transforming certain parts of the NPC such as their head parts,
hair color, lighting, morphs, face parts, and/or tint layers.
¡ The Asset parameters can be used to exclude certain bethesda assets from being included in the
asset pool, making only mod-added assets available. You have the option to skip bethesda hairs,
eyes, brows, and/or facial hairs.
¡ The last two parameters can be used to adjust the chance the NPC will have a scar/warpaint.
Step 3: Click OK to transform the selected NPCs. You can't transform NPCs in bethesda files, you have
to copy them as override into a new file before running the script on them. Make sure you re-generate
NPC face data in the Creation Kit after transforming NPCs using CTRL+ALT+F4.

file:///C:/Users/davidapr2/AppData/Local/Temp/~hhF0E6.htm 11/30/2016

Vous aimerez peut-être aussi