[Help] tes3cmd - subrecords

Post » Thu Jul 09, 2015 6:03 am

I love tes3cmd, it's such a powerful tool. But I've run into a wall on something.

I have a lot of IDs in my mod which are prefixed md_ I want them to be az_. So I did a batch Modify with tes3cmd. The issue is that it replaced EVERYTHING. Even the model file names and icon file names (within CS only, so that it broke the links). Now, I don't want to restrict TYPE because there are lots of things with the md prefix and even references within scripts. So I tried to restrict sub-type by doing thusly:

tes3cmd modify --sub-no-match "MODL" --replace "/md_/az_/" Plugin.esp

However, there are two issues:

1) tes3cmd does not seem to recognize this sub record. I see that john.moonsugar used "id:" as a subrecord elsewhere which looks totally unlike http://www.uesp.net/morrow/tech/mw_esm.txt (but possibly misinterpreted). Is there a list of subrecords that tes3cmd recognizes? I have not been able to find one... maybe there's a command to call up a list in the program itself?

2) I'm not sure how to exclude two subrecords (MODL and ITEX) since I don't think --sub-no-match can be called multiple times. Would it be like "/MODL/ITEX/"?

Thanks for the help... also, holy crap, the native windows rename command can really F things up!

MD

User avatar
Dan Wright
 
Posts: 3308
Joined: Mon Jul 16, 2007 8:40 am

Post » Wed Jul 08, 2015 6:45 pm

tes3cmd modify --sub-match "ID" --replace "/md_/az_/" Plugin.esp

Is that what you're asking for? I may be misunderstanding the question.

User avatar
Chloe Yarnall
 
Posts: 3461
Joined: Sun Oct 08, 2006 3:26 am

Post » Thu Jul 09, 2015 2:58 am

I don't think so. I don't really want to restrict the sub-record because I even want tes3cmd to replace ID references in scripts. And I want to do more than just statics. This includes every single type of ID in the construction set except maybe sounds (already changed those to az_ manually). I'd just do it all manually but a) I'm worried I'd miss something and B) there are hundreds of IDs in this thing... it would take me forever.

All I really want to do is replace ever single instance of md_ with az_ EXCEPT for ITEX and MODL sub records. I tried the command above but it didn't seem to work. All the MODL records were replaced anyway.

User avatar
lacy lake
 
Posts: 3450
Joined: Sun Dec 31, 2006 12:13 am

Post » Thu Jul 09, 2015 2:17 am

tes3cmd modify --sub-no-match "ITEX" --sub-no-match "MODL" --replace "/md_/az_/" Plugin.esp

I don't have an ESP to test, but I think that works. :D

User avatar
Jennifer Rose
 
Posts: 3432
Joined: Wed Jan 17, 2007 2:54 pm

Post » Thu Jul 09, 2015 2:14 am

Thanks, tried that already though. That's why I posted this thread. I don't know if tes3cmd is using a different set of sub-records, but it still replaced all the MODL and ITEX records in the plugin. I noticed that his other example of a subrecord was "id:" instead of "NAME" like I would expect. So I was wondering if he was using a different list that I was not aware of... I googled all over the place last night trying to find where he got "id:" from. No luck. Now I am wondering if I could get tes3cmd to pull up a list of sub-records though...

User avatar
CArla HOlbert
 
Posts: 3342
Joined: Wed Feb 21, 2007 11:35 pm

Post » Thu Jul 09, 2015 7:42 am

Does it still rename ITEX subs when you do just no-match ITEX? If it's a problem of not being able to do two at once then you'll probably need to use the Perl functions instead of replace.

AFAIK tes3cmd uses all the normal sub-record names. You could use the --dump to output your mod into a text file and it'll have all the subrecord names visible for you to check.

User avatar
Dawn Farrell
 
Posts: 3522
Joined: Thu Aug 23, 2007 9:02 am

Post » Wed Jul 08, 2015 10:13 pm

I didn't try using no-match. To be honest, I think I only have 1 or 2 icon files which start with md_, so I could manually fix that pretty easily and then just do no-match MODL, if that works.

Won't be able to test it out until I get home though.

User avatar
Flash
 
Posts: 3541
Joined: Fri Oct 13, 2006 3:24 pm

Post » Thu Jul 09, 2015 9:48 am

I meant to say "sub-no-match". When you did that with MODL as in the OP, was it still changing MODL subrecords? Or was it just an issue when you tried to do no-sub-match on both MODL and ITEX at once?

User avatar
roxxii lenaghan
 
Posts: 3388
Joined: Wed Jul 05, 2006 11:53 am


Return to III - Morrowind