Skyrim Special Edition

About this mod

This is a remake of Minty's Lightning mod as an SKSE plugin. The purpose of this mod is stability and scalability. It can summon up to 50 sheet lightnings and 50 fork lightnings per second and up to 31 cells distance. This results in a more natural and enjoyable storm experience.

Requirements
Permissions and credits
Translations
  • Spanish
  • Polish
  • Italian
  • German
Changelogs


DESCRIPTION

This mod is an SKSE plugin remake of Minty's Lightning During Storms mod. It detects the weathers that would have Thunder/Lightning automatically from installed mods, so it doesn't require patches and is compatible with all weather mods automatically (Check Compatibility section below for detailed explanation on how).

It doesn't have any scripts except for configuration (MCM). It uses meshes, magic effects, sounds etc. from the original mods, but all the logic is implemented from scratch in the SKSE plugin. Instead of spawning activators like the original mod, Storm Lightning uses already placed in activators in another secret world and moves them to appropriate locations. It also doesn't have the script lag problem because it doesn't use papyrus scripts or quests to accomplish these. These result in a big performance gain which allowed me to expand this to be able to scale further.

It's scalable to allow up to 50 sheet lightnings and 50 fork lightnings per second. It can summon these lightnings on up to 31 cells distance radius. This results in a more natural storm weather experience. 

YOU CAN ADJUST FREQUENCY OF LIGHTNINGS EASILY FROM MCM!!!!!!!

It includes features from the original mod such as, Hostile lightnings option, Lightning flash, Lightning sounds etc.

Everything in the mod is configurable and it comes with presets for easy selection too. Check Configuration section below for more detail.

This mod also fixes the invisible lightning bolt bug from the original mods.


EPILEPSY WARNING: If you are sensitive to flashing lights, you should adjust or disable lightning flashes from the MCM.



Important: This mod is using Thunder/Lightning Frequency fields of weathers to determine if there should be lightning on that weather, and how intense it should be.

Basically it's compatible with all weathers. And if for some reason the weather doesn't have that field used, there is a compatibility mode available that only checks if it's raining, cloudy, snowing etc. based on your choices in MCM.

You don't need and you shouldn't use any of the old minty lightning mods, their patches etc.




Important: Do not change formids of this mod and do not change the name of the esp from "StormLightning.esp". Assets are loaded from the skse plugin by formids. Any changes to them or the esp name would result in breaking the mod.



REQUIREMENTS

It doesn't require original Minty Lightning mods or their ports/patches and is incompatible with them of course. You should uninstall those before installing this mod.

For Skyrim VR:


For Skyrim Special Edition:


Also checkout Thunder Sounds Replacer from WiZkiD: https://www.nexusmods.com/skyrimspecialedition/mods/44656




INSTALLATION

This mod comes as a FOMOD installer. Install with your favorite Mod Manager. Select your correct game version.

It comes with ESL flagged esp option for SSE version too. Just select it during installation.

You can select sheet and fork lightning halos from fomod installer. Let me know if you like it in the comment section.

Regarding file conflicts between this and some other mods, those files are for FISSES support. If you have FISSES, let FISSES overwrite them all. If you don't have FISSES, it doesn't matter which overwrites because they are not used in any way.




CONFIGURATION

This mod comes with an MCM to configure the settings. Let's go over the settings and what they do:



PRESETS:

In the Presets section you'll find predefined settings for the mod. These are all the same as Default settings except frequency and volume changes. 
So they all have up to 31 cells distance in lightning appearances. Flashes are enabled. And hostility is disabled.

Minimum is for minimum amounts of lightning. You'll get 1 sheet lightning and 1 fork lightning every 20 seconds. You may not see any lightning at this level if you are not looking at the correct direction.

Realistic preset is for players who want realism. You can select this preset and reduce the frequencies even more if you want, but remember, these settings are for the storms of highest lightning amount, not normal showers. When in doubt consult your weather author about frequency values if they support this mod specifically. 

