Skip to main content

[TUTORIAL] Converting Tamriel Rebuilt to Morroblivion

Submitted by ponyrider0 on

This tutorial is now old and out of date.  An updated tutorial for June 2020 is available here: https://morroblivion.com/forums/morroblivion-mod-releases/tutorial-converting-tamriel-rebuilt-2002-for-morroblivion-v065

 

[REL/WIP] Morrowind-to-Morroblivion ModExporter 2017-Dec-31

Description:
The ModExporter is designed to load a TES3 (Morrowind) based ESP/ESM file and export it as a TES4 (Oblivion) ESP which can be played in Morroblivion. It is based off the OpenMW code base. Although it was designed with Tamriel Rebuilt in mind, it can be used with many other Morrowind-based mods. Currently, it will convert landscapes, static meshes, NPCs and weapons. There is partial conversion of creatues, armor, clothing (meshes are substituted instead of converted). Dialog and quests are converted, but not fully usable due to incomplete conversion of scripts. A script translator and byte compiler are partially complete. Future versions will have more complete conversion of scripts and thus more usable dialog and quests.

Below is a tutorial to take you through conversion of Tamriel Rebuilt, the entire process should take about 30 minutes on a modern computer (circa 2017).

Source Code:
https://github.com/ponyrider0/openmw

Credits:
OpenMW developers/source-cdoe for doing all the heavy lifting of loading and parsing the TES3-based files. The Unofficial Elder Scrolls Pages (uesp.net) community for sharing valuable information regarding game engine and file formats of Morrowind and Oblivion.
TESxEdit developers/source-code for definitions of the TES4-based file format.
Zilav for insights and helpful advice in emails and forum posts related to TES4Edit script writing and Oblivion interior and exterior cell cluster organization.
TESRenewal.com community for encouragement, suggestions and help testing and bug reporting throughout the development process.
EDIT: And also... 
Galadrielle for original ESPConverter and the long list of contributors to Morroblivion!
Puddles for his work on the Tamriel Rebuilt creature and replacers!

Requirements:
ModExporter-2017-Dec-31
Mods-for-ModExporter-2017-Dec-31
Morroblivion v064 + Unofficial Patch 2017-Dec-18
Tamriel Rebuilt 17.09 + Tamriel Data
OpenMW 0.42 (the Win64 version is required)
Oblivion Character Overhaul 2
Morroblivion Symphony of Creatures

Instructions:

Building the ESPs:
------------------
1. Install Morrowind + Tamriel Rebuilt 17.09.  For details on how to install TR, go here: https://www.youtube.com/watch?v=TvKoRflsg4Q
2. Install OpenMW 0.42.
3. Launch OpenMW and import your Morrowind settings.
4. If you have a folder named "C:\Oblivion.output", then make sure it is empty. This is where exported mesh and texture resources will be placed.
5. Unzip the contents of "ModExporter-2017-Dec-31.7z" into the main executable directory for OpenMW.
6. Launch "openmw-modexporter.exe" and click "Edit A Content File".
7. Select Morrowind.esm from the drop down.
8. Put a checkmark next to Tamriel_Data.esm. Click Open.
9. After it's finished loading and the main editor window has loaded, select the menu command: File->Export ESM.
10. In the Export Module dialog window, navigate to your Oblivion\Data directory and click Save. It will be automatically saved as Tamriel_Data.esp.
11. Wait for export to complete, then close the modexporter and relaunch. This time export TR_Mainland.esm to TR_Mainland.esp.
12. Repeat the same steps to export TR_Preview.esp to TR_Preview.esp.
13. Open Wrye Bash and make sure load order is Tamriel_Data.esp, followed by TR_Mainland.esp, followed by TR_Preview.esp. Move all 3 files after Morroblivion_Unofficial_Patch.esp.
14. Install the "Mods-for-ModExporter-2017-Dec-31.7z" with Wrye Bash. Place Morrowind_Compatibility_Layer.esp before Tamriel_Data.esp. Place TR_Fixes.esp and TR_OCO2_facelift.esp after TR_Preview.esp.
15. Create a Bashed Patch and move it after the last TR related esp file. Build the Bashed Patch.

Building the Resources:
-----------------------
1. Landscape and Icon textures should have been exported to C:\Oblivion.output during the ESP export steps above. Leave them there for now.
2. Go to the OpenMW executable directory where you ran the "openmw-modexporer.exe".
3. Open the Morroblivion.ini from that directory.
4. Find and edit the "Morrowind=" line so that it points to the directory where you have installed Morrowind + TR 17.09. Make sure to put a "\" at the end of the line.
5. Go back to the OpenMW executable directory, and look for these files which should have been generated during the ESP export steps above:
ModExporter_NIFConv_Tamriel_Data.bat, ModExporter_NIFConv_TR_Mainland.bat, ModExporter_NIFConv_TR_Preview.bat
6. Double-click "ModExporter_NIFConv_Tamriel_Data.bat". It will start two windowed processes to convert NIF files in parallel. Let it run until you see a message that conversion is complete for both windows. Press any key to close the windows.
7. Repeat step 5 for "ModExporter_NIFConv_TR_Mainland.bat". Then repeat again for "ModExporter_NIFConv_TR_Preview.bat".
8. Now go to the "C:\Oblivion.output\Data" directory.
9. Create a new 7-zip or other Wrye Bash compatible archive from the directories in c:\Oblivion.output\Data.
10. Drag that new archive into the Installers tab of Wrye Bash to let Wrye Bash copy it into the Bash Installers directory.
11. Right-Click on the new archive inside Wrye Bash and click Install.

Building the LOD Resources:
---------------------------
1. After you have archived and installed the resources in C:\Oblivion.output in the above steps, delete the contents of C:\Oblivion.output so you can start with a clean directory.
2. Go back to the OpenMW executable directory, and look for these files:
ModExporter_NIFConv_Tamriel_Data_LOD.bat, ModExporter_NIFConv_TR_Mainland_LOD.bat, ModExporter_NIFConv_TR_Preview_LOD.bat
3. Double-click "ModExporter_NIFConv_Tamriel_Data_LOD.bat". It will start a windowed process to convert NIF files. As above, let it run until you see a message that conversion is complete for both windows. Press any key to close the windows.
4. Repeat step 5 for "ModExporter_NIFConv_TR_Mainland_LOD.bat". Then repeat again for "ModExporter_NIFConv_TR_Preview_LOD.bat".
5. Now go back to the "C:\Oblivion.output\Data" directory.
6. Create a new 7-zip or other Wrye Bash compatible archive from the directories in c:\Oblivion.output\Data. Make sure it has a different name from the archive you made above.
7. Drag that new LOD archive into the Installers tab of Wrye Bash to let Wrye Bash copy it into the Bash Installers directory.
8. Right-Click on the new LOD archive inside Wrye Bash and click Install.

