SKYRIM
AHC Mod Compiler by Elbe
Skyrim » Utilities
Added: 09/01/2012 - 01:30AM
Updated: 30/05/2012 - 01:30AM

7 Endorsements

0.86b Latest version

496 Unique D/Ls

656 Total D/Ls

9,078 Total Views

Uploaded by elbebeta

Description

Last updated at 1:30, 30 May 2012 Uploaded at 1:30, 9 Jan 2012

AHC Compiler 0.8.6b Godzuki

---------------------
An updated STEP XML is being worked on by a member of the STEP forums.
---------------------

AHC is a personal mod compilation packager designed to work with standard archive formats and any folder structure, and produces a BAIN friendly compilation archive. Will work with any of this family of games: Morrowind, Oblivion, Skyrim, Fallout 3, and Fallout New Vegas. As long as there is a Wrye Bash clone available.

Do you have a mod list that you think is the cat's pajamas?
Do you think that both friends and/or strangers would dig your setup?
Maybe you want to try a complicated mod setup but the instructions are staggering and you'd like an easier way to get just the files you need?

Obviously you can't upload your own compilation because of creator permissions and, in some cases, the sheer massiveness of the files involved! So what can you do?

My solution involves an xml file. Yes, a simple little extensible markup language file. Custom build your compilation as instructions in the xml file (sample xml included) and provide that to those friends and/or strangers! The application provides a list of all mods included in the compilation, including handy color coding for availability (Black for available, Red for missing, and Gold for obsolete versions), and links to where you can download the mod and even Nexus Mod Manager links, is applicable.

Now, as it implies above, this is still a beta, but it should still be fully working (it is for me). There are still some issues to work out but they are overall pretty minor in addition to other planned features that I feel are crucial to a full release.

Instructions: When you download and extract the files just run the executable (compiled with VB.net) and it will ask you for three folder paths followed by the location of an xml file.
"Mod Archive Directory" - the folder that you've downloaded and placed the mod archives the program will extract from.
"Working Directory" - the folder it extracts and copies data before archiving it as the final compiled package.
"Target Directory" - the folder the final compiled package will be located in.
All three will default to the application directory but feel free to change them at your leisure.

Those three locations, and any linked xml files, will be saved for future use in a config file in your AppData folder.

When you've loaded an xml file (all linked files will be in a drop down at the top of the window, changeable at any time) it will load all included mods in the box on the left. Selecting one will present you an option to change which version of the file the xml instructions are aware of (if applicable) and displays a variety of information about the mod and package. The URL and NMM links are both clickable and will launch a browser window, if a link is present. Selecting a different version in that drop down will tell the compiler that that is the version you wish to use - so try to choose a version you have downloaded. When finished browsing, or choosing versions you wish to use (it should default to the newest file), click the "Process" button in the menu to launch a new window to start the compilation. Only mods present will be processed, all others will be silently skipped.

Warning: Packaging can take a long time depending on the number of mods and their sizes. Final archive can also be quite large.
The processing stage can be cancelled at anytime by clicking the appropriate "X" button.

Once it's finished it will clean up all working folders and return control of the main window to you to choose another xml to process or just close out.

Install your new compiled mod using Wrye Bash's installer tab and enjoy!

Requirements:
Built on Windows and should work on any version that the games work on, as long as it has the following installed:
Microsoft .NET Framework 4 - http://www.microsoft.com/download/en/details.aspx?id=17851
If you can run it on a non-Microsoft OS please give me a heads up.
Enough diskspace to extract the archive, and make a copy of all the files the instructions call for, as well as the final archive - but I think you'll know that beforehand.

Beta limitations:
Requires BAIN install... unless you change the instructions to say "Data" instead of BAIN folders like "00 Core"

New Features:

XML Creation: A fully functional XML creation utility. It can't read from websites yet, but getting it functional precedes added features.

Groups: it splits up long instruction sets into sub groups for easier managing. It will also make separate archives for each group.

Revision based archiving: It puts revision dates in the archive filenames by default and if you rerun it on a future version modified through the utility, it will only make new archives with new revision dates. If group D of STEP hasn't changed since the last update but group B has, it will run B but skip D.

File categories: "Main" and "Update" files are selected by default. "Optional" files are selectable and marked in gold to notify the user of the option. "Depreciated" files are old versions you can install if desired, but not selected by default. "Custom install" files are, for future use, ones with NMM install scripts that might be preferred and will be able to be mass selected or deselected.

Multiple files per Mod: If a mod has multiple main files (like two required archives) you can include both in one mod list and it will include both by default.

It all appears to be working, but there is some internal logic that needs to be fixed and plenty of code cleaning/refactoring.


Planned features:
Non-BAIN support.
And, biggest of all, an interface for building your own compilation instructions; possibly supporting drag and dropping of weblinks and auto-parsing relevant information. Cool? Maybe.


Final Beta followup. It's not great practice but all my error checking routines are currently messageboxes with an error message. I'm not getting them in regular use but if you do can you please tell me what you're doing when it happens or what the message it? Beta testing is, of course, optional.

-Elbe


--------------------------------
Changelog:

.86b Godzuki patch
Fixed: Failing to properly cleanup folders.
Fixed: Searches not sorting properly.

.85b Godzuki (Main window rebuild)
Added: Tag support in the XML
Added: Quick searching on the main page for built in options and Tagged files
Added: Wizard support in the XML: untested. Not documented.
Fixed: Checkboxes on the editor window would not register unchecks
Changed: Main window has been streamlined into a single treeview control.

XML changes are demonstrated in the template.xml file included.
Editor window has not been updated to reflect new features.

.8b Barugon
Added: Check Nexus for updates (can not check hidden files or adult files)
Added: Create mod notes. Should display them when finishes, and an error log.
Added: Several filter and process options. Defaults with archive grouping and updating on.
Fixed: Various bugs causing it to stop processing an archive.

.75b Gyaos:
Added: XML Url option to link to remote XML files
Added: Ability to sort only those files with options, custom installers, or are out of date (by it's knowledge)
Added: Support for subdirectories instead of archives, useful for BSA's that you should extract before installing
Fixed: Display bugs
Changed: Heavy code cleaning and refactoring

.7b Rodan-
Added: XML Creation utility
Added: New XML format for more robust options