HELP FILE


NullMod is a mod compatibility system for Torchlight 2. It enables people to play together in multiplayer games despite having different mods.

Before proceeding any further, it is very important for you to understand that NullMod is only intended for use with mods that do not interact with other players in any way, such as mods that alter the user interface. Improper use of NullMod can cause a lot of very bad things to happen. Please read the entire help file, especially the "What Not To Do" section, before using NullMod.


Contents



What NullMod Does


NullMod works by tricking Torchlight 2 into thinking that any arbitrary mod is actually the basic NullMod mod. This enables players to join the same game with different mods because all Torchlight 2 sees is two copies of the basic NullMod mod, which are considered compatible.

For example:
The real situation might be this:
Player 1   Player 2
NullMod(Mod A) ←NO MATCH→ NullMod(Mod B)

But Torchlight 2 is going to see this:
Player 1   Player 2
NullMod ←MATCH→ NullMod

So it will accept the mods as compatible and let Player 1 and Player 2 join the same game.

Note that any other mods are not affected, and the ordinary mod compatibility rules apply to them.

For example:
If the real situation is this:
Player 1   Player 2
NullMod(Mod A)
Mod C
←NO MATCH→
←MATCH→
NullMod(Mod B)
Mod C

Then Torchlight 2 is going to see this:
Player 1   Player 2
NullMod
Mod C
←MATCH→
←MATCH→
NullMod
Mod C

So it will accept both mod pairs as compatible and let Player 1 and Player 2 join the same game.

However, if the real situation were instead:
Player 1   Player 2
NullMod(Mod A)
Mod C
←NO MATCH→
←NO MATCH→
NullMod(Mod B)
Mod D

Then Torchlight 2 is going to see this:
Player 1   Player 2
NullMod
Mod C
←MATCH→
←NO MATCH→
NullMod
Mod D

So it will not let Player 1 and Player 2 join the same game because Mod C and Mod D are not compatible.

Add to this the fact that you can combine an unlimited number of mods into a single mod, then use the combined mod with NullMod, and the possibilities are endless.

It's important to remember that NullMod only tricks Torchlight 2 into thinking that two mods are compatible, it doesn't actually do anything to make them compatible. It's up to you to make sure that the mods are actually safe to use with each other. See the "What Not To Do" section for details.


Basic Usage


In order to use NullMod, you need to have a NullMod mod in your mods directory (usually "<My Documents>\My Games\Runic Games\mods"), and then activate it in the mod launcher when you play Torchlight 2.

You should never have more than one NullMod mod in your mods directory. When you add a new NullMod mod to your mods directory, make sure to remove the others. (Either delete them or cut/paste them to a new location somewhere else.) Otherwise Torchlight 2 will get confused because it will think it's seeing multiple copies of the same mod.

There are three ways to get a NullMod mod:

  1. Use the basic NullMod mod,
  2. Download a custom NullMod mod someone else made, or
  3. Make your own custom NullMod mod using the NullMod Mod Modifier program.
The Basic NullMod Mod:
The basic NullMod mod is a run-of-the-mill Torchlight 2 mod. It doesn't do anything at all, except for show the NullMod logo on the load screens and sit there being compatible with more advanced NullMod mods. You would use it if you want to play with someone else who wants to use mods that you don't want to use, but there are not any mods you want to use but your friend does not. The basic NullMod mod can be found in the NullMod .7z archive. The filename is "NULLMOD.MOD." To use the basic NullMod mod, simply copy the file to your mods directory (usually "<My Documents>\My Games\Runic Games\mods"), remove any other NullMod mods from your mods directory, then activate it in the mod launcher.

Download Someone Else's Custom NullMod:
If someone else has already made a NullMod mod out of the mods you want to use, you can just download and use it. Download the file to your mods directory (usually "<My Documents>\My Games\Runic Games\mods"), remove any other NullMod mods from your mods directory, then activate the custom NullMod mod in the mod launcher.

