the Sim Settlements forums!

Register a free account today to become a member! Once signed in, you'll be able to participate on this site by adding your own topics and posts, as well as connect with other members through your own private inbox!

Long Save Research Tool

Don't know how much I can help but wanted to add my two cents. Started a new playthrough and wanted to "walk my saves" until I started running into long saves. I have no scrap mods. In the attached file:
  • Save 6 is Starlight Drive-In completely scrapped as allowed by vanilla. I saved it in Starlight before building a beacon. No long save present.
  • Save 7, built the beacon, Jake builds the first Residential Plot and goes to Concord to check on his workshop. I saved it in Starlight again. No long save present.
  • Save 8, met Jake at his Concord Workshop and he gave me the Holotape. Saved in his Workshop at Concord. No long save present.
  • Save 9, built and completed the Agricultural Plot. Saved in Starlight. No long save present.
  • Save 10, Industrial Plot completed. Met Old Paul and Jake leaves. Start the quest "If I Had A Hammer". Long Save
In my previous playthrough, my long saves happened in or around the "Main Settlement" of Sim Settlements 2. First playthrough before I scrapped it, anytime I saved in or around Sanctuary, long save. This one, Starlight Drive-In, same thing. The "Main Settlement" is where my problems are. Hope that helped.

Usually my long saves happen more when I'm in Sanctuary (my main settlement), outside of Sanctuary doesn't happen as often, but still happen.
 
I'll try to make a simple C# program today that edit all the scripts recursively. It will add an "I'm starting" with the name of the function as the first line of the function and in all returns and EndFunction will print "I'm stoping".

Shouldn't be that hard, I'll report on progress.


