Necessities of Morrowind compatibility with landmass mods: the easy way

NOM (Necessities of Morrowind) by Taddeus is the de facto standard eat, drink and sleep needs mod for Morrowind.

Most players will desire to access NOM eat/drink resources when exploring other landmass mods.

P.S. : while eagerly awaiting for next NOM update, in the meantime you may want to try my little patch

To add the needed NOM resources to a mod, you have to replace some standard Morrowind items with NOM- enabled items.

You can do it merging the needed resources from the CS (Construction Set) as detailed inside NOM readme:

NoM for Modders
In the “Modders Resource” directory you can find the "NoM Modders Res.esp" file. This esp contains all the foods, activators, potions and item added by NoM 3.0 to allow you to add them to your mod.

People using NoM and loading it after your mod, will be able to use them. People using only your mod will still have the eye-candy of NoM items and won’t be bothered by them.

Using NoM Resources
Adding NoM objects to your mod is really simple if you follow this step by step procedure:

- Merge the file "NoM Modders Res.esp" into your mod. You can do this 2 ways:
- Using TESCS: load both “NoM Modders Res.esp” and your own mod, and then choose "Combine Loaded Plugins" from the File menu.
- Using Enchanted Editor: Copy all resources from NoM Modders Res and paste them into your own mod.
- Add NoM items to cells in your mod.

When releasing your mod:
- Be sure to include all resources (icons, meshes, sounds, textures) from NoM distribution with your mod archive.
- In your readme be sure to warn users to load the NoM esp after your mod! If NoM is loaded before your mod, many NoM features won’t work anymore.

Done. From now on, people playing your mod AND NoM (loading NoM after your mod, mind you) will be able to use the new foods and objects you added to the world.

Fires
Many Morrowind pitfires are lights (one is a static), but in NoM I replaced them with activators. So, if you want to have full NoM functionality, in your mods you have to replace the following fires with the corresponding activator you find in the modders’ pack.

- Replace “furn_de_firepit_f” (light) with “NoM_furn_de_firepit_f”
- Replace “furn_de_firepit_f_01” (light) with “NoM_furn_de_firepit_f_01”
- Replace “furn_de_firepit_f_01_400” (light) with “NoM_furn_de_firepit_f_01_400”
- Replace “furn_de_firepit_f_128” (light) with “NoM_furn_de_firepit_f_128”
- Replace “furn_de_firepit_f_200” (light) with “NoM_furn_de_firepit_f_200”
- Replace “furn_de_firepit_f_323” (light) with “NoM_furn_de_firepit_f_323”
- Replace “furn_de_firepit_f_400” (light) with “NoM_furn_de_firepit__f_400”
- Replace “light_logpile” (light) with “NoM_furn_light_logpile”
- Replace “light_logpile10” (light) with “NoM_furn_light_logpile10”
- Replace “light_logpile_128” (light) with “NoM_furn_light_logpile_128”
- Replace “light_logpile_177” (light) with “NoM_furn_light_logpile_177”
- Replace “light_pitfire00” (light) with “NoM_light_pitfire00”
- Replace “light_pitfire01” (light) with “NoM_light_pitfire01”
- Replace “Furn_De_Firepit_01” (static) with “NoM_furn_de_firepit_01”

So basically with a minimal knowledge of the construction set you may be able to NOMify your preferred landmass mods.
What we are trying to do here is to make the whole process simpler and faster for modders and mod users not confident enough with the construction set.

Step 1: prerequisites installation

Ensure to have:

  1. Necessities of Morrowind 3.03a installed and working
  2. NoM Modders Res.esp in your Data Files folder inside your Morrowind installation folder
  3. Mash installed and working (in Mopy or Mash folder inside your Morrowind installation folder)
  4. latest tes3cmd.exe installed and working in your Data Files folder inside your Morrowind installation folder
  5. the provided Mash replacers/tes3cmd scripts. Just extract the contents of the archive inside your Morrowind installation folder keeping internal folder organization

