Jump to content
Sign in to follow this  
godescalcus

Scripted mods and their impact on savegames

Recommended Posts

Hi guys,

I'm looking for some well founded advise. I purposefully didn't mention a mod name in the title because I want to allow the scope of any eventual discussion to be able to be more broad about mods that risk damaging long play savegames.

There's talks about iNeed being a savegame destroyer - a mod that I've used for many years and that I'm currently not using, so there's no bias there for me - just honestly want to know beyond hearsay. The "best" argument I've found was fashioned more or less like this: "All of isoku have issues to some degree and it all comes dont to his scripts being consistently not well written. Wet and cold causes Crashes. Wonder of weathers causes CTD in certain situations and iNeed causes corruption in certain situations. When i see that pattern my best recommendation is to not use any isoku mod as of right now."

I can confirm from my experience that dropping Wet and Cold improved stability on my heavily modded game. Never really used Wonders of Weather.

Now I don't want to question all of Isoku's mods like that - or endorse the argument I quoted. While I can see common sense in following a pattern when your knowledge isn't enough to pursue the technical side of the matter, I'd like to know if there's any real evidence in support of those mods being stable or unstable in the long run. My point is if there is any grounds to saying that those scripts are not well written, that statement should be founded on why they are not well written.

If a more general discussion on script usage and its impact on long term SSE savegames ensues, all the better, hoping for some fruitful insight that may actually help me pick my mods better.

Thanks!

Share this post


Link to post
Share on other sites

When using mods for Skyrim (LE or SE) and Fallout 4, the important thing to remember is that you should NEVER uninstall a mod for any reason on an existing save. That should only be done when starting a new save. SMKViper, the guy who designed the Papyrus scripting system, had this to say on the subject:

smkvipermoduninstalls.png

People who make a regular habit of uninstalling mods are the ones who then go around claiming that certain mods break the game or corrupt your saves when they involve scripts. CTDs are also common under these conditions. So you should take with a grain of salt any advice that there are safe ways to uninstall mods on these games.

Isoku is a very talented and knowledgeable mod author. So long as you do not do anything stupid with his mods, they will behave just fine. Wet & Cold gets a bad rap for being unstable, laggy, etc. but this is not the fault of his scripting. It's generally the fault of people who are using mods with too many NPCs added to the game and with graphic or body mods that are too high a resolution for the engine to handle. So on heavily over-modded games the additional effects that Wet & Cold may appear to be to blame for the problem, but that's not the case.

Generally speaking, Papyrus is dependent on the frame rate of your game to do its work. If you're able to maintain a solid 60fps, then the scripting VM gets enough attention to do its job without issue. It's only when you start bogging things down with intensely fps-draining content like hi-res texture packs or ENB that things begin to go south. Dropping below 30fps is when things start to get ugly and you'll begin experiencing stack errors in the Papyrus log. These are obviously bad, but they are NOT something that modders are likely to be able to cause even under these conditions. Slow processing, yes, but stack dumps? Unlikely. SMKViper had a write-up on this that I can't find right now which went into the gory details of it all. Of course, most folks in places like reddit dismissed what he had to say because they think Bethesda are morons.

Consider for a moment that the game itself has in excess of 13000 scripts of varying types, many of which will be running at any given moment. If scripting could actually slow the game down we'd have run into that before any mods even existed.

There is also another write-up on script performance tips on the CK wiki as well: https://www.creationkit.com/fallout4/index.php?title=Performance_(Papyrus)

Share this post


Link to post
Share on other sites

Yep, I have had my fair share of *corrupt* gamesaves in both SLE and SSE, but for SLE I often use Hadoram's Save Game Script Cleaner tool and I dunno how many times it saved my game from being unplayable.

Unfortunately, Hadoram's excellent tool hasn't been converted for SSE yet.

Share this post


Link to post
Share on other sites

Save cleaners should not really be considered safe at all. Even Hadoram's isn't entirely reliable. If your saves are getting to where they're unplayable, you need to address the root cause of that because you'll just end up with the same problems again later.

Share this post


Link to post
Share on other sites

I've have first-hand objective evidence that stack dumps are tied to low framerate issues. Having the same build on two different machines, one being my desktop PC with a relatively beefy modern GPU and the other being my laptop, with an older one, I often moved my savegames from one to the other on trips and the like. The laptop performed rather poorly, generally around 40fps with dips to the low 20's or even less. That's the only time I saw stack dumps in my savegames in SSE.

I've also experienced game freezing during combat, usually when dragons were involved, that was fixed by removing Wet and Cold, but I can follow your argument that it doesn't warrant for that mod the title of "rogue". When you use it in combination with scripted combat mods, scripted weathers, scripted events, scripted needs, plus the base game, all competing for milliseconds of processing time, I can see any of them could be the straw that broke the camel's back. But it does make me think that patching form conflicts can give you a false sense of solidity for a build that may have a lot of issues that can't be so easily visualised as a chart of forms in xEdit.

I was told once that NPCs with their AI "hung" because of bad navmesh causing an impossible pathfinding loop (different of NPCs trying to navigate with a "valid" path that happens to have obstacles not accounted for in the navmesh) could damage your savegame in the long run. Truth, or myth?

