Toolsutilities

Post » Mon May 07, 2012 8:46 pm

I am loading up Morrowind again after a long hiatus and was looking to see if there were any new programs to help with managing mods. I can recall spending hours with, I believe, Tespcd copy pasting entries between mods to get everything to show up. For Example I have one mod that changes the guards heads, another changes their armor, another adds a script to them, another changes their weapons, another changes their inventory etc etc. To get everything to show up took a lot of fiddling around. Any utilities that make this easier?
User avatar
Allison Sizemore
 
Posts: 3492
Joined: Wed Jul 19, 2006 6:09 am

Post » Mon May 07, 2012 5:51 pm

http://www.gamesas.com/index.php?/topic/1060141-mod-recommendations-for-new-players/page__hl__recommendations has a section on Tools. With links to the big ones.

Wrye Mash
TESTool (or another tool to make a Merge Object.esp.. which is what you need to merge all the changes for your Guards at once)
Mlox
User avatar
Nany Smith
 
Posts: 3419
Joined: Sat Mar 17, 2007 5:36 pm

Post » Mon May 07, 2012 7:24 pm

I have a related question, I've used all those tools and more, but what I would really like to see is tes4edit ported for Tes3. I've been using tespcd since before its last version and its great, but tes4edit is able to show so much more so easily and has the ability to directly edit .esps. Elminister ported it for FO3, probably much closer to OB than MW. That's my Xmas wish, sigh.
User avatar
Karen anwyn Green
 
Posts: 3448
Joined: Thu Jun 15, 2006 4:26 pm

Post » Mon May 07, 2012 8:18 pm

From what I've read the records in TES3/TES4 and others are all pretty much identical in the basic structure. The actual records themselves would have to fit the game, but the editors I think carry over. Big difference in TES3 & TES4 is the land masses, which uses a 64x64 grid while all other ones use 32x32.
User avatar
Inol Wakhid
 
Posts: 3403
Joined: Wed Jun 27, 2007 5:47 am

Post » Mon May 07, 2012 3:09 pm

Spent a while trying to get Smartmerger to work as it looked good, but no go.
User avatar
luke trodden
 
Posts: 3445
Joined: Sun Jun 24, 2007 12:48 am

Post » Mon May 07, 2012 9:09 am

Was worth a try.... Perhaps I can modify SmartMerger to handle other types of games too, that is assuming there's enough of a need and want for it.

EDIT: Just remembered. SmartMerger only accepts files that have a starting TES3 Record. So if the record is say TES4 or something, then it won't accept it. (This is to prevent accidentally including text files or something and crashing the program)
User avatar
Jaylene Brower
 
Posts: 3347
Joined: Tue Aug 15, 2006 12:24 pm

Post » Mon May 07, 2012 3:50 pm

Hmm got Smartmerger to work a little bit but not completely. not sure what I am doing wrong.
User avatar
maria Dwyer
 
Posts: 3422
Joined: Sat Jan 27, 2007 11:24 am

Post » Mon May 07, 2012 1:53 pm

What are you trying to merge/work with?

Likely what you want is --exclude_unchanged if you want to include all your plugins and the 'merged objects' (Like TESTool) will be loaded last to fix conflicting records.
User avatar
Kim Kay
 
Posts: 3427
Joined: Fri Oct 13, 2006 10:45 am

Post » Mon May 07, 2012 12:42 pm

What are you trying to merge/work with?

Likely what you want is --exclude_unchanged if you want to include all your plugins and the 'merged objects' (Like TESTool) will be loaded last to fix conflicting records.

Just trying to have the GUI go through my list of mods and make the object merge esp with me approving changes.
User avatar
k a t e
 
Posts: 3378
Joined: Fri Jan 19, 2007 9:00 am

Post » Mon May 07, 2012 8:50 pm

May be a lot of changes. But --exclude_unchanged, --choice All, and --load_ini, are likely the three flags you want. In the GUI it would be Load ini, Merged Objects-like, and Approve changes.

I would also move your main master files into the reference box below, but it may not be needed.
User avatar
Austin England
 
Posts: 3528
Joined: Thu Oct 11, 2007 7:16 pm

