Jump to content

Question

Posted

Dynamic Distant Objects LOD - DynDOLOD

 

Finally I can see my house from here

 

You know the price for my mods: blood, sweat and tears. Oh, and your first born.

If you want to help other authors of quality mods then donate to them directly.


For latest information and instructions see the DynDOLOD 2.18 UPDATE POST


What is this?

DynDOLOD is a set of tools based on TES5Edit and TES5LODGen to automatically create a Skyrim mod based on the load order which adds distant LOD for objects to Skyrim. By combining DynDOLOD with TES5LODGen users can create drastically enhanced traditional static LOD plus tree LOD and the new, optional dynamic distant object LOD in a few 'simple' steps.

DynDOLOD is meant for enthusiast modders who are familiar with using TES5Edit. Enthusiast modders have a general knowledge of computers, folders and files, especially Skyrims 'Data' folders and how to install mods safely with a manager or manually.

To fully expand the visual experience and use the additional features offered by TES5LODGen the DynDOLOD package comes with over 1000 new or updated LOD models for objects that were badly missing from the original game like the Skyhaven Temple or landscape features like roads, smaller rocks and dirt cliffs that simply make the distant landscape look much more natural and alive.


What does it do?

It makes Skyrim look like this

59721-1-1427159829.jpg59721-2-1427159829.jpg59721-1-1427289504.jpg59721-4-1427159830.jpg

59721-1-1427419467.jpg59721-2-1427419467.jpg59721-3-1427419468.jpg59721-4-1427419468.jpg

59721-1-1427465578.jpg59721-2-1427465579.jpg59721-3-1427465579.jpg59721-4-1427465579.jpg

59721-1-1427470182.jpg59721-2-1427470183.jpg59721-3-1427470183.jpg59721-4-1427470183.jpg

59721-1-1427470235.jpg59721-2-1427470235.jpg59721-3-1427470235.jpg59721-4-1427470236.jpg

 


Requirements

SKSE

PapyrusUtil 2.8 or higher

DynDOLOD Resources - Make sure to use DynDOLOD Resources version only with matching or higher DynDOLOD Standalone versions but never with older versions.

Vanilla Skyrim LOD Billboards from TES5LODGen or Indistinguishable Vanilla Tree Billboards. If using tree mods that do not include billboards, check TES5LODGen for ready-to-use tree LOD billboards for some tree mods. For STEP users all billboards are included in STEP Texture Compilation.


Download

Download standalone and resources from Nexus or use Mega links from the update post

There are quickstart instruction in the main folder. Also check the folder called 'docs' for additional information. See the update post for latest installation information and guides.

CC BY-NC-SA

=======================================================================

Updating DynDOLOD

=======================================================================

Read the update posts for each new version for version specific information and update instructions.

Also read the manual how to update an existing save game, watch the video or check DynDOLOD SkyUI MCM.

[spoiler=DynDOLOD-Changelog.txt]

=======================================================================

DynDOLOD - Dynamic Distant Objects LOD - Sheson

=======================================================================

  Reveal hidden contents

 

 

 

Credits

 

TES5Edit Team in general

 

Ehamloptiran and Zilav for TES5LODGen and LODGen for trees

 

Bethesda for the game, models and textures

 

NifTools

 

DynDOLOD includes LOD assets based on models and/or textures from:


 

Holy Cow I fixed Skyrim - Sheson

  • +1 15

Recommended Posts

  • 0
Posted

Hello all, I'm having an issue after both upgrading and doing a clean install of DynDOLOD, so I'm hoping I can get some help in narrowing down where the problem is coming from. I recently installed a new mod that added extra ruins and buildings, etc around the Tamriel worldspace, and so I ran an update on DynDOLOD. However, since then I have no dynamic LOD and some static LOD no longer appears (namely the roads and some smaller structures). I have tried updating twice and even doing a total "clean" reinstall of DynDOLOD. Any help with this would be very appreciated.

  • 0
Posted
  On 12/31/2015 at 1:41 AM, ArecaidianFox said:

