Modding can be messy business. The aim of this page is to describe how Torchlight II modding works and to define some of the terms we tend to throw around.
GUTS: GUTS is our content editor for Torchlight II. It uses both the Pak file and the Media folder for various aspects of what it does. When modding, GUTS keeps your new or changed files in a separate Mod folder, but treats those separate files as if they were part of the base data. When you build a mod, GUTS puts the files in the Mod folder into a .Mod file along with data about your mod.
Pak File: This is the DATA.PAK file which is delivered with the Torchlight II game. It comprises all of the Torchlight II game assets. Before being put in the pak, any text-based data file (.dat, .layout, etc) has been converted to binary format. GUTS unpacks the lose assets from this Pak file into the Media folder the first time you launch it. You shouldn't need to unpack again unless we patch the game and change the pak file. At which point, GUTS will notify you that the pak has changed and give you the option to re-unpack the pak file.
Media Folder: This is where the editor unpacks the DATA.PAK file into the original, individual, human-readable files. Upon running GUTS the first time, you will be prompted to unpack the DATA.PAK file so that GUTS has all the loose assets.
Mod Folder: This is where your new and changed files are kept when you're creating a mod. If you create a new item file, the new file is placed in the mod folder. If you edit an existing item file from the base media directory, a new copy of that original file is created and saved to the mod folder. Any changes you make do this new copy are made to the version in your mod folder. When building a mod, The contents of this folder are built into a .Mod file.
Mod File: A .Mod file is a pak file with some additional meta-data about the mod before the included pak data. This data includes name, version, author, website, etc. (all the data you can set on the mod in GUTS).
The Game: This is..well, the game executable. When modding, the game takes a Scheme file (the mod launcher passes in 'modlauncher.sch') as a command line argument. This defines which mods to use and the order in which to use them. When the game looks for a particular file asset, it goes through each of the mods in their priority order and uses the first file of the specified name that it finds. So if two mods contain the same file, the mod with the higher priority will win. The priority is defined by the Scheme file.
Scheme File: A .Sch file which lists a set of mod IDs to use when launching the game. The order of the IDs defines the priority for the mods. The higher the mod is in the list, the higher it's mod priority.
Mod Launcher: This is our launcher application which allows you to control which mods are loaded and their priority order. If you're using Steam, this application also keeps your subscribed mods up-to-date performs the mod scheme set-up when you attempt to join a modded multi-player game in lobby which requires a game restart. (If you want to use another utility to synch and apply mod set-ups, you can override the executable to use in the game's settings file by setting the "MODLAUNCHER" property.)