tes3cmd workaround

Post » Tue May 17, 2011 2:27 am

tes3cmd is great at cleaning mods, but I noticed that it has one problem.
If it cleans mod foobar.esp, it will leave behind a backup foobar~1.esp.
Unfortunately, foobar.esp's date is changed to the current date. This can potentially screw up mod ordering, especially if there are implied ordering rules not explicitly called out in mlox.

Therefore I used the following commands from a DOS prompt (cmd.exe) to assign the modifed dates from all the backup (~1.es?) mods to the cleaned mods:

C:
cd \Morrowind\Data Files
for %1 in (*.esp *.esm) do if exist "%~n1~1%~x1" ctb10w32\touch /r "%~n1~1%~x1" "%1"

Note that this depends on the touch tool found here: http://www.stevemiller.net/apps/

Hope this helps someone.
User avatar
Alyna
 
Posts: 3412
Joined: Wed Aug 30, 2006 4:54 am

Post » Tue May 17, 2011 2:26 am

You can change both date and time with either http://www.gamesas.com/index.php?/topic/1106095-wrye-mash-stand-alone/ or http://www.gamesas.com/index.php?/topic/1068986-wrye-mash-thread-5/ to it's original timestamp. :)
User avatar
Jack Bryan
 
Posts: 3449
Joined: Wed May 16, 2007 2:31 am

Post » Tue May 17, 2011 6:48 am

That is true, but it might not be flawless. Also, if the user has changed their time stamp, won't that make Wrye Mash off a little. The method he has created will actually deal with any issues making sure it's exactly the same as it was previously.

Another important thing to note, if you clean 10-15 mods it's a pain to go back into Wrye Mash to reset all of the dates...this here will allow you to do it all with one click. Not to mention, that you can set it as a .bat file instead and do it with just a simple double click.
User avatar
Liii BLATES
 
Posts: 3423
Joined: Tue Aug 22, 2006 10:41 am

Post » Tue May 17, 2011 10:53 am

..if you clean 10-15 mods it's a pain to go back into Wrye Mash to reset all of the dates...this here will allow you to do it all with one click.


With 'Lock Times' option ticked it doesn't matter how many plugin dates you've changed 10 or 100. Wrye Mash just resets them all at once back to order upon start.
User avatar
Mandy Muir
 
Posts: 3307
Joined: Wed Jan 24, 2007 4:38 pm

Post » Tue May 17, 2011 1:39 am

Oh, I forgot about lock times.
User avatar
Raymond J. Ramirez
 
Posts: 3390
Joined: Sun Oct 14, 2007 8:28 am

Post » Tue May 17, 2011 7:46 am

Cool, it sounds like Wrye Mash Lock Times is an easier way to do this.

I noticed another problem with tes3cmd. I had a small patch to reset Resist Paralysis back to the default cost (I didn't like MPP's change to this magic effect) and it was "cleaned" by removing a duplicate MGEF entry. So I couldn't accept tes3cmd's cleaning in this case.

I think this kind of problem can only happen for "patch" type mods, so keep an eye out.
User avatar
Jessica Nash
 
Posts: 3424
Joined: Tue Dec 19, 2006 10:18 pm

Post » Mon May 16, 2011 11:30 pm

Cool, it sounds like Wrye Mash Lock Times is an easier way to do this.

I noticed another problem with tes3cmd. I had a small patch to reset Resist Paralysis back to the default cost (I didn't like MPP's change to this magic effect) and it was "cleaned" by removing a duplicate MGEF entry. So I couldn't accept tes3cmd's cleaning in this case.

I think this kind of problem can only happen for "patch" type mods, so keep an eye out.

I believe tes3cmd by design just lets windows assign a timestamp to the cleaned plugin it creates, just like would happen with any other newly created file under windows. What you're looking for is a feature request - not really a problem or bug.

Any true problems with tes3cmd would be best served by posting in the http://www.gamesas.com/index.php?/topic/934107-relz-tes3cmd-a-small-tool-for-modifying-tes3-plugins. ;)
User avatar
Leonie Connor
 
Posts: 3434
Joined: Mon Mar 12, 2007 4:18 pm

Post » Tue May 17, 2011 5:33 am

tes3cmd is great at cleaning mods, but I noticed that it has one problem.
If it cleans mod foobar.esp, it will leave behind a backup foobar~1.esp.
Unfortunately, foobar.esp's date is changed to the current date. This can potentially screw up mod ordering, especially if there are implied ordering rules not explicitly called out in mlox.


tes3cmd is supposed to reset the date of the cleaned plugin to the date of the original as you would expect. I just checked on Linux and it does this correctly, so I guess I'll need to do a test on Windows to see if there is something strange going on there.
User avatar
Makenna Nomad
 
Posts: 3391
Joined: Tue Aug 29, 2006 10:05 pm

Post » Tue May 17, 2011 12:51 pm

>tes3cmd is supposed to reset the date of the cleaned plugin to the date of the original

IIRC, it seems like it fixes the date sometimes and other times it won't. My problem might be due to PEBKAC (problem exists between keyboard and chair).
User avatar
Yung Prince
 
Posts: 3373
Joined: Thu Oct 11, 2007 10:45 pm

Post » Tue May 17, 2011 12:04 am

IIRC, it seems like it fixes the date sometimes and other times it won't.

Oh, that's most interesting. If you happen to figure out under what conditions it does not work correctly, that would be good to know.

I believe I did do this test before under Win XP, but I probably didn't do much testing, so maybe I missed something.
User avatar
Donatus Uwasomba
 
Posts: 3361
Joined: Sun May 27, 2007 7:22 pm

Post » Tue May 17, 2011 4:11 am

Oh, that's most interesting. If you happen to figure out under what conditions it does not work correctly, that would be good to know.

I believe I did do this test before under Win XP, but I probably didn't do much testing, so maybe I missed something.


Cleaning always worked for me. Synchronizing headers did not. tes3cmd sorts the mods alphabetically for some reason. There is no reproducable pattern behind it.


@Thread
Another easy workaround:

Start Yacoby's "reorder mods" tool before you do anything with tes3cmd. If the file dates get changed, hit the "reorder" button.
User avatar
JAY
 
Posts: 3433
Joined: Fri Sep 14, 2007 6:17 am


Return to III - Morrowind