Ultra Realistic preset is for players who want more realistic lightning frequencies. This is lower than Realistic preset. Designed for people who want a more earth-like lightning storm instead of fantasy.


Default preset should be good for anyone who wants a good amount of lightnings in their storms. 

I don't recommend using higher presets as they are far from usable in a normal play (Constant lightning and thunder). They are intended for demonstration purposes only to show you how far this mod can go (or for crazy people).

Exciting preset makes lightnings appear a lot. From this point forward these presets are more of a light show instead of a preset to play with.

Extreme preset is the max you can choose without losing too much fps in my tests. Extreme amount of lightning.

Insane is for insane amounts of lightning. You may lose a lot of fps with this preset. You may also encounter bugs like lightnings appearing and disappearing very quickly at this level.

FISS support is added in version 1.4.6. You can now save and load your own presets.





GENERAL:


In the General section, you can Enable or Disable Lightning types for Rainy, Snowy and Cloudy weather types.
You can change settings for Chain lightnings, which is a combination of several sheet lightnings happening all at once. Here you can define minimum maximum counts for chain children and also the percentage of chain lightnings in all sheet lightnings.
Also you can enable Hostile lightnings here, which will damage and kill who ever's struck by lightning including the player.




SETTINGS:

In the Settings section, you can select Frequency, Distance, Flash settings.

Frequency determines how many lightnings will happen per second in the determined area. So for a big area like 31 cells radius, you'll need more frequency than like a 11 cell radius area. Using 15 in a 11 cell radius area would result in an extreme amount of lightnings. Allows 0.05 increments.

Minimum and Maximum Lightning Distance values are used to determine how far away the lightnings will happen in Cells. Which means 31 cells will put the furthest lightnings behind any mountains in range, which will result in a more natural view. Also you can adjust the minimum as you wish. So if you don't want lightnings to ever effect you, you can select at least 1 or 2 for Minimum Fork Distance for example. 

Flash is the image space modifier applied to the screen when a lightning strikes. Flash Amount is the duration in milliseconds to apply the flash. You can enable/disable flash for sheet and fork lightning types. It's also affected by the default flash distance in the Advanced Page.





ADVANCED:

In the Advanced section you can Enable/Disable Logging, change the positions and limits of lightnings.

Compatibility Mode is for people who use mods that doesn't have any Thunder/Lightning Frequency defined for their storm weathers. If this mode is enabled, only the settings in the General page are taken into account when a weather is checked for lightning.

When Compatibility mode is enabled you need to Disable Cloudy and Snowy Sheet and Fork lightnings from General page of MCM to make sure you don't get lightnings for those weathers.


Minimum Flash Amount is the smallest amount of flash to apply. It's used to prevent really short flashes that can annoy the player. If you don't want short flashes and want only the longer flashes, you can increase this parameter.

Default Flash Distance is the default distance used in calculation of the flash amounts. In the Settings section, you selected flash amount. That amount gets reduced the further it is from this default flash distance. Also the closer it is from the default flash distance, it's increased. So if a lightning strikes next to you, it blinds you more.

Horizontal Strike Distance is the distance of the sheet lightning strikes. This value is also used (multiplied by the distance to the player) to determine how further area horizontally the fork lightning strikes from cloud to ground too.

Minimum and Maximum Sheet Height is used to place Sheet lightnings at a height from the sea level. I recommend using at least 50000 as the minimum sheet height, because lower values would place lightnings at player level or lower on High Hrothgar. I prefer 75000 - 95000 values which make them appear high in the sky instead of real close to you when you go up to higher elevation.

Sky Curve is used in calculation of distant sheet lightnings so the distant ones will appear lower to simulate the world's roundness.