Hello all, I'm having an issue after both upgrading and doing a clean install of DynDOLOD, so I'm hoping I can get some help in narrowing down where the problem is coming from. I recently installed a new mod that added extra ruins and buildings, etc around the Tamriel worldspace, and so I ran an update on DynDOLOD. However, since then I have no dynamic LOD and some static LOD no longer appears (namely the roads and some smaller structures). I have tried updating twice and even doing a total "clean" reinstall of DynDOLOD. Any help with this would be very appreciated.

Did you follow the update instructions found in the manual?

  • 0
Posted
  On 12/31/2015 at 2:16 AM, TechAngel85 said:

Did you follow the update instructions found in the manual?

I tried one more clean reinstall, and it worked, at least for as much as I can see right now. I'm not certain what the issue was, the manual is my bible whenever I do anything with DynDOLOD. I must have missed something somewhere, as it's the only thing that makes sense.

  • 0
Posted

I'm installing DynDOLOD for the first time and I keep getting this error(Could not determine CELL for persistent exterior references), after that I can't save or exit TES5Edit. I did everything correctly in the video or am I just missing something here? Help ASAP would be much appreciated :)

Here is the bug report:

date/time         : 2016-01-01, 09:18:32, 470ms
computer name     : ACCALIA
user name         : Seth
registered owner  : sethaaronpadayhag@yahoo.com
operating system  : Windows 8 x64 build 9200
system language   : English
system up time    : 1 day 1 hour
program up time   : 7 minutes 12 seconds
processors        : 8x Intel® Core i7-4790 CPU @ 3.60GHz
physical memory   : 12005/16245 MB (free/total)
free disk space   : (C:) 134.76 GB (F:) 435.17 GB
display mode      : 1920x1080, 32 bit
process id        : $19e0
allocated memory  : 1.01 GB
executable        : TES5Edit.exe
exec. date/time   : 2015-11-09 15:07
version           : 3.1.2.0
compiled with     : Delphi XE
madExcept version : 4.0.5
callstack crc     : $0e89368e, $1d3be098, $a4d9ea10
exception number  : 1
exception class   : Exception
exception message : Could not determine CELL for persistent exterior references.
 
