Jump to content

Potential new utility for merges and large load orders. Anyone interested?


primem0ver

Recommended Posts

  On 10/17/2021 at 10:37 PM, VulcanTourist said:
It's the intention that counts! I can wait... I'll spend the time butting my head against the broken Windows UWP system - did you know that Nvidia Control Panel is now a UWP app? - and the myriad of real-world stuff that doesn't work.

 

As an fyi, the paths are configured using an ini file in the main executable directory. So if you know your way around one of those it shouldn't be hard.

 

Here is an example of what it looks like:

[Locations]
ModOrganizer=D:\Gaming\ModOrganizer
MergePlugins=D:\Gaming\Skyrim SE Tools\Merge Plugins
zMerge=D:\Gaming\Skyrim SE Tools\zEdit_v0.6.6.1_-_Portable_x64
ModDownloadFolder=D:\Gaming\Mod Collection\skyrimse
MergePluginsProfiles=D:\Gaming\Skyrim SE Tools\Merge Plugins\profiles
BSAViewer=D:\Gaming\Skyrim SE Tools\BSA Extraxtor v0.10-974-0-10\bae.exe
HexEditor=C:\Program Files (x86)\Developing\IDE\UltraEdit Studio 16\UEStudio.exe
SSEEdit=D:\Gaming\Skyrim SE Tools\SSEEdit_4.0.3h
TESVEdit=D:\Gaming\Skyrim TOOLS\TES5Edit_3_1-25859-3-1

[UI]
PanelDelta=182
RememberSizeAndPosition=false
PreferredWidth=1364
PreferredHeight=810
PreferMaximized=false
UIForceBothCaseCategoryNames=true
RowFormat=Data
SplashProgressColor=FFFF0000
CensoredRun=false
TriggeredUpdateInterval=2000

[Options]
LooseFileCheck=false
CompressArchives=false
UseCompactedBackupFolder=false
AutosaveConversionLogs=true
UseStartupGroup=true
AutoSaveCurrentCategory=true
ConsolidationAlgorithm=AllSequential
ESLCountsReflectAnticipated=true

[Volatile]
CurrentModSet=-6
CurrentCategory=ALL
IsCustomizedSet=false
LastGame=Skyrim SE
LastSSEErrorLogCheck=637701238109977456
LastTESVErrorLogCheck=0
SaveLootReportInfo=true
SwitchFile=NONE
SwitchDirectory=NONE

[LootReport]
Path=D:\Developing\Projects\IMT\ModSetManager\ModSetManager\bin\Debug\Data\loot.json
ReadComplete=false
DateUpdated=637672779504798743
YPos=20515

 

Edited by primem0ver
Link to comment
Share on other sites

  • Replies 62
  • Created
  • Last Reply

Top Posters In This Topic

  On 10/17/2021 at 9:28 PM, 0Outcast said:

I personally only tinkered with Wrye Bash and zEdit. But such a tool would be Godsend.

The time though... To Programm it...Phew. Even a Tutorial Would take a while.

Hmmm... haven't really used those myself to fix errors. It doesn't replace tools (at least not yet... see below), it just makes them easier to use.

 

To fix errors, it gives you an interface (launched from ModOrganizer) that shows all mods with errors and color codes the errors to give you clues on how to fix them. The tool has buttons on the top that help you launch the tool you need act the click of a button (loading ONLY the mod to fix and it's masters). It takes care of all the details necessary to correctly launch the tool without using the interface (except for Creation Kit which unfortunately doesn't allow you to automatically load a mod).

 

It also allows you to track what you did to fix the mod (in a very general sense... the "Mark as..." buttons in the UI below). Here is what it looks like:

 

Image-001.png

 