Make Your Own Custom NullMod:
You can make any mod into a NullMod mod by using the NullMod Mod Modifier program. Full instructions are provided in the "Make Your Own NullMod" section below. Make sure to also read the "What Not To Do" section before you try this.

Some Basic Examples:

Example:
You and your brother want to play Torchlight 2 together. He really wants to use the "Diablo II fonts" mod. You really hate the "Diablo II fonts" mod. You can both get what you want if you use the basic NullMod mod, and he uses a custom NullMod mod constructed from the "Diablo II fonts" mod. Then you will be able to play together, he will have the Diablo II fonts, and you will have the normal fonts. Everyone wins!

Example:
You and your brother want to play Torchlight 2 together. He really wants to use the "Diablo II fonts" mod. You really hate the "Diablo II fonts" mod. You really want to use the "Diablo III Orbs" mod. Your brother hates everything about Diablo III, including its orbs, and really wants to use the "Diablo II Orbs" mod instead. You can both get what you want if you use a custom NullMod mod constructed from the "Diablo III Orbs" mod, and your brother uses a custom NullMod mod constructed from merged mod containing the "Diablo II fonts" mod and the "Diablo II Orbs" mod. Then you will be able to play together, he will have the Diablo II fonts and orbs, and you will have the normal fonts and Diablo III orbs. Everyone wins!

What Not To Do