Post » Mon May 07, 2012 4:49 pm

After letting it run overnight I find all I have is an error text as follows
Warning! FRMR 59919 has no NAME SubRecord
Warning! FRMR 199251 has no NAME SubRecord
Warning! FRMR 4393 has no NAME SubRecord
Warning! FRMR 461885 has no NAME SubRecord
Warning! FRMR 478336 has no NAME SubRecord
Warning! FRMR 138629 has no NAME SubRecord
Warning! FRMR 309551 has no NAME SubRecord
Warning! FRMR 463439 has no NAME SubRecord
Warning! FRMR 231005 has no NAME SubRecord
Warning! FRMR 465612 has no NAME SubRecord
Warning! FRMR 405400 has no NAME SubRecord
Warning! FRMR 479976 has no NAME SubRecord
Warning! FRMR 477783 has no NAME SubRecord
Warning! FRMR 195726 has no NAME SubRecord
Warning! FRMR 413167 has no NAME SubRecord
Warning! FRMR 26257 has no NAME SubRecord
Warning! FRMR 416415 has no NAME SubRecord
Warning! FRMR 18862 has no NAME SubRecord
Warning! FRMR 412116 has no NAME SubRecord
Warning! FRMR 225023 has no NAME SubRecord
Warning! FRMR 223792 has no NAME SubRecord
Warning! FRMR 300032 has no NAME SubRecord
Warning! FRMR 247524 has no NAME SubRecord
Warning! FRMR 264646 has no NAME SubRecord
Warning! FRMR 264658 has no NAME SubRecord
Warning! FRMR 264506 has no NAME SubRecord
Warning! FRMR 246767 has no NAME SubRecord
Warning! FRMR 246786 has no NAME SubRecord
Warning! FRMR 478593 has no NAME SubRecord
Warning! FRMR 478606 has no NAME SubRecord
Warning! FRMR 478613 has no NAME SubRecord
Warning! FRMR 10 has no NAME SubRecord
Warning! FRMR 11 has no NAME SubRecord
Warning! FRMR 408432 has no NAME SubRecord
Warning! FRMR 302158 has no NAME SubRecord
INFO_is_attached: Stuck in infinite loop. Breaking out
INFO_is_attached: Stuck in infinite loop. Breaking out
INFO_is_attached: Stuck in infinite loop. Breaking out
INFO_goto_head: INFO_1834123233174134261_7160d928 Stuck in infinite loop. Breaking out

INFO_goto_head aborted on ID: DIAL_B_Bivale Teneran
INFO_goto_head: INFO_157421603314772283_7160d928 Stuck in infinite loop. Breaking out

INFO_goto_head aborted on ID: DIAL_B_Bivale Teneran
INFO_goto_head: INFO_235371551978806463_7160d928 Stuck in infinite loop. Breaking out

INFO_goto_head aborted on ID: DIAL_B_Bivale Teneran
INFO_goto_head: INFO_157421603314772283_7160d928 Stuck in infinite loop. Breaking out

INFO_goto_head aborted on ID: DIAL_B_Bivale Teneran
INFO_is_attached: Stuck in infinite loop. Breaking out
INFO_is_attached: Stuck in infinite loop. Breaking out
INFO_is_attached: Stuck in infinite loop. Breaking out
INFO_is_attached: Stuck in infinite loop. Breaking out
INFO_is_attached: Stuck in infinite loop. Breaking out
INFO_goto_head: INFO_2641613943392531469_cdf06189 Stuck in infinite loop. Breaking out

INFO_goto_head aborted on ID: DIAL_B_Aurane Frernis
INFO_goto_head: INFO_18908217391512310062_cdf06189 Stuck in infinite loop. Breaking out

INFO_goto_head aborted on ID: DIAL_B_Aurane Frernis
INFO_goto_head: INFO_246848333175682769_cdf06189 Stuck in infinite loop. Breaking out

INFO_goto_head aborted on ID: DIAL_B_Aurane Frernis
INFO_goto_head: INFO_1220428417263326641_cdf06189 Stuck in infinite loop. Breaking out

INFO_goto_head aborted on ID: DIAL_B_Aurane Frernis
INFO_goto_head: INFO_1220428417263326641_cdf06189 Stuck in infinite loop. Breaking out