As I have used SSEEdit to clean files, I have realized that it has some significant weaknesses that are annoying (such as no option to search for records containing text patterns) AND to help achieve the useful goal that gnarly1 proposed here, I am seriously reconsidering expanding this tool to replace much of the functionality of SSEEdit when it comes to fixing errors. Gnarly1's idea is very intriguing. Imagine being able to view record conflicts the same way you can view file conflicts in ModOrganizer (color coded on the scrollbar). I think that would be VERY useful in figuring out how to make simple fixes to resolve record conflicts which can lead to in-game problems. Since my utility already has to read through most records in a file, I decided to add the ability to track records... however this is something I will probably not prioritize so it may take a year or more to fulfill. Creating the record structure is a HUGE task unless I can convince the makers of xEdit/zEdit to share theirs and somehow import it to .NET. Most of the time already spent on this project was to give it the ability to read and change records without errors. Expanding significantly to track each type of record and sub-record will probably take another similar amount of time.

Edited by primem0ver
Link to comment
Share on other sites

  On 10/18/2021 at 2:38 PM, primem0ver said:

 

  On 10/17/2021 at 9:28 PM, 0Outcast said:

I personally only tinkered with Wrye Bash and zEdit. But such a tool would be Godsend.

The time though... To Programm it...Phew. Even a Tutorial Would take a while.

Hmmm... haven't really used those myself to fix errors. It doesn't replace tools (at least not yet... see below), it just makes them easier to use.

 

To fix errors, it gives you an interface (launched from ModOrganizer) that shows all mods with errors and color codes the errors to give you clues on how to fix them. The tool has buttons on the top that help you launch the tool you need act the click of a button (loading ONLY the mod to fix and it's masters). It takes care of all the details necessary to correctly launch the tool without using the interface (except for Creation Kit which unfortunately doesn't allow you to automatically load a mod).

 

It also allows you to track what you did to fix the mod (in a very general sense... the "Mark as..." buttons in the UI below). Here is what it looks like:

 

Image-001.png

 

As I have used SSEEdit to clean files, I have realized that it has some significant weaknesses that are annoying (such as no option to search for records containing text patterns) AND to help achieve the useful goal that gnarly1 proposed here, I am seriously reconsidering expanding this tool to replace much of the functionality of SSEEdit when it comes to fixing errors. Gnarly1's idea is very intriguing. Imagine being able to view record conflicts the same way you can view file conflicts in ModOrganizer (color coded on the scrollbar). I think that would be VERY useful in figuring out how to make simple fixes to resolve record conflicts which can lead to in-game problems. Since my utility already has to read through most records in a file, I decided to add the ability to track records... however this is something I will probably not prioritize so it may take a year or more to fulfill. Creating the record structure is a HUGE task unless I can convince the makers of xEdit/zEdit to share theirs and somehow import it to .NET. Most of the time already spent on this project was to give it the ability to read and change records without errors. Expanding significantly to track each type of record and sub-record will probably take another similar amount of time.

 

It will help mod development alot. There is many times you can lose or are unable to track your own progress (development and modification changelog) this can also help Big projects with modding teams and sharing of your activity with a senior member for example that supervises a certain team within a Project like Beyond Skyrim team for example. I know they would benefit alot from it because it just saves so much time if you can have a sorted structure of development changelogs and records. Easier planning and management.

Link to comment
Share on other sites

  • 4 weeks later...

Good news (with a potential caveat).

 

I believe the most difficult and time consuming parts of this project are finished. I spent the last two days troubleshooting "cluster" conversions which is basically the final major piece to this project. Cluster versions are a way of handling conversion of master esps (and their dependencies) to esls. If one converts the ids of a master mod in order to convert it into an esl, the ids in the other files in the "cluster" (dependencies) must be changed as well. I successfully converted my first "cluster" tonight without any errors (checked in xEdit). All data on conversions is saved so that any dependencies added to your load order later (such as patches) can use the original conversion data to update the form ids in the patches (and other added mods).

 

So... the next thing is getting this up and ready to put on Nexus. Because of the timing, I have a predicament that I thought I would put on here to get feedback about as I know some of you are eagerly awaiting this project. I have a very busy holiday season coming up; which means I WON'T be able to fix bugs quickly for sporadic periods of time. This will be particularly true during the week and a half from Christmas to New Years. So my question is this. Do you want me to try and get this up before the Holiday season (approximately at the end of November) even if it means I may not be able to address issues right away? Or wait until January?