Generating Distant Lands and Objects:
-------------------------------------
In order to register the LOD meshes and generate distant lands, you will need to run TES4LL and TES4LODGen. Instructions for using these programs can be found on their webpages at Oblivion Nexus.

https://www.nexusmods.com/oblivion/mods/40549
https://www.nexusmods.com/oblivion/mods/15781

Downloads

 

Karma: 1 (1 votes)
Last edited by Daggers on 6 Nov 2021 - 12:50.

I posted a new version of the modexporter on my patreon / developer journal: https://www.patreon.com/posts/17272420

I'll update the original post here after more testing and feedback.

Update 2018-March-2:
I made some updates and bugfixes for better support of LGNPC.  Read more about it and download the updated modexporter files here: https://www.patreon.com/posts/17321060

Oh yeah, FYI: most dialog and many quests are working.

Karma: 1 (1 votes)

Awesome, ponyrider0! :D Once I fix my Oblivion installation I'll definitely give this another go.

Karma: 0 (0 votes)

Perfect timing, I just got to this spot in Diana's modlist. It's quite a mental workout to install (with the added challenge of doing it all in Wineskin :P), but I appreciate how well you've explained everything and the legal limitations of importing TR to MOB. At any rate I'm through the first section of the install, to resume later.

So what happens exactly if you use CBash? I like how speedy CBash is, and Arthmoor's Delayed DLCs mod purports to require it. Also, "most dialog and many quests" refers to TR and not LGNPC, right?

Karma: 0 (0 votes)

1MacSo what happens exactly if you use CBash? I like how speedy CBash is, and Arthmoor's Delayed DLCs mod purports to require it.

CBash seems to have some bugs where certain scenarios will cause it to forget about subrecords which it should be preserving and allow over-rides to completely wipe out those records.  Example: Some graphic replacer mods (like my TR_armors, TR_creatures and TR_facelift mods) will over-write all subrecords, not just the graphics subrecords.  So, you may end up with creatures/NPCs that have no AI or no scripts when you use CBash.  

Also, "most dialog and many quests" refers to TR and not LGNPC, right?

It refers to all mods in general.  The modexporter is now at the point where it can detect and convert about 70% of scripts and over 90% of dialogs and quests.  60-70% of quests will just work, another 30% will work with minor edits.  Only about 10% of scripts/quests need major edits.  The ones that need some hand-tweaking mainly involve Guild Rank Advancement, Spells/Enchantments not natively supported by Oblivion, Blight Disease, Crime/Alarm/Sneak detection, and some Morrowind/MWSE script hacking/optimizations which don't translate well. 

Most "fedex" quests, "kill the evil monster" quests, and a few escort quests should work right out of the box.  That applies for any mod, not just Tamriel Rebuilt.  One exception is any mod which modifies vanilla Buildings/NPCs rather than adding new ones.  These will cause double NPCs.  This is what's currently stopping me from supporting MGSO, Rebirth, MCA and LCV right out of the box.  A future version of the modexporter should support this.  

Karma: 0 (0 votes)

Thanks for the replies. Would it be possible to build one bashed patch for the TR stuff and keep the CBash for everything else?

I've gotten through the resource and LOD generation. I take it the error messages you mentioned are expected for generating all files, not just armor? Also, how necessary are the armor messages? I don't really crave a bunch of different in-game armors, but if it leads to messed up quest rewards or naked guards or something, then I guess I ought to do it.

Thanks again for the great program and tutorial.

Karma: 0 (0 votes)

Update: I believe I managed to generate, install, and activate everything properly. Unfortunately, when I opened Oblivion, it got stuck on the loading screen repeatedly. I know there's a lot of new data, but at one point I went upstairs, unloaded and reloaded the dishwasher and washed dishes, and came back down, and the loading bar hadn't made any progress. Deactivating the esps didn't help; it was only when I uninstalled everything that the game loaded properly. Again, I'm doing all this in Wineskin, so I'm maybe not the best person to test all this out; it kind of seems like I'm running up against some sort of size limit in my wrapper? Then again, I was getting error messages when generating the main and LOD resources, so maybe the problem was with the resources somehow.

Here's the first error message I got when generating the main resources, fwiw.

Hidden text

