How to Generate Grass Cache (with Seasons)
An infernalryan Skyrim Modding Guide


Overview
This guide will provide instructions on how to generate grass precache with seasons support using No Grass in Objects. If you are NOT using seasons, please see my non-seasonal How to Generate Grass Cache guide.

This guide applies to ALL versions of Skyrim SSE/AE (Steam and GOG only) and Skyrim VR since as of May 2024, No Grass in Objects is now available for ALL game versions as an SKSE plugin!


Guide Contents:

    • Preface of what grass precache is and why it is used
    • Preparation covering all file requirements and initial setup steps required before generating cache
    • Generating grass precache files with tips on avoiding issues and speeding up the process
    • Playing the game and ensuring all changes made to allow grass cache generation are restored and that seasonal cache files load properly
    • Further reading for links to other helpful information


Please consider ENDORSING if you found this guide helpful!



1   Preface
Generating grass precache is the process of saving grass model and placement information to a file. This is done with the No Grass in Objects mod (also known as NGIO). This will not only enable the ability to generate and utilize grass LODs, allowing you to view grass at much further distances, but will also give you more consistent grass placement as everything will be loaded from files rather than automatically generated at runtime. The process for doing so is simple, but can be time consuming depending on your system, especially for a seasons load order, since you will need to generate precache files for every season individually. For newer systems, with a moderately-sized modlist, this can take around 30-60 minutes (possibly less) each time it is run.

It is HIGHLY recommended to use Mod Organizer 2 for this process. Grass precache generation is expected to crash multiple times, and if you are using Vortex (or no Mod Manager at all), you will have to restart this process manually. The plugin created for MO2 will automatically restart until the grass precache generation has completed, which will allow you to perform this semi-AFK, which will save a LOT of time overall.



2   Preparation
This section will cover all file requirements and initial setup steps needed before generating grass precache. You only have to perform these steps the first time you generate precache, and can skip them altogether on future operations.

2.1   Required mods
The following mods need to be downloaded, installed and enabled prior to starting this process.



2.2   Other files
This section will cover other files either required or recommended to generate grass cache.

2.2.1   Seasons your Grass
This is a batch file (.bat) which will rename your generated grass files to their appropriate filename for its respective season.

    • Download from the FILES tab of the main mod page using the 'MANUAL DOWNLOAD' link. This is not a Mod Manager download, so will download into your web browser downloads folder.
    • We will come back to this file later.


2.2.2   Worldspaces with Grass SSEEdit Script for NGIO (Optional)
Skip to section 2.2.3 if you are not comfortable using xEdit (SSEEdit), otherwise, proceed. This is an xEdit script that can be used to configure No Grass In Objects to skip any worldspaces that do not have grass in them, which (sometimes drastically) reduces the time required to precache grass. Expand the 'Spoiler' tag for instructions.

Spoiler:  
Show

    • Download from the FILES tab of the main mod page using the 'MANUAL DOWNLOAD' link. This is not a Mod Manager download, so will download into your web browser downloads folder.
    • When completed, open this file from your web browser downloads folder (it is a .zip file).
    • Extract the contents of the file into the /Edit Scripts folder of your xEdit folder. For example, if you installed xEdit into 'C:\Modding\xEdit', extract this to 'C:\Modding\xEdit\Edit Scripts'.
    • You are done!



2.2.3   Precache Grass plugin (MO2 only)
Skip to section 2.3 if you are NOT using MO2, or already have this plugin downloaded and installed, otherwise, proceed. This plugin will allow you to start Skyrim in precache generation mode, and will additionally automatically restart Skyrim to resume the progress when it crashes (which it will). Expand the 'Spoiler' tag for instructions.

Spoiler:  
Show

    • Download the plugin from the main mod page 'FILES' tab – ensure you click the 'MANUAL DOWNLOAD' link (this will not install with your Mod Manager).
      • Grab 'Grass Generation MO2 Plugin v2' if you are using MO2 version 2.5 and above
      • Grab 'Grass Generation MO2 Plugin v1.5' if you are using MO2 2.4.4 or below
      • Grab 'Grass Generation MO2 Plugin v2 VR' if you are using MO2 version 2.5 and above AND VR
    • When completed, open this file from your web browser downloads folder (it is a .zip file).
    • Extract the contents of the file into the /plugins folder of your MO2 folder. For example, if you installed MO2 into 'C:\Modding\MO2', extract this to 'C:\Modding\MO2\plugins'.
    • If done correctly, you should now have a 'GrassPrecacher.py' file inside of /plugins (example: 'C:\Modding\MO2\plugins\GrassPrecacher.py').
    • Close MO2 if it is open.
    • (Re-)open MO2.
      • If you receive an error indicating "no module named PyQt5" (or similar), you have downloaded and installed the wrong plugin for your version of MO2. Re-review the list above.
    • Verify this is installed correctly by navigating to the 'Tools > Tool Plugins' menu of the main menu bar (or the puzzle icon in the toolbar). You should now see a 'Precache Grass' entry. 


    • You are done!



2.3   Initial setup
Before generating grass precache, the following configuration file updates are required.

2.3.1   Generate configuration file for No Grass in Objects
Skyrim needs to be launched at least once with NGIO enabled in order to generate the configuration file. Do this if you have not done so already. You only need to load into the main game menu, and quit. The file is located in 'Data/SKSE/plugins/GrassControl.ini' (or 'overwrite/SKSE/plugins/GrassControl.ini' for MO2 users) by default.


2.3.2   Move configuration file for No Grass in Objects (MO2 only)
Skip to section 2.3.3 if you are NOT using MO2, or have already moved the NGIO configuration file to the NGIO mod folder, otherwise, proceed. Since it is good practice to keep your overwrite folder clear, we will want to move the configuration file (which generates there by default) to the NGIO mod itself. Expand the 'Spoiler' tag for instructions.

Spoiler:  
Show

    • Right-click the 'Overwrite' entry (it is at the very bottom of the mod list), and select 'Open in Explorer' (alternatively, you can hold CTRL and double-click the mod in the list to open the explorer window).
    • Navigate to the 'SKSE/Plugins' folder.
    • Set this window aside for a moment.
    • Right-click your No Grass in Objects mod in the mod list, and select 'Open in Explorer' (alternatively, you can hold CTRL and double-click the mod in the list to open the explorer window).
    • Navigate to the 'SKSE/Plugins' folder.
    • MOVE the 'GrassControl.ini' file from the overwrite folder we set aside to the NGIO mod folder.
    • Close both folders.



2.3.3   Edit No Grass in Objects settings
Next, we need to modify the NGIO configuration file to use cache files. This process is different depending on the Mod Manager chosen. Follow only one of the two options based on your Mod Manager of choice.

2.3.3.1   Option 1: Vortex

Spoiler:  
Show

    • Deploy mods.
    • Open your game folder by clicking the 'Open…' button in the main application taskbar, and select 'Open Game Folder'.


    • Open the ' /Data/SKSE/plugins' folder inside.
    • Open the ' GrassControl.ini' file.
    • Update the following options in the file:
      • Use-grass-cache = true
      • Only-load-from-cache = true



2.3.3.2   Option 2: Mod Organizer 2

Spoiler:  
Show

    • Double-click the No Grass in Objects mod in the mod list
    • Select the 'INI Files' tab, and ensure the ' SKSE\Plugins\GrassControl.ini' file is selected in the 'Ini Files' list on the left.
    • Update the following options in the file:
      • Use-grass-cache = true
      • Only-load-from-cache = true


    • Save and close.