After extraction of provided scripts you should have the following file structure inside your Morrowind folder:
Data Files\Nom Modders Res.esp
Data Files\tes3cmd.exe
Data Files\tes3cmd_unnomify_water_barrel.bat
Data Files\tes3cmd_unnomify_water_barrel_all.bat
Data Files\unnomify_water_barrel.pl
Mash\Data\Replacers\NOMify.txt
Mash\Data\Replacers\NOMify(ref. only).txt
Mash\Data\Replacers\unNOMify.txt
Mopy\Data\Replacers\NOMify.txt
Mopy\Data\Replacers\NOMify(ref. only).txt
Mopy\Data\Replacers\unNOMify.txt

Step 2: NOMify your landmass mod

1. start Mash, right click the mod you want to NOMify (to which you want to automatically add NOM resources, e.g. TR_Mainland.esm), File, Duplicate, save a copy of your mod as a safety measure

2. right click the mod you want to NOMify, Import, Edit Replacers...

3.
    1. click Add, navigate and choose Data\Replacers\NOMify.txt
    2. right click the mod you want to NOMify, Import, NOMify
    3. iterate steps 3.1, 3.2, 3.3 (3.1 is needed just one time) for all the landmass mods you want to NOMify including NOM resources in your mod for easier future editing from CS

4. close Mash, open your Data Folder and start (double click) the Data Files\tes3cmd_unnomify_water_barrel_all.bat file
What this .bat is doing is call tes3cmd.exe on all your mods using unnomify_water_barrel.pl code.
This will look for references to rotated NOM barrels (they appear odd if not positioned vertically, as they are open and filled with water) and change them back to standard closed barrels.

Note: if you are NOMifing just one mod, you may want to use the faster Data Files\tes3cmd_unnomify_water_barrel.bat file instead, just edit it and replace your_mod.esp with your mod name.


For anybody interested, here are the details about Mash replacers.
As you should know, Morrowind loads data files ordered by:

  • type/file extension: .esm (masters) first, then .esp (mods), finally .ess (saves)
  • timestamp (editing date and time)

Whenever 2 mods of the same type (e. g. two .esm, two .esp...) edit the same object (e.g first mod changes Fargoth scale to 2, second mod changes Fargoth health to 10), the mod loaded last wins, so in our example the resulting Fargoth would have health set 10, but changes to scale discarded.

NOM is engineered to be loaded last, so its objects/scripts can override any object previosly introduced by mods loaded before NOM.
If you are not going to further edit your mod in CS, you don't even need to have a full-defined NOM object in your mod, as the same object will be surely defined by NOM when loaded last, all you need are references to the NOM objects.

Mash replacers work with simple rules: they are standard text file, where

# means this line is a comment

, and

@ is the starting of a directive.

The

@ srcmod

directive may be used to specify the source mod where Mash will look for objects definitions to include in your mod.

So if you are a modder, you may want to include objects definitions in your mod for further editing from the CS, else you can just comment out them ( = put a # at the beginning of the @ srcmod directive line).
As a matter of fact, this is the one difference between NOMify.txt and NOMify(ref. only).txt

The

@ replace

directive is used to define what references will be replaced by one or more references.
Each line defines what object identifier to change, with this format:

object_id_to_change_from: object_id_to_change_to1, object_id_to_change_to2, object_id_to_change_toN

So, for instance: 

@ replace
# Statics
furn_com_cauldron_02: NOM_cauldron_02
furn_com_kegstand: NOM_kegstand_beer, NOM_kegstand_wine, NOM_kegstand_emp

Will replace all found references to furn_com_cauldron_02 object in your mod with references to NOM_cauldron_02 object, while
1st found reference to furn_com_kegstand will be replaced by a reference to NOM_kegstand_beer,
2nd found reference to furn_com_kegstand will be replaced by a reference to NOM_kegstand_wine,
3rd found reference to furn_com_kegstand will be replaced by a reference to NOM_kegstand_emp,
4th found reference to furn_com_kegstand will be replaced by a reference to NOM_kegstand_beer,
and so on...