Unhandled exception: page fault on read access to 0x00000000 in 32-bit code (0x0041c306). Register dump:  CS:001b SS:0023 DS:0023 ES:0023 FS:1007 GS:000f  EIP:0041c306 ESP:0033fda0 EBP:0033fe44 EFLAGS:00010206(  R- --  I   - -P- )  EAX:00000000 EBX:00000019 ECX:00000006 EDX:7efefeff  ESI:00000000 EDI:01c63fec Stack dump: 0x0033fda0:  7b4517c4 7ffdf000 0041fa70 0040bdac 0x0033fdb0:  01c63fec 00000000 00000019 0041fa70 0x0033fdc0:  7ffdf000 7b4517c4 0041fa70 7ffdf000 0x0033fdd0:  7b4517c4 000011cc 0033fe40 0040de79 0x0033fde0:  01c64304 0041fa70 7ffdf000 7b4517c4 0x0033fdf0:  7ffdf000 7b4517c4 00800024 00000000 0200: sel=1007 base=7ffc0000 limit=00000fff 32-bit rw- Backtrace: =>0 0x0041c306 in nif_conv (+0x1c306) (0x0033fe44)   1 0x0040ec6d in nif_conv (+0xec6c) (0x0033fee0)   2 0x0041fb59 in nif_conv (+0x1fb58) (0x0033ff20)   3 0x7b45177c call_process_entry+0xb() in kernel32 (0x0033ff38)   4 0x7b451903 start_process+0x152() in kernel32 (0x0033ffdc)   5 0x7b45178a start_process_wrapper+0x9() in kernel32 (0x0033ffec) 0x0041c306: movl 0x0(%esi),%eax Modules: Module Address Debug info Name (142 modules) PE   400000- 1f05000 Export          nif_conv PE 40001000-401b6000 Deferred        libwine.1.0.dylib ELF 7b400000-7b7fc000 Stabs           kernel32<elf>   \-PE 7b410000-7b7bf000 \               kernel32 ELF 7bc00000-7bcf1000 Deferred        ntdll<elf>   \-PE 7bc10000-7bcb7000 \               ntdll ELF 7bf00000-7bf03000 Deferred        <wine-loader> PE 90f00000-90f01000 Deferred        accelerate PE 90f19000-91580000 Deferred        vimage PE 91580000-916cd000 Deferred        libblas.dylib PE 916cd000-916e0000 Deferred        libbnns.dylib PE 916e0000-91a7c000 Deferred        liblapack.dylib PE 91a7c000-91a93000 Deferred        liblinearalgebra.dylib PE 91a93000-91aae000 Deferred        libsparseblas.dylib PE 91aae000-91bfc000 Deferred        libvdsp.dylib PE 91bfc000-91cde000 Deferred        libvmisc.dylib PE 91cde000-91cdf000 Deferred        veclib PE 92cb7000-92cb8000 Deferred        applicationservices PE 92cb8000-92d27000 Deferred        ats PE 92dbf000-92eee000 Deferred        libfontparser.dylib PE 92eee000-92f3b000 Deferred        libfontregistry.dylib PE 92fdb000-9308c000 Deferred        colorsync PE 9308c000-930e4000 Deferred        hiservices PE 930e4000-930f4000 Deferred        langanalysis PE 930f4000-9314d000 Deferred        printcore PE 9314d000-931e8000 Deferred        qd PE 931e8000-931f5000 Deferred        speechsynthesis PE 931f5000-933e4000 Deferred        audiotoolbox PE 93546000-93903000 Deferred        cfnetwork PE 93e40000-93ed7000 Deferred        coreaudio PE 93eea000-941d6000 Deferred        coredata PE 941dd000-9467e000 Deferred        corefoundation PE 9467e000-94d27000 Deferred        coregraphics PE 950cc000-950cd000 Deferred        coreservices PE 950cd000-95120000 Deferred        ae PE 95120000-95402000 Deferred        carboncore PE 95402000-95436000 Deferred        dictionaryservices PE 95436000-9543e000 Deferred        fsevents PE 9543e000-95563000 Deferred        launchservices PE 95563000-95612000 Deferred        metadata PE 95612000-95673000 Deferred        osservices PE 95673000-956e5000 Deferred        searchkit PE 956e5000-9572b000 Deferred        sharedfilelist PE 9572b000-95870000 Deferred        coretext PE 959e6000-959f0000 Deferred        diskarbitration PE 959f3000-95d60000 Deferred        foundation PE 95d60000-95d91000 Deferred        gss PE 95e35000-95ed1000 Deferred        iokit PE 95ed1000-95ed8000 Deferred        iosurface PE 95f2b000-9608f000 Deferred        imageio PE 9608f000-96093000 Deferred        libgif.dylib PE 96093000-9618c000 Deferred        libjp2.dylib PE 9618c000-961b0000 Deferred        libjpeg.dylib PE 961b0000-961d7000 Deferred        libpng.dylib PE 961d7000-961da000 Deferred        libradiance.dylib PE 961da000-96226000 Deferred        libtiff.dylib PE 96a3c000-96a55000 Deferred        kerberos PE 97053000-9705c000 Deferred        netfs PE 972e8000-97302000 Deferred        cfopendirectory PE 97302000-9730e000 Deferred        opendirectory PE 99084000-993a1000 Deferred        security PE 993a1000-99414000 Deferred        securityfoundation PE 9943d000-99441000 Deferred        servicemanagement PE 99571000-995e3000 Deferred        systemconfiguration PE 9b9d3000-9ba11000 Deferred        applejpeg PE 9bfb1000-9bfbb000 Deferred        commonauth PE 9c3eb000-9c3fd000 Deferred        coreemoji PE 9dd7e000-9ddf4000 Deferred        heimdal PE 9e002000-9e1c1000 Deferred        languagemodeling PE 9e443000-9e46c000 Deferred        multitouchsupport PE 9e46c000-9e477000 Deferred        netauth PE 9eb41000-9eb48000 Deferred        tcc PE 9f15a000-9f15d000 Deferred        loginsupport PE 9fcad000-9fcc9000 Deferred        libcrfsuite.dylib PE 9fcc9000-9fcd3000 Deferred        libchinesetokenizer.dylib PE 9fd71000-9fd73000 Deferred        libdiagnosticmessagesclient.dyli PE 9ffbc000-9ffbd000 Deferred        libopenscriptingutil.dylib PE 9ffc2000-9ffc4000 Deferred        libsystem.b.dylib PE 9ffc4000-9fff1000 Deferred        libarchive.2.dylib PE a0139000-a013a000 Deferred        libauto.dylib PE a013a000-a014b000 Deferred        libbsm.0.dylib PE a014b000-a0159000 Deferred        libbz2.1.0.dylib PE a0159000-a01b0000 Deferred        libc++.1.dylib PE a01b0000-a01d4000 Deferred        libc++abi.dylib PE a01d4000-a01e6000 Deferred        libcmph.dylib PE a01e6000-a01fa000 Deferred        libcompression.dylib PE a01fa000-a01fb000 Deferred        libcoretls.dylib PE a01fb000-a01fd000 Deferred        libcoretls_cfhelpers.dylib PE a0540000-a0596000 Deferred        libcups.2.dylib PE a0605000-a0606000 Deferred        libenergytrace.dylib PE a0614000-a0619000 Deferred        libheimdal-asn1.dylib PE a0619000-a070a000 Deferred        libiconv.2.dylib PE a070a000-a0928000 Deferred        libicucore.a.dylib PE a092d000-a092f000 Deferred        liblangid.dylib PE a092f000-a0949000 Deferred        liblzma.5.dylib PE a0949000-a095f000 Deferred        libmarisa.dylib PE a095f000-a0c12000 Deferred        libmecabra.dylib PE a0c42000-a0cbc000 Deferred        libnetwork.dylib PE a0cbc000-a1081000 Deferred        libobjc.a.dylib PE a1082000-a1086000 Deferred        libpam.2.dylib PE a1086000-a10b6000 Deferred        libpcap.a.dylib PE a10b6000-a10d3000 Deferred        libresolv.9.dylib PE a111d000-a1267000 Deferred        libsqlite3.dylib PE a1349000-a1358000 Deferred        libxar.1.dylib PE a1358000-a143d000 Deferred        libxml2.2.dylib PE a143d000-a1466000 Deferred        libxslt.1.dylib PE a1466000-a1475000 Deferred        libz.1.dylib PE a1483000-a1488000 Deferred        libcache.dylib PE a1488000-a1493000 Deferred        libcommoncrypto.dylib PE a1493000-a1499000 Deferred        libcompiler_rt.dylib PE a1499000-a14a2000 Deferred        libcopyfile.dylib PE a14a2000-a1509000 Deferred        libcorecrypto.dylib PE a1509000-a1537000 Deferred        libdispatch.dylib PE a1537000-a153d000 Deferred        libdyld.dylib PE a153d000-a153e000 Deferred        libkeymgr.dylib PE a153e000-a154b000 Deferred        libkxld.dylib PE a154b000-a154c000 Deferred        liblaunch.dylib PE a154c000-a1553000 Deferred        libmacho.dylib PE a1553000-a1556000 Deferred        libquarantine.dylib PE a1556000-a1558000 Deferred        libremovefile.dylib PE a1558000-a1570000 Deferred        libsystem_asl.dylib PE a1570000-a1571000 Deferred        libsystem_blocks.dylib PE a1571000-a1600000 Deferred        libsystem_c.dylib PE a1600000-a1604000 Deferred        libsystem_configuration.dylib PE a1604000-a1608000 Deferred        libsystem_coreservices.dylib PE a1608000-a1621000 Deferred        libsystem_coretls.dylib PE a1621000-a1628000 Deferred        libsystem_dnssd.dylib PE a1628000-a1650000 Deferred        libsystem_info.dylib PE a1650000-a1672000 Deferred        libsystem_kernel.dylib PE a1672000-a16bf000 Deferred        libsystem_m.dylib PE a16bf000-a16da000 Deferred        libsystem_malloc.dylib PE a16da000-a1731000 Deferred        libsystem_network.dylib PE a1731000-a173b000 Deferred        libsystem_networkextension.dylib PE a173b000-a1744000 Deferred        libsystem_notify.dylib PE a1744000-a174b000 Deferred        libsystem_platform.dylib PE a174b000-a1755000 Deferred        libsystem_pthread.dylib PE a1755000-a1759000 Deferred        libsystem_sandbox.dylib PE a1759000-a175c000 Deferred        libsystem_secinit.dylib PE a175c000-a1764000 Deferred        libsystem_symptoms.dylib PE a1764000-a1777000 Deferred        libsystem_trace.dylib PE a1777000-a177e000 Deferred        libunwind.dylib PE a177e000-a17a5000 Deferred        libxpc.dylib Threads: process  tid      prio (all id:s are in hex) 0000000e services.exe 00000028    0 00000022    0 0000001c    0 00000013    0 00000010    0 0000000f    0 00000011 winedevice.exe 00000021    0 00000017    0 00000016    0 00000012    0 0000001a plugplay.exe 0000001e    0 0000001d    0 0000001b    0 0000001f winedevice.exe 00000031    0 00000030    0 0000002f    0 0000002e    0 0000002d    0 0000002c    0 0000002b    0 00000027    0 00000024    0 00000023    0 00000020    0 00000029 explorer.exe 00000034    0 00000033    0 00000032    0 0000002a    0 00000035 cmd.exe 00000036    0 00000037 wineconsole.exe 00000038    0 0000003b cmd.exe 0000003c    0 0000003d wineconsole.exe 0000003e    0 0000016d NIF_conv.exe 0000016e    0 00000175 (D) C:\OpenMW 0.43.0\NIF_conv.exe 00000176    0 <== 00000171 winedbg.exe 00000172    0 System information:     Wine build: wine-3.0     Platform: i386 (WOW64)     Version: Windows 2000     Host system: Darwin     Host version: 16.7.0

