Sorry for the double post but this one is substantially different to the above, and quite a large one.
First off something on the organisation of the readme:
******************************
Options that specify an ACTION
(only one allowed at a time)
******************************
--output , -o
Save output to . By default this is 'output.esp' in the
current directory.
It says "only allowed one at a time"
but in the usage examples section this is shown as modifying the "-r" option (esper -r plugin1.esp plugin2.esp -o merged-objects.esp), should this be in the "Options that modify esper's behaviour" section?
Onto the testing, where I put something in QUOTE tags its a quote from the readme and all following text refers to that command. Until the next QUOTE. I've put commands and their output I've used in CODE or CODEBOX tags:
--merge-plugins, -p
Mode = merge plugins
The command
esper -r LeftGloves_Addon_v2.esp "Clear Glass.esp"Esper, version Beta 6Released under GPL; see the file LICENSE for details.Command line arguments received: ("-r" "LeftGloves_Addon_v2.esp" "Clear Glass.esp")NIL Clear Glass.espLeftGloves_Addon_v2.esp Merged records:Original:# # # # # # # # # # #>New:# # # # # # # # # # #>Merged:# # # # # # # # # # #>Merged records:Original:# # # # # # # # # # #>New:# # # # # # # # # # #>Merged:# # # # # # # # # # #>..Merged records:"ARMO": "glass_pauldron_left""ARMO": "glass_pauldron_right""TES3": "LeftGloves_Addon_v2.esp""TES3": "LeftGloves_Addon_v2.esp"
Perhaps add something into the readme about needing to enclose plugins with spaces in the name in speechmarks? But then that's basic MS-DOS syntax so...
Anyway, plugin masters seem to be set right here (Left Gloves is dependent on all three Bethesda ESMs), all are 1234 bytes still.
TES3 records are from the file header aren't they? Not sure if it's worth reporting in the output....
Still seem to have the same issue that the original record from the relevant ESM (if applicable) isn't used as the Original record so I'm not seeing a true merge of the records. Some discussion about that, above. I still think to get a properly functioning merge program there needs to be a compare against the Beth ESMs (Tetchy's idea of cribbing the TESTool DAT file seems to be a good one, guess that'd speed things up...)
Seems to be ignoring the Clear Glass.esp, when dealing with objects affected by both plugins:
Merged records:Original:# # # # # # #>New:# # # # # # #>Merged:# # # # # # #>
When an object is affected by just Clear Glass it's OK:
Original:# # # # #>New:# # # # #>Merged:# # # # #>
And when affected by Left Gloves on its own it's fine too:
Merged records:Original:# # # # # # # # #>New:# # # # # # # # #>Merged:# # # # # # # # #>
Order of arguments seems to matter here. This fails:
Merged records:Original:# # #>New:# # #>Merged:# # #>..............................................................................................................................................................................................................................................................................................................................................................................................................................................................................
Before the above extract from the ESTXT are all the other SKIL records, "Original" is always about Block skill but New: and Merged: seem to be the relevant skill
I guess the ".............." is an indicator of prrocessing records but not finding anything to merge.
As a note, after running this command Output.esp doesn't include the objects from the expansions, however Left Gloves addon includes Tribunal and Bloodmoon items, Clear Glass items just from Morrowind.
--list-active, -l
Mode = list active plugins and masters in Morrowind.ini
Odd that filelist is prefigured with a "T"
I:\Bethesda Softworks\Morrowind\Data Files>esper -l --debugEsper, version Beta 6Released under GPL; see the file LICENSE for details.Command line arguments received: ("-l" "--debug")T I:/Bethesda Softworks/Morrowind/Data Files/Morrowind.esmI:/Bethesda Softworks/Morrowind/Data Files/Tribunal.esmI:/Bethesda Softworks/Morrowind/Data Files/Bloodmoon.esm<snip>
In fact that prefix, "T" here, seems to vary. There's a NIL up in one of the above.
Also the list of plugins contains the full path for each plugin, I'm not sure if that's necessary. Hardly a deal breaker but if the path can be suppressed then that'd be nice.
Checked the active plugin list Esper generates vs that from Mash and they match. Cool.
--check-resources
Scans plugins/masters and looks for all resource files that they depend
on (icons, textures, meshes etc). Then checks to see if those resource
files exist, either on HD or in any of the active BSA files.
After scanning has finished, prints a list of all files that could
not be found.
Still seem to be having the BSA problems. Also it looks like where a NIF refers to a *.TGA file and the texture file's been replaced with a *.DDS then the Check Resources doesn't find the DDS. Maybe suppress the file extension when checking for textures (and/or icons as some are distributed as DDSs)?
--find-conflicts
Follows similar logic to merge-records, but instead of actually
merging anything, prints a list naming all records which are modified
by > 1 plugin in the file list, along with details about which
files are implicated.
Looks cool:
esper --find-conflicts --debug LeftGloves_Addon_v2.esp "Clear Glass.esp"Esper, version Beta 6Released under GPL; see the file LICENSE for details.Command line arguments received: ("--find-conflicts" "--debug" "LeftGloves_Addon_v2.esp" "Clear Glass.esp")T Clear Glass.espLeftGloves_Addon_v2.esp ..Conflict report:Record [ARMO] "glass_pauldron_left": "Clear Glass.esp" "LeftGloves_Addon_v2.esp"Record [ARMO] "glass_pauldron_right": "Clear Glass.esp" "LeftGloves_Addon_v2.esp"
**************************************
Options that modify esper's behaviour
(any combination of these can be used)
**************************************
--mwdir
, -d
"Base" Morrowind directory (where Morrowind.ini and Morrowing.exe
live) is (default is the *parent* directory of the current
directory)Moved ESPER to root of I:
I:\>esper -l -d "I:\Bethesda Softworks\Morrowind"Esper, version Beta 6Released under GPL; see the file LICENSE for details.Command line arguments received: ("-l" "-d" "I:\\Bethesda Softworks\\Morrowind")NIL I:/Bethesda Softworks/Morrowind/Data Files/Morrowind.esmI:/Bethesda Softworks/Morrowind/Data Files/Tribunal.esmI:/Bethesda Softworks/Morrowind/Data Files/Bloodmoon.esm<snip>
That works nicely
Hope this helps you, excellent work so far :thumbsup:. Hope you continue
[Edit: I knew there'd be
some mistake or other in there]