openmw_easy_script on github

General discussion regarding the OpenMW project.
For technical support, please use the Support subforum.
Post Reply
dlshcbmuipmam
Posts: 6
Joined: 06 Dec 2018, 15:43

openmw_easy_script on github

Post by dlshcbmuipmam »

I don’t know if I am the only one or not, when I know the centuries-old game morrowind (or openmw), and I would like to try it, the first thing I do is to find a mod list to make the game pretty and more fun. Then the search engine took me to https://modding-openmw.com/. Good! There is a list of 236 mod. It was a tough work to download all the mods, especially when the file structure inside mods is not standardize so I have to pay extra attention to get the path correct. After I managed to download and decompress them, the nightmare began. I have to patch all the Tamriel Rebuilt plugin, that’s fine, there are only a few of them. What? I have to rename the normal map files, ok, as a guy who know programming, I can do this automatically. The final nightmare came, I have to clean the shiny meshes, by the nifskope manually in a GUI, and I don’t even know which file requires the modification. So I have to open a nif file, click click click to see if there is anything wrong according to this documentation https://openmw.readthedocs.io/en/openmw ... _mods.html, if there is, click click click click click click to clean a single file. There could be hundreds of them in a single mod!

I ended up to delete all the potentially problematic nif, but the meshes in the game didn’t look correct at some places, so I gave up the game.

3 days ago, I was back to see if recastnavigation is included in the stable version, it hasn’t, but I saw some efforts in the https://modding-openmw.com/ to try to solve the nightmare. Therefore, I got motivated. The search engine took me to https://github.com/niftools/pyffi. It is not well documented, but it is python so it is easy to try and error.

Finally, I coded up this:

https://github.com/dlshcbmuipmam/openmw_easy_script

At the moment, it has two functions, the first one is to rename all the old normal maps (_nm.dds, _NM.dds, _normals.dds) under all the subdirectory of a path.

More importantly, it can automatically look at all the .nif files under all the subdirectory of a path. Following https://openmw.readthedocs.io/en/openmw ... _mods.html, if the .nif file has any NiTextureEffect, the script will remove it, as well as the NiSourceTexture linked to a normal map.

It works in my Window machine with Git Bash, and my Linux machine as well. However, if you want to try it, please back up your files first, I am not really professional/experienced in programming, and I have nearly zero knowledge on the file system in morrowind, so weird bugs could happen. Feel free to tell me if you encounter any bugs, or if you have any suggestions in general, you can also comment on my code style, I know I didn’t pay too much attention on that.

My ultimate dream would be the existence of a proper mod management system, such that individual modders publish their mods in a standardize way and people are free to build their combinations, in the meanwhile there are well tested mod package where I can install them and set them up by a single command (or 1-click). Well, something similar to the package management system in Linux. I know it is hard though in the decentralize modding community.
Post Reply