INFO_goto_head aborted on ID: DIAL_B_Aurane Frernis
INFO_goto_head: INFO_246848333175682769_cdf06189 Stuck in infinite loop. Breaking out

INFO_goto_head aborted on ID: DIAL_B_Aurane Frernis

ID CLASH: DN-GDRv1_NOM.esp -> DN-GDRv1.esp
ACTI_DN_bait-switch_dguard00 -> SCPT_DN_bait-switch_dguard00

ID CLASH: DN-GDRv1_NOM.esp -> DN-GDRv1.esp
SCPT_DN_bait-switch_dguard00 -> ACTI_DN_bait-switch_dguard00

ID CLASH: DN-GDRv1_NOM.esp -> DN-GDRv1.esp
ACTI_DN_bait-switch_dguard01 -> SCPT_DN_bait-switch_dguard01

ID CLASH: DN-GDRv1_NOM.esp -> DN-GDRv1.esp
SCPT_DN_bait-switch_dguard01 -> ACTI_DN_bait-switch_dguard01

ID CLASH: DN-GDRv1_NOM.esp -> DN-GDRv1.esp
ACTI_DN_gate_01 -> SCPT_DN_gate_01

ID CLASH: DN-GDRv1_NOM.esp -> DN-GDRv1.esp
SCPT_DN_gate_01 -> ACTI_DN_gate_01

ID CLASH: DN-GDRv1_NOM.esp -> DN-GDRv1.esp
ACTI_DN_gate_02 -> SCPT_DN_gate_02

ID CLASH: DN-GDRv1_NOM.esp -> DN-GDRv1.esp
SCPT_DN_gate_02 -> ACTI_DN_gate_02

ID CLASH: DN-GDRv1_NOM.esp -> DN-GDRv1.esp
SCPT_DN_impeller -> ACTI_DN_impeller

ID CLASH: DN-GDRv1_NOM.esp -> DN-GDRv1.esp
ACTI_DN_impeller -> SCPT_DN_impeller

ID CLASH: DN-GDRv1_NOM.esp -> DN-GDRv1.esp
SCPT_DN_lift_trap -> SOUN_DN_lift_trap

ID CLASH: DN-GDRv1_NOM.esp -> DN-GDRv1.esp
SOUN_DN_lift_trap -> SCPT_DN_lift_trap
INFO_goto_head: INFO_315705546179349752_cdf06189 Stuck in infinite loop. Breaking out

INFO_goto_head aborted on ID: DIAL_B_Aurane Frernis
INFO_goto_head: INFO_315705546179349752_cdf06189 Stuck in infinite loop. Breaking out

INFO_goto_head aborted on ID: DIAL_B_Aurane Frernis
INFO_goto_head: INFO_274131563409125077_cdf06189 Stuck in infinite loop. Breaking out

INFO_goto_head aborted on ID: DIAL_B_Aurane Frernis
INFO_goto_head: INFO_274131563409125077_cdf06189 Stuck in infinite loop. Breaking out

INFO_goto_head aborted on ID: DIAL_B_Aurane Frernis
INFO_goto_head: INFO_3075911120292124757_cdf06189 Stuck in infinite loop. Breaking out

INFO_goto_head aborted on ID: DIAL_B_Aurane Frernis
INFO_goto_head: INFO_3075911120292124757_cdf06189 Stuck in infinite loop. Breaking out

INFO_goto_head aborted on ID: DIAL_B_Aurane Frernis
INFO_goto_head: INFO_427417191577213594_cdf06189 Stuck in infinite loop. Breaking out

INFO_goto_head aborted on ID: DIAL_B_Aurane Frernis
INFO_goto_head: INFO_427417191577213594_cdf06189 Stuck in infinite loop. Breaking out

INFO_goto_head aborted on ID: DIAL_B_Aurane Frernis
INFO_goto_head: INFO_11355152346314704_cdf06189 Stuck in infinite loop. Breaking out

INFO_goto_head aborted on ID: DIAL_B_Aurane Frernis
INFO_goto_head: INFO_11355152346314704_cdf06189 Stuck in infinite loop. Breaking out

