User Tools

Site Tools


tes:morrowind_mod_manual_install

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
tes:morrowind_mod_manual_install [2022/08/22 16:07]
paolo_bolzoni created
tes:morrowind_mod_manual_install [2022/09/18 11:06] (current)
paolo_bolzoni
Line 4: Line 4:
  
 The word "​Manual"​ installation may sound scary, but actually to install mods in OpenMW is fairly straightforward once one knows the kinds of mods it may stumble upon. The word "​Manual"​ installation may sound scary, but actually to install mods in OpenMW is fairly straightforward once one knows the kinds of mods it may stumble upon.
 +
 +==== Introduction ====
  
 To install mods requires to edit a configuration file (i.e., ''​~/​.config/​openmw/​openmw.cfg''​),​ so you may want to keep different versions ready to use via a version control program or making backup copies. To install mods requires to edit a configuration file (i.e., ''​~/​.config/​openmw/​openmw.cfg''​),​ so you may want to keep different versions ready to use via a version control program or making backup copies.
Line 14: Line 16:
   fallback-archive=...   fallback-archive=...
   fallback-archive=...   fallback-archive=...
 +  ​
 +  resources=...
   ​   ​
   data=...   data=...
Line 32: Line 36:
   * esp-less mods   * esp-less mods
   * ini-edit mods   * ini-edit mods
 +  * shaders
 +    * core shaders
 +    * post-process shaders
  
 ==== esp-file mods ==== ==== esp-file mods ====
Line 48: Line 55:
   $ pwd   $ pwd
   /​home/​username/​games/​tes_morrowind/​mods/​PfP   /​home/​username/​games/​tes_morrowind/​mods/​PfP
-  $ ls +  $ ls -1 
-  BookArt ​  ​Docs   ​Icons   ​Meshes ​ 'Patch for Purists - Book Typos.ESP' ​ 'Patch for Purists - Semi-Purist Fixes.ESP' ​ 'Patch for Purists.esm' ​  ​Textures+  BookArt 
 +  ​Docs 
 +  ​Icons 
 +  ​Meshes 
 +  '​Patch for Purists - Book Typos.ESP'​ 
 +  '​Patch for Purists - Semi-Purist Fixes.ESP'​ 
 +  '​Patch for Purists.esm'​ 
 +  ​Textures
  
 So the .esX files are: ''​Patch for Purists - Book Typos.ESP'',​ ''​Patch for Purists - Semi-Purist Fixes.ESP'',​ and ''​Patch for Purists.esm''​. So the .esX files are: ''​Patch for Purists - Book Typos.ESP'',​ ''​Patch for Purists - Semi-Purist Fixes.ESP'',​ and ''​Patch for Purists.esm''​.
Line 71: Line 85:
 === Groundcover mods === === Groundcover mods ===
  