After I dismissed the error message, the program would keep on running. I probably dismissed seven or eight messages while generating the main and LOD files. The armor was fine (apart from the "error-error-error" text in the window itself).

 

Karma: 0 (0 votes)

1MacThanks for the replies. Would it be possible to build one bashed patch for the TR stuff and keep the CBash for everything else?

You can, but the bug with CBash affects ALL files, not just Tamriel Rebuilt.  So if you are using any graphic replacer mods, they are either over-writing your true mods, or they are being over-written by your true mods.

I've gotten through the resource and LOD generation. I take it the error messages you mentioned are expected for generating all files, not just armor? Also, how necessary are the armor messages? I don't really crave a bunch of different in-game armors, but if it leads to messed up quest rewards or naked guards or something, then I guess I ought to do it.

Sorry, I should have been more clear as to the exact error message to expect and what not to expect.  The following excerpt shows 4 successful conversions and one failed conversion with error message (displayed in red) for "ModExporter_NIFConv_Tamriel_Data.bat":

Hidden text 

Welcome to NIF converter v1.08
creating C:\Oblivion.output\Data\Meshes\morro\sky\i
Converting sky\i\sky_in_alt_winhal_01.nif to C:\Oblivion.output\Data\Meshes\morro\sky\i\skyUinUaltUwinhalU01.nif  

Welcome to NIF converter v1.08
creating C:\Oblivion.output\Data\Meshes\morro\sky\i
Converting sky\i\sky_in_bar_frbwl_03.nif to C:\Oblivion.output\Data\Meshes\morro\sky\i\skyUinUbarUfrbwlU03.nif  

Welcome to NIF converter v1.08
creating C:\Oblivion.output\Data\Meshes\morro\sky\i
Converting sky\i\sky_in_rock_tomb_01.nif to C:\Oblivion.output\Data\Meshes\morro\sky\i\skyUinUrockUtombU01.nif   

Welcome to NIF converter v1.08
creating C:\Oblivion.output\Data\Meshes\lights\morro\sky\l
Converting sky\l\sky_lgt_alt_lantn_01.nif to C:\Oblivion.output\Data\Meshes\lights\morro\sky\l\skyUlgtUaltUlantnU01.nif
Unknown object: NiBSParticleNode
Error parsing file!

 

You should only get about 8 of that error message when running "ModExporter_NIFConv_Tamriel_Data.bat".

The following is an excerpt of output from the "ModExporter_NIFConv_Tamriel_Data_ARMO.bat".  It shows one successful conversion followed by a failed conversion with error messages (again in red).  Note that these "error!" messages can fill a full screen someimtes:

Hidden text

----------------------
NIF_Conv.exe pc\a\pc_A_GuardBoots.nif -d armor\morro\pc\a\pcUAUGuardBoots5_gnd.nif  