Share this post


Link to post
Share on other sites

Dragon attacks involve a high poly model doing intense combat calculations in addition to the scripts they're running, the NPCs in the area acting like dufuses, and the actions of the player trying to react. All of which can significantly lower frame rates during the battle. Throw Serana in and having her toss around lighting spells with expensive effects and stack dumps during dragon fights are not a surprise at all. Something has to give under those conditions. Keep in mind that dragon flight is calculated independently of everything on the ground following the navmesh.

NPCs who get hung up by bad navmesh when wandering around will simply teleport past it after enough time is spent being unable to move. This will not damage your save in any way, even if you don't witness the teleport yourself.

Share this post


Link to post
Share on other sites

Seen the teleport happen, too. So you're perhaps busting one other myth of mine, this one of a personal nature but that I have been using to talk people out of using every possible city and town expansion mod available, along with ICAIO: those incompatibilities are not simple overlapping meshes or confused NPC AI, they're malignant and will break your save. I based my own assertion on experience, where after deciding not to use JK's and Dawn of Skyrim in my heavy build, I noticed increased stability (less crashing for one) - but then, probably what you said before would apply and it would come not from specific conflicts with ICAIO (I used every patch available and took as much care as possible with selecting which mod won the navmesh, even regenerated door links and all that) but from a heavy build overall causing the engine to choke in places where framerate drops. JK's cities definitely took a toll with the hardware I was using at the time I gave up on it. But, in the end, for different reasons than "broken AI killing your save", the main idea remains valid, one must limit a mod build to what the engine can take, and framerate can be a good indication of whether it's over that limit for each person's hardware? If that's the main guiding point, then choices definitely have to be made between Isoku's "immersion" mods, high poly bodies, high poly armoury, mods that add more actors, more clutter in cities and towns, needs mods, bigger trees, more grass, etc, etc, etc... Enb's newer effects, especially complex fire and particle lights, can really slow things down at times, depending entirely on what's on screen being post-processed.

Share this post


Link to post
Share on other sites

Yep. Overloading on city enhancements will definitely do it. Which becomes compounded by adding in hi-res weapon and armor mods, as well as all those hi-res body mods people like. Throw in an NPC spawning mod or two and you're now asking for trouble, even on SSE.

ENB is the largest offender though given that it's well known to chew up about half of your graphical performance all by itself unless you go in and tweak the hell out of it to lighten the load.

As far as ICAO, that mod is a buggy mess, period. You can very easily have it do something dumb and get NPCs permanently stuck indoors, not to mention it's well known to drag NPCs off target for quests, which then break. And you're already aware of the navmesh issues. If one were to insist on keeping it, ICAO should go up near the top of the load order in order to prevent it from clashing with dozens or hundreds of other legitimate navmesh edits down the list.

Share this post


Link to post
Share on other sites

One more question: opening the console can interfere with scripts running, and that's bad - truth or myth? Just opening for a couple of seconds and dismissing, entering no commands at all. I frequently use it to pause the game immediately after I enter a new worldspace, move from interior to exterior and vice-versa. It can take a few seconds for the screen to fade from black and during that time the game is running, you can be attacked, spotted while sneaking etc. But I've read recently that calling the console has an effect on scripts running... It certainly pauses the game, also pauses grass generation and such but also does allow for at least some scripts to run as I've seen some do while having them in verbose debugging mode. Is it a bad practice to use it thus, as a way to pause the game while the cell finishes loading?

Share this post


Link to post
Share on other sites

Opening the console freezes the VM, and you can verify this for yourself by alt-tabbing to another window and looking at the Papyrus log. It'll look like this:

[01/10/2020 - 10:06:57PM] VM is freezing...


[01/10/2020 - 10:06:57PM] VM is frozen

When the console is closed out, you'll see this message:

[01/10/2020 - 10:06:58PM] VM is thawing...

No scripts of any sort will process while the console window is active. The entire game will be in a suspended state.

That said, interrupting things in the way you're doing when transitioning between load screens is probably not a good idea because the act of performing the autosave during the transition has also frozen and thawed the VM during the process, and it IS possible to trip things up in the VM if you interrupt it too often in a short time frame. Especially if you've got scripts running that are on timers that aren't associated with the time of day in-game. Upon returning from the console window the game will check all of those and will fire them all off at the same time if enough seconds have passed since the last event poll.

Share this post


Link to post
Share on other sites

That's a good confirmation, thank you. I'm sorry this thread is turning less technical than the standards of this side, but even discussing some common-sense with people who know the insides of this game is useful.

Another gut feeling I have is that there can be bad ways to play the game - for example, a lot of people like to rush through a city, talk to everybody and start every quest they can, before moving to the next location, and then start chasing quest markers. My feeling is that - if your build also has a few extra mods, like needs mods, that add some work load - having dozens of quests running simultaneously can occasionally strain the engine. Maybe even with a vanilla game, but even more so with a modded game that includes more quest mods and scripted scenes taking place in the game's original worldspaces, Interesting NPCs being an example, or Wyrmstooth during that first dragon chase (I have often crashed then). Mind that I'm not shit talking any of those mods, I like them and always run them.

