Fallout New Vegas
0 of 0

File information

Last updated

Original upload

Created by

MaggotHATE

Uploaded by

MaggotHATE

Virus scan

Safe to use

Tags for this mod

About this mod

A console tool to generate .json files for kNVSE based on weapons parameters. Define weapons "types", choose "types" to use, mass-generate for all plugins, one plugin, or one weapon.

Requirements
Permissions and credits
Mirrors
Changelogs
A console-only tool that allows you to create .json files for kNVSE (and get some relevant info) based on weapon parameters.


kNVSE allows to set animation folders to individual weapons, but since there are lots of mods with lots of weapons I decided to make a tool that scans plugins for weapons and sets folders according to specific rules. Comes with rules for Hit's Anims - Season 1 and Season 2, as well as Dedicated Weapon Animations

WARNING!

There's no guarantee that animations will 100% fit custom weapons - it all depends on their meshes. However, animations will usually fit if parameters are matching (see below). In case of ironsights problems, don't forget to use ISControl Enabler

Requirements

Latest xNVSE
Latest kNVSE

Installation

Install all the required mods first
Put the contents of the mod archive into your Fallout New Vegas "Data" folder.
You can also configure _types, _weapons and _exclude files to add new types, include new folders and ignore certain plugins (see below).


How to use

TL:DR open console and type " knvse_generate aaa_ ", which will generate you files for all the weapons in all plugins (see exceptions below).
Don't forget to restart the game after generation!


The rules consist of "types" that you can define in separate .json files inside  "Data/meshes/
AnimGroupOverride/_Types" folder.
You can then use these "types" globally or per-mod and generate all .json files for kNVSE.

Weapon "types" are based on 4 weapon parameters:
  • Animation types
  • Grip Animation
  • Reload animations
  • Attack Animation

These are generally enough to separate weapons from each other, so you can "bind" any kNVSE-ready folder with animations to an array of these parameters:



In the example above, we defined that any weapon with these parameters will get animations from "Hit_10mmSMG" folder (i.e. all weapons that use 10mm SMG animations).
Use
-1 instead of any parameter as "any number" if you need. This applies to all the console commands below.

Now all left is to list folders you want to use in generation:

 Now all left is to launch the game and run a console command: knvse_generate aaa_ , which will generate you files for all the weapons you have (see exceptions below).
 The command is:

Everything after prefix is optional, but allows more precise generation. If you want to skip folders, use _ (underscore) as "any folder".
If there's more that one folder defined for the same array of parameters, one will be chosen randomly for the weapon.  

The numbers in weapons parameters can be decoded through a reference in Articles (credits to tes5edit source code), or you can get that info for your currently equipped weapon with knvse_getfolderscommand, which will print these numbers into console, along with any folders that match them. You can also add same four parameters in the same order to get defined folders that match these parameters: knvse_getfolders 3 255 6 74

Lastly, if you want to write a .json file for the equipped weapon only, you can use command: knvse_generateone aaa_ , which will create one file for this weapon only. Additionally, pass  knvse_generateone aaa_ Hit_10mmSMG 1 to write a file with this exact folder (last number is reversed name as in the image above).

Additional info

Prefixes are used as a "load order", since kNVSE will read files alphabetically. You are limited by 4 characters, which is more than enough.
Keep in mind that processing tons of files will take time, so you game will start slower the more files you generate.  
You can add plugin names to ignore into a separate section:


{
"exclude": [
"FalloutNV.esm",
"DeadMoney.esm",
"HonestHearts.esm",
"OldWorldBlues.esm",
"LonesomeRoad.esm"
]
}

"Options" section lets you define naming order (see image above) once and ignore it in console commands. Passing it in console will be prioritized.

{
"options": [
"reversed"
]
}


Credits

Kormakur for kNVSE
xNVSE  team for the Greater Good
Yvileapsis for the iteration example for xNVSE code
ElminsterAU for tes5edit
Obsidian for Fallout New Vegas