Link to comment
Share on other sites

  • 1 month later...
  On 11/12/2021 at 4:57 AM, primem0ver said:
So my question is this. Do you want me to try and get this up before the Holiday season (approximately at the end of November) even if it means I may not be able to address issues right away? Or wait until January?

I somehow missed the e-mail notification for this comment back in November when my reply might have made the most difference, but...

 

... I think I'd be most happy if you delayed release until when you have time to deal with any initial showstoppers that might crop up. I haven't programmed in decades, so as strictly a user at this point I'd be reliant on you/others to fix those issues, and after so much anticipation it would be hard to set it aside then to wait for those issues to be addressed weeks later. It's easier to wait until you'll have time to spare and we can help you discover any issue and get rapid feedback.

 

Enjoy your holiday! And have ya heard about Bethesda's new Starfield RPG? A whole new RPG to mod!

Edited by VulcanTourist
Link to comment
Share on other sites

  • 1 month later...

Update:

 

Ugh.... problems problems problems. In building my mod set with this utility, I discovered Skyrim's max reference bug/limitation. This probably led to some of the crashes I would experience when playing in previous games. So I am currently adding the ability to deal with this issue into my utility, for those who don't mind dealing with the potential side effects. I am guessing it will be at least March before this is ready.

Edited by primem0ver
Link to comment
Share on other sites

  • 2 months later...
  On 1/21/2022 at 1:46 PM, primem0ver said:

Update:

 

Ugh.... problems problems problems. In building my mod set with this utility, I discovered Skyrim's max reference bug/limitation. This probably led to some of the crashes I would experience when playing in previous games. So I am currently adding the ability to deal with this issue into my utility, for those who don't mind dealing with the potential side effects. I am guessing it will be at least March before this is ready.

Any good news to report?

Link to comment
Share on other sites

  • 2 weeks later...
  On 1/21/2022 at 1:46 PM, primem0ver said:

Update:

 

Ugh.... problems problems problems. In building my mod set with this utility, I discovered Skyrim's max reference bug/limitation. This probably led to some of the crashes I would experience when playing in previous games. So I am currently adding the ability to deal with this issue into my utility, for those who don't mind dealing with the potential side effects. I am guessing it will be at least March before this is ready.

  On 4/3/2022 at 7:35 PM, VulcanTourist said:

Any good news to report?

 

All this silence is making me wonder if I'm ever going to enjoy a no-compromise solution to my too-many-mods problem and enjoy Skyrim again without the pain and agony of re-evaluating my modding from scratch.... *sob*

Edited by VulcanTourist
Link to comment
Share on other sites

  • 2 months later...

I have built my first load order with my utility. My load order consists of around 1700 plugins (around 400 of which are merged). I may have a few more issues to resolve as I have to run a few more tests. Then I have to get the bugs out of the software... but a REALLY rough draft is nearly complete. I have had to add some MAJOR time-saving features out of necessity, the best of which I finished today (after 16 hours of work). I have spoken some with the developer of zEdit/zMerge. He had this to say about my software... when I showed him the picture below a few days ago (showing a different feature I added about half a week ago). I had to ask him a few questions about the files zMerge saves in order to get it to work.

 

  Quote

 

damn that's amazing ! i think you will get a lot of people praising you if you release this. I'm saying this not because I think it should be a motivating factor - but just to give you a heads up this solves for a real pain point

 

Crash-Analyzer.jpg

 

Here is a sneak preview of the features (a draft of the Nexusmods page that will go with it). Please be patient though. I have 2-3 major hurdles to get through before I can post it. I have to fix the master converter, the cluster converter, and keep from having to restart it all the time. A single debug session to figure out the simplest problem often takes more than 10 minutes (because loading while debugging takes nearly 10 minutes if I use the full program). That is the main reason why this is taking so long. Open the spoiler to view the features. (Remember this is a really rough draft... things could change a bit).

 

 

  Reveal hidden contents

 

Edited by primem0ver
Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.

×
×
  • Create New...