Skyrim

File information

Last updated

Original upload

Created by

evilOlive

Uploaded by

RedStapler

Virus scan

Some manually verified files

About this mod

Need multiple installations of Skyrim? Need to restore your installation to vanilla easily? Safely install and test an iffy mod? Create different mod "profiles" for different characters? Maybe you are creating a mod and need to develop under multiple environments? Want to swap easily between different installation "profiles?" L

Permissions and credits
Mirrors
Changelogs
S K Y R I M . I N S T A L L A T I O N . S W A P P E R

Version: 0.9.4b
Date: 2/18/2013
Category: Utilities
Requirements: Skyrim, and some modded content
Author(s): evilOlive (aka RedStapler/kristjin)
Source: http://skyrim.nexusmods.com/mods/19034
Forum: http://forums.bethsoft.com/topic/1394246-relz-skyrim-installation-swapper/
Homepage: http://www.darkcreations.org/forums/topic/1721-relz-sis-skyrim-installation-swapper/

Description
===========
Create and swap up to ten unique installations of Skyrim via GUI or hotkey. Test mods safely, set up unique installations for different characters, eliminate disagreements among computer sharers about what mods should be installed!


Details
=======
PLEASE READ AND UNDERSTAND THIS SECTION ENTIRELY!

In any modified installation of Skyrim, for the purposes of SIS, there are two kinds of files: vanilla and everything else. SIS is provided with a list of files that are the "vanilla" files distributed via Steam when you buy the DLC's and/or Game. This includes EVERY file in the ..Skyrim folder, NOT just those in the DATA folder.

When you swap two profiles, SIS starts by moving all NON-vanilla files OUT of the active games folder. It does this by first looping through the entire Skyrim folder one file at a time (using * as the search pattern) and comparing the current file to the list of vanilla files. If the file name is found in the list of vanilla files, the file is LEFT IN PLACE. If it is NOT found, then the file is moved to the storage folder for that profile. Because of this filtered process, you save a minimum of 5.5GB per "profile" in your storage folder by not unnecessarily duplicating these vanilla files. It also means that all storage folders will have only modified files (and no vanilla files) in the stored game folder. Thusly, if you store a "vanilla" profile, the stored game folder will have almost nothing in it. (There will be at least one file, created by SIS.)

After doing this filtered move process on the Skyrim folder, it moves on to the Appdata and Save Games folders, moving *all* the files in those folders into storage.

Finally, if you have selected the options to do so, SIS will move the installation data from the NMM and Wrye Bash folders into storage.

After swapping these files (which are collectively known as a single "profile" within SIS) out to the storage folder, SIS switches to moving the stored files (for the profile being activated) into the active game folders for use by the game.

The first time you start SIS, you have only one "profile," and it's sitting there in the active game folders, being used by the game whenever you play Skyrim. The latest iterations of SIS have a script which checks to see if you only have this one, active profile, and if so, prompts you to make a second profile. This is to help eliminate confusion, though I'm not really sure it does so.

If you have downloaded and are using SIS because you want a vanilla install you can use to start from scratch, you must first CREATE a vanilla profile, which you can THEN activate by swapping to it. If this is your first time running SIS, you'll be prompted to make a second profile, and you can select to make a vanilla profile when prompted. If you have several profiles already and want a vanilla one, you can create it by going to the edit/copy a profile tab, and selecting 0 - Vanilla from the drop down menu, naming the new profile, and selecting "copy."

When you try to delete the active profile, you will be advised that you can't delete the active profile, but you can "sanitize" it, which is to say you can restore the active installation to a vanilla state. This is done by permanently deleting every single non-vanilla file in the active game folders. Arguably, this is a very dangerous and probably stupid thing to put out in the world for people to use to shoot themselves in the foot. Although you will be given several strongly worded warnings that if you do this, you will permanently lose every save game, mod file, and other non-vanilla file associated with the active profile, this has at least once proved insufficient to ward off any unintended consequences. (Like losing all the save games you actually didn't want to delete.) Future iterations of SIS are planned to function differently.

The Scraper tab has a button you can use which sort of does the opposite of swapping out a profile. It makes a copy of your vanilla files (it does not move them) and stores them in the storage folder in a folder called Vanilla.Archive. This is a convenience tool at this time. If you don't find it useful, don't overthink it. Just ignore it.

If you should happen to halt a swap in mid-process, this will create an anomaly between what is stored and what SIS thinks should be stored. SIS will now try to fix that for you when you start the utility if it discovers this anomaly. If the repair process doesn't work properly, however, I can only recommend that you don't halt the process before it reports that it has finished. :)

