EDIT2:
I used "esper --find-conflicts -a" to get a list of conflicting plugins. Then I put the results in a .txt file and used smartmerger to merge them with this command: "smartmerger.exe --input esper.txt --reference merged.esp"
Result:
The tool stops at Writing:, eats 100% of my CPU and nothing happens.
My load order, exported via ReOrder Mods:
My esper.txt:
D:/installed games/Morrowind/Data Files/Better Clothes_v1.1_nac.espD:/installed games/Morrowind/Data Files/UniqueFinery_NoRobe.espD:/installed games/Morrowind/Data Files/Unique Jewelry and Accessories.esp
You're still using --reference wrong. What it does, is where you put --reference in the command string is where it takes effect, and effectively deletes everything except what changes in the following esm/esp's. This is mostly for cleaning purposes when you don't want to merge the masters with it.
I'll have to give you an example.
>SmartMerger Morrowind.esm Tribunal.esm --reference my_plugin_to_clean.esp output.espAs for it hanging, currently the only loops that might allow hanging, is related to dialog. If the dialog chain is completely whacked, yes it will likely hang. I can add a max number of links it tries to go up, and then tells you what dialogs it failed on before resuming. Hmm probably be a good idea. I'll see if i can find those loop issues...
Thanks for finding, just took a look.
Confirmed (just put the id in TESCS find text), unsettling.
I think involved dialog is still working from a playing point of view, else Sanguine items quests for instance would be probably broken with all these duplications.
Still I can't realize how it may work without problems and especially how they managed to make that mess of duplicated identifiers.
I wonder...
is there another way, other than the double linked topic info list we used to know, to organize/make the engine properly build dialog information?
did they use an old TESCS version so buggy to generate duplicated unique identifiers like cliff racers in wilderness?
did they copy/paste dialog lines using some other external tool?
and, more important, is this making involved dialog unsafe to mod?
Anyway, great find
Definitely unnerving, i found it when i took the whole list of the file's Records as ID's, and then sorted them unique, sorted them not-unique, and had it tell me the differences. Dozens of ID's popped up and that informed me of the problem. If nothing else, my tool solves this and the Disabled/NPC issues. As for how the tool and game deal with it, i have no clue. Maybe like my tool, it forcibly links records together, so if it's in one dialog, it can't jump to another accidentally. But if you went to your journal and it referenced it for some reason, it may crash.
There's a small chance it was just the RNG; More likely they did a bulk copy of certain related quests and modified a few things, and the ID's just happened to stay the same. But some of them have nearly identical text so i'm not sure.
What i ended up doing to resolve it in my tool, i added a topic checksum to the ID of the INFO records of it's topic, so it might be "INFO_123456789012345_123abc". That forces them to be unique (or more likely) and allows you to modify the appropriate texts/dialogs in plugins without clashing non-related ones. At final write, it identifies duplicates and renames the ID's so they don't clash, then re-links them to their previous/next ones.