Media Services' Legacy PC Games Collection
Information for Installation and Maintenance
by Luke Menzies (email@example.com)
About the Collection
The collection of PC Games contains about 85 or so games. Most of these have been published on CD's and DVD's, but a few are on floppy disks. Of these, about half have been made into ISO disk images and uploaded to the "PCGames" folder of the Born-Digital Preservation Lab's (BDPL) Box.iu.edu account.
In addition to the regular BDPL Media Log, this collection has a more PC Games-specific media log, located on the BDPL Box account, in the folder "01Media Spreadsheet". This second spreadsheet indicates which games have been imaged, which have been installed, and brief comments about any issues. For more specific information about the installation of the Legacy PC Games collection, see the folder "04NotesCopies".
How to Install the Collection, Using the PCGames.zip File
This single, compressed folder has been stored on the BDPL's Karst account (Box has a 15GB file size limit). Instructions:
(1) Download the file, using WinSCP (or another service). Unzip and extract the "PCGames" folder to the hard drive (C:\PCGames\).
For more information about file transfers and Windows, see the following Knowledge Base page: https://kb.iu.edu/d/akjs
(2) Download the "Legacy Games" shortcuts folder, unzip it, and extract it to the Desktop. Place this folder in:
This will allow all users to access it.
(3) Re-Installation: A few of the games (ex. Age of Empires, Hexen2, Fable, Hellgate London) need to be "re-installed". To do this, mount the disk image located in C:\PCGames\02Images\ and run the install program (usually Setup.exe, Autorun.exe, or anything with a .MSI extension).
*When installing, be sure to check "Custom Install" and indicate the correct install directory. Since these games have already been installed, as long as you indicate the proper install location the installation will be brief. Additionally, Age of Empires asks you to install "DirectPlay" in order for the game to run properly.
(4) Test the games, the DOS Games menu, and IUGameSaver.
(5) If you need to install games from "scratch" using the .ISO, create or download the .ISO from the BDPL's Box account (from the "PCGames" folder), and refer to Luke Menzies's "03InstallNotes.odt" file (on Box, in the PCGames/04NotesCopies folder). This file contains notes for installing individual games. It also contains some useful information about installing patches, dealing with DRM, etc.
Installing and Adding a New Game
To install a new game, proceed as follows:
(1) Copy the .ISO onto the computer.
If you do not have an .ISO, you will need to image the disk. The program ddrescue is highly recommended for this. On the system, store the .ISO in the folder:
(2) Mount the .ISO Image and Run the Installer Program.
For games that run on MSDOS you will do this via DosBox and the command "imgmount". For Windows 10 you can simply right-click on the .ISO disk image file and choose "Mount". The installation program is usually called "Install.exe", "Install.bat", "Setup.exe", etc., or it has the extension ".MSI", or it can be run by double-clicking "Autorun.exe".
IMPORTANT: every installation program will ask where you would like to store the game's program folder. Do not store it in "Program Files" or "Program Files (x86)". Instead store it in:
The installer will create the <game-name> folder for you. When naming this folder, do not use spaces or non-alphabetical characters. This will make it easier to use. Although batch files and the IUGameSaver program can handle spaces in file and folder names, it is best practice and easiest to avoid using them.
(3) Create any necessary scripts to play the game.
Very often this means creating a batch file that will mount the .ISO disk image at drive letter "D:" or "E:". You do not need to re-invent the wheel, though; simply cut-and-paste or use "Save As..." to copy scripts that are already part of the collection.
For DOS games, simply edit the batch file "PLAY.BAT", which is located in:
You will need to add a menu item and create a new "function" to launch the game. Use what is already there as a model.
For games that run on Windows, you may create a batch file based on the AGEOFE.BAT file, located in:
This file mounts the disk image at drive letter "D:" and launches the game. Since Windows 10 does not allow you to specify the drive letter (like DosBox does), this batch file mounts the image. It checks to see if the image is mounted at drive letter "D:", using the "IF EXIST" command. If a particular file exists in the D:\ directory, it continues and launches the game. If not, it unmounts it and tries again. (Obviously, when you choose which file the batch file will look for, choose a file that will be unique to that disk image, not one that most game ISO's will contain, like "Setup.exe").
(5) Create or Edit the Desktop Shortcut.
For games that run on MSDOS this is not necessary, since they are launched from the menu that comes up when Users double-click the "DOS GAMES" shortcut. For games that run on Windows, if there is no Desktop shortcut, right-click the game's .EXE file and create one.
To edit the shortcut for a game, right-click and choose "Properties". If your game is launched from a batch file, simply create the shortcut to the batch file. When you right-click and open the "Properties" of the shortcut, choose "Change Icon". Browse to the game's .EXE file within the "Change Icon" option, and choose the game's icon.
Finally, place the shortcut in the Legacy PC Games folder, in:
(6) Edit the GamePaths CSV File to Include the New Game.
In order for IUGameSaver to transfer game files for the new game, you must edit the file:
In order to properly edit the GamePaths CSV, see a detailed description of this file, under "About the 'GamePaths' CSV File", below. You will need to figure out where the newly installed game stores its saved games and any User customizations or preferences files. To do this, look in the game's main program folder. If you still cannot find where these files are stored, try searching forums online.
This program was created by Luke Menzies to allow users of the PC Games collection to save and load their saved games files. If a User chooses "Export", IUGameSaver will transfer the saved games files to a folder on the User's Desktop, entitled "SavedGames". Since it puts all of these files in one location, Users can then compress this folder into a single Zip folder and upload it to Box, store it on removable media (i.e. USB flash drive) or send it to themselves as an email attachment. If a User chooses "Import", IUGameSaver will transfer the files from the "SavedGames" folder on the User's Desktop to the appropriate locations on the computer.
How it Works
The program relies on a CSV file, entitled "GamePaths.csv" in order to determine which files to transfer and where to transfer them. It also uses a text file that contains instructions for the User, entitled "Instructions.txt". Because of this, the IUGameSaver code does not need to be updated every time a game is installed or removed. You may simply edit the "GamePaths" file or the "Instructions" file, as needed.
IUGameSaver erases any files that are already in the destination, so that Users cannot access other Users' saved games, customizations, or preferences. If saved games are stored on the system (usually within the game's program folder), IUGameSaver replaces them with one or two backup games, to ensure that the games never run with absent or defective dependencies in those locations.
About the "GamePaths" CSV file
This spreadsheet can be edited with any spreadsheet program (choose the options: UTF-8 encoding, commas as separators), but it must be saved as a CSV (i.e. plain text with no formatting marks, etc.). In general, try to avoid using spaces or non-letter characters in this file. IUGameSaver should be able to handle these (since it treats each cell as though it is within quotation marks), but best practice is to avoid spaces and non-alphabetical characters in paths and filenames and to avoid beginning any filename with a number.
The file consists of the following 6 columns:
|Game Title||"sys" or "home"||Path to Saved Games||Path to "SavedGames\<game>" Folder||"folder" or Extension||Path to "06BackupGames\<game>" Folder|
Here is an explanation of the values for each column:
|A||The name of the game. Spaces and non-alphabetical characters should be O.K., but DO NOT use commas.|
Either "sys" or "home". These must be the exact word (3-letters or 4-letters), with no variation. This indicates whether saved games files are located on the "system" (i.e. within a sub-folder of the game's program folder) or within the User's Home directory (i.e. the path associated with the Windows variable %HOMEPATH%, usually C:\Users\<username>\).
For example, the game "Hellgate London" and "Fable" create saved games and preferences in the User's Home directory, within a sub-folder of Documents, entitled "My Games", with the path:
The path to the location of the saved games files on the computer (usually in a sub-folder of the game's main folder).
If the games files are on the system (i.e. column B has "sys"), this is an absolute path, and therefore must begin with a slash "\".
If the game files are NOT on the system (i.e. column B has "home") this path is NOT an absolute path, but a relative one, and therefore CANNOT begin with a slash "\".
e.g. Documents\My Games\Hellgate
NONE of the paths in this CSV should END with a slash.
The path to the "SavedGames" folder on the User's Desktop. This is a relative path, so it should NOT begin with a slash. The reason for this is that IUGameSaver uses the command 'os.path.join()' to join the value of this column with the Windows environment variable %HOMEPATH%, in order to locate the proper file on the User's Desktop.
This path will be the same for each line:
When the "SavedGames" folder and the <game folder> do not exist on the User's Desktop, IUGameSaver creates them. However, IUGameSaver will not create any sub-folders within this <game folder>. Thus, this path in column D will always contain ONLY 3 folders: Desktop, SavedGames, and the <game folder>.
To illustrate this last point, consider the game "Worms: Armageddon". You cannot have IUGameSaver copy everything from the "Teams" folder on the system to a sub-folder, using the path:
This is the reason why this game occupies TWO separate lines in the GamePaths.csv file.
If your path in column D has more than 3 folders, running IUGameSaver will produce a Windows error (something like "file not found") and IUGameSaver will stop without completing any other file transfers.
The two possible values for this column are either the word "folder" (spelled exactly, singular, 6-letters, etc.) or a file extension with the preceding period (e.g. ".DSG"). This depends on whether IUGameSaver should transfer the contents of an entire folder or only those files with a particular extension.
For example, the game "Doom" uses saved games files that have the extension ".DSG" and are located within the game's main program folder. Although IUGameSaver could transfer the entire contents of this folder, that would mean erasing and copying the actual Doom executable file again and again. With the file extension indicated in column E, IUGameSaver will ONLY transfer files that have the proper extension.
IUGameSaver works with only two types of saved games files: either individual files that have a certain extension (such as .DSG, .SAV, etc.) or all files contained within a single folder. It does not handle multiple individual folders, unless you list these folders on separate lines. Again, using the "Worms: Armageddon" example, Users' recorded games are copied from one folder and Users' customized teams are located in another folder. It would not be prudent to copy the entire contents of the WormsArmageddon\User folder over and over.
Thus, changes as to which files are copied and where they are located within Desktop/SavedGames can be made by editing the paths recorded in the GamePaths.csv file, with no need to alter the code of IUGameSaver.exe.
The path to backup games, for those games that store files on the system (i.e. for which column B is "sys"). Since these are absolute paths, they must all begin with a slash, "\".
The values for this column follow the pattern:
You will need to create these backup files when you install a new game that stores files on the system. To do this, see below:
About the folder "06BackupGames"
(i.e. the value in column "F" of the GamePaths.csv file)
This folder is simply a safety measure for those games which store Users' saved games, customizations, or preferences on the system, rather than in Users' Home folders (i.e. "C:\Users\<username>\"). If you install a new game that stores saved games files on the system, you will need to add a folder to the "C:\PCGames\06BackupGames" folder and add the path to this folder in column "F" of the "GamePaths" CSV. To do this:
(1) Make a new folder in "06BackupGames", named for the game in question.
(2) Play the game, and save one or two "Test" games, using the options within the game itself.
(3) Copy these test games from the location where they are stored on the computer into the "06BackupGames" folder. If you cannot find where these files are stored on the system, you'll have to ask the Internet.
Copy ONLY those files that will be transfered by IUGameSaver.
For example, although the saved games files for the game Age of Empires are located in a sub-folder entitled "savegame", only the contents of the "savegame" folder are stored in both "SavedGames" on the Desktop and in "06BackupGames". Within these two folders there is NO subfolder entitled "savegame". If you accidentally place the saved games into such a sub-folder in either "SavedGames" or "06BackupGames", you will get an error and IUGameSaver will not transfer the files.
Age of Empires saved games are located at: C:\PCGames\AgeofEmpires\savegame\ ...
The line in GamePaths.csv for this game is (note, NO final slashes):
|Age of Empires||sys||\PCGames\AgeofEmpires\savegame||Desktop\SavedGames\AgeofEmpires||folder||\PCGames\06BackupGames\AgeofEmpires|
(4) Play the game, save your progress, and run IUGameSaver.exe, making sure that "Export" and "Import" are working properly.