Ladies and Gents:

These forums are now closed and registration disabled.

Please join us at our new forum on Proboards. Our hope is that these new forums are more stable, provide more and better features, and allow continuation of the project forums in a safer, more secure, long term environment.


--The ME3Explorer Team

Tutorial: Making an Installer for your Mod

Made by modders for modders. Step-by-step instructions on how to achieve specific modding goals with ME3Explorer. We *strongly* encourage you to post new tutorials on the wiki.

Tutorial: Making an Installer for your Mod

Postby giftfish » 01 Apr 2014, 19:46

NSIS Installer Guide

First, let me say that we are absolutely not experts on this. Chances are that will be obvious from an examination from the ThaneMOD installer script. We had zero scripting experience beforehand, so there was a lot of research, troubleshooting, and trial and error involved. The installer was written by Skipjack and myself with the aid of wavion's MEHEM v0.3 NSIS script.

Second, I have no idea how many people out there are interested in this, therefore, it won't be a full, step-by-step tutorial, but more of a guide, with some comments, and of course the full script from one of our installers (we made 6). Generally speaking, it's the larger content mods that are going to lean towards creating a Windows installer. Small mods involving only a few files can be handled manually or via .mod files created by ME3Exp.

At any rate, we thought our work (angst) should save people some trouble. So, here we go :)

We chose to use the Nullsoft Install System (NSIS) for a few reasons: it's feature-rich, has a ton of documentation (albeit spread out and challenging to understand for a someone with zero programming knowledge), and was used by wavion for MEHEM...who was kind enough to share his v0.3 script with us, lol. Inno Setup is another option, though it's not as configurable as NSIS from what I can see.

This is the core program, but isn't used on its own. You'll need to use a separate editor.

2. HM NIS Edit

You can use any text editor (like Notepad ++) for NSIS scripting, but this one also includes a GUI builder, so for those using InstallOptions and MUI it's a good choice. Eclipse and Venis are also options, but are more advanced. HM NIS Edit also has a very handy "Wizard" feature that walks you through the creation of a basic installer. This is a godsend for folks like us who had no experience, and you can basically take the created script and then build off of it.

3. NSIS Plug Ins
There are tons of separate plugins and we only used a few. Take care with the version of NSIS the plugin is made for, as some are very outdated. NSIS is actively maintained, but the GUI editors and plugins often aren't (we're talking last updated in 2005).

  • Aero -- Allows for the GUI windows to have the Windows "Aero" effect
  • InstallOptions 2 -- Bundled with NSIS and allows for configuration and creation of custom pages. An alternative to InstallOptions is to use nsDialogs (bundled with NSIS 2.29 and later). FYI, the original InstallOptions is deprecated, so be careful with information you find in old forum posts, scripts, etc.
  • Modern UI -- Bundled with NSIS and allows for the use of a more comprehensive GUI (the "standard" Windows GUI we are familiar with). Be aware there is a MUI1 and MUI2. MHI1 uses InstallOptions, MUI2 uses nsDialogs. The scripting for each is quite different. We used what seemed to be easier, when it came to hunting down examples, documentation, etc. See here for more info.

4. Documentation
You will need to get very familiar with all this. Don't even think about asking a question on the NSIS forums without reading it first, or you will be either ignored or snarked at. It's a good idea to be profusely humble and gracious when posting on the forum...at least if you want help.

ThaneMOD v1.0E NSIS Script
Viewable on pastebin, since I can't embed it on these forums. I've included various comments throughout the script to help explain certain details. I may add more as I think of them. Basically, between the script, the screenshots below, and downloading one of the ThaneMOD Install Packages, you should be able to figure out what everything is for and how it works.

Important note: The script will not work if you simply copy and paste, as it's functionality depends on having other files present in specific locations. You will need to modify it for your own use.

*note, an image of the MUI_UNPAGE_INSTFILES is missing here (it pops almost too quickly enough to screencap)

Other Useful Links
There are a lot of things we wanted the installer to do that we couldn't/didn't have time to figure out, and some things that are useful in the case of ME3, but that we decided not to use. Below are a few other links that may be useful, and of course, do your own web searching. There is a ton of info out there, but it can be hard to find what you are looking for (that and the scripting can change depending on NSIS version, MUI1/2, InstallOptions1/2, nsDialogs, etc).

That about wraps it up. Feel free to ask questions. I'll answer them to the best of my ability :]


ThaneMOD Team Tutorials:
Last edited by Anonymous on 02 Apr 2014, 18:25, edited 1 time in total.

User avatar
Toolset Developer
Posts: 1247
Joined: 08 Jan 2016, 02:35
Has thanked: 129 time
Have thanks: 75 time

Re: Tutorial: Making an Installer for your Mod

Postby JohnP » 02 Apr 2014, 01:54

All hail the queen of the tutorials section. :-)
Posts: 159
Joined: 15 Jan 2013, 18:39
Has thanked: 55 time
Have thanks: 132 time

Re: Tutorial: Making an Installer for your Mod

Postby giftfish » 02 Apr 2014, 02:31

JohnP wrote:All hail the queen of the tutorials section. :-)

Rofl. Yeah, well...let's see if people make use any of them. Hopefully, they do :)

Re: Tutorial: Making an Installer for your Mod

Postby Ottemis » 12 Apr 2017, 23:04

On wiki here: http://me3explorer.wikia.com/wiki/Tutor ... r_your_Mod
Article now pending reformat.
User avatar
Posts: 824
Joined: 11 Mar 2013, 12:14
Has thanked: 225 time
Have thanks: 247 time

Return to Modders' Tutorials

Who is online

Users browsing this forum: No registered users and 1 guest