About this mod
A fix that allows running GenerateFNISforModders.exe using command line arguments to automate tasks.
- Permissions and credits
A simple fix (read giant hack) that allows running "GenerateFNISforModders.exe" (from Fores New Idles in Skyrim) through the command line, by running the "commandlinefnisformodders.exe"-file.
How do I use it?
Using "cmd", "cd" into "Data\tools\GenerateFNIS_for_Modders". Then you can run "commandlinefnisformodders.exe" with the "FNIS_*_List.txt" files you want to process passed as command line arguments.
For example: commandlinefnisformodders.exe "MY-DATA-DIR\meshes\actors\character\animations\FNISBase\FNIS_FNISBase_List.txt"
Do I need to set it up?
Maybe. It relies on the text for each control to figure out which is which so the FNIS language had better be English (I might fix this at some point but right now I can't be bothered).
If you are running Mod Organizer then this works fine with it, however "GenerateFNISforModders.exe" doesn't. In order to fix it you need to create a "tools\GenerateFNIS_for_Modders"-folder in your "Skyrim\Data"-folder (WITHIN THE ACTUAL FOLDER NOT WITHIN MOD ORGANIZER!) and copy hkxcmd.exe (from FNIS) into it. You also need to set Mod Organizer to start "GenerateFNISforModders.exe"/"commandlinefnisformodders.exe" in that folder.
Also if you are using the Special Edition I have no clue what this will do. Feel free to try and experiment but I can't guarantee anything.
How does it work?
When you run "commandlinefnisformodders.exe" it launches "GenerateFNISforModders.exe" and injects a DLL ("commandlinefnisformoddershook.dll") into it. The DLL hooks some functions and tricks the program into thinking the user is clicking "Generate Mod Behavior" and selecting a bunch of files really quickly and then finally exiting the program. See the source code if you are interested.
Changelog:
1.1: Now writes the log to the standard output so you can see what is going on. It also attempts to shut down "GenerateFNISforModders.exe" when it is forcibly closed by the user.
1.0: Initial release.