main thread ($19f0):
007a1f89 +bad TES5Edit.exe wbImplementation 8625 +160 TwbMainRecord.UpdateCellChildGroup
007a0488 +03c TES5Edit.exe wbImplementation 8238   +6 TwbMainRecord.SetIsPersistent
00a184ab +053 TES5Edit.exe wbScriptAdapter   984   +2 IwbMainRecord_SetIsPersistent
009a74f6 +09e TES5Edit.exe JvInterpreter              GetFun
009a7c4f +28b TES5Edit.exe JvInterpreter              TJvInterpreterAdapter.GetValue
009aba14 +064 TES5Edit.exe JvInterpreter              TJvInterpreterExpression.GetValue
009ac63d +09d TES5Edit.exe JvInterpreter              TJvInterpreterFunction.GetValue
009b05c8 +01c TES5Edit.exe JvInterpreter              TJvInterpreterUnit.GetValue
009ab008 +164 TES5Edit.exe JvInterpreter              TJvInterpreterExpression.InternalGetValue
009ad479 +05d TES5Edit.exe JvInterpreter              TJvInterpreterFunction.InterpretIdentifier
009ac7e1 +0e5 TES5Edit.exe JvInterpreter              TJvInterpreterFunction.InterpretStatement
009ad670 +054 TES5Edit.exe JvInterpreter              TJvInterpreterFunction.InterpretIf
009ac831 +135 TES5Edit.exe JvInterpreter              TJvInterpreterFunction.InterpretStatement
009ad5b1 +0b1 TES5Edit.exe JvInterpreter              TJvInterpreterFunction.InterpretBegin
009ac47a +052 TES5Edit.exe JvInterpreter              TJvInterpreterFunction.InFunction
009b09bf +0c3 TES5Edit.exe JvInterpreter              TJvInterpreterUnit.ExecFunction
009b070a +15e TES5Edit.exe JvInterpreter              TJvInterpreterUnit.GetValue
009ab008 +164 TES5Edit.exe JvInterpreter              TJvInterpreterExpression.InternalGetValue
009ad479 +05d TES5Edit.exe JvInterpreter              TJvInterpreterFunction.InterpretIdentifier
009ac7e1 +0e5 TES5Edit.exe JvInterpreter              TJvInterpreterFunction.InterpretStatement
009ad5b1 +0b1 TES5Edit.exe JvInterpreter              TJvInterpreterFunction.InterpretBegin
009ac828 +12c TES5Edit.exe JvInterpreter              TJvInterpreterFunction.InterpretStatement
009adb9f +1b3 TES5Edit.exe JvInterpreter              TJvInterpreterFunction.InterpretFor
009ac84c +150 TES5Edit.exe JvInterpreter              TJvInterpreterFunction.InterpretStatement
009ad5b1 +0b1 TES5Edit.exe JvInterpreter              TJvInterpreterFunction.InterpretBegin
009ac47a +052 TES5Edit.exe JvInterpreter              TJvInterpreterFunction.InFunction
009b09bf +0c3 TES5Edit.exe JvInterpreter              TJvInterpreterUnit.ExecFunction
009b070a +15e TES5Edit.exe JvInterpreter              TJvInterpreterUnit.GetValue
009ab008 +164 TES5Edit.exe JvInterpreter              TJvInterpreterExpression.InternalGetValue
009ad479 +05d TES5Edit.exe JvInterpreter              TJvInterpreterFunction.InterpretIdentifier
009ac7e1 +0e5 TES5Edit.exe JvInterpreter              TJvInterpreterFunction.InterpretStatement
009ad5b1 +0b1 TES5Edit.exe JvInterpreter              TJvInterpreterFunction.InterpretBegin
009ac828 +12c TES5Edit.exe JvInterpreter              TJvInterpreterFunction.InterpretStatement
009ad670 +054 TES5Edit.exe JvInterpreter              TJvInterpreterFunction.InterpretIf
009ac831 +135 TES5Edit.exe JvInterpreter              TJvInterpreterFunction.InterpretStatement
009ad5b1 +0b1 TES5Edit.exe JvInterpreter              TJvInterpreterFunction.InterpretBegin
009ac828 +12c TES5Edit.exe JvInterpreter              TJvInterpreterFunction.InterpretStatement
009adc50 +264 TES5Edit.exe JvInterpreter              TJvInterpreterFunction.InterpretFor
009ac84c +150 TES5Edit.exe JvInterpreter              TJvInterpreterFunction.InterpretStatement
009ad5b1 +0b1 TES5Edit.exe JvInterpreter              TJvInterpreterFunction.InterpretBegin
009ac828 +12c TES5Edit.exe JvInterpreter              TJvInterpreterFunction.InterpretStatement
009adb9f +1b3 TES5Edit.exe JvInterpreter              TJvInterpreterFunction.InterpretFor
009ac84c +150 TES5Edit.exe JvInterpreter              TJvInterpreterFunction.InterpretStatement
009ad5b1 +0b1 TES5Edit.exe JvInterpreter              TJvInterpreterFunction.InterpretBegin
009ac47a +052 TES5Edit.exe JvInterpreter              TJvInterpreterFunction.InFunction
009b09bf +0c3 TES5Edit.exe JvInterpreter              TJvInterpreterUnit.ExecFunction
009b070a +15e TES5Edit.exe JvInterpreter              TJvInterpreterUnit.GetValue
009ab008 +164 TES5Edit.exe JvInterpreter              TJvInterpreterExpression.InternalGetValue
009ad479 +05d TES5Edit.exe JvInterpreter              TJvInterpreterFunction.InterpretIdentifier
009ac7e1 +0e5 TES5Edit.exe JvInterpreter              TJvInterpreterFunction.InterpretStatement
009ad5b1 +0b1 TES5Edit.exe JvInterpreter              TJvInterpreterFunction.InterpretBegin
009ac828 +12c TES5Edit.exe JvInterpreter              TJvInterpreterFunction.InterpretStatement
009ad670 +054 TES5Edit.exe JvInterpreter              TJvInterpreterFunction.InterpretIf
009ac831 +135 TES5Edit.exe JvInterpreter              TJvInterpreterFunction.InterpretStatement
009ad5b1 +0b1 TES5Edit.exe JvInterpreter              TJvInterpreterFunction.InterpretBegin
009ac47a +052 TES5Edit.exe JvInterpreter              TJvInterpreterFunction.InFunction
009b09bf +0c3 TES5Edit.exe JvInterpreter              TJvInterpreterUnit.ExecFunction
009b070a +15e TES5Edit.exe JvInterpreter              TJvInterpreterUnit.GetValue
009ab008 +164 TES5Edit.exe JvInterpreter              TJvInterpreterExpression.InternalGetValue
009a9b7d +139 TES5Edit.exe JvInterpreter              Expression
009aa16f +72b TES5Edit.exe JvInterpreter              Expression
009aa654 +05c TES5Edit.exe JvInterpreter              TJvInterpreterExpression.Expression1
009aa72d +039 TES5Edit.exe JvInterpreter              TJvInterpreterExpression.Expression2
009ad646 +02a TES5Edit.exe JvInterpreter              TJvInterpreterFunction.InterpretIf
009ac831 +135 TES5Edit.exe JvInterpreter              TJvInterpreterFunction.InterpretStatement
009ad5b1 +0b1 TES5Edit.exe JvInterpreter              TJvInterpreterFunction.InterpretBegin
009ac828 +12c TES5Edit.exe JvInterpreter              TJvInterpreterFunction.InterpretStatement
009adb9f +1b3 TES5Edit.exe JvInterpreter              TJvInterpreterFunction.InterpretFor
009ac84c +150 TES5Edit.exe JvInterpreter              TJvInterpreterFunction.InterpretStatement
009ad5b1 +0b1 TES5Edit.exe JvInterpreter              TJvInterpreterFunction.InterpretBegin
009ac828 +12c TES5Edit.exe JvInterpreter              TJvInterpreterFunction.InterpretStatement
009ad6a7 +08b TES5Edit.exe JvInterpreter              TJvInterpreterFunction.InterpretIf
009ac831 +135 TES5Edit.exe JvInterpreter              TJvInterpreterFunction.InterpretStatement
009ad5b1 +0b1 TES5Edit.exe JvInterpreter              TJvInterpreterFunction.InterpretBegin
009ac47a +052 TES5Edit.exe JvInterpreter              TJvInterpreterFunction.InFunction
009b09bf +0c3 TES5Edit.exe JvInterpreter              TJvInterpreterUnit.ExecFunction
009b0c6d +145 TES5Edit.exe JvInterpreter              TJvInterpreterUnit.CallFunctionEx
009b0aee +062 TES5Edit.exe JvInterpreter              TJvInterpreterUnit.CallFunction
00a5fd1e +226 TES5Edit.exe frmViewMain      6918  +43 TfrmMain.ApplyScript
00a606fc +104 TES5Edit.exe frmViewMain      7017  +13 TfrmMain.mniNavApplyScriptClick
00525e97 +0a7 TES5Edit.exe Menus                      TMenuItem.Click
00527393 +013 TES5Edit.exe Menus                      TMenu.DispatchCommand
00528572 +082 TES5Edit.exe Menus                      TPopupList.WndProc
005284c1 +01d TES5Edit.exe Menus                      TPopupList.MainWndProc
004c4e8c +014 TES5Edit.exe Classes                    StdWndProc
7623a67b +00b user32.dll                              DispatchMessageW
005b2133 +0f3 TES5Edit.exe Forms                      TApplication.ProcessMessage
005b2176 +00a TES5Edit.exe Forms                      TApplication.HandleMessage
005b24a1 +0c9 TES5Edit.exe Forms                      TApplication.Run
00a91faf +05f TES5Edit.exe TES5Edit           77   +7 initialization
770c7c02 +022 KERNEL32.DLL                            BaseThreadInitThunk
 