I really appreciate the time you're taking to explain stuff to me. It has been much helpful :agree:
Well guys, bad news :( my wife got covid today. She's ok, just a mild fever. We live in a very small 1 bedroom apartment, so I'll likely test positive too in the next few days. We have the 3 doses of the vaccine, so shouldn't be too severe.

Anyway, I took the day to make her company, so no progress on the tool yet. I'll try to do it tomorrow, but no promises.

If I disappear, you know what happened :grin (sorry... some days, my dark humour is the only thing that carries me).

See you soon! I hope...
 
Been working with shad, who created the Baka F4SE plugins, and he created a tool to help us research this issue.

The attached F4SE plugin will generate text versions of save files whenever you load them or save them. The idea is you load up a save from before a long save occurred, and we can use text comparison tools to compare the long save text file to the one before it. You can find the text files in your saves folder, they will have the same name as the save file but with the .txt extension appended.

The tricky part is that writing these files takes a while so it can actually make it seem like you're getting a long save every time. So you'll probably need to get used to the extra few seconds this tool adds and account for that when making the call of whether your latest save was a long save or not.

I'm also not entirely sure what we're looking for in the text files, but I'm hoping some of you strong troubleshooters and fellow techies can help find some patterns using this tool!

-kinggath
I'm having trouble with the hq on xbox it says I got no scrap logistics from the beginning and none are appearing when I wait in game could you spare advice what to do as I've waited 3 days in game and still nothing happened so i cant build the network installation and the power distribution room
 
Well guys, bad news :( my wife got covid today. She's ok, just a mild fever. We live in a very small 1 bedroom apartment, so I'll likely test positive too in the next few days. We have the 3 doses of the vaccine, so shouldn't be too severe.

Anyway, I took the day to make her company, so no progress on the tool yet. I'll try to do it tomorrow, but no promises.

If I disappear, you know what happened :grin (sorry... some days, my dark humour is the only thing that carries me).

See you soon! I hope...

family first,
get well soon and let the vacc shots do their magic, thats what they are truly for... not to prevent it.
 
Well guys, bad news :( my wife got covid today. She's ok, just a mild fever. We live in a very small 1 bedroom apartment, so I'll likely test positive too in the next few days. We have the 3 doses of the vaccine, so shouldn't be too severe.

Anyway, I took the day to make her company, so no progress on the tool yet. I'll try to do it tomorrow, but no promises.

If I disappear, you know what happened :grin (sorry... some days, my dark humour is the only thing that carries me).

See you soon! I hope...
This is just a game we play for fun, family is real stuff take it easy and hopefully it’s all good
 
Well guys, bad news :( my wife got covid today. She's ok, just a mild fever. We live in a very small 1 bedroom apartment, so I'll likely test positive too in the next few days. We have the 3 doses of the vaccine, so shouldn't be too severe.

Anyway, I took the day to make her company, so no progress on the tool yet. I'll try to do it tomorrow, but no promises.

If I disappear, you know what happened :grin (sorry... some days, my dark humour is the only thing that carries me).

See you soon! I hope...
So sorry to hear that. Take all the time you need, family and friends always come first. We had an outbreak where I work and we're down about %40+ of the work force and probably climbing- I haven't got it yet thank goodness. They test us every week.

Hope your wife gets well soon!
 
Thanks guys. You left me speechless. It's hard to find such a great group of people, especially on the internet.

get well soon and let the vacc shots do their magic, thats what they are truly for... not to prevent it.
I would love it if more people knew this... but let's not dive into that rabbit hole :)

I'll try to be around at least once a day :)
 
Quick question about papyrus. Is it indent depended, like python? please tell me no xD

Currently I have a little tool that adds function starting and function ending to the psc files, but it adds always as the first char:

1642786352323.png

I'm going to assume that this does not work and that I have to count the chars and put the debug in the correct place, i.e., in the same indent as the return.

Other thing, Debug.notification is correct? I looked how to write to the log, but I'm not sure. If it is not let me know and I'll fix it.
 
Well guys, bad news :( my wife got covid today. She's ok, just a mild fever. We live in a very small 1 bedroom apartment, so I'll likely test positive too in the next few days. We have the 3 doses of the vaccine, so shouldn't be too severe.

Anyway, I took the day to make her company, so no progress on the tool yet. I'll try to do it tomorrow, but no promises.

If I disappear, you know what happened :grin (sorry... some days, my dark humour is the only thing that carries me).

See you soon! I hope...
Like others said, Family first and I'll hope you both come through it well!!

Thanks for your work on the tool, will try it this weekend.!!
 
Like others said, Family first and I'll hope you both come through it well!!

Thanks for your work on the tool, will try it this weekend.!!
you'll need someone from the dev team to fork the current build, use the tool, recompile all on CK and share that version of the mod... Otherwise the tool does nothing :(
 
you'll need someone from the dev team to fork the current build, use the tool, recompile all on CK and share that version of the mod... Otherwise the tool does nothing :(
Ah.. sorry I did misread that part, since I saw the .exe in the .zip I thought nice fire up the .exe and here we go :) Still good work!
 
Oh yeah, just a clarification on what the tool does. It opens a directory, it can be the root directory for the project) and recursively opens all the .psc files in the directory tree.

then it goes to all Function declarations and adds a debug saying it is starting. It also adds an ending before EndFunction and returns.

BE AWARE! The tool will override all the files, so make a backup first. This was coded quick and dirty, so no usability assistance at all :P
 
Just installed the plugin, will post files as soon as I have a long save, but I may have semi-relevant info:
I had long saves for literally YEARS. Since pretty much I started playing with modded F4, and way before I started using Sim settlements (2) 2 weeks ago.
It actually got so bad I stopped playing for 2 years, and just got back in with SS2 and a fresh install, same problem.
In my case, it used to be so long as to take 7+ minutes on my previous install. I'm at 2-3 minutes usually right now.
Since I didn't have SS before, that suggests the issue isn't unique to SS2 2.0, right?
Since it generally happened in settlements (always happened in settlements, happened maybe 50% of times out of settlements at the worst when I stopped), I always thought it was because of something like "scrap everything", "place everywhere", or my huge "better manufacturing" factory, or a hardware/OS issue (which seemed likely since I could find no info/people with the same issue on the net),
The same issue started in settlements in my new playthrough, pretty much when I started using settlements. It quickly got annoying in sanctuary, so I emigrated to starlight drive-in, and after a bit of cleanup and building it got back up to a few seconds, and it continued climbing, now with 25 settlers and ~35 buildings it's taking something like 2-3m.
Some things to note:
  • I'm using WSF since the first release pretty much, I remember discovering it soon after and hoping it solved the issue. It did not.
  • I'm still using "place everywhere" (actively), "better manufacturing" (installed but unused yet), and "scrap everything" (actively too, but I haven't scrapped anything in like 40 hours and the issue still worsened in that time. I built most of my set in that time, with SS2, so it kinda checks out SS2 or settlement/script bloat is the issue). I know scrap everything is "bad", but what can I do, I like my blank slate to build on.
  • I have switched my OS (W8->W10), GPU (GTX 1080->3090), but not CPU (ryzen 2700x) or RAM (32G:cool: in my pc between affected playthroughs, so my OS theory is toast, hardware theory isn't completely)
  • I have stupidly deleted my previous modlist, but I think I may have a backup of my MO2 data somewhere, I can go digging if you troubleshooting geniuses tell me it would help.
  • Both my installations are and were quite stable otherwise, the previous one generally did not crash at all, this one maybe once every 6 hours on save load only (loading that same save again after restarting the game is fine). I've been using mods on all bethesda games since oblivion and F3, so I mostly know what I'm doing.

Last but not least, can anyone inform me where is the link to donate on paypal? I want to send 100 bucks to add to the bug bounty, but I can't find the link...
 
<...>
It also adds an ending before EndFunction and returns.
<...>

Quick aside:
I'm brand new here (first post!), but have been following the issues surrounding the HQ reset and long saves since I started encountering them. I just want to say thank you to all the devs, and all the regular people who have been helping to nail down the cause of these issues. MASSIVE kudos go out to all of you!

As a dev myself (though I have less than zero knowledge about FO4 modding/scripting, so I'm useless in that aspect), I have a suggestion for nosfsos's tool.

Namely: Change it so that it will change "I'm finished" message so that it indicates whether it was triggered by "EndFunction" versus returns. This would help determine the exact path through the function in question. If you're able to also add the name of the function to the "I've started" message, unless the debug process already does so.

Thanks again for the amazing mod Kinggath, and to everyone who has contributed! SimSettlements (1 and 2) have been amazing mods that have caused lots and lots of "lost hours" in-game for me. :<3:
 
I haven't had much time to work specifically on the 'long save' issue as I've been working on the framework libraries for the custom mod manager currently under development, but I thought this might help with the scripts. A previous post mentioned that an 'incorrect' type, should be reported though I'm not sure what a script/frame level 'initialized' actually is. This is a double filtered 'list'- hopefully it's a complete 'list' reported by my last game session it's associated papyrus log.

The attached is a simple html 'list'- remove the .txt extension before viewing.
 

Attachments

  • ss2-incorrecttype.html.txt
    61.2 KB · Views: 1
If the goal is to get this to print out to the log for timestamps, you'll want to change the calls from Debug.notification to Debug.Trace
 
Thank you for the suggestion!

Done :)

View attachment 15215


I need someone from the Dev team to let me know if I didn't break anything :)
I see a scripting expert around the corner! I haven't done any scripting for Skyrim forward, and very little prior. I'm guessing that the game engine has a series of checks it performs in the virtual 3D realm- during the core engine itself. A real time (so to speak) conditional test, such as when an npc collides with another object, is accessed and an 'event' is generated if necessary (such as who was hit, who did the hitting and what they were hit by as the engine knows the owners and what objects collided). The 'event' is passed down a 'pipe', which is a 'list' of scripts that have registered themselves against an object (such as "extends a reference'- the player for example). This way the script says, "I registered onhits for the npc, so send, queue or pipe me these directly to my onhit script section (as found within the script executable- as it's loaded in full whether it's currently being executed or not) when they occur as each event section is like a 'sub' (if I'm thinking correctly). This seems like the quickest way to queue events directly to scripts as they are loaded and indexed in memory.

Not sure on all that, or if the concept helps or provides a starting point to rewrite or build on... just a 'this is how I could see it working'.

Hope you and your family are doing well!
 
Last edited:
If the goal is to get this to print out to the log for timestamps, you'll want to change the calls from Debug.notification to Debug.Trace
Done! I've also added a target directory so it won't override the original files.
1642850369488.png
I see a scripting expert around the corner!
c# is like my second language xD but I'm far from an expert, trust me.

Hope you and your family are doing well!
We're fine, very mild symptoms and for some kind of miracle, I didn't test positive yet :)

@kinggath let me know if the compilation fails, I might be adding lines in the wrong place (syntax wise).

I'm open to suggestions :)
 

Attachments

  • Debugger.zip
    10.3 KB · Views: 2
Top