2.3.4   Add exception for PrecacheGrass.txt (MO2 with Root Builder only)
Skip to section 3 if you are NOT using MO2 AND Root Builder, otherwise, we will need to add an exception to Root Builder for this file so that the auto-restart/resume functionality of the Precache Grass plugin will work properly. Expand the 'Spoiler' tag for instructions.

Spoiler:  
Show

    • Navigate to the 'Tools > Tool Plugins' menu of the main menu bar (or the puzzle icon in the toolbar) and select 'Root Builder > Root Builder' to open the Root Builder settings window.


    • Under the 'Exclusions' tab, double-click the empty entry at the end to add a new rule for 'PrecacheGrass.txt' and hit 'Enter'.


    • Close the window.




3   Generating grass precache files
The below steps detail the process of generating grass precache files. Similarly to LOD generation, these steps should be performed EVERY TIME you add or remove mods which make world space updates (new buildings, points of interest, city overhauls, etc.) as otherwise the current precache files will either conflict with these mods (floating grass, clipping, etc.) or not include them (no grass whatsoever). You should also do this whenever changing/adding/removing grass mods, etc.. If you are modifying ONLY textures (such as changing to desaturated texture variants for your current grass mod, for example), you don't need to re-run grass precache.

3.1   Disable and/or remove any previously generated cache files
We need to be 100% sure that any previously generated cache files are not affecting our ability to regenerate them. Below is a brief list of things to check for, but it is not extensive and may not account for all scenarios.

  • Disable any mods which currently contain precache files (*.gid, *.cgid) as we do not want to accidentally overwrite these files when the new cache files are generated. This includes pre-generated cache files which can be downloaded from Nexus (not just your own previously-generated files).
    • Vortex users, 'Deploy Mods' again after disabling.
  • After disabling (where applicable), ensure there is no 'Grass' folder still inside your Skyrim /Data folder (or 'overwrite' folder for MO2 users). If there is, either delete it or convert it to a mod for your given Mod Manager and disable it.
  • Remove the 'PrecacheGrass.txt' file if it exists in your main Skyrim game folder.


3.2   Run Worldspaces with Grass SSEEdit Script for NGIO (Optional)
Skip to section 3.3 if you did NOT download the 'Worldspaces with Grass SSEEdit Script for No Grass in Objects' file, otherwise, proceed. This script generates a list of valid worldspaces for your current load order which will speed up grass precache generation (sometimes significantly). If you have run this script prior to past grass precache generation, this step can be skipped if there have been no changes to worldspaces since then, otherwise you will want to re-run it again. Expand the 'Spoiler' tag for instructions.

Spoiler:  
Show

3.2.1   Run the script
    • Launch xEdit (SSEEdit).
      • If using MO2, ensure you have an executable created for this, and launch from there.
      • If using Vortex, ensure your mods are deployed and open xEdit in whatever manner you prefer (either from the TOOLS section, or from an external file).
    • Once xEdit opens, load all of your plugins for your normal load order (they should be selected by default).
    • Once the 'Background Loader: Finished' message appears, right click anywhere in the left pane and select 'Apply Script....'
    • In the window that appears, in the Script dropdown, select 'List worldspaces with grass' and click 'OK'.


    • Wait for it to finish processing. This may take a minute or two, depending on how many mods you have.
    • When the 'Worldspaces with grass' window appears, COPY the text that is inside of this (either CTRL+C or right-click the highlighted text and select 'Copy').


    • Click OK and exit SSEEdit.


3.2.2   Add worldspaces to No Grass in Objects settings file
Next, we need to modify the NGIO configuration file to include the worldspaces we just copied. This is different depending on the Mod Manager chosen. Follow only one of the two options based on your Mod Manager of choice.

3.2.2.1   Option 1: Vortex

Spoiler:  
Show

    • Deploy mods.
    • Open your game folder by clicking the 'Open…' button in the main application taskbar, and select 'Open Game Folder'.


    • Open the ' /Data/SKSE/plugins' folder inside.
    • Open the ' GrassControl.ini' file.
    • PASTE your worldspaces copied to the clipboard to the following line:
      • Only-pregenerate-world-spaces = PASTE_HERE



3.2.2.2   Option 2: Mod Organizer 2

Spoiler:  
Show

    • Double-click the No Grass in Objects mod in the mod list.
    • Select the 'INI Files' tab, and ensure the ' SKSE\Plugins\GrassControl.ini' file is selected in the 'Ini Files' list on the left.
    • PASTE your worldspaces copied to the clipboard to the following line:
      • Only-pregenerate-world-spaces = PASTE_HERE


    • Save and close.




3.3   Disable incompatible mods
Certain mods have been known to cause crashing during the precaching process. While this is normal (the precaching process will likely crash at least a few times), some mods may prevent the grass precache from completing altogether. I have listed some of these here, however, if you are having persistent issues, please see the Compatibility section of the No Grass in Objects mod page, as well as the posts on that page to review and/or troubleshoot specific compatibility issues. You need to disable any mods listed below (temporarily) and then re-enable them again afterwards.

  • Skyrim Souls
  • TrueHUD
  • Auto Parallax
  • Skyrim at War
  • Backported Extended ESL Support (BEES) (applicable only to Skyrim 1.6.640 and below)
    • Some users have reported this causes issues, but I did not personally have any issues which prevented precache generation. Despite having some crashes, the MO2 plugin was able to (auto-)resume generation without issue. If you do experience persistent issues, you may need to disable BEES and all of the mods that rely on it, however, if you have performed a "best of both worlds" downgrade, this will likely include the Skyrim master files. This becomes difficult to make a recommendation as you cannot disable the masters, and reverting them to original versions may cause other issues during precache generation. My only suggestion is to try it without disabling it and hope for the best.
  • Other mods may recommend that you add their worldspaces to the 'Skip-pregenerate-world-spaces' field within the NGIO configuration file… At the time of writing, this includes EasierRider's Dungeon Pack and The Echoes of the Vale Creation, however, it is also possible that running the xEdit script from earlier will omit these worldspaces already (untested).