Welcome to NIF converter v1.08
creating C:\Oblivion.output\Data\Meshes\armor\morro\pc\a
Converting pc\a\pc_A_GuardBoots.nif to C:\Oblivion.output\Data\Meshes\armor\morro\pc\a\pcUAUGuardBoots5_gnd.nif
----------------------
NIF_Conv.exe -cl 2  -bp 3 pc\a\pc_A_GuardCuirassGC_C.nif -bp 8 TR\c\tr_c_shirt_com_001_w.nif -bp 9 TR\c\tr_c_shirt_com_001_w.nif -bp 11 TR\c\tr_c_shirt_com_001_fa.nif -bp 12 TR\c\tr_c_shirt_com_001_fa.nif -bp 13 TR\c\tr_c_shirt_com_001_ua.nif -bp 14 TR\c\tr_c_shirt_com_001_ua.nif -d armor\morro\pc\a\PCUAUStrUCuirass1.nif  

Welcome to NIF converter v1.08
creating C:\Oblivion.output\Data\Meshes\armor\morro\pc\a
Converting pc\a\pc_A_GuardCuirassGC_C.nif to C:\Oblivion.output\Data\Meshes\armor\morro\pc\a\PCUAUStrUCuirass1.nif error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!error!----------------------

 

The error messages in the ARMO batch files are very numerous and reflect the fact that NIFConv.exe has poor support for the multitude of different ways Armor NIF files can be structured as compared to the relatively straightforward structure for Static NIF files from the main resource batch file.

The error messages you reported represent memory faults that are likely corrupting the NIF files.  Oblivion is probably choking on all those corrupted files and stalling and crashing.  I don't think NIFConv.exe appears to be running well in wine... if you have windows on a true virtual machine, try that.  Otherwise, I would just make do without the converted NIF files (you will see a lot of diamonds).  Also, you can try to track down the specific NIF files causing the memory fault and delete the corrupted output file.  Another technique you could try is to process all your converted NIF output with PyFFI to see if it will detect and remove the corrupted data.

Karma: 0 (0 votes)

A lot of the quests work - thank you. :)

There is another thing which needs to be supported for the conversion to be 100% - the Sotha Sil lever and door scripts. I use them quite a lot in both Desert Region mods.

Karma: 0 (0 votes)

The error messages you reported represent memory faults that are likely corrupting the NIF files.

I might try PyFFI. I have Morrowind and OpenMW in the same wrapper as Oblivion, necessary for installing Morroblivion but the sort of thing that's generally known to cause problems in Wineskin. Do you think trying it again with Morrowind in a separate wrapper would work and be worth it? It doesn't seem like your converter actually requires Oblivion to run, right?

Karma: 0 (0 votes)

It's worth a try -- my converter only requires OpenMW libraries, it does not technically require Morrowind or Oblivion executables.  Although the converter can actually be built to run natively in a Qt/Unix environment (just like OpenMW), you seem to be having trouble with NIFConv.exe (which is Win32 only) and not the converter itself. 

**Also, NIFConv.exe does not require Oblivion.  It technically only requires Morrowind Datafiles directory and not the executable itself.

To Clarify and Summarize: The requirements for both Morrowind and Oblivion executables are only for installation of Morroblivion.  ModConverter produces ESP files that require Morroblivion to play, but has no requirement for any executables to be installed during conversion (obviously, you need Morrowind Datafiles present).

Karma: 0 (0 votes)

EnvyDeveloper

A lot of the quests work - thank you. :)

There is another thing which needs to be supported for the conversion to be 100% - the Sotha Sil lever and door scripts. I use them quite a lot in both Desert Region mods.

Thanks for the feedback!  I just posted Part 2 of my ModExporter Guide here.  You will probably find it useful for setting up other mods for custom conversion.  I'll put the Sotha Sil scripts on my todo list.

Karma: 0 (0 votes)

I tested further and only one quest in the entirety of Desert Region works in full without any sort of hassle. The sort of quests which should have the quest updated when you find your MacGuffin don't work, and there's no journal entry for this either. Even quests where you only speak to a few NPCs, breaks in the end, when the quest-giver still says what they said before. And the "topics adding" work most of the time, but sometimes it doesn't catch certain topics. You can look at City of Balmora and look for the NPC "Masha" and her "duties" topic, for an instance of this. And finally, some teleporting doors don't teleport the player at all. One instance of this is "Desert Region, Samos' Tent" in Desert Region. Despite the above, I do love how the mods are already far more playable than the previous versions, so keep up the good work. :)
Karma: 0 (0 votes)

Okay, thanks for the bug reports.  I'll try to look into the Desert Region quests conversions.  Regarding the auto-addtopic algorithm, it should actually be overly inclusive and not filtering out or skipping any occurences -- if it's missing instances, it may be related to other dialog conditions that are not converting properly.  Make sure there are no typos (there's no spell-checker/spelling guesser, so that's one thing that the algorithm will miss).  Another problem, is that if it relies on a scripted addtopic command, that behavior will fail if the script does not compile (usually due to inclusion of an unsupported command in the same script/script fragment).  Also: fully scripted dialog branching / choices are not supported.  This is where a script runs and dynamically generates dialog tree in real-time rather than pre-computing the dialog tree at compile-time.  Morrowind scripting/dialog is just far superior to Oblivion engine in that regard....

Karma: 0 (0 votes)

Hrm...when I try to run the ModExporter_NIFConv_Tamriel_Data.bat, it vomits out this error several hundred times:

The system cannot find the file specified.

'NIF_Conv.exe' is not recognized as an internal or external command, operable program or batch file.

---

I have the resources from the previous build, but I don't understand 'why' it's doing this now...

Karma: 0 (0 votes)

Puddles

Hrm...when I try to run the ModExporter_NIFConv_Tamriel_Data.bat, it vomits out this error several hundred times:

The system cannot find the file specified.

'NIF_Conv.exe' is not recognized as an internal or external command, operable program or batch file.

---

I have the resources from the previous build, but I don't understand 'why' it's doing this now...

I would try with a clean re-install of the latest OpenMW 0.43 in C:\OpenMW (outside of the program files directory), Then re-install these: https://www.patreon.com/posts/morrowind-to-feb-17272420 and then install these over-top: https://www.patreon.com/posts/update-2018-mar-17321060.  Make sure you launch by double-clicking from C:\OpenMW.  Hope that helps.

Karma: 0 (0 votes)

...Oh, that might be why everything was failing and I couldn't re-build my Batched Patch with the new .esps...I was still using the MW .42. -.-

Karma: 0 (0 votes)