thread $1788 (TWorkerThread):
76502cc1 +b1 KERNELBASE.dll                      WaitForSingleObjectEx
76502bfd +0d KERNELBASE.dll                      WaitForSingleObject
005d21e9 +19 TES5Edit.exe   VirtualTrees 6308 +3 TWorkerThread.Execute
00472cf7 +2b TES5Edit.exe   madExcept            HookedTThreadExecute
004c21c6 +42 TES5Edit.exe   Classes              ThreadProc
00407588 +28 TES5Edit.exe   System        148 +0 ThreadWrapper
00472bd9 +0d TES5Edit.exe   madExcept            CallThreadProcSafe
00472c43 +37 TES5Edit.exe   madExcept            ThreadExceptFrame
770c7c02 +22 KERNEL32.DLL                        BaseThreadInitThunk
>> created by main thread ($19f0) at:
005d20d1 +19 TES5Edit.exe   VirtualTrees 6251 +1 TWorkerThread.Create
 
thread $410:
00472bd9 +0d TES5Edit.exe madExcept CallThreadProcSafe
00472c43 +37 TES5Edit.exe madExcept ThreadExceptFrame
770c7c02 +22 KERNEL32.DLL           BaseThreadInitThunk
>> created by main thread ($19f0) at:
760e9e7e +00 combase.dll
 