By default you may display the current hotkeys by pressing Ctrl-Shift-H. This and all other hotkeys can be customized on the Hotkeys tab.

Default Hotkeys:
Ctrl-Shift-F1 - Main (Delete/Swap Profile) Menu
Ctrl-Shift-F2 - Edit / Copy Menu
Ctrl-Shift-F3 - Scraper Menu
Ctrl-Shift-F4 - Hotkeys Menu
Ctrl-Shift-F5 - Launcher Tab (Customize the Skyrim and Creation Kit button)
Ctrl-Shift-F6 - Settings Menu
Ctrl-Shift-DEL - Reload Script
Ctrl-Shift-H - Show Hotkeys
Ctrl-Shift-# - Activate Stored Profile # (Where # is number 1-0 on your main keyboard, with 0 being profile 10)
Ctrl-Shift-B - Launch BOSS
Ctrl-Shift-N - Launch NMM
Ctrl-Shift-W - Launch Wrye Bash
Ctrl-Shift-S - Launch Skyrim (Launches whatever file is specified through the launcher tab, defaults to launching with the steamID)

Install
=======
Note that this utility checks that you already have Skyrim installed (with a registry check, so yarrr, ye may have a problem if ye don't use the Steam version).

1. SIS is a standalone utility which doesn't require modification of the registry, so just create a folder where you would like to store the .exe and another folder for storage of inactive profiles. If you want to use the same folder for both, that's ok too. Just don't put it in any Skyrim folders.
2. Unzip the .exe to the folder and run it. SIS will copy some files to it's own appdata folder and prompt you for several inputs the first time you run it. Leave nothing blank.
3. You will be prompted to make a second profile, as that's what makes it possible to swap profiles. You don't have to, but you'll be reminded to every time you run the utility until you have more than the one, active profile.

Uninstall
=========
Basically, you just stop using it. But to completely remove it from your machine:

1. Delete the files in ../users/USERNAME/appdata/local/sis (but with backslashes, disallowed by nexus!?)
2. Delete the storage folder
3. Delete the file called SISBookmarkFile.DAT from each of the active game folders (Including NMM/Wrye folders)
4. Delete the installation folder and SkyrimInstallationSwapper.exe

Upgrade
=======
Upgrading has been designed (all along) to require you to only unzip and run the new .exe file. This will continue to be the case.

Incompatibility
===============
SIS is compatible with NMM, Wrye Bash and Steam. Please note the following though:

If you use or create any mods which ALTER VANILLA FILES WITHOUT RENAMING THEM - you need to be sure to tick off the option in the settings tab that says to "Include ALL Files" in your profiles. At this time this is the only way to get SIS to capture those files and regard them as unique to the profile.

A more robust series of solutions is planned for a future iteration of SIS.

DON'T BACK UP YOUR DATA TO THE CLOUD IF YOU USE SIS. That's my advice. YMMV. In my experience, Steam gets confused by the different data on your HDD versus what's saved in the cloud (save games, etc) and it tries to fix everything. Usually poorly.

Steam Mod Subscriptions: Steam will automatically download and install any uninstalled mods you have subscribed to through steam when you launch the exe. So if you switch to a blank/vanilla profile and want to play with a vanilla profile, or test your mod with a vanilla profile, you will need to be sure you aren't actively subscribed to any mods through steam before running the steam game. If there's any way to prevent steam from automatically installing missing plugins to which you are subscribed, I don't know what it is. I *strongly* advise not handing over the installation of your mods to steam.

The problem here of course is not with SIS, nor the user who wishes to control what is on their PC. In this case, the problem lies with Steam for being unwilling to accommodate anything other than absolute authority over your install. [In other words, if you choose to use Steam to download mods and have problems maintaining control of your installation, this is no surprise to me.]

Known Issues or Bugs
====================
Lots of folks have asked the obvious - is it possible to add files to the list of files being treated as "vanilla?" For instance, many folks like to use a HD texture pack (the evilOlive included) which are copied in and out of the folders right now without that actually being necessary. This creates bloat in the storage folder and unnecessary labor (and quite a bit of it) for hardware.

Several possible alternatives are being mulled over for the big rewrite of SIS in C#. That will be a while from now though. Meanwhile, I'm afraid this will have to do. I don't like it any more than anyone else, mind you - but I have to keep my priorities lined up properly and I can't put this feature on a front burner at this time.

Additionally, as of 8/31/12 it's been noted that SIS doesn't have a way to support launching BOSS if you are using the archive version, rather than the installer version because in order to find the BOSS.exe file, SIS reads the registry key at "HKLMSOFTWAREWow6432NodeBOSS:Installed Path" for the path where it searches for BOSS.exe. If you use the standalone version of BOSS, this value doesn't exist, so the BOSS key is disabled. This will be resolved in the rewrite.

Note also that occasionally when performing a swap or copy operation, the utility may appear to have frozen. As far as I can tell, this is due to a very large file being moved or copied, in which case the GUI title bar may even show (Not Responding) until that file completes and then will go back to functional. The other time it appears frozen or unresponsive I've noticed is when swapping, occasionally (not always) it will say "preparing to move" and then that will go away and there might be an unusually long pause before it starts the next part of the process. This should be simply waited out. Don't panic. It will resume. If you wait ten minutes or something, go ahead and kill it and restart the app but otherwise, give it a moment if it seems stuck and 99% of the time it will unstick itself within a very short time.

History
=======
Version 0.9.4a
Bugfix for GUI typo showing incorrect version number
Added Hearthfire DLC to vanillainstallfiles.dat file

Version 0.9.4
Bugfix for new installations where mover code was not being installed

Version 0.9.3
Hotkeys are now editable with the utility on the Hotkeys tab
Wrye Bash button REALLY works now (python or standalone)
Customize which file launches with the skyrim button/hotkey, switch between launching the creation kit (default) or reloading the utility with button above skyrim button
Added hotkeys for launching BOSS, NMM, WryeBash, and Skyrim
Embedded Dawnguard version of VanillaInstallFiles.Dat within .exe
Other administrivia in the .ini

Version 0.9.2
Tried and failed to fix wrye launcher button in all cases
Fixed a bug that could possibly be responsible for copying errors

Version 0.9.1
Added Nexus Mod Manager data inclusion - just like the Wrye Bash feature from 0.8
Changed profile labels from being stored in the .ini file to being stored in a .dat file within the profile itself
Added .ini version checking
Added more warnings to potentially harmful operations
Removed hotkey that was causing errors for some users of non-US keyboards
Automated buttons throughout the GUI - buttons are not eligible for pressing until necessary options exist
Added feature to launch Wrye Bash, Nexus Mod Manager, BOSS or Skyrim from the utility
Added feature to optionally move existing profiles when changing the storage location
Updated Hotkeys - see technical changes below for details
Added automatic selection of the location of the Skyrim folder during initial setups
Created an option to copy/restore vanilla files from an archive copy
Added a check for whether or not the vanillainstallfiles.dat file exists, and if not, creates one based upon skyrim v1.6

Version 0.8.8
Fixed a bug that would cause the utility to hang during a fresh installation.

Version 0.8.7
Massive GUI Overhaul
Changed location of .ini and .ico file storage to ..users<username>appdatalocalSIS
Added full Wrye Bash support
Lots of automation features including a scraper to scrape an archive of the vanilla game files from your current install
Added support for including ALL files (including vanilla files) in profiles (Profiles as an island mode)

Version RC1.0
Laughably bad. But a fine first thrust into programming.

Contact
=======
You can find me on the Dark Creations forums as 'evilOlive'
You can find me on TESNexus as 'RedStapler'
You can find me on the Bethsoft forums as 'kristjin'

Credits
=======
Thanks to Dark Creations for being an awesome incubator space and welcoming community of good people
Thanks to Ysne58 for invaluable testing and mothering
Thanks to Thanks to Joey (tidbit) for being a friend who would put up with my crap and an AHK guru willing to help every time
Thanks to BrownyCub for graphics work
Thanks to berban, BigVent, and everyone in the AHK IRC channel that ever lent a hand (too many to list, but all of you are awesome!)
Thanks to everyone that has offered honest feedback and criticism, especially those who have been kind (virtually everyone!)
Thanks to the community that created and supports AutoHotKey
Thanks to Bethesda for creating Skyrim
Thanks to skyrim.nexusmods.com for the a one-stop-shop resource for authors and players
Thanks to LHammonds for the Readme Generator this file was based on
Thanks to My momma, my baby daddy, and the Goddess Shiva for never letting me get comfortable

Tools Used
==========
7-Zip - http://www.tesnexus.com/downloads/file.php?id=15579
Readme Generator - http://HammondsLegacy.com/obmm/tools_readme_generator1.asp
AutoHotKey_L - http://l.autohotkey.net/
SciTE4AHK v3.0.00RC - http://www.autohotkey.net/~fincs/SciTE4AutoHotkey_3/web/#Downloads

Licensing/Legal
===============
You must contact me and obtain my permission before re-packaging any part of this utility. It's a compiled .exe so I ask that you don't decompile it and use it for yourself without asking me first but I'm unlikely to refuse. :) If you try contacting me on Dark Creations and don't get a reply in a month, do as you wish.