Sheet and Fork Fade Duration are the duration values for lightnings to stay on screen before disappearing. So if you think they stay too long or too short you can change it from here. But beware that using lower fade durations may cause inconsistencies with lightnings. Lightning meshes have 1.33 second animation durations themselves. If you go below that in fade duration, you may see lightnings without bolt.

In the Thunder Volume section, you can change the volume of sheet and fork lightning thunder sounds.
Sheet Volume and Fork Volume are the master volume for thunder. Values are between 0.00 and 1.00.

In version 1.4.4, an additional volume slider added to Main Menu Settings Audio section to control volume.

Since version 1.4.0, thunder sounds are played for each and every lightning strike. This may be overwhelming for players who prefer a high frequency setting since this is a fantasy game. So we need attenuation to prevent so many lightning thunder claps overlapping:

Attenuation Curve values are used to calculate distant thunder volume decay. 0.000 value means almost no decay on distant thunder and higher values means distant thunder sound will be decreased exponentially.
You can increase attenuation values if you experience too many thunder sounds overlapping.

Formula is like this(for those who are curious): 
coef = curve + (curve + 0.08)*(frequency/50)
attenuation[0] = volume*100
attenuation[1] = volume*100 * (1.0 - coef)^25
attenuation[2] = volume*100 * (1.0 - coef)^50
attenuation[3] = volume*100 * (1.0 - coef)^75
attenuation[4] = volume*100 * (1.0 - coef)^100


Thunder Chances (NEW) values are used to determine if a thunder sound should be played with a percentage chance. This is added to prevent overlapping thunder sounds which cause distortion. Every preset has different thunder chances defined for their frequency values. If you change the preset to your own purposes, make sure to change these values to fit as well.




COMPATIBILITY

It's not compatible with the original or the SSE port of Minty Lightning mod. You should uninstall those before installing this mod.

Not compatible with Moon Phase Affects Brightness at Night. It causes halos to not appear at night.

This mod detects weathers that should have lightning automatically. So it doesn't require any patches to be compatible with different weather mods.


Thunder/Lightning - Frequency field in weathers are used to determine if that weather has lightnings. A value of 255 means no lightning. A value less than 255 means lightning will appear. Smaller frequency values will result in higher amount of lightning. Configuration settings selected in MCM are for the smallest frequency values in your installed mods, so other weather lightning amounts are calculated from that.

For example: In the above example, Rain_Heavy_01 weather has 15 as frequency and Rain_Light_04 has 160 frequency. 15 is the lowest frequency in installed mods so it is used as a base. Assuming the player has chosen 50 lightnings per second in MCM, Rain_Heavy_01 will have 50 lightnings per second (20ms wait), and Rain_Light_04 will have 20 * (160/15) = 213ms wait resulting less than 5 lightnings per second.

For Cloudy and Snowy(and Ash) weathers, there are options in MCM to enable-disable them. So they are allowed if weather authors wanted lightning for that weather.

If you are using an old version of RaceMenu, you should update to the latest. Older versions than 0.4.6 has a problem that causes shock spells to freeze the game. It directly affects this mod because this mod creates lightnings by shock spells.


If you are having black grass issue during lightning flashes, that is caused by black color (0,0,0) set under your Weather -> Lightning Color records:

I suggest patching them using xEdit to a whiter color like in the image like (219, 220, 219).




CREDITS

  • Minty911 for the original Lightning during Thunder Storms mod and having open permissions.
  • L3st4t for his work on the SSE port of Minty911's mod, the new sounds he found, giving me permission for making this mod and his help testing SSE version.
  • PlayerTwo for the Visual components of the original mod.
  • Cangar for testing the VR version.
  • BlueGunk for testing.
  • TerenceYao for FISSES, included the script files from it.




FUTURE

  • Remake lightning effects to be more realistic.
  • Add Tornadoes
  • Add Hail (ice balls raining down from the sky)
  • Add an extension to override lightning spawning parameters for that worldspace(for any mods that want to use it)
  • Let me know if you have any other ideas for the future.