thread $1944:
770c7c02 +22 KERNEL32.DLL  BaseThreadInitThunk
 
thread $1038:
770c7c02 +22 KERNEL32.DLL  BaseThreadInitThunk
  • 0
Posted

xEdit doesn't create persistent CELL record itself, so SetIsPersistent failed. Need to copy that CELL first into DynDoLOD.esp just in case, I'm sure Sheson will quickly fix it.

  • 0
Posted
  On 1/1/2016 at 1:29 AM, Wolfgang360 said:

 

I'm installing DynDOLOD for the first time and I keep getting this error(Could not determine CELL for persistent exterior references), after that I can't save or exit TES5Edit. I did everything correctly in the video or am I just missing something here? Help ASAP would be much appreciated :)

Here is the bug report:

date/time         : 2016-01-01, 09:18:32, 470ms
computer name     : ACCALIA
user name         : Seth
registered owner  : sethaaronpadayhag@yahoo.com
operating system  : Windows 8 x64 build 9200
system language   : English
system up time    : 1 day 1 hour
program up time   : 7 minutes 12 seconds
processors        : 8x Intel® Core™ i7-4790 CPU @ 3.60GHz
physical memory   : 12005/16245 MB (free/total)

Are you trying to generate LOD with Claralux in the load order? Remove it for now. If not please post/upload ..\TES5Edit\TES5Edit_log.txt

  • 0
Posted (edited)
  On 1/1/2016 at 7:20 AM, zilav said:

xEdit doesn't create persistent CELL record itself, so SetIsPersistent failed. Need to copy that CELL first into DynDoLOD.esp just in case, I'm sure Sheson will quickly fix it.

So the root cause is probably a mod with a record that has the flag set but is in the temporary cell. DynDOLOD tries to update something on the record and the error shows up when creating the overwrite?

A record in temporary cells with the flag set works in the game like it is in the persistent cell when I did a quick test once. But CK throws warnings too, so it probably be safer not to do it.

Edited by sheson
  • 0
Posted
  On 1/1/2016 at 12:46 PM, sheson said:

So the root cause is probably a mod with a record that has the flag set but is in the temporary cell. DynDOLOD tries to update something on the record and the error shows up when creating the overwrite?

A record in temporary cells with the flag set works in the game like it is in the persistent cell when I did a quick test once. But CK throws warnings too, so it probably be safer not to do it.

Setting persistent flag moves the ref record into Persistent CELL or Persistent Cell Children group. In interiors it is not a problem and Peristent Cell Children group will be created by xEdit if not exists. In exterior however it searches for peristent CELL of WRLD but doesn't create it if doesn't exist.

  • 0
Posted
  On 1/1/2016 at 7:52 PM, elenhil said:

Sheson, about that 2-stage DynDOLOD+Open Cities instruction. Should one enable/disable Candles/GlowFX/Windows for one of the steps?

I have not tested, but it should be enabled for both steps and be fine. I suggest to not check "Fake lights child world" (unless you already tested "Fake lights selected world" and are OK with the result) for both runs. If you have time and are willing you could test "Fake lights child world" though and see if it even picks up any - it shouldn't because of ini change.

  • 0
Posted
Error: Failed to read basic script data for SHESON_DynDOLOD_Minion attached to  (ED01F9A7)