Traceback (most recent call last):
  File "bash\balt.pyo", line 436, in <lambda>
  File "bash\balt.pyo", line 1605, in _conversation_wrapper
  File "bash\basher\patcher_dialog.pyo", line 194, in PatchExecute
  File "bash\patcher\patch_files.pyo", line 607, in buildPatch
  File "bash\patcher\patchers\importers.pyo", line 627, in apply
  File "bash\patcher\patchers\base.pyo", line 433, in scan_more
  File "bash\patcher\patchers\importers.pyo", line 223, in scan
  File "bash\cint.pyo", line 10629, in ConflictDetails
  File "bash\cint.pyo", line 1825, in __get__
ValueError: NULL pointer access
 
Well, I've literally never seen this error out of Wyre Bash before...huh.
Karma: 0 (0 votes)

Puddles Traceback (most recent call last):   File "bash\balt.pyo", line 436, in <lambda>   File "bash\balt.pyo", line 1605, in _conversation_wrapper   File "bash\basher\patcher_dialog.pyo", line 194, in PatchExecute   File "bash\patcher\patch_files.pyo", line 607, in buildPatch   File "bash\patcher\patchers\importers.pyo", line 627, in apply   File "bash\patcher\patchers\base.pyo", line 433, in scan_more   File "bash\patcher\patchers\importers.pyo", line 223, in scan   File "bash\cint.pyo", line 10629, in ConflictDetails   File "bash\cint.pyo", line 1825, in __get__ ValueError: NULL pointer access   Well, I've literally never seen this error out of Wyre Bash before...huh.

Wrye Bash appears to be crashing because it encountered a NULL pointer while trying to import a record from an ESP with a Bash Tag set for importing something that doesn't exist.  Either you have an ESP that is corrupted, has the wrong Bash Tag set, or your Bashed Patch configuration itself is corrupted.  Are you trying to use TR files from an older build?  Try removing all old TR files/patches/replacers/etc, than deleting your Bashed Patch, then generate and build a new Bashed Patch that only imports from the newly generated TR files from my latest modexporter update.

And when exporting the ESPs, make sure you have a clean OpenMW 0.43 and updated ModExporter that does not have any left over files CSV files from older versions of ModExporter.  If you are mixing CSV files from older versions with newer executables, this may produce corrupted ESPs.

Karma: 0 (0 votes)

It appears to be crashing when it tries to merge the TR_Fixes.esp under TR_Fixes:Creatures...hrm.

Removing the Graphics tag from the TR_Fixes.esp fixed it...somehow.

Karma: 0 (0 votes)

Puddles

It appears to be crashing when it tries to merge the TR_Fixes.esp under TR_Fixes:Creatures...hrm.

Removing the Graphics tag from the TR_Fixes.esp fixed it...somehow.

What do you mean "when it tries to merge the TR_Fixes.esp under TR_Fixes:Creatures"?

Are you using some esp file named TR_Fixes:Creatures?

Karma: 0 (0 votes)

No, I mean I was watching the Bashed Patch re-build itself, and when it reached about 75% through and started scanning for creature changes, it reached TR_Fixes:CREA. Something then caused that NULL issue and failed it.

Karma: 0 (0 votes)

Puddles

No, I mean I was watching the Bashed Patch re-build itself, and when it reached about 75% through and started scanning for creature changes, it reached TR_Fixes:CREA. Something then caused that NULL issue and failed it.

What is the Version/Date in the description box of Wrye Bash for TR_Fixes.esp?  2017-Dec-31 or 2018-Feb?  Also, what is the filesize?

EDIT: Sorry, I packaged the wrong version of the TR_Fixes.esp in Mods-for-ModExporter-2018-Feb-28.7z.  It will take me a few days to prepare the current development versions for distribution.  Until then, you can try out this current dev version.  However, your problems in Wrye Bash might be completely unrelated with it.

 

Karma: 0 (0 votes)

That TR_Fixes.esp just makes Oblivion hang indefinitely on start-up, with or without a Bashed Patch active. I'll wait for your new one! :D

Karma: 0 (0 votes)

Puddles

That TR_Fixes.esp just makes Oblivion hang indefinitely on start-up, with or without a Bashed Patch active. I'll wait for your new one! :D

Then you should probably check the rest of your system for incompatible mods (older versions of TR or associated graphic replacers, or old converted NIF/DDS files).  I will only be adding more records to TR_Fixes, so whatever is wrong with your system will only get worse, not better.

Karma: 0 (0 votes)

Hm...I wonder if I have the most recent version of TR.

Karma: 0 (0 votes)

I just wanted to share with you some things I have planned for the modexporter: https://www.patreon.com/posts/update-2018-mar-17625398

Karma: 1 (1 votes)

It's great that the NIF Converter will be done from the ground up. Too many custom meshes, from TR and Desert Region 2, have no collision whatsoever under the old one.
Karma: 0 (0 votes)

I'm following the steps, and when I get to the step that says to run the ModExporter_NIFConv files, I found that they were not created.  I tried exporting the esps again but the .bat files are not appearing in the OpenMW folder.  When should these files be created?  I should note that when I exported the esps, there were a slew of errors even though the file saved successfully.

Karma: 0 (0 votes)

martod

I'm following the steps, and when I get to the step that says to run the ModExporter_NIFConv files, I found that they were not created.  I tried exporting the esps again but the .bat files are not appearing in the OpenMW folder.  When should these files be created?  I should note that when I exported the esps, there were a slew of errors even though the file saved successfully.

Make sure OpenMW is not installed in the "\Program Files\" folder.  That's the most common reason for the bat files not to be generated.  Copy or reinstall the OpenMW folder to somewhere else like "C:\OpenMW\".  Let me know if you're still having problems.

Karma: 0 (0 votes)

That worked.  Thanks.  The mod works like a charm now, but there is a problem with the Morroblivion in Tamriel mod.  That mod transports you back to the main Worldspace when you reach the shore to the south of Vvardenfell, so the southern TR locations disappear.  Is there any way to extend the borders of the Morrowind in Tamriel Mod  so the southern locations can be used with it?

Karma: 0 (0 votes)

martod

That worked.  Thanks.  The mod works like a charm now, but there is a problem with the Morroblivion in Tamriel mod.  That mod transports you back to the main Worldspace when you reach the shore to the south of Vvardenfell, so the southern TR locations disappear.  Is there any way to extend the borders of the Morrowind in Tamriel Mod  so the southern locations can be used with it?

You can try this very old and outdated patch mod that I made for it.  However, I recommend using the PathFinder NPCs that I placed at all the Gate Passes and on the bordering cities in Cyrodiil instead.

Karma: 0 (0 votes)