INFO_goto_head aborted on ID: DIAL_B_Aurane Frernis
INFO_goto_head: INFO_251061852241813155_cdf06189 Stuck in infinite loop. Breaking out

INFO_goto_head aborted on ID: DIAL_B_Aurane Frernis
INFO_goto_head: INFO_251061852241813155_cdf06189 Stuck in infinite loop. Breaking out

INFO_goto_head aborted on ID: DIAL_B_Aurane Frernis
INFO_goto_head: INFO_2660248922596410301_cdf06189 Stuck in infinite loop. Breaking out

INFO_goto_head aborted on ID: DIAL_B_Aurane Frernis
INFO_goto_head: INFO_2660248922596410301_cdf06189 Stuck in infinite loop. Breaking out

INFO_goto_head aborted on ID: DIAL_B_Aurane Frernis
INFO_goto_head: INFO_241830177139022199_cdf06189 Stuck in infinite loop. Breaking out

INFO_goto_head aborted on ID: DIAL_B_Aurane Frernis
INFO_goto_head: INFO_241830177139022199_cdf06189 Stuck in infinite loop. Breaking out

INFO_goto_head aborted on ID: DIAL_B_Aurane Frernis
INFO_goto_head: INFO_2080131931510115376_cdf06189 Stuck in infinite loop. Breaking out

INFO_goto_head aborted on ID: DIAL_B_Aurane Frernis
INFO_goto_head: INFO_2080131931510115376_cdf06189 Stuck in infinite loop. Breaking out

INFO_goto_head aborted on ID: DIAL_B_Aurane Frernis
INFO_goto_head: INFO_23429118493166428204_cdf06189 Stuck in infinite loop. Breaking out

INFO_goto_head aborted on ID: DIAL_B_Aurane Frernis
INFO_goto_head: INFO_23429118493166428204_cdf06189 Stuck in infinite loop. Breaking out

INFO_goto_head aborted on ID: DIAL_B_Aurane Frernis
INFO_goto_head: INFO_143013945215435495_cdf06189 Stuck in infinite loop. Breaking out

INFO_goto_head aborted on ID: DIAL_B_Aurane Frernis
INFO_goto_head: INFO_143013945215435495_cdf06189 Stuck in infinite loop. Breaking out

INFO_goto_head aborted on ID: DIAL_B_Aurane Frernis
INFO_goto_head: INFO_9820282972917525714_cdf06189 Stuck in infinite loop. Breaking out

INFO_goto_head aborted on ID: DIAL_B_Aurane Frernis
INFO_goto_head: INFO_9820282972917525714_cdf06189 Stuck in infinite loop. Breaking out

INFO_goto_head aborted on ID: DIAL_B_Aurane Frernis
INFO_goto_head: INFO_3243532324911319324_cdf06189 Stuck in infinite loop. Breaking out

INFO_goto_head aborted on ID: DIAL_B_Aurane Frernis
INFO_goto_head: INFO_3243532324911319324_cdf06189 Stuck in infinite loop. Breaking out

INFO_goto_head aborted on ID: DIAL_B_Aurane Frernis
INFO_goto_head: INFO_751416654177291684_cdf06189 Stuck in infinite loop. Breaking out

INFO_goto_head aborted on ID: DIAL_B_Aurane Frernis
INFO_goto_head: INFO_751416654177291684_cdf06189 Stuck in infinite loop. Breaking out

INFO_goto_head aborted on ID: DIAL_B_Aurane Frernis
INFO_goto_head: INFO_24231188761444712101_cdf06189 Stuck in infinite loop. Breaking out

INFO_goto_head aborted on ID: DIAL_B_Aurane Frernis
INFO_goto_head: INFO_24231188761444712101_cdf06189 Stuck in infinite loop. Breaking out

INFO_goto_head aborted on ID: DIAL_B_Aurane Frernis
INFO_goto_head: INFO_23661320751723877_cdf06189 Stuck in infinite loop. Breaking out

INFO_goto_head aborted on ID: DIAL_B_Aurane Frernis
INFO_goto_head: INFO_23661320751723877_cdf06189 Stuck in infinite loop. Breaking out