[01/01/2016 - 06:53:20PM] Error: Unable to load object 0xBA54BE50 from save game

[01/01/2016 - 06:53:20PM] Errors occurred while loading the Papyrus save game data

[01/01/2016 - 06:53:21PM] VM is thawing...

 

DynDOLOD is causing a crash when I try to go from an interior to the world or from the city to the world(ie, Honingbrew Mead to Skyrim and Whiterun to Skyrim) and this is the last DynDOLOD entry in the Papyrus Log before it crashes...I can uncheck DynDOLOD from loading and everything works fine...so I'm assuming I should go in and look for this entry and delete it, or should I just rebuild DynDOLOD from scratch?

  • 0
Posted (edited)
  On 1/2/2016 at 6:17 AM, Matter2003 said:

 

Error: Failed to read basic script data for SHESON_DynDOLOD_Minion attached to  (ED01F9A7)
[01/01/2016 - 06:53:20PM] Error: Unable to load object 0xBA54BE50 from save game
[01/01/2016 - 06:53:20PM] Errors occurred while loading the Papyrus save game data
[01/01/2016 - 06:53:21PM] VM is thawing...
 
DynDOLOD is causing a crash when I try to go from an interior to the world or from the city to the world(ie, Honingbrew Mead to Skyrim and Whiterun to Skyrim) and this is the last DynDOLOD entry in the Papyrus Log before it crashes...I can uncheck DynDOLOD from loading and everything works fine...so I'm assuming I should go in and look for this entry and delete it, or should I just rebuild DynDOLOD from scratch?

 

If DynDOLOD is mod load order ED = 237, then the last entry about the object with load order BA = 186 is a different mod - which was probably removed.

In either case such data errors written to papyrus log have no direct connection to CTDs. It did load the save without crashing, did it not?

Make sure the DynDOLOD papyrus scripts are all up to date and accessible by the game.

Read the DynDOLOD FAQ about real reasons for ILS and CTD.

 

Such data error typically mean either the update procedure for a save game went wrong, or for some reason it did not properly clean all old data. If you save the game the second time without DynDOLOD.esp loaded, check that save game with a save game cleaner for DynDOLOD script instances and remove them. Though I have never seen such a thing happen and it should clear such old data out by itself eventually.

Edited by sheson
  • 0
Posted (edited)

Just another one:

distant_squares.jpg

These distant white squares, isn't DynDOLOD able to handle this? I have no idea why they are there...

Edited by archer
  • 0
Posted (edited)
  On 1/2/2016 at 1:48 PM, archer said:

Just another one:

distant_squares.jpg

These distant white squares, isn't DynDOLOD able to handle this? I have no idea why they are there...

It is occlusion culling being badly programmed. It gets worse when doing anti z-fighting changes to the INIs it seems. There maybe be ways that LOD can be generated that covers this up but it is not on top of my list of things to look into atm.

Edited by sheson
  • 0
Posted
  On 1/2/2016 at 1:08 PM, sheson said:

If DynDOLOD is mod load order ED = 237, then the last entry about the object with load order BA = 186 is a different mod - which was probably removed.

In either case such data errors written to papyrus log have no direct connection to CTDs. It did load the save without crashing, did it not?

Make sure the DynDOLOD papyrus scripts are all up to date and accessible by the game.

Read the DynDOLOD FAQ about real reasons for ILS and CTD.

 

Such data error typically mean either the update procedure for a save game went wrong, or for some reason it did not properly clean all old data. If you save the game the second time without DynDOLOD.esp loaded, check that save game with a save game cleaner for DynDOLOD script instances and remove them. Though I have never seen such a thing happen and it should clear such old data out by itself eventually.

Thanks for the reply...one other thing, I see in your instructions it says to only run the dyndolodworlds script but in other tutorials it states to run the dyndolod textures script first. It seems to me the LODgen is included in the dyndolod worlds script, or do I still need to run the texture script before it?

 

And once these output to the directory, I want to copy them to the Dyndolod folder in mod organizer or do I want to put them in the skyrim data directory?

Guest
This topic is now closed to further replies.
×
×
  • Create New...

Important Information

By using this site, you agree to our Guidelines, Privacy Policy, and Terms of Use.