DynDOLOD Game Questions

DynDOLOD requires SKSE

SKSE is not installed, outdated or not running at all.

Make sure you have the correct SKSE version for the current Skyrim version that is used and none of its file are overwritten by other mods.

Check the logs in c:\Users\[USERNAME]\Documents\My Games\[Skyrim|Skyrim Special Edition|Skyrim VR]\SKSE\

DynDOLOD requires PapyrusUtil

If the intention is to use DynDOLOD DLL, make sure the papyrus scripts from DynDOLOD DLL overwrite the papyrus scripts from DynDOLOD Resources.

PapyrusUtil is not installed, outdated or not running at all.

Make sure the correct PapyrusUtil version for the current Skyrim and SKSE versions is installed and that none of its files are overwritten by other mods.

Check the c:\Users\[USERNAME]\Documents\My Games\[Skyrim|Skyrim Special Edition|Skyrim VR]\SKSE\[skse|skse64].log that the PapyrusUtil DLL was loaded correctly.

DynDOLOD requires DynDOLOD.DLL

If the intention is to use PapyrusUtil, make sure the papyrus scripts from DynDOLOD Resources are not overwritten by the papyrus scripts from DynDOLOD DLL. Do not install anything from DynDOLOD DLL.

The DynDOLOD.DLL is not installed into the correct game ..\Data\SKSE\Plugins folder, outdated or not running at all.

Make sure the correct DynDOLOD.DLL version for the current Skyrim and SKSE versions is installed and that none of its files are overwritten by other mods. The DynDOLOD DLL papyrus scripts need to overwrite the papyrus scripts from DynDOLOD Resources which are for PapyrusUtil.

Check the c:\Users\[USERNAME]\Documents\My Games\[Skyrim|Skyrim Special Edition|Skyrim VR]\SKSE\[skse|skse64|sksevr].log that the DynDOLOD.DLL was loaded correctly.

DynDOLOD requires plugins generated with version x.xx or higher

Either the plugins were generated with an older standalone version or the papyrus scripts from DynDOLOD Resources / DynDOLOD DLL are the wrong version.

Make sure to generate LOD with DynDOLOD standalone version that has matching or higher version than DynDOLOD Resources / DynDOLOD DLL. Do not use DynDOLOD Resources / DynDOLOD DLL with higher version than version of DynDOLOD standalone.

Make sure the DynDOLOD Resources / DynDOLOD DLL version is high enough for the DynDOLOD standalone that is being used. For example plugins generated with DynDOLOD standalone 2.45 require DynDOLOD Resources 2.45 / DynDOLOD DLL 2.45

DynDOLOD papyrus scripts are the wrong version

In case the large reference bugs workarounds setting has been enabled and DynDOLOD plugins with version 3.xx have been generated, make sure to install the latest version of DynDOLOD DLL NG and Scripts as explained and linked by the Large Reference Bugs Workarounds Requirements.

Otherwise, if DynDOLOD plugins of version 2.xx have been installed, make sure that nothing overwrites the papyrus script 2.x in DynDOLOD Resources SE for PapyrusUtil or the DynDOLOD DLL SE - Scripts 2.x for DynDOLOD DLL.

DynDOLOD could/can not read/find *
DynDOLOD* does not belong to these DynDOLOD plugins

Make sure SKSE and DynDOLOD DLL or PapyrusUtil are installed correctly, see DynDOLOD requires DynDOLOD.DLL or PapyrusUtil above.

Make sure the *.[json|txt] data files in the SKSE subfolder of the DynDOLOD output and the DynDOLOD plugins are in sync from the same generation process. Check the DynDOLOD SkyUI MCM Information page in the game that all plugins and files have the same bunch of numbers.

Make sure the *.[json|txt] data files in the SKSE subfolder of the DynDOLOD output are in the load order and can be read. In case DynDOLOD DLL is used, check the c:\Users\[USERNAME]\Documents\My Games\[Skyrim|Skyrim Special Edition|Skyrim VR]\SKSE\DynDOLOD.log for errors.

ILS or CTD

Make sure to use the latest version of DynDOLOD was used to generate LOD for the current load order.

If DynDOLOD DLL LE/SE/VR is used make sure to use the correct version for the runtime. If DynDOLOD DLL NG is used, make sure that the latest version is used. Make sure the papyrus scripts are not being overwritten.

Make sure the latest version of DynDOLOD Resources Core Files are installed completely and active in the load order.

Pay attention to log messages and the summary of messages for warnings and errors about issues that are kown to cause CTD.