INFO_goto_head aborted on ID: DIAL_B_Aurane Frernis
INFO_goto_head: INFO_127701666337139434_cdf06189 Stuck in infinite loop. Breaking out

INFO_goto_head aborted on ID: DIAL_B_Aurane Frernis
INFO_goto_head: INFO_127701666337139434_cdf06189 Stuck in infinite loop. Breaking out

INFO_goto_head aborted on ID: DIAL_B_Aurane Frernis
INFO_goto_head: INFO_1823629029197016112_cdf06189 Stuck in infinite loop. Breaking out

INFO_goto_head aborted on ID: DIAL_B_Aurane Frernis
INFO_goto_head: INFO_1823629029197016112_cdf06189 Stuck in infinite loop. Breaking out

INFO_goto_head aborted on ID: DIAL_B_Aurane Frernis
INFO_goto_head: INFO_531616102400419316_cdf06189 Stuck in infinite loop. Breaking out

INFO_goto_head aborted on ID: DIAL_B_Aurane Frernis
INFO_goto_head: INFO_531616102400419316_cdf06189 Stuck in infinite loop. Breaking out

INFO_goto_head aborted on ID: DIAL_B_Aurane Frernis
INFO_goto_head: INFO_2756958051817324138_cdf06189 Stuck in infinite loop. Breaking out

INFO_goto_head aborted on ID: DIAL_B_Aurane Frernis
INFO_is_attached: Stuck in infinite loop. Breaking out
INFO_goto_head: INFO_2756958051817324138_cdf06189 Stuck in infinite loop. Breaking out

INFO_goto_head aborted on ID: DIAL_B_Aurane Frernis
INFO_is_attached: Stuck in infinite loop. Breaking out
INFO_goto_head: INFO_315705546179349752_cdf06189 Stuck in infinite loop. Breaking out

INFO_goto_head aborted on ID: DIAL_B_Aurane Frernis
INFO_goto_head: INFO_315705546179349752_cdf06189 Stuck in infinite loop. Breaking out

INFO_goto_head aborted on ID: DIAL_B_Aurane Frernis
INFO_goto_head: INFO_2371341011308229940_cdf06189 Stuck in infinite loop. Breaking out

INFO_goto_head aborted on ID: DIAL_B_Aurane Frernis
INFO_goto_head: INFO_19016162682047929584_cdf06189 Stuck in infinite loop. Breaking out

INFO_goto_head aborted on ID: DIAL_B_Aurane Frernis
INFO_goto_head: INFO_2371341011308229940_cdf06189 Stuck in infinite loop. Breaking out

INFO_goto_head aborted on ID: DIAL_B_Aurane Frernis
INFO_goto_head: INFO_19016162682047929584_cdf06189 Stuck in infinite loop. Breaking out

INFO_goto_head aborted on ID: DIAL_B_Aurane Frernis
INFO_goto_head: INFO_98225500871428624_cdf06189 Stuck in infinite loop. Breaking out

INFO_goto_head aborted on ID: DIAL_B_Aurane Frernis
INFO_goto_head: INFO_315705546179349752_cdf06189 Stuck in infinite loop. Breaking out

INFO_goto_head aborted on ID: DIAL_B_Aurane Frernis
INFO_goto_head: INFO_315705546179349752_cdf06189 Stuck in infinite loop. Breaking out

INFO_goto_head aborted on ID: DIAL_B_Aurane Frernis
INFO_goto_head: INFO_341648585259015_cdf06189 Stuck in infinite loop. Breaking out

INFO_goto_head aborted on ID: DIAL_B_Aurane Frernis
INFO_goto_head: INFO_341648585259015_cdf06189 Stuck in infinite loop. Breaking out

INFO_goto_head aborted on ID: DIAL_B_Aurane Frernis
INFO_goto_head: INFO_1467321737160662601_cdf06189 Stuck in infinite loop. Breaking out

INFO_goto_head aborted on ID: DIAL_B_Aurane Frernis
INFO_goto_head: INFO_1467321737160662601_cdf06189 Stuck in infinite loop. Breaking out

