Cougar_DK -> [FAQ] JSGME MOD Enabler (4/13/2008 9:11:56 AM)
1) MOD enabler
First of, what is a MOD enabler? A MOD enabler is a tool for enabling and disabling mods, i.e. the tool handles the copying of files to the correct folders and then remove them again at the end users command.
A perfect tool for this is "The Generic Mod Enabler" by JoneSoft and you can download it absolutely free of charge from the official homepage. I will be using this tool for the rest of the guide and have been using it for handling MODS for games like rFactor, Silent Hunter 3 & 4, Panzer Campaigns, EEAH/EECH and Combat Mission.
Here are my personal notes and should be taken as that:
- Before starting using a tool like JGSME then make sure you have a clean install of the game, since you want to return to that state sometime in the future
- If a patch is released for the game, REMEMBER to de-activate ALL MODS's BEFORE applying the patch. I keep forgetting this and therefore there can be some mismatch between files when deactivating a MOD. But please try to remember this.... The solution to this is re-install....
- JGSME doesn't use some sort of compression like the LOMAN MOD manager, and therefore will an activated MOD files be in the MOD folder, in the game folder and the original files (if overwriting something) in the backup folder. This can be an issue for very big MOD's and low disk space. But again, nothing that have giving me troubles.
- If your dream MOD doesn't comply to the simple structure of a JSGME MOD, then its very easy to do it yourself (read on). I do this all the time since I don't want to mix it up and I want full control
2) Installing and initialising of JSGME
- Download the latest version of JSGME from the official homepage from the link above
- Run the "jsgme_setup.exe" and install JSGME to your Kharkov folder:
- Start JSGME from the desktop icon (if you selected that option when installing) or browse to your Kharkov folder and double click on the JSGME.EXE. After JSGME starts, click the "Tasks->Generate snapshot of game files.". This make a .txt file with some info about your clean version of Kharkov and can help you when you want to clean up your Kharkov installation.
- Close down JSGME
- If you open your Kharkov folder the JSGME installer has made the following:
- And in the MODS folder (NB! Only the JSGME.ini will be visible if you aren't showing hidden files):
- We are now ready to use JSGME.
3) Adding MOD's and enable/disable them
- First we need one or more MOD's that made for JSGME (way more simple than it sounds, more of that later). If you don't have any you can try this one: Stridor_Sound_MODS_JSGME.zip which I will use as an example.
- Download the MOD and open the zip/rar file with your chosen unpacker, I normally use WinRAR.
- The above file looks like this when opened:
- Extract the files to your recently added MODS folder in your Kharkov directory (It is VERY IMPORTANT that your unpacker create sub folders!!!!):
- Open your MODS folder in the Kharkov directory and make sure your MOD's is installed correctly:
- Start JSGME and you can see your newly installed MOD's, ready for activating:
- Select the MOD you want to activate by clicking its name and then click the ">" button to activate the MOD:
- If you want to disable a MOD, you select it from the right side "Activated Mods:" and click the "<" button to deactivate the MOD again
- You are now ready for playing Kharkov. Enjoy yourself.
4) How to create MOD's for JSGME
Creating a MOD is way beyond this guide, but how to make it JSGME ready will be covered next.
The most important thing when creating a MOD for JSGME is the folder structure. The JSGME MOD has to have the EXACTLY same folder structure from the root of the Kharkov folder to where the changed files are located. This is best explained with an example:
The sounds for Kharkov are located in the following folder:
And I want to make a MOD that changes the "click" sound played when I select something in-game. The sound played is the "MM click.wav". I change the sound file in some kind of editor and have the changed file on my desktop. Let's make it a JSGME MOD. This is easiest done by going to the MODS folder in the root of Kharkov and making a new folder. The name given here will be the name users of your mod will see when using JSGME, so please give the folder a saying name. And if your MOD is one that will have many changes over time then please consider adding a version number to the folder name.
I will call mine "More subtle click sound (Cougar_DK)":
Now comes the most important part of this.... Since the newly created folder is at the same level as the root folder of your Kharkov game you will have to manually create the full path down to where your MOD's file(s) will be located. Since my MOD is a sound MOD I will have to create the following folders:
Now I can copy my MOD file into the newly created folder structure:
The MOD are now ready for testing, so I start JSGME up:
And activate my MOD:
I know the above is a simple example, but a MOD that changes files in different folders and adding new content is as simple to do. And the best part is that when testing your own MOD you can activate/deactivate it to make sure it works as it should before releasing it. Its pretty easy to spot a misplaced folder when done this way.
It is possible to add a tooltip for your MOD by placing a simple text file with the .jsgme extension at the root of your MOD. The text can max be 255 characters long and will be shown when the mouse cursor hovers over your MOD in the JSGME main window. (I will make an example of this later)
5) Deploying a MOD
The easiest way is to pack the MOD with zip or rar before uploading it or mailing it to friends. So go to the MODS folder of Kharkov and since I use WinRar its integrated in my right click menu:
I select zip and makes sure that WinRar doesn't touch the paths to the file(s):
And the packed MOD is now ready to share:
6 Conflicting MOD's
Sometimes a MOD will change file(s) already changed by another MOD. Since this normally can cause trouble this is a more advanced topic but nothing to be afraid of since JSGME can help you.
Lets take an example. This is my downloaded MOD's from my MODS folder:
Matrix released the beta 1.1b patch as a ZIP file and therefore is pretty easy to use as a MOD since you make the folder in the MODS folder and unpack it there.
I enable the MOD:
Next I try to enable the "Silo Fix - L3B map", an unofficial workaround by Mraah:
And the following window appears, telling me that there is a conflict between these two MOD's:
A normal user should stop here and contact the MOD creators and hope they somehow can merge their MOD's. If you can't wait and want to see what happens when activating the MOD you can do this, perfectly safe.
First lets see what JSGME does when enabling a MOD. This picture shows the file "map.bmp" in the folder "Media\KHARKOV_L3B" has been changed by the MOD called "PCKv101bBetaPatchFiles":
So now I try to enable the "Silo Fix - L3B map" and answer Yes to activating it:
Now see what happened behind the scene:
JSGME now know that there are two MOD's that have modified the "map.bmp" file and it even know there is a critical relation between them. So if I try to remove the "PCKv101bBetaPatchFiles" MOD the following happens:
And I get the following error message:
So JSGME helps you track the MOD's and you can perfectly safe, play around with the MOD's.
7 "Housekeeping" the MOD's
This will be covered at a later time.