More LOD uses more memory and this can cause infinite loading screen (ILS) or crash to desktop (CTD) if the game is not setup correctly. This should generally not be a problem with Skyrim Special Edition or Skyrim VR, but for Skyrim double check heap memory usage (block 1) with Memory Blocks Log and adjust SKSE memory settings. Or use the alternative OSAllocator from Crash Fixes with SKSE Plugin Preloader. Do not use SSME or Safety Load. Setup ENBoost correctly. Set ExpandSystemMemoryX64=false in enblocal.ini.

Do not use the experimental TreeFullFallBack=0 setting without understanding what it does and what it is for.

See ..DynDOLOD\Docs\DynDOLOD-README.txt for checking if a missing or invalid asset (meshes or textures) is the cause.

Large load orders with many plugins might surpass the reference handle cap. SSE Engine Fixes prints a warning. Consider using the large reference bugs workarounds with the DynDOLOD DLL NG as it requires less references. Otherwise, try setting Temporary=1 in ..DynDOLOD\Edit Scripts\DynDOLOD\DynDOLOD_[GameMode].ini may help in these situations, however converting large new land plugins to ESM is the preferred solution.

If there are problems saving in Skyrim Special Edition, install SSE Engine Fixes 4.8 or newer and set SaveGameMaxSize = true in the EngineFixes.toml. Alternatively add/set [SaveGame] uiCompression=1 in Skyrim.INI to change from the default 2 for LZ4 to 1 for zlib compression. 0 means no compression like games are saved in Skyrim.

If there are problems loading saves, make sure the clean save procedure was followed correctly when updating from scratch.

The DynDOLOD and Occlusion plugins might show up in crash logs a lot, since they are typically the plugins last to overwrite worldspace and cell records, so careful reading and interpretation of the stacks and registers etc. might be required to identify the actual cause of the problem.

It is very unlikely for Occlusion.esp to cause crashes by itself. It is created by copying worldspace and cell records from the winning plugins before it, then update the TVDT Occlusion data which itself can not really cause crashes.

Install a crash logger and troubleshoot the real cause of crashes as explained in the ..DynDOLOD\Docs\DynDOLOD-README.txt.

Ignore nonsensical suggestions that autosaves need to be disabled because of papyrus scripts not completing or similar made up stories about plugins being "known to cause CTD" when fast traveling or changing locations because of scripting etc. This is not how anything works. If disabling autosaves would be required to prevent CTD, manual saves would have the same issue and it would actually be widely known, would have been reported, troubleshooted, analyzed, fixed, had known workarounds and/or be part of every modding guide since over a decade.

In case any help is required with analyzing the crash log or to report actual problems, make a post on the official DynDOLOD support forum. This includes believing having found an issue with DynDOLOD and in particular when using a workaround or fix like disabling mod or plugins, changing certain settings etc.

Save game size

More LOD means more data. Dynamic LOD saves data and current state of several 10,000s of objects which equates to several MB. Data and current states are saved, so that the same work does not have to be done over and over again. Once all world spaces have been visited this is more less a one time increase.

DynDOLOD does not cause save bloat. It does not use the methods that cause save bloat. Never did. Consult forums with knowledgeable people that investigate, discuss and solve problems like the official DynDOLOD support forum.

Large load orders with many plugins might surpass the reference handle cap. SSE Engine Fixes prints a warning. Setting Temporary=1 in ..DynDOLOD\Edit Scripts\DynDOLOD\DynDOLOD_[GameMode].ini may help in these situations, however converting large new land plugins to ESM is the preferred solution.

Consider using the large reference bugs workarounds with the DynDOLOD DLL NG as it requires considerable less references and does not use papyrus scripting for the dynamic LOD. It stores data in the SKSE co-save.

As a last resort, unchecking Dynamic LOD in the advanced mode will reduce plugin and save game size. The result will still look and match drastically better than vanilla object LOD and tree LOD generated with CK/xLODGen but not have any dynamic LOD.

Script instances

Script instances are harmless. A script instance is just data for a script that is currently not active, so the script can execute more efficiently the next time it is active.

The scripts of DynDOLOD are not at all script intensive. There are no scripts that are constantly running. It uses small highly optimized papyrus scripts for dynamic LOD, which run in parallel only when needed at the moment dynamic LOD models are enabled or disabled.

Consider using the large reference bugs workarounds were all of the dynamic LOD is done in the DynDOLOD DLL NG instead of papyrus scripts.

Papyrus Script errors

Make sure to use matching script and plugin versions

Save game update gone wrong. Test with new game, if successful, repeat clean save procedure.