INFO_goto_head aborted on ID: DIAL_B_Aurane Frernis
INFO_goto_head: INFO_16151187811766120748_cdf06189 Stuck in infinite loop. Breaking out

INFO_goto_head aborted on ID: DIAL_B_Aurane Frernis
INFO_goto_head: INFO_19016162682047929584_cdf06189 Stuck in infinite loop. Breaking out

INFO_goto_head aborted on ID: DIAL_B_Aurane Frernis
INFO_goto_head: INFO_16151187811766120748_cdf06189 Stuck in infinite loop. Breaking out

INFO_goto_head ab
User avatar
Charlie Sarson
 
Posts: 3445
Joined: Thu May 17, 2007 12:38 pm

Post » Mon May 07, 2012 8:53 pm

Somehow I'm not surprised. The infinite loops with the dialogs have been lowered with better versions of SmartMerger, however specifically LGNPC there's a few of them that still give trouble. You'd have to confirm which mods were causing that. It all comes down to the same issue that was always giving me trouble, except one level above that. This is where the PNAM and NNAM are backwards. Technically shouldn't happen, but then again there shouldn't be duplicate INAM's (and there are). Thankfully detecting the infinite loops have gotten better.

The infinite loops won't break the dialog; not quite anyways. I'm not sure how the engine deals with it, worse case is it may have to search them all manually in order to give you the proper reply, you will know if that's the case, it takes some 3-6 seconds per reply (or longer) regardless what you select during dialog. Dialog merging isn't perfect, but it's pretty close. I think I'm the only one to get as close to this stage as anyone.

The lacking of a NAME for FRMR's on the other hand is an error (It requires it to know what object it is...). Not with the program, unless for some reason it removed them (and it refuses to do that normally), and even if SmartMerger did, the record would still be present until you did the output write (At least that's what it is suppose to do). It shouldn't be too hard to figure out which files it is referring to, if not you can always have --query as the next to last argument, then ask it questions to specify in more detail what it is talking about. Like "CELL;59919,199251,4393" to have it tell you more about these three FRMR's. It would tell you where it came from, and curiously enough, what modified it (if anything). If you identify what plugins and can confirm they had empty/missing NAME subrecords, they may have to be cleaned out. I could add a flag to Mark them to be removed for you.
User avatar
Spooky Angel
 
Posts: 3500
Joined: Thu Aug 10, 2006 5:41 pm

Post » Mon May 07, 2012 9:11 pm

Tried running it without any of the Less Generic Morrind files loading and it got quickly to giving me a merged objects.esp, a first! Still gives the list of FRMR errors. Pretty much all I am loading without the less generic files is MGSO and Tamriel Rebuilt. Also not sure what the approve changes tag was supposed to do but it did not ask about any changes when outputting the merged esp.
User avatar
lolly13
 
Posts: 3349
Joined: Tue Jul 25, 2006 11:36 am

Post » Mon May 07, 2012 4:20 pm

Sounds like you did quite well then. The --choice gives you an option regarding multiple items trying to change the same object. Those would be conflicts (Unless I need to rework my --choice code...), but that only happens if something wasn't originally part of a master file. 99% of the time this is how it is suppose to be, meaning few actual conflicts were found. If you wanted to approve every single change (God forbid you do anything large) you can always use --print_esm_clash (Not recommended, but an option).
User avatar
Emily Martell
 
Posts: 3469
Joined: Sun Dec 03, 2006 7:41 am

Post » Mon May 07, 2012 11:23 am

ID CLASH: DN-GDRv1_NOM.esp -> DN-GDRv1.esp
SCPT_DN_bait-switch_dguard00 -> ACTI_DN_bait-switch_dguard00
mutually exclusive mods
User avatar
Katharine Newton
 
Posts: 3318
Joined: Tue Jun 13, 2006 12:33 pm

Post » Mon May 07, 2012 2:35 pm

Indeed. Now that you point that out, it's totally obvious. I was looking more at the dialog issues and not anything else.

But at least it's being useful at identifying issues like this (even if it doesn't try to fix/rename them automatically)
User avatar
Bek Rideout
 
Posts: 3401
Joined: Fri Mar 02, 2007 7:00 pm


Return to III - Morrowind