Yeah, the new Path Finder route is much smoother, since a number of mods have things present on the eastern side of the Valus Mountains, and sometimes the TR in Tamriel Patch makes them inaccessible due to warping you around.

@ ponyrider0, could you post what the correct size of each of the three .esps should be? I think I have it right now, but...

Karma: 0 (0 votes)

These is great.

Karma: 0 (0 votes)

Puddles

@ ponyrider0, could you post what the correct size of each of the three .esps should be? I think I have it right now, but...

I haven't regenerated the ESPs in a few months, but here are the sizes from circa Jan 2018:

  • Tamriel_Data.esp - 6.14 MB
  • TR_Mainland.esp - 86.1 MB
  • TR_Preview.esp - 75.8 MB

I also have an alternative version of TR_Mainland that is 89.4 MB, so there is definitely some variation in sizes.

Karma: 0 (0 votes)

So, the conversion won't be 100% identical each time it's run? My Data and Preview have remained roughly the same across 4 attempts, but the Mainland one has varied by 5~mb. The smaller of the 2 Mainland.esps caused attempting to merge the Graphics from the TR_Fixes into the Bashed Patch to return a Null, it seems. I was able to successfully rebuild the patch with the larger Mainland.esps.

Karma: 0 (0 votes)

Puddles

So, the conversion won't be 100% identical each time it's run? My Data and Preview have remained roughly the same across 4 attempts, but the Mainland one has varied by 5~mb. The smaller of the 2 Mainland.esps caused attempting to merge the Graphics from the TR_Fixes into the Bashed Patch to return a Null, it seems. I was able to successfully rebuild the patch with the larger Mainland.esps.

It should stay the same size as long as you use the same modexporter.exe and the same *.CSV database files.  Mine changes constantly, as I make changes to the exe or the CSVs. -- unless there is a memory leak somewhere causing it to crash.  Then the size would change based on whenever it actually violates memory boundaries or when it starts trying to read a string in raw memory until it randomly encounters a null character.

Karma: 0 (0 votes)

I'm getting missing grass in the Bitter Coast along with many regions of mainland Morrowind after having followed the first post's instructions whereas before I on my previous conversion using the old method this didn't occur and I had grass all across the province for the most part.

A couple other things:

The distant land vanishes when using Oblivion Reloaded's Framerate manager. With it off the landscape is visible but the game lags ridiculously. Vvardenfell's landscape remains though while the mainland dissappears. 

Getting constant crashing when loading saves in Morrowind worldspace. This wasn't occurring before adding the mainland to the worldspace. Also crashing when using boats to travel around Vvardenfell.

Karma: 0 (0 votes)

Yali

I'm getting missing grass in the Bitter Coast along with many regions of mainland Morrowind after having followed the first post's instructions whereas before I on my previous conversion using the old method this didn't occur and I had grass all across the province for the most part.

You need to use the most updated TR_Fixes.esp which restores the grass to the landscape texture records.  Or manually edit the affected records with TES4Edit.

A couple other things:

The distant land vanishes when using Oblivion Reloaded's Framerate manager. With it off the landscape is visible but the game lags ridiculously. Vvardenfell's landscape remains though while the mainland dissappears. 

Please clarify if you mean distant objects vs. distant terrain.  At least in older versions, OR framemanager would decrease distant object view distance to maintain target framerate.  It's possible that the latest version of OR additionally modifies the view distance of terrain.  

If you generated LOD / _FAR.NIF files, then make sure you post-processed them with PyFFI.Toaster or some other NIF optimizing utility.  The NifConv.exe-based LOD batch files do not perform decimation, so this will affect computers that do not have SSDs and CPUs powerful enough to avoid stutter.  The new alpha versions of modexporter fix many of these issues.

Getting constant crashing when loading saves in Morrowind worldspace. This wasn't occurring before adding the mainland to the worldspace. Also crashing when using boats to travel around Vvardenfell.  

Regarding crashes/instability: there have been huge changes to the modexporter since the version in the first post.  It would be counter-productive for us to try to identify and fix a bug caused by code that no longer exists -- hopefully, you can wait a few more days until I am ready with a new version.

Please clarify what you mean by "using boats".  Are you talking about a boat mod or do you mean the Vanilla boat transport NPCs?  Please give their EDID/FormID.  

Karma: 0 (0 votes)

The distant terrain and objects like rocks etc dissapear within 30 seconds of loading a save. They're there and then gradually vanish except for Vvardenfell although the flora and other objects also vanish from Vvardenfell just not the landscape or Vivec cantons.

I'm using the travel services at boats like the one at Hlad Oad, not a mod. It seems to crash in this instance rather than using fast travel weirdly.

I'll wait a few more days to retry conversion with the new version and see if it improves a lot of the issues I'm having.

Karma: 0 (0 votes)

Yali

The distant terrain and objects like rocks etc dissapear within 30 seconds of loading a save. They're there and then gradually vanish except for Vvardenfell although the flora and other objects also vanish from Vvardenfell just not the landscape or Vivec cantons.

It definitely sounds like you're triggering Critical Mode in Oblivion Reloaded's framerate manager. Try these settings in your OblivionReloaded.ini file:

[FrameRate]
Enabled = 1
Average = 33
Min = 12
Critical = 1
Gap = 3
Delay = 10
FadeStep = 1.0
FadeMinObjects = 15
FadeMinActors = 10
GridStep = 5
GridMin = 15
Karma: 0 (0 votes)

Off-topic, but I'm intrigued by the radically improved FPS from newly generated VWD objects you mentioned on your development blog, ponyrider. Are there any general applications for this discovery, like say, the release of some new vanilla Oblivion VWD meshes and textures to replace RAEVWD? Or even better, a tool that lets players generate their own VWD data based on their own modlists? I know you're focused on your mod converter, but this strikes me as a discovery a lot of non-Morroblivion users would appreciate!

Karma: 0 (0 votes)

The latest version of OR which I'm using is missing the Critical variable it seems.

Seems your settings helped though, although most of the mainland is still missing. Strange that Vvardenfell is entirely visible but looking towards Old Ebonheart from the west bank bank of Thirr yields an empty landmass.

I'm gonna try increasing the Grid Min and Grid step to a much larger number and see if that helps.

Karma: 0 (0 votes)

1Mac

Off-topic, but I'm intrigued by the radically improved FPS from newly generated VWD objects you mentioned on your development blog, ponyrider. Are there any general applications for this discovery, like say, the release of some new vanilla Oblivion VWD meshes and textures to replace RAEVWD? Or even better, a tool that lets players generate their own VWD data based on their own modlists? I know you're focused on your mod converter, but this strikes me as a discovery a lot of non-Morroblivion users would appreciate!

