Skyrim
0 of 0

File information

Last updated

Original upload

Created by

TrailBlazer

Uploaded by

ShinyUnderneath

Virus scan

Safe to use

About this mod

10-40 seconds of quicksave/autosave? No more.
Regain the most basic functionality and stop drinking so much tea. (Because you won't be able to make any with these lightning-fast loading screens? Get it? Okay. I'll see myself out.)

Requirements
Permissions and credits
Changelogs
Inspired by Faster Auto and Quicksaves made by elisetxh

MAKE A BACKUP OF YOUR SAVE FILES BEFORE USING, JUST TO BE SURE.
Deactivate all other save managers. Read more below.
I don't want to mess up your day.


The more mods you have, the more time you spent ingame, the worse your quicksave/autosave times will be. Right?
No.
I started to see problems with 3 mods and around lvl 15.

This 'tool' or 'attachment' will load with SKSE and run in background, monitoring your saves folder.
Now it will not touch your hard saves, fret not. It is interested in autosaves and quicksaves only.

It's compatible with any mods or settings that DISABLE either autosaves or quicksaves. No file created (or file created with a different naming convention than the default one) means this tool won't trigger. It's not designed to touch your hard saves, so any mods that replace either autosaves or quicksaves with hard saves are safe to use in parallel (Thanks SrWolffie for pointing out).
For compatibility with ModOrganizer, read below.



Autosaves

Whenever it spots that there are 3 autosaves (default, max value) it will see which one is the oldest, and move it into a 'quarantine' folder inside Saves directory (so you will still have that snapshot, as if nothing happened).
This will let your game create new, clean autosave instead of making a backup of the old one first (which, to my knowledge is why saves are slowing down so significantly - let me know if I'm wrong.)
The quarantine folder is cleared upon next such event (game creates a new save, thus, we have 3 autosaves again - time to act: move oldest one to quarantine and so forth.)




Quicksaves
Now here the situation is quite different. We don't have multiple quicksaves, there's only one, so we can't cycle them and make room for the next one.
So, this tool is monitoring changes to quicksave files - when it detects a sequence of file changes that suggests a quicksave event, it renames quicksave files to 'LAST QUICKSAVE', and that's about it. If it finds a 'LAST QUICKSAVE' set of files, it deletes them first. This whole part of code is the most shameful for me, but what can I do.



Now some disclaimers:
- Chances of it breaking your saves are slim but never 0. Make a backup, please. Just in case.
- Deactivate all other save managers. They should not interfere <if> they use a different naming convention. However, if save managers you have installed use the default naming convention, this will most likely cause trouble. (thanks Chaxiohm for pointing this out)
- C++ is not my area of expertise. This piece of code is simple - and I did my best to make it as tidy as possible, but you know what they say - 'Every day at work is an adventure if you are underqualified enough'. Gladly, I don't make money coding in C.
- I know that a meta way is to disable quicksaves and autosaves as soon as you start playing Bethesda game, yadda, yadda. I like this feature. I also take full responsibility for my saves if they break. To each their own, don't need it, don't download it, don't use it.
- GNU license, No copyright. I can share source if anyone asks politely.
- Believe in yourself. You make mistakes, because nobody is perfect. Move on, don't hesitate. Life is short. Be great and do great things.
Greater than this chunk of C++ antipractice lmao.




Installation
Ez. Either get it via mod manager, or just download it and put the AutosaveFix.dll in Skyrim\Data\SKSE\Plugins.




ModOrganizer

If you choose to use ModOrganizer's profile-specific context saves, read on.
Open Skyrim\Data\AutosaveFix.ini, and give it a read. Change the first parameter (commented out by default) to a location of your ModOrganizer installation root. This should be wrapped with "" (doublequotes) and should not end with trailing backslash (\). For example:

ModOrganizerRoot="D:\Trail Blazer\Software\ModOrganizer"

AutosaveFix will automatically read ModOrganizer config, then check which profile you have currently set, and will switch to monitor that custom saves folder instead of the default one.I probably could've grabbed the saves location from within SKSE instead, but I only had one evening to code support for that, and that solution was just faster to implement (for me at least).


Localized Naming Conventions


Open Skyrim\Data\AutosaveFix.ini, and give it a read. Change the "AutosaveBaseName" and "QuicksaveBaseName" to whatever your game auto/quick save files are named. Don't append numbers or extensions. To check what should it be, go to your default saves location ("%USERPROFILE%\Documents\My Games\Skyrim\Saves") and see for yourself.
Don't change the default values if you don't experience any problems.
Don't mix up Autosaves and Quicksaves names, I don't know what will happen. Probably something bad lmao.



Quickloading


\/ TLDR \/
THIS IS AN EXPERIMENTAL FEATURE.
That's why it's disabled by default.
Open Skyrim\Data\AutosaveFix.ini, and give it a read. Change the "TriggerIntercept" from 0 to 1.
/\ TLDR /\

It will reenable quickloads, because the alternative workaround I used is not based on renaming the quicksaves <after> they are created by your game, but renaming your snapshot for a split second before game starts dumping the save state (even before it checks if there are any existing quicksave states, that's why it works in the first place).
The renamed snapshot will become "quicksave.ess_" (with trailing underscore) and it's purpose is only that you have one-time backup if I messed up, or something I failed to predict happens.
THIS MAY NOT WORK IF  YOUR DRIVE IS A BOTTLENECK.
I only tested it on a middle-class SSD - and it worked. But as far as my understanding of the underlaying processes goes, this may fail on a crappy HDD.
Currently the trigger is hardcoded to F5. If you changed your keybinding to something else, lemme know via comments. I will include the dynamic keybinding in the following version if at least one person shows interest in this.


Caveats / Limitations

- When quicksaving, give it a second or two before triggering again. Don't double-save fast, as this <may> invalidate the last quicksave. Autosaving (entering and re-entering an area in a quick succession is perfectly safe though)
- When first starting, it <may> need to adjust, sync and detect which save is which, thus, give it at least 2 tries if it does not work out of the box. Highly unlikely, but worth a try I guess.
- I have not tested it with a huge saves directory. Theoretically speaking though, more saves will not make any significant difference.
- NEVER make any manual changes to your saves folder when the game is running with this mod enabled. This will most likely cause some unintended behavior (in a high-level example - quicksaving has a specific sequence to it. There are at least 2 events triggered when the game does it naturally - and that sequence is what I use to sync up and detect when the game has 'finished' quicksaving. Pasting a 'legit' quicksave files set into saves dir while the game is running will trigger only one event - which will de-sync this mod and fire up the sanitization <before> game has finished saving next time. You will have to restart your game in order to re-sync, which will make it work correctly again, but it will most likely cause your last quicksave to become corrupt)