What I'm considering is if there is a more sensible way to play the game, especially if you nave mods that run scripted scenes in Tamriel or any of the main cities, or needs mods. And suggesting it might be best to play more slowly and focus on following each quest as you trigger them, or trigger fewer at the same time.

Share this post


Link to post
Share on other sites

The only thing you're going to suffer from in rushing through a city is missing out on a few things here and there. It won't have any impact on the engine itself just because you did that. What few things mods may add are a drop in the bucket compared to what the base game has running most of the time. It's one of the biggest urban myths of all that you can cripple the game with too many content mods. Assuming of course those content mods aren't so large they run out the reference handles.

Share this post


Link to post
Share on other sites

 

On 1/28/2020 at 5:45 AM, godescalcus said:

Another gut feeling I have is that there can be bad ways to play the game - for example, a lot of people like to rush through a city, talk to everybody and start every quest they can, before moving to the next location, and then start chasing quest markers.

[...] And suggesting it might be best to play more slowly and focus on following each quest as you trigger them, or trigger fewer at the same time.

I'm one of those who talks to everybody in town. Slowly. Then talk to them again the next time I'm in town. Etc.

There is a serious problem with too many concurrent quests. A common script runs every second checking to see whether you are within a radius of a target (dungeon or whatever). I've seen it running 50 or so instances, because my player is scared going into a dungeon until at least level 20 after training bow up to 50 and sword up to 40 and armor up to 30....

A better design (already used in a fair number of places) is the encounter box around the location. They did some of that circa patches 3 & 4, because they didn't realize folks would delay finishing so many quests. But sometimes it is triggered as you walk/ride nearby, and then uselessly sets up all the stuff  anyway.

The best design is using the Story Manager. But very few places were done properly as that requires a second (or third) setup quest per dungeon. Still, there are some places that were done quite well.

So when they give me a quest to go find their helmet or whatever in a dungeon, I reload and don't ask them the question. The exceptions are those few that are carry/fetch a book or letter or item, as those don't seem to involve the 1 second update loop.

Also, see https://en.uesp.net/wiki/Skyrim:Quest_Timing

Share this post


Link to post
Share on other sites
On 2/15/2020 at 7:38 PM, DayDreamer said:

 

I'm one of those who talks to everybody in town. Slowly. Then talk to them again the next time I'm in town. Etc.

 

Thank you for your feedback. Good info... So, as a GENERAL RULE, you'd support the idea that it's best to focus on the quests at hand and finish them first, instead of running around triggering everything and accumulating 100+ active quests in the log?

Share this post


Link to post
Share on other sites
On 3/14/2020 at 12:47 PM, godescalcus said:

Thank you for your feedback. Good info... So, as a GENERAL RULE, you'd support the idea that it's best to focus on the quests at hand and finish them first, instead of running around triggering everything and accumulating 100+ active quests in the log?

Heck, no. I've easily got dozens and dozens of miscellaneous quests in the log, and do them as I pass by the towns they require. Many things folks tell you aren't nearby (Azura). Or might require a horse.

Using my touring carriages extensively, so learn names of towns as I pass by, and stop in them the second time I'm passing. They usually have a quest or two, so I'll do them ASAP.

Someday I'm intending to try the civil war, but it's not a good idea to do early, so joining both sides sits in my log for a very long time. Besides, dragons are so much more interesting.

The first time I played, I tried to walk to Winterhold, the first two things Orgnar told me about, and died over and over -- because I missed the words Hadvar told me about taking carriages at Whiterun.  (My brother never took a carriage in his first year of playing the game, he had no idea about them or fast travel.)

Now, I limit travel rather than quests. I know that I've got to go to Falkreath first, because the game tells me (and Quest Timing tells me I've got to go even sooner), and it's fairly close.

Then I'll go to Windhem (Aretino prompted by Orgnar), then Solitude (Bards prompted by Sven, and Legion prompted by Hadvar), then Markarth, then Whiterun (talk to jarl, although by then there are quite a few other things there in my log), then Riften (because of the unknown stone found in the hall of the dead), then back to Windhelm (to report to Aretino, and join Stormcloaks as by then recommended), which takes me (involuntarily) near Morthal, then Dawnstar (courier, and East Empire company quest), and finally Winterhold (as every innkeeper everywhere has told me about). At this point, there's a lot of stuff in the logs! So I'll go back to Windhelm and Solitude and Whiterun and do the rounds again.

That is, I try to role play based upon what the innkeepers, etc, tell me, but don't do things that seem too dangerous for my level, so they stay in my logs. I'm not willing to clear bandits at level less than 20, as I'm just learning to use a sword and shield and most importantly armor. And that intuition is backed by game data, as bandits are capped at 20. So they fill the journal. My player character is unwilling to do Golden Glow until at least 30-40, everybody warned me how "poor little Vex" (the best infiltrater) barely made it out of there alive. Sure enough, those enemies are uncapped.

There may be a lot of bugs in implementation, but as an open world game seems to be very well thought out for role playing.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

Support us on Patreon!

Patreon
×
×
  • Create New...