Most recent/community accepted utilities

Post » Tue Dec 29, 2009 8:44 am

There is the topic "mod detectives: finding hard to find mods" and plenty of people will give you there preferred list; but I have not seen an UP TO DATE list of utilities to clean or manage levelled lists or anything like that. So, I'm going to ask:

What is the current community choice for mod cleaning? TESAME?

What is the current community choice for merging levelled lists? Horatio's Lev List merger?

ST
ps I do use wrye mash (standalone) for mod management so that is already covered ;)
User avatar
Sabrina Schwarz
 
Posts: 3538
Joined: Fri Jul 14, 2006 10:02 am

Post » Tue Dec 29, 2009 5:04 pm

Merging leveled lists: use Wrye Mash

Merging Objects: TESTool or SmartMerger

Cleaning mods: TESTool or Escog for beginners. Enchanted Editor or TESAME for more experienced modders who can recognize all the references that need to be removed. (although TESTool is still very handy for anyone. It's fast and straightforward.) TES3CMD if you know how to use command line.

For Load Order maintenance: Mlox and Wrye Mash
User avatar
John Moore
 
Posts: 3294
Joined: Sun Jun 10, 2007 8:18 am

Post » Tue Dec 29, 2009 11:10 am

TESPCD's main function is conflict detection, but as a cleaning tool it's usability is underappreciated. At least I see no situation where I'd wish to choose TESAME over it.
User avatar
Jessie Butterfield
 
Posts: 3453
Joined: Wed Jun 21, 2006 5:59 pm

Post » Tue Dec 29, 2009 9:46 pm

TES3CMD if you know how to use command line.
...or dare a little Mash tweaking ;)
masher.py
Spoiler
#------------------------------------------------------------------------------class File_Sort(Link):    """Sort the selected files."""    def AppendToMenu(self,menu,window,data):        Link.AppendToMenu(self,menu,window,data)        menuItem = wx.MenuItem(menu,self.id,_('Sort'))        menu.AppendItem(menuItem)        if len(data) < 2: menuItem.Enable(False)    def Execute(self,event):        """Handle menu selection."""        message = _("This command will sort the selected files alphabetically, assigning them dates one minute after each other. It cannot be undone.\n\nNote that some mods need to be in a specific order to work correctly, and this sort operation may break that order.")        if ContinueQuery(self.window,message,'mash.sortMods.continue',_('Sort Mods')) != wx.ID_OK:            return        #--Scan for earliest date        fileInfos = self.window.data        newTime = min(fileInfos[fileName].mtime for fileName in self.data)        #--Do it        for fileName in sorted(self.data,key=lambda a: a[:-4].lower()):            fileInfos[fileName].setMTime(newTime)            newTime += 60        #--Refresh        fileInfos.refreshDoubleTime()        self.window.Refresh()#--begin changes by abot# tes3cmd.exe clean --replace [selected files]#------------------------------------------------------------------------------class File_tes3cmd(Link):    def AppendToMenu(self,menu,window,data):        Link.AppendToMenu(self,menu,window,data)        menuItem = wx.MenuItem(menu,self.id,_('tes3cmd.exe clean --replace [selected files]'))        menu.AppendItem(menuItem)        if len(data) < 1: menuItem.Enable(False)    def Execute(self,event):        message = _("This command will call Data Files\\tes3cmd.exe clean --replace passing selected files.")        if ContinueQuery(self.window,message,'masher.File_tes3cmd.continue',_('tes3cmd.exe clean --replace [selected files]')) != wx.ID_OK:            return        #--Scan        fileInfos = self.window.data        path = os.path.join(settings['mwDir'],'Data Files')        exe = os.path.join(path,'tes3cmd.exe')        args = ['tes3cmd.exe']        args.append('clean')        for fileName in self.data:            args.append('"' + fileName + '"')        args.append('--replace')        cwd = os.getcwd()        os.chdir(path)        os.spawnv(os.P_NOWAIT,exe,args)        os.chdir(cwd)        #--Refresh        fileInfos.refreshDoubleTime()        self.window.Refresh()#--end changes by abot#------------------------------------------------------------------------------class File_Snapshot(Link):    """Take a snapshot of the file."""    def AppendToMenu(self,menu,window,data):        Link.AppendToMenu(self,menu,window,data)        menuItem = wx.MenuItem(menu,self.id,_('Snapshot...'))        menu.AppendItem(menuItem)        if len(data) != 1: menuItem.Enable(False)#--         fileMenu.links.append(File_Snapshot())        fileMenu.links.append(SeparatorLink())        fileMenu.links.append(File_Delete())        fileMenu.links.append(File_Hide())        fileMenu.links.append(File_Redate())        fileMenu.links.append(File_Sort())#--begin changes by abot        fileMenu.links.append(File_tes3cmd())#--end changes by abot#-- 
[EDIT]Removed TES3cmd multipatch calling code to reduce "wall of code" effect
User avatar
Frank Firefly
 
Posts: 3429
Joined: Sun Aug 19, 2007 9:34 am

Post » Tue Dec 29, 2009 9:16 pm

[Ooops. Post deleted. Wrong thread]
User avatar
Breanna Van Dijk
 
Posts: 3384
Joined: Mon Mar 12, 2007 2:18 pm

Post » Tue Dec 29, 2009 7:04 am

TESPCD's main function is conflict detection, but as a cleaning tool it's usability is underappreciated.

I conclude that TESPCD is exactly what http://www.gamesas.com/index.php?/topic/1132492-relzbetawipz-tes4edit/page__view__findpost__p__16585606 is for Oblivion. :)
User avatar
Cassie Boyle
 
Posts: 3468
Joined: Sun Nov 05, 2006 9:33 am


Return to III - Morrowind