NullMod is only intended for use with mods that do not interact with other players in any way, such as mods that alter the user interface. Using NullMod on mods that interact with other players can cause a lot of very bad things to happen. "Bad things" include: While this help file is going to present a basic rule of thumb, the bottom line is that you need to have a good enough understanding of how modding work to be able to distinguish between a mod that interacts with other players and one that doesn't. If you don't have that level of knowledge about how modding works, then you should stick to downloading NullMod mods made by other people. (Or, go ahead and make your own NullMod mods, but thoroughly test them with friends who don't mind if you crash their games and corrupt their save files. Stay out of public games until you're 100% sure your NullMod mod isn't going to cause trouble.)

A Useful Rule of Thumb:
For each and every thing about Torchlight 2 that a mod alters, ask yourself, "Is there any way at all that another player could see this?"

If the answer is "definitely not," then it is generally safe to make a NullMod mod out of that mod. The prime example is modifications to the UI: No one else can see your health orbs, so things like the "Better Orbs" mod are safe. Similarly, no one else can see your UI font, so things like the "Diablo II font" mod are safe. Want to add numbers to the HUD? That's safe. And so on.

On the other hand, if the answer is "yes," then you should not make a NullMod out of this mod. There are two main vectors for these mods to cause problems:
(1) Instances where a mod defines something entirely new that is going to be undefined for other players who don't have this mod. Examples include new character classes, new items, new monsters, new skills, new map chunks, etc. Basically, if it can be described with the word "new," and another player can see it, then it's not safe for NullMod.
(2) Instances where a mod redefines something in a way that leads to a "definition tug-of-war" with other players' game clients. For example, if a particular monster type has a run speed of 5 meters/sec, and your mod redefines it to 7 meters/sec, that is not safe for NullMod. At best, you would get inconsistent behavior based on whose client was hosting a particular game fragment. It's possible you'd get something worse.

Clarification About Unsafe Mods:
Just because a mod is not safe to make a NullMod out of, that does not mean you cannot use the mod at all. You can still use it at the same time as a NullMod mod. Just don't try to make a NullMod mod out of it.

For example:
The popular Synergies mod is definitely not safe for NullMod.
This is completely 100% OK:
Player 1   Player 2
NullMod(Better Orbs)
Synergies
  NullMod(Diablo II Fonts)
Synergies

This, however, is NOT OK:
Player 1   Player 2
NullMod(Better Orbs)   NullMod(Synergies)


Make Your Own NullMod


If you are already familiar with how to merge mods, then you can probably just read the overview. For everyone else, a more detailed tutorial is provided (with pictures).

Overview:

  1. Follow the standard procedure for merging mods to unpack and merge the basic NullMod mod plus all of the mods you want in your custom NullMod mod. (The basic NullMod mod is actually optional. All it adds is the logo on the loading screen.) You can name the mod whatever you like, but the following naming convention is recommended: "NullMod(ModA+ModB+ModC...)" or "NullMod(Custom)".
  2. Run the NullMod Mod Modifier program. Click "pick mod" to select your new combined mod. Click "modify mod" to convert it to a NullMod mod.
  3. Make sure to remove any other NullMod mods from your mod directory.
  4. Run Torchlight 2, and activate your NullMod mod in the mod launcher.

Step-by-Step Tutorial:
First, open GUTS and select the Pak/Mod Unpacker from the Utilites menu.

Next, select one of the mods that you want to add to your custom NullMod mod and unpack it. Make sure to check the box for "auto-fill target directory..." or the unpack will fail.

Repeat the unpacking process for all of the mods that you want to add to your custom NullMod mod, and for the basic NullMod mod. (If you don't want the NullMod logo on the loading screens, you can skip unpacking the basic NullMod mod.)

Next, close GUTS.

Now open Windows Explorer. Navigate to your mod projects directory. (Note that, even though it is also named "mods," this is not the same directory where you place packaged mods in order to play Torchlight 2. The directory where packaged mods go to be used is usually "<My Documents>\My Games\Runic Games\mods". The mod projects directory is usually "<Directory Where Torchlight 2 Is Installed>\mods". It contains unpacked mod projects. ) Make a new directory. Name it whatever you like.

Next, copy and merge the "media" directories from each of the mods you unpacked into a single "media" directory inside your new directory. If Windows prompts you about merging directories (and it should), choose to proceed. If Windows prompts you about replacing a particular file, that means the mods you've selected conflict. Choose to keep the file from whichever mod you want to override the others. (Note that you may accidentally break a mod if you don't include its file. This is an unavoidable issue with mod merging.)

Next, close Windows Explorer and restart GUTS.

Select the new directory you created in the project selection prompt.

Click the "mods" tab in the lower-right corner. Then click the "files" tab in the mid-upper-right. Then click "refresh."

Click "mod" in the upper-right corner, then "package and publish."

Fill in the mod name, file name, description, etc. for the combined mod. You can name the mod whatever you like, but the following naming convention is recommended: "NullMod(ModA+ModB+ModC...)" or "NullMod(Custom)".

Once the data is filled in, click "build." GUTS will create a new .mod file with the name you specified and automatically place it in your mods directory (usually "<My Documents>\My Games\Runic Games\mods").

Close GUTS.

Open NullMod Mod Modifier. Click "pick mod" to select your new combined mod. Click "modify mod" to convert it into a NullMod mod.

Make sure to remove any other NullMod mods from your mod directory.

Finally, run Torchlight 2, and activate your NullMod mod in the mod launcher.


Suggestions for Mod Makers


Your mod will be adopted by a greater audience if people can use it without locking themselves into playing only with other people who use it. NullMod can help with that, but not all users are sophisticated enough to make their own NullMod mods or to know which mods are safe to make into NullMod mods. So, the following mod-making practices are suggested:
  1. If your mod is safe to use with NullMod, put the phrase "NullMod Safe!" somewhere on the download page or in the description. (Please actually test your mod with NullMod before labeling it "NullMod Safe!")
  2. If your mod isn't safe to use with NullMod, put the phrase "Not NullMod Safe" somewhere on the download page or in the description. This will prevent idiots who didn't read this help file from trying it with NullMod and then blaming you when it doesn't work.
  3. If your mod is safe to use with NullMod, release a NullMod copy of your mod. (Because not everyone has access to Steam, I request that you release your mod on Runic Games Fansite in addition to (or instead of) Steam.)