Hehe, regarding VWD/LOD generation -- I've always felt that the gold standard was MGE-XE's distant lands wizard which walked you through some questions to configure performance vs quality and then autogenerated all the decimated terrain, static meshes and low-res textures.  I've always hated the fact that Oblivion players only had the choice of a few VWD mods for Vanilla Oblivion (and the most popular mods) where the quality and performance parameters are all preset and unchangeable...  Let's just say that may not be the case much longer.

As for the speed improvements: this is only for Morroblivion (where performance is notoriously worse than in Cyrodiil).  I think the performance improvement just puts the worst parts of Morroblivion on par with Cyrodiil in terms of optimization.  Remeber that most of Morroblivion meshes were generated by a NIFConversion tool that was created over 10 years ago -- long before the modding community truly understood the TES4 engine or the TES4 NIF/ESM file formats and before we had any of the optimization tools we have now.

 

Karma: 0 (0 votes)

Yali

The latest version of OR which I'm using is missing the Critical variable it seems.

Seems your settings helped though, although most of the mainland is still missing. Strange that Vvardenfell is entirely visible but looking towards Old Ebonheart from the west bank bank of Thirr yields an empty landmass.

I'm gonna try increasing the Grid Min and Grid step to a much larger number and see if that helps.

Are you sure you correctly used TES4LL to generate the distant terrain?  and TES4LODGen to generate distant objects (boulders, cliffaces, buildings, trees).

Karma: 0 (0 votes)

Are you sure you correctly used TES4LL to generate the distant terrain?  and TES4LODGen to generate distant objects (boulders, cliffaces, buildings, trees).

Yeah, I used TES4LL and did the maximum .bat generation along with normalmaps followed by TES4LODGen and the landscape and objects are fully visible when not using Framerate manager in OR but the lag is so bad that it renders Oblivion unplayable. Turning it on and reducing the Min Grid to 15 shows all of Vvardenfell but mainland Morrowind is pocketed with holes especially the further I look. For instance looking towards Velothis from Hlad Oad at Min Grid of 37 showed the landscape of the western shore except with many holes/floating trees in the distance. 

Here's a shot on the western banks of River Thirr looking eastward along the southern Inner Sea with a Grid Min of 25.

Karma: 0 (0 votes)

Yali

... the landscape and objects are fully visible when not using Framerate manager in OR but the lag is so bad that it renders Oblivion unplayable. Turning it on and reducing the Min Grid to 15 shows all of Vvardenfell but mainland Morrowind is pocketed with holes especially the further I look. For instance looking towards Velothis from Hlad Oad at Min Grid of 37 showed the landscape of the western shore except with many holes/floating trees in the distance. 

Hehe, my Min Grid is set to 5 when I want a good framerate and crank it all the way up to 11 when I'm taking screenshots.  Jokes aside, I do not trust the "minimum" and ​"critical" framerate changes that OR makes to the graphics engine -- I would set both those values to 0 if you are seeing any odd graphical glitches.

Regarding unplayable frames with Framerate manager off: I recommend that your run PyFFI.Toaster optimize on all of your meshes that were generated by the TR conversion.  If performance is still unacceptable, then remove all of your _FAR.NIF files and test again.  If that improves framerate, then you need to decimate/polyreduce the meshes in Blender... I'll try to post a new alpha version of the modconverter for everyone to try this out as soon as I can.

Karma: 0 (0 votes)

Here's looking at Morrowind from Uld Vraech. Notice Vvardenfell fully visible but the mainland from the ash swamp on is absent. 

Here's a shot near Cormar:

Both these were with Grid Min at 15. I'm gonna try switching it to 0 and see what happens. The latest version of OR doesn't have a Critical section so it's the best I can do. I wonder why it's only the TR area that's affected.

Karma: 0 (0 votes)

Just be aware that Min and Critical Framerate is not the same as GridMin.  The first two (Min and Critical) are measurements of frames per second and define the threshold below which OR will start breaking the rendering pipeline / graphics engine in attempt to increase framerate.  GridMin is a measurement of worldspace cells and determines the maximum reduction to the distant object viewdistance that OR will make when FPS is below the average/desired framerate.

Regarding why it only affects TR: if there is a landscape record conflict in the ESM, that will cause a hole in the worldspace where you will see floating trees.  However, this record conflict would result in a permanent hole in both the distant landscape render as well as the full detail landscape render when you get near enough for the full detail landscape to load.  The problem that you have described is that the holes in the landscape/floating trees only affect your distant landscape render and NOT the full detail lands when you are directly on top of the land.  Additionally, you describe that the holes are dynamic and not permanent -- that they appear and disappear.  If this is not the case and the holes are in fact permanent, then either your ESM is currnetly corrupted with landscape record conflicts or you used a corrupted ESM to generate your distant lands with TES4LL.

Also: all of your tweaks to the OR framerate manager settings are just masking the real issue: which is that the quantity/complexity of distant object meshes is too much for your computer to handle.  You are making OR do something on the fly which you should have done prior to even starting the game -- which is to optimize the quantity and detail of the VWD/_FAR.NIF meshes to produce the desired quality/performance ratio for your system.

Karma: 0 (0 votes)

The holes are definitely dynamic. I tried PyFFI but it wouldn't work for some reason. Apparently I was missing niftoaster.py so I found a version online on git but it still refused to work due to a "syntax error" in the file. I'll try looking for another version or at least wait for your updated mod exporter to see if that improves many of my issues.

Karma: 0 (0 votes)

Try replacing the distant landscape files with the pre-generated ones from this mod: https://tesrenewal.com/forums/morroblivion-mod-releases/relwip-tamriel-rebuilt-distantlod

If this fixes your problems, then your distant landscape files are corrupted.

Also, PyFFI optimization (or equivalent) is not optional unless you want to view a slideshow.  The converted NIF files are full of duplicate records and redundant vertices.  The new alpha modexporter will require it just as much if not more.  Make sure you installed the correct version of PyFFI for your version of Python.  Do NOT install 64bit Python 2.6 as it reportedly does not have XML support which is needed by PyFFI.  I don't know if this applies to Python 2.7 as well.  I suggest you download and install only the versions of Python/PyFFI/Blender/Nifscripts listed on this page: http://niftools.sourceforge.net/wiki/Blender  You will need all of them for the new version of modexporter.

Karma: 0 (0 votes)