Skyrim

File information

Last updated

Original upload

Created by

matortheeternal

Uploaded by

matortheeternal

Virus scan

Safe to use

Beta Testing (70 comments)

Comments locked

The author has locked this comment topic for the time being
  1. matortheeternal
    matortheeternal
    • premium
    • 618 kudos
    Sticky
    The script has not been updated, but a new svn of xEdit was just released, svn1898. This svn includes a fix to clamping FormIDs that corrects the orphaned child group issue that we had been observing after merging plugins with new CELL records. Make sure you get svn1898 before doing any further testing.

    This marks the end of public beta testing. I'll be releasing v1.8 in the next few days, including a new tutorial video. Thanks everyone for beta testing!
  2. matortheeternal
    matortheeternal
    • premium
    • 618 kudos
    Locked
    Sticky
    UPDATE: Nexus mods now supports spoiler tags in the embedded thread view, so you can post logs here on nexus mods in spoiler tags.  I still like logs on pastebin though.  ^_^
     
    OPENING (READ THIS)
    Merge Plugins v1.8 is just around the corner, but I'd like to make it the best it can be before releasing it. I'm trying to add new features that make merging plugins easier, faster, and better than ever.

    If you're interested in helping me test this beta version and provide feedback, please download the current beta here:
    Merge Plugins v1.8.15 Beta
     
    Make sure you're using the latest xEdit svn, svn1898.  This svn was released February 12, 2015.

    The installation for the beta is the same as it is for the public release of the Merge Plugins script.
    NOTE: This link will be updated as new versions of the beta become available.

    Your feedback is appreciated, but it's important that you pay attention to the information in this post before reporting issues or providing feedback. Also note that documentation for beta versions is usually incomplete, so it is not recommended that you use beta versions unless you have a good understanding of how merging plugins works and are capable of understanding the changes to the script on your own. This is NOT for use by people who aren't willing to get their hands dirty, post logs, and work with me to improve the script.


    Thanks, and happy merging!
    -Mator


    RECENT CHANGES
    - Filename sanitization now put in mteFunctions.
    - Automatically updates GUI after merging via RemoveFilter(), which was added in xEdit svn1876.
    - Changed two-pass copying to remove immediately after copying, which should correct any issues with merging into existing files with two-pass copying.
    - Fixed issue with script closing the progress bar/log window when an exception occurs instead of leaving it open.
    - Fixed issue with Renumbering FormIDs where incorrect FormIDs were being added to the OldForms and NewForms stringlists (which affected FormLists).
    - More robust approach to TempPath, will now try to use a secondary path if DirectoryExists(TempPath) returns false after using ForceDirectories(TempPath), and will terminate the script if the secondary path fails as well.
    - Added PluginForm, which can be viewed by clicking a plugin label in the main MergeForm. This form shows more details on reports on a particular plugin.
    - Massive fix, the Duplicate FormID errors that came up when copying CELL/WRLD records have been fixed.  The fix is kind of ugly right now, but it should result in working merged plugins.  A cleaner fix would require a direct change to how wbCopyElementToFile works in the xEdit binary.
    - If there are no files to be copied, the batch copy messages will not be printed to the log and the script won't stop at the end to wait for batch copying to complete (because there is no batch copying happening).


    IMPORTANT NOTES
    Please read these notes, they are very important.

    The Advanced Options Menu:
    There is a new form in the script called the Advanced Options form. From this form you can set all of the options for how merges should be performed. This form will automatically appear the first time you run the script. Every item on this menu has a hint associated with it that you can view by moving your mouse over it. These hints are extremely helpful and will help you understand how to use the options available.

    After you've set your options, click SAVE. This will save the options in Edit Scripts\mp\config.ini. This configuration file will then be loaded each time you start the script, preserving your chosen options profile.

    Renumber Conflicting FormIDs:
    This is a new renumbering option where only conflicting FormIDs will be renumbered. This is far superior to either of the previous renumbering options, so I recommend you always use it.

    Setting up Mod Organizer:
    If you're using mod organizer you must set the script up to work with it. In the advanced options form, check the "I'm using Mod Organizer" checkbox, then set Mod Organizer's path. The script can attempt to automatically detect this path if you click the Detect button, but that method is not foolproof. If the script fails to automatically detect Mod Organizer, you can click the folder icon to browse for your Mod Organizer directory, or enter the path manually.

    Asset destination directory:
    This is the folder where assets copied/renamed by the script will be placed. If you're using Mod Organizer this should be your overwrite folder. If you're not using Mod Organizer this can be your data directory (not recommended, because you'll end up with a lot of loose files cluttering things up), or another folder of your choosing (which I recommend). You can click the folder icon to browse for a folder or enter a path manually.

    Batch Copying:
    This is an alternative asset copying method that performs asset copying after the script completes in TES5Edit by executing a batch script (.bat file). This method of asset copying exists because when merging certain large mods, you can have an issue where TES5Edit runs out of RAM due to issues with how pascal's CopyFile function works. When using batch copying that will never happen. I recommend you use this feature, but know that it will create a visible command prompt window at the end of the merge which you must not close for asset copying to be completed correctly.
     
    Internal Logging:
    The script now does all logging in an internal TMemo object.  You can click Show Details to view the log during the merge, or elect not to view it (which will make the merge go a bit faster).  The log will automatically display at the end of the merge in certain circumstances:
     
    - If there was an error and the script couldn't complete your merge.
    - If any records failed to copy
    - If batch copying is enabled and there are files to be batch copied
     
    All logs are automatically saved to Edit Scripts\mp\logs, so if you run into an issue to report you can just go to this folder, find the log corresponding to the error you experienced, and then upload it (preferably to pastebin).
  3. block2001
    block2001
    • premium
    • 8 kudos
    I've run into an issue withe the 1.8.15b, whenever I try to merge I get this error:

    Error in unit 'mergePlugins' on line 274 : Undeclared Identifier 'ConstructOkCancelButtons'

    what does this even mean?

    -edit- nevermind I have found the issue when I updated the mod not all the assets were installed properly and so a critical file was missing
  4. Draco856
    Draco856
    • premium
    • 69 kudos
    Ran into a new problem today trying to manage one of my merged mods, I had to save the mod in the CK, so it removed some of the mod description telling me what files were in the merged mod (I had saved this information before had so theres no loss there) The problem I've run into though is that the script that would allow me to remove a mod from the merged plugin has stopped working because it no longer has a list of all mods that were merged, I tried fixing this by simply copying the previous description from a text file, but it still didn't work, don't know what to do with it now other then re-merging the entire mod.

    Edit: Ran into another slight problem today, I had renumber all form IDs checked (because some forms weren't being renumbered when I merged some mods, it was a large merge with close to the limit of plugins possible so there were alot of forms to renumber) anyway, since it didn't renumber the conflicting forms the first time I tried with "renumber only conflicting FormIDs", I found that the voice files for some of the mods I was merging weren't being copied and renamed properly, don't know why it works when the forms aren't all renumbered, but is there a fix for this?
    1. matortheeternal
      matortheeternal
      • premium
      • 618 kudos
      In response to post #22501004.
       

      The description needs to have new lines in it after each file name. Those can't be added in TES5Edit manually, you have to add them with a script. That's probably why it isn't working.

      Are you using batch copying? If you're not using batch copying than I can't guarantee all files will be copied or that the merge will even complete, as TES5Edit will attempt to perform the copying operations more-or-less asynchronously which will lead to massive memory and CPU usage. Batch copying is a must for large merges. If you were using batch copying I don't know what to tell you. Send me a log, preferably of a smaller merge with the same issue (though any log will do), and I'll investigate.
    2. Draco856
      Draco856
      • premium
      • 69 kudos
      I was using Batch Copying, I never turn that off, only settings I change are either renumber conflicting or renumber all form IDs. I'm remerging some of my mods now so maybe I'll run into it again, I don't really have any small merges this is happening with. If I try and do a smaller merge then do another to make the merge into the larger file I want the voice files don't get copied a second time, so I no longer know if they are even correct any more without going into the merged file in the CK, I really wish merging files with voices wasn't so complicated, or that it could be done error free, some of these files merge just fine until I load them in the CK to fix the orphaned cells problem.
    3. matortheeternal
      matortheeternal
      • premium
      • 618 kudos
      Well you should be able to see in a larger merge what mod is causing an issue. Then, if you upload the log for that merge I can do all the hard work that I usually do and isolate problems.

      That said, given that svn1898 of xEdit fixes the orphaned CELL child group issue, you have no reason to open merged plugins in the Creation Kit anymore. If you can take the Creation Kit out of your workflow you can probably get a higher success rate overall.

      If you're doing multiple merges in sequence and you're using Mod Organizer you need to make sure you're making each individual merge into its own Mod file before re-merging it. If the assets for a mod aren't in a mods\*\ folder, the script won't be able to Copy General Assets correctly, and may not succeed at file specific asset copying either. That said, you can always take shortcuts to avoid issues. If you're finding that merging merged files is causes voice assets to not be copied and renamed properly you can try just re-merging the source ESP files instead of merging a merged file. The more complexity you add to the process of merging plugins the more likely a failure becomes.

      That said, I have a hunch about why the voice assets might not be getting copied & renamed properly when merging a merged file, so I'm going to investigate that now.
    4. Draco856
      Draco856
      • premium
      • 69 kudos
      I've been trying to keep up with the latest svn releases, guess I missed one, thanks. Now I don't have to worry about the ck crashing when I try and save certain files.
  5. karios525
    karios525
    • premium
    • 31 kudos
    I managed to merge ELFX enhancer with ELE light (just the lighting module but the merged version integrating the dlcs Falskaar and Wyrmstooth) without errors, or any noticeable issues whatsoever. Extra Encounters Reborn basic (now an esm) merged with it's plugins without issue, no errors found in the latest beta of tes5edit. The only merge which still fails is EnhancedLIghtsandFX and the two dlc addon esps, so in essence the beta is a huge improvement over the previous version, so many thanks for all the hard work.
    1. keithinhanoi
      keithinhanoi
      • supporter
      • 72 kudos
      Strange that the ELFX + its DLC plugins won't merge, because I was able to do that with a much earlier release of the 1.8 beta.

      I'm finally going to have a little free time next week (yay for the Lunar New Year break!) so I'll investigate into that.

      I will also try the Extra Encounters merge myself, since I opted to merge that "by hand" already, so I can compare my work with the script's.
    2. karios525
      karios525
      • premium
      • 31 kudos
      ELFX main esp plus the dlcs will merge but take a long time to do so and the script actually stops responding for a bit which does concern me, if you try and merge the enhancer as well, my merged plugin ended up at well over 8mb in size, am wondering whether maybe the reason the script 'isn't responding' is just that it is struggling with the volume of records maybe?
    3. matortheeternal
      matortheeternal
      • premium
      • 618 kudos
      That is precisely what it is. ESPs with a massive number of records will cause the script window/xEdit to go not responding occassionally simply because the copying of records from them is extremely time-consuming. If I was able to copy CELL/WRLD records without their child groups this would not be an issue because we'd update the window more often.
  6. Draco856
    Draco856
    • premium
    • 69 kudos
    So far so good with this latest script and the latest xEdit, things have been merging perfectly, haven't tested in game yet, have to merge my over 900 mod count to under 160 before I do that, but so far everything has merged perfectly with no reported xEdit errors.

    Edit: Ran into a problem today, when merging CELL records, if it is a completely new cell the contents of it becomes orphaned because the script doesn't properly renumber the cells FormIDs, meaning the CELL records still have the parent mods FormIDs for the cell and items, I don't know how to fix this other then making the merged file, then manually going into each cell record and find the ones that still have their original form IDs then renumber them manually. I tried changing my settings to make the script renumber all FormIDs, but that didn't change anything.

    Edit 2: This is a little frustrating, I don't know how to fix this, I changed the forms manually for the CELLs, but after saving they were orphaned again, how do I fix this?
    1. matortheeternal
      matortheeternal
      • premium
      • 618 kudos
      Working on this.
  7. ChiefZigZag
    ChiefZigZag
    • premium
    • 4 kudos
    Having massive success with this latest release.. I have merged probably 30+ mods since the 1.8.15b release.. and testing.. it seems like you may have got it down.. it seems like almost everything is mergeable now. Thanks so much for this excellent tool.
  8. macdaddy1176
    macdaddy1176
    • supporter
    • 6 kudos
    i tried out your latest version of the script 1.8.15 with the latest TES5Edit svn1883, i merged 6 followers that were in Whiterun area ( just because thats where my save was ) 5 followers were basic ( no script or voices ) and also merged Companion Selene Kate ( in riverwood and she has scripts )
    worked perfect ( to my limited knowledge )
    all faces were perfect, no grey face bug, Selene beat the crap outta stuff, all her custom spells and moves seemed to be working perfect
    i used the Batch Copying option, it asked me to overight some things that were to do with Selene Kate's mod files, i picked yes, hope that was right ?
    using it through MO too, again, seems there are no problems
    matortheeternal, you sir are a god and indeed eternal
    thankyou for your great work in keeping my massive plugin count at around 200 ( i think it would be probly around the 500 plugins without your merge script )
  9. refusedzero
    refusedzero
    • supporter
    • 60 kudos
    Thank you! Will play with this!
  10. matortheeternal
    matortheeternal
    • premium
    • 618 kudos
    v1.8.15 here, right after v1.8.14, heh.

    So I worked through the Duplicate FormID errors and isolated the exact cause. The cause was actually pretty darn specific. Upon investigation, the error occurs when copying a record with the PersistentReference QuestItem DisplaysInMainMenu flag set to a file where an override of that record already exists with the flag not set. Because wbCopyElementToFile copies child groups, if any record in a child group had this issue the result was an incomplete merge as wbCopyElementToFile fails on that record, thus not copying all of the records in the child group.

    The new version avoids this issue by copying the records in the child groups individually if copying the entire child group fails and doesn't print Duplicate FormID errors to the log if they occur when copying a child group. It also skips copying individual records if they have the persistent flag set when the WinningOverride doesn't have the persistent flag set (copying such records would have failed anyways). This is (in my opinion) a messy fix. Your merged plugins will work now, but it'd be better if wbCopyElementToFile wouldn't fail when copying override records with the persistent flag set. That, however, will require someone (probably zilav) changing xEdit's source code and compiling a new binary, and thus may be a bit far off in the future.


    Cheers,
    -Mator
  11. icecreamassassin
    icecreamassassin
    • premium
    • 1,788 kudos
    ok so I have a new merge report issue to pass along. I am trying to merge the following files:

    moonpaths.esp (esp copied version of the .esm)
    DragonbornGalleryNEW.esp
    DragonbornGalleryPatchV2.esp
    Moonpaths quest data.esp
    DBM_Moonpaths_addon.esp

    I am merging them as a new plugin (legacyofthedragonborn.esp) using the chnage conflicting form ID's option and I have run an error check on every plugin and they are clean. I get the following error at the end of the merge:


    Your merged file has been created successfully. It has 92360 records.
    The following records failed to copy:
    \ [07] DragonbornGalleryPatchV2.esp \ [30] GRUP Top "CELL" \ [2] GRUP Interior Cell Block 2 \ [4] GRUP Interior Cell Sub-Block 4 \ [9] GRUP Cell Children of DBM_test "Dragonborn Gallery" [CELL:06125EE6]; Duplicate FormID [0612652C] in file [0B] LegacyoftheDragonborn.esp
    \ [06] dragonborngalleryNEW.esp \ [35] GRUP Top "CELL" \ [0] GRUP Interior Cell Block 0 \ [2] GRUP Interior Cell Sub-Block 5 \ [1] GRUP Cell Children of DBM_JolgeirrBarrow "Jolgeirr Barrow" [CELL:0611CBAA]; Duplicate FormID [0611CC01] in file [0B] LegacyoftheDragonborn.esp
    \ [06] dragonborngalleryNEW.esp \ [35] GRUP Top "CELL" \ [0] GRUP Interior Cell Block 0 \ [4] GRUP Interior Cell Sub-Block 7 \ [1] GRUP Cell Children of DBM_test6 "Safehouse" [CELL:060AEACE]; Duplicate FormID [060AEBDC] in file [0B] LegacyoftheDragonborn.esp
    \ [06] dragonborngalleryNEW.esp \ [35] GRUP Top "CELL" \ [2] GRUP Interior Cell Block 2 \ [3] GRUP Interior Cell Sub-Block 4 \ [3] GRUP Cell Children of DBM_test "Dragonborn Gallery" [CELL:06125EE6]; Duplicate FormID [060AEEAE] in file [0B] LegacyoftheDragonborn.esp
    \ [06] dragonborngalleryNEW.esp \ [35] GRUP Top "CELL" \ [4] GRUP Interior Cell Block 4 \ [4] GRUP Interior Cell Sub-Block 6 \ [5] GRUP Cell Children of DBM_test5 "Gallery of Natural Science" [CELL:061256C8]; Duplicate FormID [0612592D] in file [0B] LegacyoftheDragonborn.esp
    \ [06] dragonborngalleryNEW.esp \ [35] GRUP Top "CELL" \ [5] GRUP Interior Cell Block 5 \ [5] GRUP Interior Cell Sub-Block 6 \ [5] GRUP Cell Children of DBM_test2 "Daedric Exhibit Hall" [CELL:061263AD]; Duplicate FormID [061263E4] in file [0B] LegacyoftheDragonborn.esp
    \ [06] dragonborngalleryNEW.esp \ [36] GRUP Top "WRLD" \ [1] GRUP World Children of Tamriel "Skyrim" [WRLD:0000003C] \ [4] GRUP Exterior Cell Block -1, 0; Duplicate FormID [06081027] in file [0B] LegacyoftheDragonborn.esp
    \ [06] dragonborngalleryNEW.esp \ [36] GRUP Top "WRLD" \ [13] GRUP World Children of SolitudeWorld "Solitude" [WRLD:00037EDF] \ [2] GRUP Exterior Cell Block 0, -1; Duplicate FormID [061432F6] in file [0B] LegacyoftheDragonborn.esp


    DragonbornGalleryNEW.ESP is a master-zied esp as is moonpaths.esp. DragonbornGalleryNEW.ESP sets up all the cells that are showing in the error above, and DragonbornGalleryPatchV2.esp adds stuff or makes changes to all of them. DragonbornOdyssey.esp also makes some additions and changes to these cells.
    1. icecreamassassin
      icecreamassassin
      • premium
      • 1,788 kudos
      UPDATE: Tried a change all form ID's merge and it does not have these errors BUT instead has this:


      Your merged file has been created successfully. It has 95027 records.
      The following records failed to copy:
      \ [07] DragonbornGalleryPatchV2.esp \ [30] GRUP Top "CELL" \ [2] GRUP Interior Cell Block 2 \ [4] GRUP Interior Cell Sub-Block 4 \ [9] GRUP Cell Children of DBM_test "Dragonborn Gallery" [CELL:06125EE6]; Duplicate FormID [0612652C] in file [0B] LegacyoftheDragonborn.esp
      \ [06] dragonborngalleryNEW.esp \ [36] GRUP Top "WRLD" \ [13] GRUP World Children of SolitudeWorld "Solitude" [WRLD:00037EDF] \ [2] GRUP Exterior Cell Block 0, -1; Duplicate FormID [0002E4D3] in file [0B] LegacyoftheDragonborn.esp
      \ [06] dragonborngalleryNEW.esp \ [36] GRUP Top "WRLD" \ [25] GRUP World Children of PalePass "Pale Pass" [WRLD:063AC55A] \ [2] GRUP Exterior Cell Block -1, -1; Access violation at address 00780DAB in module 'TES5Edit.exe'. Read of address 00000000
      \ [06] dragonborngalleryNEW.esp \ [36] GRUP Top "WRLD" \ [25] GRUP World Children of PalePass "Pale Pass" [WRLD:063AC55A] \ [3] GRUP Exterior Cell Block 0, -1; Access violation at address 00780DAB in module 'TES5Edit.exe'. Read of address 00000000
      \ [06] dragonborngalleryNEW.esp \ [36] GRUP Top "WRLD" \ [25] GRUP World Children of PalePass "Pale Pass" [WRLD:063AC55A] \ [4] GRUP Exterior Cell Block -1, 0; Access violation at address 00780DAB in module 'TES5Edit.exe'. Read of address 00000000
      \ [06] dragonborngalleryNEW.esp \ [36] GRUP Top "WRLD" \ [25] GRUP World Children of PalePass "Pale Pass" [WRLD:063AC55A] \ [5] GRUP Exterior Cell Block 0, 0; Access violation at address 00780DAB in module 'TES5Edit.exe'. Read of address 00000000
      \ [07] DragonbornGalleryPatchV2.esp \ [30] GRUP Top "CELL" \ [2] GRUP Interior Cell Block 2 \ [4] GRUP Interior Cell Sub-Block 4 \ [9] GRUP Cell Children of DBM_test "Dragonborn Gallery" [CELL:06125EE6]; Duplicate FormID [0612652C] in file [0B] LegacyoftheDragonborn.esp
      \ [06] dragonborngalleryNEW.esp \ [36] GRUP Top "WRLD" \ [13] GRUP World Children of SolitudeWorld "Solitude" [WRLD:00037EDF] \ [2] GRUP Exterior Cell Block 0, -1; Duplicate FormID [0002E4D3] in file [0B] LegacyoftheDragonborn.esp
      \ [06] dragonborngalleryNEW.esp \ [36] GRUP Top "WRLD" \ [25] GRUP World Children of PalePass "Pale Pass" [WRLD:063AC55A] \ [2] GRUP Exterior Cell Block -1, -1; Duplicate FormID [063A3FC7] in file [0B] LegacyoftheDragonborn.esp
      \ [06] dragonborngalleryNEW.esp \ [36] GRUP Top "WRLD" \ [25] GRUP World Children of PalePass "Pale Pass" [WRLD:063AC55A] \ [3] GRUP Exterior Cell Block 0, -1; Duplicate FormID [063A3CED] in file [0B] LegacyoftheDragonborn.esp
      \ [06] dragonborngalleryNEW.esp \ [36] GRUP Top "WRLD" \ [25] GRUP World Children of PalePass "Pale Pass" [WRLD:063AC55A] \ [4] GRUP Exterior Cell Block -1, 0; Duplicate FormID [063A3DC4] in file [0B] LegacyoftheDragonborn.esp
      \ [06] dragonborngalleryNEW.esp \ [36] GRUP Top "WRLD" \ [25] GRUP World Children of PalePass "Pale Pass" [WRLD:063AC55A] \ [5] GRUP Exterior Cell Block 0, 0; Duplicate FormID [063A3A9E] in file [0B] LegacyoftheDragonborn.esp
    2. hishutup
      hishutup
      • premium
      • 169 kudos
      I have also seen the Access violation error. I think mine were all worldspace but there may have also been some that were cell
    3. icecreamassassin
      icecreamassassin
      • premium
      • 1,788 kudos
      another update. Tried to merge just the main file and the plugin into a new file and got the same errors, then I went in and copied over the records I needed into the base form in the base mod and deleted the form from the plugin, so that there was no duplicate form ID, then I tried the merge again and it reported more random duplicate form ID's on different objects than it did before. it seems to not like merging a plugin with its master (even if it's an EPS with or without master flag set. So I'm at a loss.
    4. matortheeternal
      matortheeternal
      • premium
      • 618 kudos
      Hey icecreamassassin,

      In a new build I managed to merge
      dragonborngalleryNEW.esp
      DragonbornGalleryPatchV2.esp
      DragonbornOdyssey2.esp
      Without having an errors after merging!

      So yeah, I've fixed the issue, more or less. Sort of. It'll need a bit more work, but v1.8.15 should come out later today working well enough.

      EDIT: Ok so, the way I fixed it may have some issues with detached children groups. I want to fix it better but I think it's going to need an xEdit update.

      EDIT 2: Nevermind! I think I can do it without an xEdit update. Trying to merge again! (probably the 10th time, lol)
  12. matortheeternal
    matortheeternal
    • premium
    • 618 kudos
    Figured out the duplicate formID issue, it's actually a really simple issue. All that's going wrong is we're copying a modified override of a subrecord in a WRLD or CELL etGroupRecord to the merged plugin, and then when we're trying to copy the same WRLD/CELL etGroupRecord to the merged plugin from a master file we're running into a duplicate FormID. Again, this is an issue with me not being able to copy just CELL/WRLD records without the records in their child group. I might be able to figure out a way to fix this.