IMPORTANT NOTE (From NGIO description page) – If you always crash in exact same cell over and over (can't continue at all) then it means something is very wrong with your mods in that cell. If you go there normally without this mod you would also always crash there. I recommend looking at crash logs to see what mod could be causing an issue for you there. You can also add that worldspace to exceptions list in this grass mod's config, but that means you won't have grass in that whole worldspace (might not matter since you would crash there always anyway).


3.4   Generate files for each season
The below sections will generate files for each season. We need to do this because NGIO doesn't support seasons, meaning there is no option within the NGIO mod or settings file to just generate cache files for each one. Instead, you need to "force" a season by modifying the Seasons of Skyrim settings file and changing the season type to be permanent for the season you are generating for. This way when you are generating grass, all of the swaps for that season will be active.

3.4.1   Winter
The process is the same for each season, so we will cover the steps in depth for the first season, and then repeat them for subsequent seasons. There are minor differences depending on the Mod Manager chosen, so Follow only one of the two options based on your Mod Manager of choice.

3.4.1.1   Option 1: Vortex

Spoiler:  
Show

3.4.1.1.1   Update po3_SeasonsOfSkyrim.ini file
    • Deploy mods.
    • Open your game folder by clicking the 'Open…' button in the main application taskbar, and select 'Open Game Folder'.


    • Open the ' /Data/SKSE/plugins' folder inside.
    • Open the ' po3_SeasonsOfSkyrim.ini' file.
    • At the top of the file you should see the following:

      ;0 - disabled
      ;1 - permanent winter
      ;2 - permanent spring
      ;3 - permanent summer
      ;4 - permanent autumn
      ;5 - seasonal
      Season Type = 5

      • Set Season Type = 1 (permanent winter).
      • Save and close the file.


    3.4.1.1.2   Launch the game to generate files
      • Go back to the main Skyrim game folder (the same place where SkyrimSE.exe is).
      • Create a new empty text file in this folder called ' PrecacheGrass.txt'.
      • Start the game normally, when you reach the main menu it will automatically start to pre-generate all grass.

        NOTE – During this process, the screen may display flickering or flashing lights which may not be suitable for individuals with photosensitive epilepsy or other light sensitivity conditions. It is recommended for these individuals to walk away from the computer during this process.
        • You will know grass precache has started after a few seconds when you see this message:


        • Feel free to open the console with the tilde (~) key by default to view the progress.
        • This process is expected to crash Skyrim several times. When this happens you will need to MANUALLY start it again to resume (there is no automatic restart function like with the MO2 plugin).
        • You will know you are resuming where you left off when you see the "Resuming grass cache generation" message.


        • Once completed, the following message will be displayed (NOTE – this may be minimized along with your Skyrim game):


        • Grass generation for this season is now done.


      3.4.1.1.3   Rename grass files
      We now need to rename these files to be in their proper seasonal format.
        • Open your Skyrim /Data folder.
        • Navigate to the newly-generated ' Grass' folder inside.
        • You will now want to extract the ' Season your Grass Cache.BAT' file from the Seasons your Grass .zip file you downloaded earlier directly into this folder (make sure it does not end up in its default ' Seasons Your Grass' folder – it must be in the same folder as the cache files themselves).
        • Execute the ' Season your Grass Cache.BAT' file – you should now see this screen:


        • Select winter by typing '1' and hitting <Enter>.
        • Let the process complete, it should take about 10-15 seconds.
        • Delete the ' Season your Grass Cache.BAT' file when done.


      3.4.1.1.4   Add this mod to Vortex
        • Go back to your Skyrim /Data folder.
        • You will want to add the ' Grass' folder to a new .zip file (or .7z, .rar, etc). Call this file ' Grass Cache - Winter.zip' (or .7z, .rar, etc.).
        • Once the .zip file is created, you can now DELETE the /Grass folder (we no longer need it)
        • Drag the 'Grass Cache - Winter.zip' file into the 'Drop File(s)' section of Vortex, which is found at the bottom of the 'Mods' tab. NOTE – This may take several minutes to fully import as the file size for this mod and number of files is quite large.
        • Once done it should automatically enable itself. You will want to DISABLE this mod (for now).
        • You can now DELETE the original ' Grass Cache - Winter.zip' file you created (it is just taking up space).
        • It is also recommended to DELETE the .zip file maintained by Vortex as it too is not required and is needlessly taking up space. To do this navigate to ' %appdata%\Vortex\downloads\skyrimse' (without quotes – you can paste this in an explorer window, the Windows Win+R Run dialog, or the start menu search bar) and delete the file.
        • You can now close the folder(s) you opened before.
        • Skip to section 3.4.2 when done.



      3.4.1.2   Option 2: Mod Organizer 2

      Spoiler:  
      Show

      3.4.1.2.1   Update po3_SeasonsOfSkyrim.ini file
        • To ensure we are always editing the "winning" configuration file in the event a conflict with another mod overwrites this file (Four Seasons - Faster Seasons of Skyrim does this, for example), we're going to do this from the 'Data' tab on the right side of the main MO2 window.
        • In the search box in the bottom right corner, type ' po3_SeasonsOfSkyrim.ini'. This will filter this file in the list.


            • Note - if the file does not exist, you need to launch Skyrim with Seasons of Skyrim enabled so that it automatically generates. You only need to load into the main game menu, and quit.
        • Right-click the file and select 'Open'.
        • At the top of the file you should see the following:

          ;0 - disabled
          ;1 - permanent winter
          ;2 - permanent spring
          ;3 - permanent summer
          ;4 - permanent autumn
          ;5 - seasonal
          Season Type = 5

          • Set Season Type = 1 (permanent winter).
          • Save and close the file.


        3.4.1.2.2   Launch the game to generate files
          • Launch the 'Precache Grass' plugin by navigating to the 'Tools > Tool Plugins' menu of the main menu bar (or the puzzle icon in the toolbar).


          • Click 'Yes' on the message that pops up to begin grass cache generation.

            NOTE – During this process, the screen may display flickering or flashing lights which may not be suitable for individuals with photosensitive epilepsy or other light sensitivity conditions. It is recommended for these individuals to walk away from the computer during this process.





            • This will launch the game. After a few seconds the following message should appear:


            • Feel free to open the console with the tilde (~) key by default to view the progress.
            • This process is expected to crash Skyrim several times, but the MO2 plugin will restart this process automatically. You will know it has done so when you see the "Resuming grass cache generation" message.


            • Once completed, the following message will be displayed (NOTE – this may be minimized along with your Skyrim game):


            • Grass generation for this season is now done.


          3.4.1.2.3   Rename grass files
          We now need to rename these files to be in their proper seasonal format.
            • Right-click the 'Overwrite' entry in MO2 (it is at the very bottom of the mod list), and select 'Open in Explorer' (alternatively, you can hold CTRL and double-click the mod in the list to open the explorer window).
            • Navigate to the newly-generated ' Grass' folder inside.
            • You will now want to extract the ' Season your Grass Cache.BAT' file from the Seasons your Grass .zip file you downloaded earlier directly into this folder (make sure it does not end up in its default ' Seasons Your Grass' folder – it must be in the same folder as the cache files themselves).
            • Execute the ' Season your Grass Cache.BAT' file – you should now see this screen:


            • Select winter by typing '1' and hitting <Enter>.
            • Let the process complete, it should take about 10-15 seconds.
            • Delete the ' Season your Grass Cache.BAT' file when done.
            • Go up a folder level to the main 'overwrite' folder and set it aside for a moment.


          3.3.1.2.4   Add this mod to MO2
            • From the MO2 'list options' menu (the "wrench" icon at the top right of the mod list window within MO2), select 'Create empty mod'.


            • Enter a name for this season's grass cache (e.g., ' Grass Cache - Winter') and press 'OK'.
            • Right-click your mod (it is at the very bottom of the mod list), and select 'Open in Explorer' (alternatively, you can hold CTRL and double-click the mod in the list to open the explorer window).
            • From the ' overwrite' folder we set aside in the previous section, MOVE the ' Grass' folder into your new mod folder.
            • When finished, select MO2 to ensure it is the active window and hit the 'F5' button on your keyboard. This will refresh the application and now reflect the files we changed outside of MO2.
            • Ensure this mod stays DISABLED (for now).
            • You can now close the folder(s) you opened before.



          3.4.2   Remaining seasons
          This process is different depending on whether you are doing a 4 seasons setup (using Seasonal Landscapes or Turn of the Seasons, etc.), or a less than 4 "grass seasons" setup (using only Seasons of Skyrim, or a mod like Simple Seasonal Grasses or similar which restrict seasonal grass changes to only 2 or 3 seasons) where some grasses are "shared" between them. The latter setup will allow you to save time with grass generation by duplicating the output of one of your seasons to one or more others, since the grass won't change that season. Follow only one of the two options and their associated step(s) below, or, in some cases, follow Option 1 and then Option 2 for any remaining (unique) season you may have.

          3.4.2.1   Option 1: Shared grasses for remaining season(s)

          Spoiler:  
          Show

            • Update your ' po3_SeasonsOfSkyrim.ini' file, and Set Season Type = 2 (permanent spring).
            • Launch the game to generate grass cache for this season.
            • When done, open your /Data folder (Vortex) or ' overwrite' folder (MO2).
            • COPY and PASTE the ' Grass' folder in the same directory. This should create a folder called ' Grass - Copy' (it may take a while to complete as there are lots of files in there).
            • Rename this folder (temporarily) to contain the season name which has the same grass as Spring (e.g., ' Grass - Summer').
            • Repeat this if, for example, your Autumn grass is the same as Spring and Summer.
              • Note that if your autumn grass is not the same as spring and summer (as is the case with some Simple Seasonal Grasses patches), you may need to generate those seasons uniquely in section 3.4.2.2 (Option 2) below. Not all combinations of options are covered, but by now you should have an idea of what we are doing here.
            • (Optional time saver) If you intend on running DynDOLOD, repeat this step one more time and rename the folder to ' Grass - Default' (we will come back to this later – Do NOT rename files themselves inside of this folder).
            • Extract the ' Season your Grass Cache.BAT' file from the Seasons your Grass .zip file you downloaded earlier directly into the ' Grass' folder (make sure it does not end up in its default ' Seasons Your Grass' folder – it must be in the same folder as the cache files themselves).
            • Execute the .bat file. Be sure to select the appropriate season.
            • Delete the ' Season your Grass Cache.BAT' file from this folder when done.
            • Create a mod for this season's grass cache by following steps from the previous section and name it (e.g., ' Grass Cache - Spring'). Ensure it remains disabled when done.
            • Rename one of the grass folder copies you made earlier to ' Grass', and repeat this process for that season (e.g., summer).
            • Skip to section 3.4.2.2 (Option 2) below if your last season requires its own unique grass cache, otherwise, repeat the previous step if your last season is also a copy.
            • Skip to section 3.4.3 when done.



          3.4.2.2   Option 2: Unique grasses for each remaining season

          Spoiler:  
          Show

          3.4.2.2.1   Spring
            • Update your ' po3_SeasonsOfSkyrim.ini' file, and Set Season Type = 2 (permanent spring).
            • Launch the game to generate grass cache for this season.
            • Rename the grass files, selecting option '2' for Spring when prompted.
            • Delete the .bat file when done.
            • Give your mod a name (e.g., ' Grass Cache - Spring'), add to your Mod Manager, and ensure it is disabled.


          3.4.2.2.2   Summer
            • Update your ' po3_SeasonsOfSkyrim.ini' file, and Set Season Type = 3 (permanent summer).
            • Launch the game to generate grass cache for this season.
            • Rename the grass files, selecting option '3' for Summer when prompted.
            • Delete the .bat file when done.
            • Give your mod a name (e.g., ' Grass Cache - Summer'), add to your Mod Manager, and ensure it is disabled.


          3.4.2.2.3   Autumn
            • Update your ' po3_SeasonsOfSkyrim.ini' file, and Set Season Type = 4 (permanent autumn).
            • Launch the game to generate grass cache for this season.
            • Rename the grass files, selecting option '4' for Autumn when prompted.
            • Delete the .bat file when done.
            • Give your mod a name (e.g., ' Grass Cache - Autumn'), add to your Mod Manager, and ensure it is disabled.



          3.4.3   Default season (optional)
          Skip to section 3.5 if you do NOT plan on generating LOD with DynDOLOD, or plan to generate it later (after more testing, etc.), otherwise, proceed. If you intend on generating grass LOD using DynDOLOD, you will also want to generate a 'default' grass cache which will be used for LODs in worldspaces where seasons (or seasonal grass) are disabled altogether (based on your ' po3_SeasonsOfSkyrim.ini' file configuration). Generating these files uses the same process as above (minus the file renaming). Follow only one of the two options and their associated step(s) below, based on whether you have already prepared the default cache folder from a previous section if using shared grasses. Expand the 'Spoiler' tag for instructions.

          Spoiler:  
          Show

          3.4.3.1   Option 1: Cache already prepared

          Spoiler:  
          Show

            • Open your Skyrim /Data folder (Vortex) or ' overwrite' folder (MO2).
            • Rename the previously copied ' Grass - Default' folder to ' Grass'
            • Give your mod a name (e.g., ' Grass Cache - Default'), add to your Mod Manager, and ensure it is disabled. You will only ever enable this when generating LOD using DynDOLOD, so you won't need this enabled during normal gameplay.
            • Skip to section 3.5.



          3.4.3.2   Option 2: Generate new cache

          Spoiler:  
          Show

            • Update your ' po3_SeasonsOfSkyrim.ini' file, and Set Season Type = 0 (disabled).
            • Launch the game to generate grass cache for this season.
            • No file renaming is required here when the process is complete, so keep the files as-is.
            • Give your mod a name (e.g., ' Grass Cache - Default'), add to your Mod Manager, and ensure it is disabled. You will only ever enable this when generating LOD using DynDOLOD, so you won't need this enabled during normal gameplay.




          3.5   Verification
          Before proceeding, you want to be sure you have the following mods (or similarly named versions) in your mod list (the order does not matter). If you are missing one or more seasons, or the files contained within each mod are different from those noted below, you need to review and possibly repeat some of the steps above, otherwise your grass will not load properly.

          • Grass Cache - Winter
            • Inside this folder should be *.WIN.cgid files
          • Grass Cache - Spring
            • Inside this folder should be *.SPR.cgid files
          • Grass Cache - Summer
            • Inside this folder should be *.SUM.cgid files
          • Grass Cache - Autumn
            • Inside this folder should be *.AUT.cgid files
          • Grass Cache - Default (only if you performed the steps for DynDOLOD preparation above)
            • Inside this folder should be *.cgid files (no seasonal abbreviations)




          4   Playing the game
          With grass precache generation now complete, there are only a couple of steps required to restore normal seasonal functionality to the game and ensure the cache files are loaded.

            • Update your 'po3_SeasonsOfSkyrim.ini' file, and Set Season Type = 5 (seasonal).
            • Enable all of your seasonal grass cache 'mods' created earlier – Do NOT enable the default (non-seasonal) cache files if you created them.
            • Re-enable any/all mods which you had to disable prior to generating grass cache.
            • Ensure Grass Cache Helper NG is enabled (it should have been this whole time) – This mod will load the seasonal *.[WIN|SPR|SUM|AUT].cgid cache files.
            • Disable No Grass in Objects – This must be done otherwise it will prevent Grass Cache Helper NG from loading seasonal grass files by overriding Grass Cache Helper NG's hooks – Don't worry, the functionality NGIO provides for your grass (i.e., preventing grass from loading in objects) has been "baked into" your cache files.
            • Vortex users, 'Deploy Mods' again after performing the above.




          5   Further reading
          See below for links to other helpful information.

          5.1   Other Guides
          See my guides page on Nexus for other helpful Skyrim modding guides.

          5.2   Changelog
          See below for changes made to this document.

          • Version 1.17.3 (06/02/2024)
            • Added spoiler tags for optional sections

          • Version 1.17 (06/02/2024)
            • Initial release


          Please leave a comment with any issues or suggestions!

          Article information

          Added on

          Edited on

          Written by

          infernalryan

          122 comments

          1. infernalryan
            infernalryan
            • premium
            • 68 kudos
            Locked
            Sticky
            Guide updates required:
            Below are some items that will require guide updates. I am listing them here for reference and will remove them when the guide is updated.

            Recalculating Grass Bounds (e.g., 'Recalc Bounds' in Creation Kit)
            • This will be an optional step for advanced users and/or users experiencing issues generating grass precache. This essentially recalculates each grass object's bounding box to ensure it accurately reflects the size and shape of its mesh(es). This helps prevent issues like grass floating around and/or clipping through objects where it shouldn't appear, which can occur when grass meshes are changed and are different sizes than those defined within the plugin file.
            • NOTE - This step is not always necessary. If you don't have any issues generating grass cache, and don't see any visible issues with the grass precache in your game, you should be fine to skip this step.

            Seasons Your Grass No Longer Available - Update 2/20/2025
            • It appears Seasons your Grass is no longer available on Nexus. I am reworking my personal file renamer which does a similar function (and more) and will upload to Nexus soon. NOTE - I have released my original script which performs similar functions here: Seasonal Grass Cache File Renamer. I will be updating the guide shortly to reflect this. The steps should be exactly the same just replace 'Season your Grass Cache.bat' with my 'renamegrasscache.bat' file, where applicable. Menus are similar but not exact, but should nonetheless be very intuitive.

            Please let me know in comments below if there are any other updates that are required.
          2. NoBarkNoBiteNoonan
            NoBarkNoBiteNoonan
            • premium
            • 19 kudos
            Locked
            Sticky
            ShipLarge01.nif from Animated Clutter seems to cause crashes, I was able to generate default cache without issue but it kept crashing in a Wyrmstooth cell if I had it enabled while generating winter cache. Disabled it and it was able to generate the entire thing without crashing.
            1. infernalryan
              infernalryan
              • premium
              • 68 kudos
              Thanks - will sticky for others.
          3. comolokko44
            comolokko44
            • member
            • 0 kudos
            I couldn't understand why we added a default season for dyndolod grass lod in section 3.4.3 because when I run dyndolod, the grass lod option appears to be active because of the previously prepared grass cache, so why do we need to create a default season ?
            1. infernalryan
              infernalryan
              • premium
              • 68 kudos
              This is information taken from DynDOLOD's seasons page (link) -- relevant portion highlighted in green:

              Grass and Grass LOD
              Seasonal grass cache support requires Grass Cache Helper NG. Follow its instructions to generate grass cache files *.[SPR|SUM|AUT|WIN].CGID for all desired seasons.

              A method to do this is by forcing a specific season with the Season Type = [1|2|3|4] setting in the po3_SeasonsOfSkyrim.ini. After generating grass cache for a forced season, rename all its *.CGID files to *.[SPR|SUM|AUT|WIN].CGID. For example on the Windows command prompt with rename *.cgid *.WIN.cgid before moving the files from the MO2 Overwrite folder to the mod folder that will contain all the grass cache files. Repeat for every season. In the end there should be the default (no season) grass cache files plus the grass caches for the 4 seasons.

              When LODGen generates object LOD, it will check if matching seasonal grass cache files with a season identifier exist in the load order and uses them accordingly, otherwise the normal grass cache files will be used as fallback.

              In case of questions or problems make a post on the official DynDOLOD support forum.

              This was carried into this guide, however, this information may be outdated. For example, when you generate for a season (e.g., winter), you are basically setting permanent winter in the po3_SeasonsOfSkyrim.ini file. The way NGIO works is it will take both the swapped grasses and non-swapped grasses and still generate seasonal grass cache files for all of them (e.g., *.win.cgid). Since we're generating for all worldspaces (or using the Worldsapces with Grass SSEEdit Script for NGIO), and, importantly, doing the same thing for every season, the seasonal files *should* account for all non-swapped grass as well in every season. In other words, there wouldn't be any "fallback" required to use the default grass files.

              I suppose this information is on the DynDOLOD page in case people generate each season with different settings, or perhaps only generate seasonal grass cache for only worldspaces they are performing swaps for, but then generating default for all other zones, etc., in which case, there would definitely be fallback. My guide does not instruct users to do this though (same settings are used for all).

              In this case, this should mean you are safe to exclude default grass cache so long as you followed my guide and/or otherwise generated seasonal grass for all worldspaces (or just valid ones which contain grass). I will mark this for review for a future guide update. Thanks for the comment.

              EDIT: For other users reading this, LODGen in the highlighted portion of the quote refers to DynDOLOD's LODGen tool, not xLODGen (used for generated terrain LOD).
            2. comolokko44
              comolokko44
              • member
              • 0 kudos
              I have a problem. I followed and applied your steps one by one while installing grass cache. There was no apparent problem. I started a new game and created my character. Grass LOD was working without any problems. However, when I switched to the autumn season, I noticed that there was no grass lod. The strange thing wass that while grass lod worked fine in other seasons, it only did not work in the autumn season.
            3. infernalryan
              infernalryan
              • premium
              • 68 kudos
              Are you positive you have *.aut.cgid files enabled during the grass LOD generation process? Did your autumn grass precache complete successfully?

              If you have the only-load-from-cache option set to true (detailed in the guide), is non-LOD grass loading OK with seasons (in active cells)? 

              Are your other objects properly swapping in autumn?
            4. comolokko44
              comolokko44
              • member
              • 0 kudos
              I am sure that AUT.cgid files are enabled.As for the only-load-grass-cache issue, I think non-LOD grass loading is compatible with seasons because I used seasonal landscapesI don't understand the other objects issue, but if you are talking about overwriting, that is out of the questionIt is also strange that none of these possibilities exist, maybe it is related to the shaders I use the shader mods azurite II and community shaders.
            5. infernalryan
              infernalryan
              • premium
              • 68 kudos
              i don't think it would have to do with shader mods/etc. This feels entirely related to seasonal swaps. Since the *.aut.cgid files aren't themselves loaded at runtime to display seasonal grass LOD (they are just used to create the seasonal grass LOD files themselves), do you notice a difference in the number of *.aut.* files for your DynDOLOD output as compared to other seasons, such as *.spr.*. This would be inside of your DynDOLOD output mod that is enabled, etc.

              Is it possible the *.aut.cgid files were not enabled during LOD generation itself? You can always generate object/grass LOD only (skip LOD for trees/etc.) for the Autumn season in DynDOLOD (just make sure the appropriate selections are enabled). You may want to re-run LOD just for this season and export to a separate mod to see if that fixes things, and then merge the mods afterwards.

              One other check - what grass mod(s) are you using? Have you tried all different areas or does this affect only a single biome/etc.? This *could* be relating to grass bounds. My guide omits this step (coming in a future update), but my understanding about this is that if grass bounds are not set properly for some grass mods, it will result in some grass being hidden when using precache, which carries into LOD. We want to exclude this as a possibility.
            6. comolokko44
              comolokko44
              • member
              • 0 kudos
              Thank you so much for helping me with this issue so far. However, I have a new problem. I deleted everything related to the season (including LOD and grass cache) and started a non-seasonal grass cache configuration. However, while creating the damn grass cache, the game started to crash at the same place almost at the end of the Tamriel section. When I looked at the crash log, it said that the culprits were the immersive equipment display and community shaders mods, but when I removed them and restarted the grass cache, the game crashed at the same place. I definitely couldn't figure out why. I think I'm going to go crazy dealing with this now.
            7. infernalryan
              infernalryan
              • premium
              • 68 kudos
              Run your crashlog through Phostwood's crash log analyzer. See if this turns up anything. If you are crashing in the same place it is usually relating to a mod adding clutter/objects to the worldspace in that area. Check the NGIO-NG.log file (In Documents\My Games\Skyrim Special Edition\SKSE) and also PrecacheGrass.txt file (in the root Skyrim game folder) for potentially more context as to where it failed. This might give you more info as to what mod(s) are causing the crash. If you suspect a mod of crashing, you may want to load into that area in-game. Typically, if the precache process crashes in the same area every time, physically being in that area in-game will also cause the game to crash, etc.

              Hope this helps!
            8. comolokko44
              comolokko44
              • member
              • 0 kudos
              I don't know how it happened but I finally managed to create a grass cache ! I think it has something to do with the grass mod I used because when I uninstalled the grass mod and installed another grass mod in its place it worked properly and the installation was completed successfully. Thank you for supporting me so far.
            9. infernalryan
              infernalryan
              • premium
              • 68 kudos
              Awesome, glad to see you had success!
          4. CheeseCheeseThelll
            CheeseCheeseThelll
            • member
            • 0 kudos
            I'm having a bit of trouble with this, originally I tried generating the precache without seasons and that took almost 2 weeks and never finished before it crashed on startup so I switched to this. I went through all the steps leading up to generation, changed the ini for seasons and grass control, disabled any incompatible mods, etc. However, when I try to do the precaching process with the perma winter, I crash instantly and my logger says

            "Unhandled exception "EXCEPTION_ACCESS_VIOLATION" at 0x7FFD8AB214A7 po3_SeasonsOfSkyrim.dll+00014A7movss [rax], xmm2 |  D:\a\SeasonsOfSkyrim\SeasonsOfSkyrim\src\Cache.cpp:26 ?GetData@DataHolder@Cache@@QEAAXXZ)"

            any help on what Im doing idiotically wrong would be really needed

            1. infernalryan
              infernalryan
              • premium
              • 68 kudos
              Ensure you are using the latest NGIO for your game version of Skyrim. Once you have verified this, how long does it take to crash? At what point (skyrim doesn't start, it gets to the load screen, it outputs that grass is generating, etc.)? Try checking NGIO logs which I believe are located in Documents/My Games/Skyrim Special Edition/SKSE/ (look for NGIO-NG.log).
            2. CheeseCheeseThelll
              CheeseCheeseThelll
              • member
              • 0 kudos
              I made sure that everything was up to date, the NGIO-NG log had no issue it only said:

              [20:48:44:783][info] NGIO-NG v1-4-0-0
              [20:48:44:783][info] Reading .ini...
              [20:48:44:783][info] ...success
              [20:48:44:783][info] Game version : 1-6-1170-0
              [20:48:44:783][info] Grass Cache Helper NG detected.

              It takes about 5-10 seconds after reaching the title screen to crash, before any generation has even started. I'm at a bit of a loss right now, here is my full crash log: log
            3. infernalryan
              infernalryan
              • premium
              • 68 kudos
              Are you using MO2 or Vortex? This will help me provide additional instructions.

              If you keep permanent winter enabled and start the game without generating cache, does it work? Your crashlog's unhandled exception indicates there is an issue with the plugin, not the grass generating process.
            4. CheeseCheeseThelll
              CheeseCheeseThelll
              • member
              • 0 kudos
              After more testing it seems to be just an overall issue with my Skyrim more than anything. I used a mix of MO2 and Vortex, with Vortex being my main mod manager but using MO2 for the precache program to be able to be semi-afk. Permanent winter and seasons as a whole didn't work so I tried just doing regular caching again and it worked for a time but eventually began crashing again, first blaming mods like Lux and Ulvenwald, but then blaming Skyrim.esm as a whole. Unfortunately Im just not sure if my game can simply do grass generation, so is there any solution or premade caches to install to save me trouble while still allowing my currently grass empty world to have grass? 
            5. infernalryan
              infernalryan
              • premium
              • 68 kudos
              I would recommend moving off of Vortex and into MO2 if you are sorta half-using both for different purposes. Reason being, you need to fully build your modlist in MO2 to properly do the grass precache anyway. As such, you are basically managing it in 2 areas already. If you build it in MO2 without all your other mods, you're basically generating for vanilla. If you are leaving mods deployed in Vortex (so they exist in the game folders of your MO2 instance) I can't really speak to that. I mean technically it may work but there may be issues associated with that that I certainly can't account for or provide support for. This might be the reason for the crashing you are experiencing.

              If moving to MO2 is too much work/effort, just try following the Vortex instructions so at least you're in the same mod manager for everything. Don't worry if stuff crashes a few times, this is EXPECTED in this process. Just continue from where you left off and it should only be an issue if you fail to get anywhere on a retry (crashes instantly). I don't think there is anything inherently wrong with your setup. I think you should try picking a single tool and sticking to it.
          5. dudster0000
            dudster0000
            • member
            • 0 kudos
            Just wanted to give a serious thanks and BIG UPS for the guide.
            1. infernalryan
              infernalryan
              • premium
              • 68 kudos
              Thanks and much appreciated!
          6. 4818843
            4818843
            • member
            • 0 kudos
            When generating seasonal and default grass cache with DynDOLOD, is it necessary to enable the previously generated seasonal and default grass cache?
            1. infernalryan
              infernalryan
              • premium
              • 68 kudos
              I assume you mean seasonal and default grass LOD* with DynDOLOD? In which case, you can't generate grass LOD if the grass files are not detected, so you must enable these outputs, yes.
            2. 4818843
              4818843
              • member
              • 0 kudos
              After this, do I still need to keep the Four Seasons Grass Cache enabled in MO2? However, if I do so, CombatPathingRevolution reports an error: "Error occurred at code -> [impl/Config/Ini.hpp:21] DKUtil::Config::detail::ini::Parse DKU_C: Parser#0:Loading failed!-> Data\SKSE\Plugins\CombatPathingRevolution.ini Too many open files".
            3. 4818843
              4818843
              • member
              • 0 kudos
              I used a BAT file to modify and create seasonal grass caches, but when enabling them in MO2, they still show overlapping conflicts. Each of my grass cache folders contains around fifteen thousand files.I'm not sure if this is the issue.
            4. infernalryan
              infernalryan
              • premium
              • 68 kudos
              I have always kept the seasonal grass cache files enabled after generating (except for 'default', which Grass Cache Helper NG doesn't use). Technically, the cache files are not needed for LOD (LOD basically bakes its own version of these into the LOD files I believe), but active cells rely on the cache files still. I have heard some say you can disable the cache and let the game procedurally generate the active cells instead (I'd assume this would require the 'Only-load-from-cache=false' option in the .ini file), and let LOD load the distant grass, but I haven't tried this.

              I don't use Combat Pathing Revolution, but would assume that many people would also have this same issue if it were relating to grass cache files.

              Regarding your last question, what are the overlapping files? The seasonal output files themselves should all have different extensions (e.g., *.SPR.CGID, *.SUM.CGID, etc.), so they shouldn't overlap, but maybe there are some other non-impacting files in there from when you copied. If your grass files don't have the proper seasonal extensions, you'll need to ensure they are renamed properly.

              Let me know if you need more info.
            5. 4818843
              4818843
              • member
              • 0 kudos
              Now I have no solution. Whenever I enable the 60K grass cache file, even with CPR disabled, various plugin errors still occur causing the game to crash. If there's no way to resolve the grass cache quantity issue, I think I'll have to give up on using seasonal grass.
            6. infernalryan
              infernalryan
              • premium
              • 68 kudos
              I'm sorry I haven't run into this. How large is your load order (# mods)? Maybe this is an OS level restriction you are hitting.
          7. ArgonianSuffragist
            ArgonianSuffragist
            • member
            • 0 kudos
            Hi, incredible guide! Worked really well, and everything was perfect until getting to city mods that changed the landscape. I realized I hadn't enabled them while doing the grass cache, and reran and replaced the proper files. However, I am still getting the same floating grasses in modified landscapes. Any clues as to what I should be doing differently? Do I need to run dyndolod/texgen/xlodgen again (besides for the obvious changing of the lod). Do I need to recalc bounds for each grass cache? The only grass mod im using is Ulvenwald light which should have identical grass placement as vanilla. I keep re running grass cache with different things enabled and nothing seems to change. At my wits end so would appreciate any sort of input!
            1. infernalryan
              infernalryan
              • premium
              • 68 kudos
              can you send a screenshot? is the floating grass in LOD or in loaded cells? if you re-ran grass precache generation, that should cover the loaded cells due to topology changes. how high off the ground is the grass? the recalc bounds may help if it is only slightly off the ground (which would indicate that the current bounds are too big for the grass models, so there is a "gap" between the "bottom" of the grass model bounds and where the model actually starts), but if this is way higher in the air I don't believe that would cover that. Also, since you didn't change your grass mod, a recalc shouldn't be required as those should only be the GRAS records, not their placement in the world.
            2. ArgonianSuffragist
              ArgonianSuffragist
              • member
              • 0 kudos
              Thanks for replying! I honestly thought Nexus was going to give me some sort of notification if you replied, I guess not haha. I'm not 100 percent sure what I did, I think I just managed to get everything that modified any world spaced enabled during the caching and it seems to be working! The floating grass was from landscape being modified and the mod that changed the landscape not being enabled during caching. Fairly obvious in hindsight, but a key note: patches for city mods need to be enabled as well. Probably also obvious, but I missed this on my first caching. Thanks for a lovely guide and for the attentive troubleshooting in the comments!

              I did do my own seasonal dydnolod gen (took 5 hours) and although there are some visual glitches (flickering mountains, some weird flashing etc) everything seems to be working okay for right now. But very much looking forward to your guide for it! I found the seasonal documentation for all lod generation to be severely lacking, and beyond that the sheer amount of time it takes is a little frustrating. I totally understand why it has been a WIP for a while now because it is an absolute pain to do (but worth it imo :))

              xx
            3. infernalryan
              infernalryan
              • premium
              • 68 kudos
              Thanks for the update and feedback! Glad everything worked out for you.
          8. londonhascalled
            londonhascalled
            • premium
            • 3 kudos
            Amazing guide!! Really easy to follow. I am getting one weird error. During the winter I have grass growing in the rivers. Spring, Autumn and Summer are fine, only winter. Could it possible be from using Turn of the seasons with the icy rivers options?
            1. infernalryan
              infernalryan
              • premium
              • 68 kudos
              Thanks for the feedback! This could just be the grass mod you are using. It could be the icy rivers option from TOTS but I haven't used that mod personally. Have you tried switching to that season without grass cache? I recall seeing something similar with a grass mod (not specifically for winter, the name escapes me) where the author has made a patch specifically to reduce the grass in water in the Reach area I believe due to some complaints, etc..
          9. MadHagrid22
            MadHagrid22
            • member
            • 0 kudos
            So I don’t need to recalc bounds in Creation Kit then? It should recognise the boundaries? I’m using Skoglendi btw if that helps
            1. infernalryan
              infernalryan
              • premium
              • 68 kudos
              I am updating the guide to include the recalculating bounds step (see my sticky post). It's not a required step but highly recommended as in some cases, if bounds are not defined already for your chosen grass mod(s), grass will simply not render in some areas.
          10. StigOHara
            StigOHara
            • member
            • 0 kudos
            Should No Grass in Objects be disabled for Texgen generation? 
            1. infernalryan
              infernalryan
              • premium
              • 68 kudos
              There is no requirement to disable NGIO for xLODGen, TexGen, or DynDOLOD, however, NGIO serves no purpose for a seasons load order except for generating the grass since you need to disable it and enable Grass Cache Helper NG instead when playing. You don't need to disable GCHNG when generating xLODGen, TexGen, or DynDOLOD, either.

              Hope this helps!
          11. Swiftgold
            Swiftgold
            • member
            • 1 kudos
            Is there anything I could be missing in a setting or something? I've followed the guide and apparently successfully generated all the seasonal cache files, as well as all the DyndoLOD on setting 1, TexGen and LODGen, default cache is disabled after DyndoLOD generation, Grass Cache Helper enabled, but I can't get into the game to test it because it won't give me any text on the main menu or do that AE change the logo to gold thing. The menu music plays but the loading spinner is not spinning. I had seasonal grass working before I decided to try doing the cache thing so I guess I can undo that if I have to, but otherwise I'm not sure what is going wrong.
            1. infernalryan
              infernalryan
              • premium
              • 68 kudos
              Try doing one step at a time. If you remove all seasonal grass outputs and disable DynDOLOD, does the game load? If you re-enable the seasonal outputs and Grass Cache Helper NG, does this also work, and does the grass in active cells load? When you say you did DynDOLOD on "setting 1" you mean grass mode 1? Can you post a screenshot of your DynDOLOD settings window?
            2. Swiftgold
              Swiftgold
              • member
              • 1 kudos
              Thanks for the help. It still freezes at the same point with grass cache and helper disabled. It won't even get to that point with the DynDOLOD/TexGen/LODGen files disabled and hangs on the Bethesda logo with the music playing. DynDOLOD disabled and TexGen/LODGen enabled gets to the menu before hanging with no text as usual. I also disabled seasonal change in the INI to no result. Any other combination of disabling or enabling grass cache and NGIO results in hanging at the Bethesda logo. This is with SKSE launching out of MO2, by the way. I did also have that circular seasonal swap error originally, also shown in a comment here below, that I was able to get past by removing the records from the INI as it says.
              Here are my settings. The grass cache part was greyed out before I generated any cache files or Texgen billboards, but otherwise these are the same settings that I had working for seasonal change (Medium rules):


              ETA: By updating my skyrim.ini as someone said in the NGIO posts to add the line bGenerateGrassDataFiles=0, and making sure my INI for seasons was set to 5, I was able to get the text to show on the loading screen but it still freezes up and the mouse doesn't work so I can't choose to load a file. Could it be some other setting like this? I also set my skyrim.ini to bAllowCreateGrass=0 and bAllowLoadGrass=1 but perhaps that's wrong? Thanks!
            3. infernalryan
              infernalryan
              • premium
              • 68 kudos
              Sorry, I'm confused by some of your responses. Can you try the following and respond as numbered? Also, Grass Cache Helper NG must remain enabled and NGIO must be disabled in order for seasonal grass swaps to work (NGIO is only used for GENERATION of seasonal grass cache, but GCHNG is used to SWAP the grass caches). Be sure these mod statuses remain as such in the steps below.


              • Disable ALL xLODGen, TexGen, DynDOLOD, and grass cache outputs. Start the game - can you get past the logo? If this is a DynDOLOD and/or grass cache issue, there should be no issues here. If you have issues here, it is likely load order related (not relating to LOD outputs/etc.).
              • Enable just the grass cache output(s). Start the game - can you get past the logo? If these load fine, your cache files are probably not the issue.
              • Enable xLODGen output(s), keep grass cache enabled. Start the game - can you get past the logo? These have no plugin dependencies (they are just textures) so there should be zero issues here, either.
              • Enable TexGen and DynDOLOD outputs along with existing outputs. Start the game - I believe this will hang no matter what based on your response.

              It's common to enable mods temporarily while generating xLODGen, TexGen, and DynDOLOD outputs -- you didn't leave any enabled by chance? Did you disable any mods for grass generation and forget to re-enable? If so, your infinite load may be due to a missing dependency. You have no errors in the top right of MO2 citing any missing masters, correct?

              Also, be sure you have DynDOLOD resources enabled when generating and also after generation. What version of DynDOLOD DLL are you using? SE or NG (or VR perhaps)? I recommend NG (which works for all Skyrim SE versions including VR), and make sure you are using the most recent version. Also, be sure to load your DynDOLOD DLL mod AFTER DynDOLOD resources because the scripts contained in the DLL mod need to overwrite those in the resources mod. Those scripts load at runtime (they are Papyrus based) so it's possible that might be causing your infinite start screen. Also, make sure you have the actual plugins (DynDOLOD.esm, DynDOLOD.esp, and Occlusion.esp) in your DynDOLOD output folder. One time I hit the 'X' button at the prompt when finishing my DynDOLOD generation and it never created those files.

              That's all I've got for suggestions for now until I hear back from you.
            4. Swiftgold
              Swiftgold
              • member
              • 1 kudos
              Sorry, I'm confused by some of your responses. Can you try the following and respond as numbered? Also, Grass Cache Helper NG must remain enabled and NGIO must be disabled in order for seasonal grass swaps to
              work (NGIO is only used for GENERATION of seasonal grass cache, but GCHNG is used to SWAP the grass caches). Be sure these mod statuses remain as such in the steps below.
              Correct, NGIO is disabled and Grass Cache Helper is enabled, though I did experiment around with seeing if any combo of enabled and disabled things allowed me to get into the game, but nothing has worked yet.

              • Disable ALL xLODGen, TexGen, DynDOLOD, and grass cache outputs. Start the game -
                can you get past the logo? If this is a DynDOLOD and/or grass cache issue, there should be no issues here. If you have issues here, it is likely load order related (not relating to LOD outputs/etc.).
              This combination of deactivations freezes at the logo, yeah. Everything disabled with Grass Cache Helper also disabled, and NGIO enabled, got me to the menu with a warning about missing grass cache, but the mouse/keyboard didn't work to click OK on the warning so I was frozen again.

              • Enable just the grass cache output(s). Start the game - can you get past the
                logo? If these load fine, your cache files are probably not the issue.
              This one also freezes at the logo, both grass caches enabled with helper and with helper disabled. I actually got the Skyrim logo in the taskbar however, as the others crash with the generic box icon before it gets there, so I let it run a little to see if it would catch up, but it stayed frozen.

              • Enable xLODGen output(s), keep grass cache enabled. Start the game - can you get past the logo? These have no plugin dependencies (they are just textures) so there should be zero issues here, either.
              • Enable TexGen and DynDOLOD outputs along with existing outputs. Start the game - I believe this will hang no matter what based on your response.
              Yeah, still stuck, unfortunately.

                It's common to enable mods temporarily while generating xLODGen, TexGen, and DynDOLOD outputs -- you didn't leave any enabled by chance? Did you disable any mods for grass generation and forget to re-enable? If so, your infinite load may be due to a missing dependency. You have no errors in the top right of MO2 citing any missing masters, correct?
              Yeah, nothing missing, only the warning about having things in override. I disabled Auto Parallax when I ran the cache generation and re-enabled it afterward.

                Also, be sure you have DynDOLOD resources enabled when generating and also after generation. What version of DynDOLOD DLL are you using? SE or NG (or VR perhaps)? I recommend NG (which works for all Skyrim SE versions including VR), and make sure you are using the most recent version. Also, be sure to load your DynDOLOD DLL mod AFTER DynDOLOD resources because the scripts contained in the DLL mod need to overwrite those in the resources mod. Those scripts load at runtime (they are Papyrus based) so it's possible that might be causing your infinite start screen. Also, make sure you have the actual plugins (DynDOLOD.esm, DynDOLOD.esp, and Occlusion.esp) in your DynDOLOD output folder. One time I hit the 'X' button at the prompt when finishing my DynDOLOD generation and it never created those files.
              Yeah, resources enabled and patches as well. I'm using the DLL found here: https://www.nexusmods.com/skyrimspecialedition/mods/97720?tab=files, so 3.00, and it looks like the site links back there so it should be the right one. It looks like the resources load before the DLL, yeah. Only thing overwriting the DLL is settings loader which I tried with disabling, but nothing. At this point I might try just undoing all the cache stuff and going back to uncached, as it was running all right except for some lag on the tundra, so I'll see if I can even do that, LOL. Thanks for the help again.
            5. infernalryan
              infernalryan
              • premium
              • 68 kudos
              Hmm very interesting. Thanks very much for the feedback. It sounds like even with all of these outputs disabled, you are still having issues. Are you even able to load Skyrim at all with any combination? The grass cache files on their own don't do anything, they are just files which require NGIO (non-seasonal) or GCHNG (seasonal) to do anything, so by disabling them, along with your xLODGen and DynDOLOD outputs, you've basically removed everything I can think of to restore you to a pre-grass cache version of your mod list. 

              Do you run any synthesis patchers or anything like that which could have been modified in some way?
            6. Swiftgold
              Swiftgold
              • member
              • 1 kudos
              I do have a bashed patch for leveled lists, which I regenerated after making changes, but removing that didn't work. Even with my reverting the process of the cache, setting the INIs back and rerunning the DyndoLOD programs, it's still freezing me on the menu, though I am seeing the menu text again. Mouse and keyboard won't work though. I'll have to just disable half the list and work out which one is causing this. Perhaps it's not even related to any of this grass cache issue? That would be a dumb coincidence, but definitely possible.
            7. infernalryan
              infernalryan
              • premium
              • 68 kudos
              With issues persisting despite disabling all of the generated grass/LOD outputs, I would say this is definitely not relating to those specifically, unless some of the output(s) overwrote some of your existing files for your working LO (which can happen w/ MO2 if you generated things without first disabling previous outputs/etc.). Again, those outputs themselves do not have any mods dependent on their files or plugins, so disabling them does not affect the rest of your load order and should return you to a state before anything was generated.

              I'd be interested to hear what the solution ends up being. Please keep me posted.
            8. Swiftgold
              Swiftgold
              • member
              • 1 kudos
              So, the culprit was Community Shaders. I updated it with the last update on March 10, which was before when I tried running the cache on March 14, and my load order was working fine until then. All I can think of is there was some unexpected interaction in there along the lines of having to disable Auto Parallax before running the cache? In any case, I'm going to try reinstalling Community Shaders now and see if that fixes it.
            9. infernalryan
              infernalryan
              • premium
              • 68 kudos
              Do you (or did you) by chance have Tree LOD Lighting installed? The new CS update includes it now by default and using the actual mod causes issues. This may be a possible culprit.

              First comment on the POSTS page:
              Uninstall this if you're using the latest community shaders, CS has this feature built in now. Using this will only cause errors.

              Source: CS support discord
            10. Swiftgold
              Swiftgold
              • member
              • 1 kudos
              I don't have that in (and the newest update was working for a few days) but from the posts on CS page it appears something is breaking other people's stuff with the mod as well. Reinstalling the newest CS version didn't work either. I'll try rolling back one, but otherwise I'll just wait for an update as I'm a bit burned out from testing to even want to play now, LOL. I didn't delete my grass cache files so I might try this process again later, since the issue doesn't appear to have anything to do with the grass cache now.
            11. infernalryan
              infernalryan
              • premium
              • 68 kudos
              Thanks again for the update. Hope you get the issues with CS resolved.
          12. qIpdIb
            qIpdIb
            • premium
            • 290 kudos
            To anyone who sees a wall of text and panics, relax. This is a fantastic tutorial that makes it very simple and easy to understand.
            1. infernalryan
              infernalryan
              • premium
              • 68 kudos
              Thanks for the feedback!