-Example: [[https://​mw.modhistory.com/​download-56-14671|Ozzy Grass]]+Example: [[https://​mw.modhistory.com/​download-56-14671|Ozzy'​s ​Grass]]
  
-Groundcover mods have their own ''​.esp''​ files, but they must be loaded differently because the game needs to distinguish between groundcover objects and normal ones. In other words, groundcover mods work as esp-file mods, but instead of ''​content='' ​lines you have to add ''​groundcover='' ​lines.+Groundcover mods have their own ''​.esp''​ files, but they must be loaded differently because the game needs to distinguish between groundcover objects and normal ones. In other words, groundcover mods work as esp-file mods, but instead of ''​content='' ​rows you have to add ''​groundcover='' ​rows.
  
-Let us install Ozzy grass, first we unpack in the ''​mods/​Ozzy_Grass''​ directory.+Let us install Ozzy'​s ​grass, first we unpack in the ''​mods/​Ozzy_Grass''​ directory.
  
   $ pwd   $ pwd
Line 81: Line 95:
   $ ls   $ ls
   'Data Files' ​ '​Original readmes' ​  ​ReadMe.htm ​  files   'Data Files' ​ '​Original readmes' ​  ​ReadMe.htm ​  files
-  $ ls Data\ Files +  $ ls -1 Data\ Files 
-  "​Ozzy'​s Grass - Ascadian Isles.esp" ​ "​Ozzy'​s Grass - Bitter Coast.esp" ​ "​Ozzy'​s Grass - Grazelands.esp"​ "​Ozzy'​s Grass - Solstheim.esp" ​ "​Ozzy'​s Grass - West Gash.esp" ​ "​Ozzy'​s Grass.bsa"​+  "​Ozzy'​s Grass - Ascadian Isles.esp"​ 
 +  "​Ozzy'​s Grass - Bitter Coast.esp"​ 
 +  "​Ozzy'​s Grass - Grazelands.esp"​ 
 +  ​"​Ozzy'​s Grass - Solstheim.esp"​ 
 +  "​Ozzy'​s Grass - West Gash.esp"​ 
 +  "​Ozzy'​s Grass.bsa"​
  
-The esp files are ''​Ozzy'​s Grass - Ascadian Isles.esp'',​ ''​Ozzy'​s Grass - Bitter Coast.esp'',​ ''​Ozzy'​s Grass - Grazelands.esp'',​ ''​Ozzy'​s Grass - Solstheim.esp'',​ and ''​Ozzy'​s Grass - West Gash.esp''​. There is also bsa archive ''​Ozzy'​s Grass.bsa''​.+The esp files are ''​Ozzy'​s Grass - Ascadian Isles.esp'',​ ''​Ozzy'​s Grass - Bitter Coast.esp'',​ ''​Ozzy'​s Grass - Grazelands.esp'',​ ''​Ozzy'​s Grass - Solstheim.esp'',​ and ''​Ozzy'​s Grass - West Gash.esp''​. There is also bsa archive''​Ozzy'​s Grass.bsa''​.
  
-So we need to add the following ​lines, note how the ''​data='' ​line points where the other files are.+So we need to add the following ​rows, note how the ''​data='' ​row points where the other files are.
  
   fallback-archive=Ozzy'​s Grass.bsa   fallback-archive=Ozzy'​s Grass.bsa
Line 97: Line 116:
   groundcover=Ozzy'​s Grass - Solstheim.esp   groundcover=Ozzy'​s Grass - Solstheim.esp
   groundcover=Ozzy'​s Grass - West Gash.esp   groundcover=Ozzy'​s Grass - West Gash.esp
 +
 +== ground cover settings ==
 +
 +To work ground cover mods need to be enabled in the ''​settings.cfg''​ file. Here is an example setting set, the row ''​enabled''​ is the only necessary. To reduce density of rendering distance may help performance.
 +
 +  [Groundcover]
 +  enabled = true
 +  min chunk size = 0.5
 +  density = 1.0
 +  stomp mode = 2
 +  stomp intensity = 2
 +  rendering distance = 18432
 +
 +==== esp-less mods ====
 +
 +Example: [[https://​www.nexusmods.com/​morrowind/​mods/​50296|Swiveller'​s Ashland and Molag Amur]]
 +
 +Esp-less mods are installed very similarly to esp-file mods, but they have no ''​content=''​ or ''​groundcover=''​ rows.
 +
 +The lack of esp files means the mod normally can only alter existing game assets, like textures, meshes, or sounds. But it cannot add anything. So, the main point to keep in mind is that order is usually more important in esp-less mods, while adding the ''​data=''​ rows you have to be careful: whatever is lower in the order will appear in game.
 +
 +Let us install Swiveller'​s Ashland and Molag Amur textures, first we unpack in the ''​mods/​Swiv_barren''​ directory.
 +
 +  $ pwd
 +  /​home/​username/​games/​tes_morrowind/​mods/​Swiv_barren
 +  $ ls
 +  Swiveller_barren
 +  $ ls -1 Swiveller_barren/​
 +  readme.txt
 +  swiveller_readmes
 +  textures
 +
 +As we can see, there is no esX files. We just need to add the ''​data=''​ line. Here I kept the directory name as-is, but you may want to move Swiveller_barren to avoid the double.
 +
 +  data="/​home/​username/​games/​tes_morrowind/​mods/​Swiv_barren/​Swiveller_barren"​
 +
 +If some other mod changes the Ashlands or the Molag Amur textures which one will appear in game depends on the order. Once again the rule of thumb is that the more general a mod is the higher it should go, the more specific the lower.
 +
 +Post-process shaders mods are an exception that what we said. Since those, being specific to OpenMW, even without esp files are able to add new shaders to the game. In the game you can access the shader menu pressing F2. Example: [[https://​gitlab.com/​glassmancody.info/​omwfx-shaders|Glassman'​s Shaders]].
 +
 +
 +==== ini-edit mods ===
 +
 +Example: [[https://​www.nexusmods.com/​morrowind/​mods/​12816|Different Sky Colors for Morrowind]]
 +
 +The Morrowind game has many interesting settings stored in the ''​morrowind.ini''​ file. For example, the color of fogs depending on the weather. ​
 +
 +Few mods alter those values, you can recognize those mods because usually they include a ''​.ini''​ or textual file with the new settings; seldom the settings are described in the readme file. In any case, somewhere are the settings in the ini format.
 +
 +The ini values in OpenMW appear in the ''​openmw.cfg''​ file as ''​fallback=''​ values. In the OpenMW the ''​fallback=''​ rows can be repeated, and if it is the case, the one lower in the file will be considered.
 +
 +So, to install ini-edit mods we convert the ini file included in the mod in the format expected by OpenMW and copy the rows in the ''​openmw.cfg''​ file, ideally with a comment on top to remind there the new rows come from.
 +
 +Let us say the ini settings are in a file called ''​input.ini''​. To convert the ini values from the morrowind.exe format to the OpenMW format we can use the following command line:
 +
 +  $ openmw-iniimporter ​ -v  -i input.ini ​ -c ~/​.config/​openmw/​openmw.cfg ​ -o /​dev/​stdout ​ |  grep '​^fallback=' ​ >  openmw_cfg_fallbacks.txt
 +
 +The output file ''​openmw_cfg_fallbacks.txt''​ will contain the ini settings in the format expected by OpenMW. We can easily copy and paste from there.
 +
 +Let us see an example. First we unpack Different Sky Colors for Morrowind in the ''​mods/​skies''​ directory.
 +
 +  $ pwd
 +  /​home/​username/​games/​tes_morrowind/​mods/​skies
 +  $ ls
 +  different_sky_colors_1.1
 +  $ ls -1 different_sky_colors_1.1 ​
 +  'INI settings - different_sky_colors - ASE compatibility.txt'​
 +  'INI settings - different_sky_colors.txt'​
 +  Tx_sky_ashstorm.dds
 +  [...]
 +  Tx_sky_stormy.dds
 +  Tx_sky_thunder.dds
 +  '​different_sky_colors - sample.jpg'​
 +  '​readme - different_sky_colors._1.1.txt'​
 +
 +The files are not sorted as the game needs. The dds files are textures, but are not in the ''​textures''​ directory. But for now we focus on the ini setting file, since we do not use ASE (Atmospheric Sound Effects), we check the file ''​INI settings - different_sky_colors.txt''​.
 +
 +  $ <'​different_sky_colors_1.1/​INI settings - different_sky_colors.txt'​ head
 +  ​
 +  [Weather Clear]
 +  Sky Sunrise Color=166,​118,​149
 +  Sky Day Color=135,​094,​204
 +  Sky Sunset Color=067,​057,​131
 +  Sky Night Color=009,​010,​011
 +  Fog Sunrise Color=255,​189,​157
 +  Fog Day Color=255,​223,​207
 +  Fog Sunset Color=255,​189,​157
 +  Fog Night Color=009,​010,​011
 +
 +As we can see it contains the new values for the sky and fog colors in the ini format. Let us convert:
 +
 +  $ openmw-iniimporter ​ -v  -i '​different_sky_colors_1.1/​INI settings - different_sky_colors.txt' ​ -c ~/​.config/​openmw/​openmw.cfg ​ -o /​dev/​stdout ​ |  grep '​^fallback=' ​ >  openmw_cfg_fallbacks.txt
 +  $ <​openmw_cfg_fallbacks.txt head 
 +  fallback=Weather_Thunderstorm_Thunder_Sound_ID_0,​Thunder0
 +  fallback=Weather_Thunderstorm_Thunder_Sound_ID_1,​Thunder1
 +  fallback=Weather_Thunderstorm_Thunder_Sound_ID_2,​Thunder2
 +  fallback=Weather_Thunderstorm_Thunder_Sound_ID_3,​Thunder3
 +  fallback=Weather_Thunderstorm_Thunder_Frequency,​.4
 +  fallback=Weather_Thunderstorm_Thunder_Threshold,​0.6
 +  fallback=Weather_Clear_Cloud_Texture,​Tx_Sky_Clear.tga
 +  fallback=Weather_Clear_Clouds_Maximum_Percent,​1.0
 +  fallback=Weather_Clear_Transition_Delta,​.015
 +  fallback=Weather_Clear_Sky_Sunrise_Color,​166,​118,​149
 +
 +The file ''​openmw_cfg_fallbacks.txt''​ contains the rows we have to add to the ''​openmw.cfg''​ file. Now we rename the directory so the textures are in the proper place.
 +
 +  $ mv  different_sky_colors_1.1 ​ textures
 +
 +So, we have to add the following rows to ''​openmw.cfg'',​ the fallback rows go //under// the existing ones. The data row goes with the other data rows, since really few mods change the skies the position probably won't matter.
 +
 +  # Different Sky Colors for Morrowind ini values
 +  fallback=Weather_Thunderstorm_Thunder_Sound_ID_0,​Thunder0
 +  fallback=Weather_Thunderstorm_Thunder_Sound_ID_1,​Thunder1
 +  fallback=Weather_Thunderstorm_Thunder_Sound_ID_2,​Thunder2
 +  [...]
 +  ​
 +  data="/​home/​username/​games/​tes_morrowind/​mods/​skies"​
 +
 +
 +==== shaders ===
 +
 +There are two kind of shaders, post-process shaders and core shaders. Post-process shaders have their own in-game menu for configuration,​ core shaders instead are fixed. Shaders, in general, are text files so configuration might be possible editing them.
 +
 +Example, core shaders: [[https://​github.com/​zesterer/​openmw-shaders|Zesterer Shaders]].
 +
 +Example, post-process shaders: [[https://​gitlab.com/​glassmancody.info/​omwfx-shaders|Glassman Shaders]].
 +
 +
 +=== Post-process shaders ===
 +
 +There is little to add for the installation of post-process shaders, they work as regular esp-less mods. Unpack the file, add the ''​data=''​ line the ''​openmw.cfg''​ file. Start the game and press F2 for the configuration.
 +
 +
 +=== Core shaders ===
 +
 +To install core shaders is more complicated. Core shaders are part of the resource directory and OpenMW understands only one resource directory, so the installation require to copy the default directory, unpack the modded shaders in it and adapt the configuration.
 +
 +Assuming the game starts properly you can easily find the resource directory starting the game, leaving and check the log file. The log file is called ''​openmw.log''​ and it is saved in the same directory you have your configuration files.
 +
 +Open the log and look for a line like the following, it should fairly on top around line 10-20.
 +
 +  [00:​01:​02.003 I] Adding data directory /​usr/​share/​games/​openmw/​resources/​vfs
 +
 +''​vfs''​ is the first data directory and it is inside the resource directory we are looking for.
 +
 +Once found, copy it in your mods directory.
 +
 +  $ pwd
 +  /​home/​username/​games/​tes_morrowind/​mods
 +  $ cp -r /​usr/​share/​games/​openmw/​resources .
 +  $ ls
 +  [...]
 +  resources
 +  [...]
 +  $ ls resources
 +  defaultfilters lua_api mygui openmw.png shaders version vfs
 +
 +The core shaders you downloaded will also contain the ''​shaders''​ directory. Unpack so the shaders directory ends updating the contents. You may need to convert filenames to lowercase, by aware.
 +
 +Finally in the configuration file ''​openmw.cfg''​ add the line 
 +
 +  resources="/​home/​username/​games/​tes_morrowind/​mods/​resources"​
 +
 +Let us install Zesterer resource shaders. We download the pack from the [[https://​github.com/​zesterer/​openmw-shaders|website]] and we get the file ''​openmw-shaders-main.zip''​. Now we unpack as explained:
 +
 +  $ pwd
 +  /​home/​username/​games/​tes_morrowind/​mods
 +  $ mkdir zesterer
 +  $ cp -r /​usr/​share/​games/​openmw/​resources ./zesterer
 +  $ mkdir tmp && cd tmp
 +  $ unzip -LL ~/​openmw-shaders-main.zip ​
 +  $ ls
 +  openmw-shaders-main
 +  $ ls openmw-shaders-main
 +  readme.md ​ shaders
 +  $ cp -r openmw-shaders-main/​shaders /​home/​username/​games/​tes_morrowind/​mods/​zesterer
 +  $ cd .. && rm -r tmp
 +
 +We then edit the ''​openmw.cfg''​ file to add the line ''​resources=''​
 +
 +  resources=/​home/​username/​games/​tes_morrowind/​mods/​zesterer
 +
 +Unlike ''​data=''​ rows ''​resources=''​ rows do not merge the contents. So if you have different values, only the one in the bottom counts.
 +
 +If you want to install more core shaders you will need to unpack all in the same resource directory.
tes/morrowind_mod_manual_install.1661184452.txt.gz · Last modified: 2022/08/22 16:07 by paolo_bolzoni