[Guide] Fixing slow save & exit / act transition load times

Albatross

Well-known member
Apr 27, 2009
1,616
399
63
Per suggestion, I'm posting the steps to a possible solution to slow save/load times in D2. The method is not a panacea, but has helped at least 3 people (that I know of). I should also mention that I haven't come up with it, the original solution is buried somewhere deep in the forum's old threads, but I can't quite recall the details on who had initially brought it up.

Are you tired of staring at this type of screen for prolonged periods of time?

loading.jpg

Well, let's see if we can do something about it. I don't know why this happens, but it looks like D2 mini map files get bloated over time. Fortunately, these are completely separate from your character data, but even though it's safe to delete them, you should absolutely back up your characters before doing anything. Better safe than sorry :)

Find you saves folder and you'll notice several file types there: d2s and key are not to be touched, focus on map and ma0,1,2, etc.

saves folder 1.jpg

I sort my save files by type to make deleting in bulk simpler and avoiding accidents easier.

saves folder 2.jpg

Just erase the selected files and that should be the end of it. The only side effect is that your mini maps will be cleared, but this is at worst a minor inconvenience. The actual maps do not change and neither does anything else in terms of gameplay.

Hope you'll find this helpful!
 
Nice one!
https://en.wikipedia.org/wiki/RAM_drive

If nothing works for someone, maybe a RAM drive would. (assuming S&E speed is based on read and write speed)
Clever. Bravo!
Thanks a lot !!! Trying this soon (if I don't forget to do so ;)).



Given that this usually only happens for certain characters on certain targets, but goes well in most other cases, I don't think it's a matter of read and write speed.
Thanks @Albatross for starting this thread. I do delete the .ma* files periodically, and it has helped for general S&E load times. I believe another issue that has made a difference for some is the number of screenshots in the subfolder (Runewords when using RWM, at least in v 1.13); lots of those has impacted general load times.

It will be great to compile the different ways people have tried to address this and which succeeded in one place. And if it's possible to finally pin down the cause(s) and different confirmed solutions to eliminate this issue, that would be awesome!

Just to add a little more (and pull in from the Snapchit MF tourney results thread):



I also generally have the same no-lag experience on Pindle runs. I experience S&E lag for Nihl runs, and it can be really significant (5-7 seconds) as the video from Hiatus' 99er write-up has shown.

But I noticed when running Pindle with javazon during recent MFO that I had S&E issues when I went down into the Hall level and came back to Temple level, which I did occasionally to get Merc near me. I stopped doing that specifically due to the lag.

So the switch in levels (beyond going from town to the target) seems to be a distinction that triggers the S&E lag during a short run (<30 seconds) on PCs. The experience of @T72on1 and @Pb_pal of S&E lag on Snapchit but not Pindle (assuming they didn't change levels) would be consistent with this theory because Snapchit runs, Nihl runs, and those Pindle runs where I experienced S&E lag all involve two different levels. (Note: @ffs runs a Mac and doesn't experience the short-run S&E lag.)

The solution @Albatross noted seems effective for general slow S&E but doesn't seem to address the S&E issues from quick runs. So if anyone is aware of solutions (or can help identify things that have been tried and not worked), it might be interesting to do some more testing around the short-run S&E lag.

I know it will make a difference for me, as I anticipate spending more quality time with my pasty friend in the Halls in the future. :)

Edit: I'll do some googling tonight or tomorrow and try to pull together the different pieces of info we already have on the SPF as a starting point.
That might explain the lag on Countess runs as there are lots of levels.
When doing Pindle runs in normal with my Barb, I did go to the next level and back. Didn't have any S&E lag.
Having experienced super long S&E load times, I started testing how the order of my run targets would change the lag as well as the run time at all.
I.e. I ran Eldritch, shenk and pindle with my javazon and had to switch from starting at pindle to ending the run there. Reason was shenk was extremely long wait time after identical run times in comparison to finishing at pindle. I thought this was due to the killing animation.

Have had issues with targets like countess as well. It got me think it could have been a problem with how much is going on when you exit. Diablo gave me no probs at all. I thought this might be related to the CS being empty when Diablo is slain.
@PhineasB thank you for the contribution! I like the idea so I'll paste a few bits from my AT guide.



@ArtOfSenf I've also had the feeling that more stuff on the screen equals slower save times, including spell effects

Edit: another one I forgot. Once you've started the game open the task manager and right click the d2 process (this is slightly different depending on windows version). There you should see the option to set priority and core affinity, set the process priority to high and untick all CPUs except one (assuming you have a multicore processor) in the affinity menu.

The priority setting will, well, prioritise d2 processes above most other tasks, but on any modern computer this should not have an negative effects. Setting core affinity might not do anything, since I'm 90% sure d2 can only use one, but giving it access to multiple cores might be counterproductive for that exact reason.
Just leaving this post by @GalaXyHaXz here, explanation toward the end. Not sure if there's any way around this.

GalaxyHaXz' post:

FWIW you're looking at about 10-20 minutes to roll a map within the depiction in the image below. I usually stumble on the North West layout every 15 minutes or so, but my best map was North East and took an hour to roll. Granted, things are a bit easier pre-1.10, but an optimal map combined with a proper build could be just as quick. I've been able to hit just under 6 seconds with a NE map, but S/E lag is horrible (the game preloads the graphics as they are loading and then flushes the memory buffer shortly after, so short games are CONSTANTLY loading/flushing).


There is nothing new under the sun (i.e., looks like we've had this discussion before, and before that, and . . .)

https://www.diabloii.net/forums/threads/save-exit-time.926855/ (quite a few suggestions, including -ns in command line and running in windowed mode confirmed to make a difference, but not always resolve issue; Gripp's observation may be tied to the point in Nano's linked post above, but I'm not sure how/whether it explains major S&E lag on 30s Nihl runs)
https://www.diabloii.net/forums/thr...m-forum-crashes.126753/page-5229#post-8816459 (the -<whatever> extensions in command line seem to make a difference; glide wrapper helps some people)
https://www.diabloii.net/forums/threads/speeding-up-slow-d2-game-act-exit-enter.961536/ (Shuffleblast confirmed -ns made load times very fast, among lots of other individual responses to what made a difference/didn't/fully resolved)

A couple of pieces I noted in this threads that @Albatross didn't in recent response:
- several people confirmed "breakpoints" for times when S&E lag occurs or doesn't based on duration of run, for Countess and Pindle
- changing Acts impacts S&E in some cases
- several people suggested death animation/surrounding monsters upon S&E impacted the load time for them (i.e., load time on short times appeared to be fine sometimes but not others and surrounding animations upon S&E were the variable?)
- using XP compatibility mode can improve S&E times for short runs but not fully resolve the issue (this was true for me also)
- Windowed mode vs full-screen made a difference for some people

I guess it's not surprising, given that this very knowledgeable and thorough group of people hasn't been able to definitely resolve this yet, but it seems many factors are/can be at play so it's not a linear issue with a clear-cut solution.

For me, the post by @GalaXyHaXz is the quandary, both in terms of whether a solution is possible as Nano notes, but also how it is reconciled with the "breakpoints" concept. I am definitely not a technical expert at all (example: I was pleased to properly install RWM :p), so maybe it's just that I don't understand the implications of "pre-loading" from a technology perspective. But why would that impact <15s Pindle runs (and not >15s Pindle runs), but also impact ~30s Nihl runs? And he referenced 6s Snapchit runs, which is much faster than the two examples above.

The duration doesn't seem to the be issue, in absolute terms. So is the amount of map/levels visited a variable that would impact whether the "pre-loading" process lags S&E? If that checks out technically, then we may be in the unresolve-able category, at least to a certain point. There are things to try that can lessen the S&E lag on short runs, but there is going to be a minimum S&E lag that cannot be resolved in some cases, unless there is some work-around for the pre-loading issue.

I will try to organize the various proposed solutions and potential impact to add to what @Albatross posted above. It may be at least a basic checklist of "things you can try." In the meantime, if folks have thoughts in my technical questions above about pre-loading, please share! :)

Also, for kicks, from the way-back machine (Vista days): https://www.diabloii.net/forums/threads/quit-out-times.656509/
I am 99.7% not an efficiency guy, but I appreciate all the info here. Thanks everyone!
@maxicek Suitable to add to the help or community links threads? This issue comes up a lot.
 
Summary by PhineasB

Digging this old thread back up based on some recent testing that I did. As noted above, I had some serious S&E lag for Nihl runs, probably averaging ~6-7 seconds for Hiatus, my untwinked 99er sorc. And likely probably the same for Mercy, my untwinked 99er sin, but I can't really remember at this point.

I tried out lots of things when moving to Pindle runs for untwinked zon because it was impacting her. The changes included windows XP compatibility mode and removing other characters from "Save" folder into a separate "Parked" folder. It helped a bit, with S&E lag only an occasional problem.

So I figured that I might be set for Nihl runs with my untwinked 99er necro, but S&E lag reared it's ugly head again, about the same as the sorc. I tried the -ns command path, and it seemed to make a difference by about 1 second, as he was probably averaging 5-6 seconds for his runs through RFL Rd 3, with fastest around 4 seconds and slowest up to 10 seconds every so often.

Until this weekend, when I tried some more things. As a baseline, here were the tweaks mentioned in the thread above that I'd already implemented:
- few, if any screenshots in Runeword folder;
- only 4 active characters in the Save folder;
- all .ma* files deleted from Save folder, except .map for all four;
- windows XP compatibility;
- using the -ns command; and
- playing in windowed mode.

The first step was to generally clean things up on my machine. I just used disk cleanup app, realizing that I hadn't done that in a couple years, and saw >240 MB of DirectX cache. I'm not very knowledgeable about computers, but I was pretty sure it's tied to graphics and figured it was worth clearing out. I don't know if it made a difference, but figured I'd note it and that it at least felt a little faster for 15 minutes of play time.

But not fast-er enough for me to stop tinkering :) I initially tried out glide wrapper, which I'd never gotten to work before. Same this time, but it prompted me to run the d2 vid test. My settings were defaulted to glide, but after the test, that option went away with Directdraw (?) 2D and 3D the only remaining options. It recommended the 3D, which I chose. I'm guessing my lame computer may not support glide? It doesn't have a separate graphics card, only the integrated Intel one.

So I went back into the command path to remove the one for glide and saw the -direct. I created a second shortcut that removed -direct, just to test it out. My recollection was that it's tied to RMW, but the necro isn't making any new runewords at this point. S&E lag is almost completely gone, maybe 2 seconds tops but also sometimes instantaneous, with only two times over an hour of play of 6 seconds. But that was close to average before.

My necro is now averaging 27s runs, which is great and mostly just way less frustrating. I went back to the shortcut with the -direct command, and it was faster but not this fast. So I'm pretty sure that piece makes a difference? But the switch away from glide also made a difference.

So, at least for people without nice graphics cards, this may be something to explore if you are fiddling with settings to improve S&E lag :D

I kinda feel like this should be added here to document the testing by @art_vandelay The lesson is that it is worth testing these settings out!
https://www.diabloii.net/forums/thr...nd-running-thread.966604/page-13#post-8871065

The post by art_vandelay (from the quote):

Just tried out some stuff to accelerate runs as outlined in this post by @PhineasB . I did all of this:
remove all screenshots from the runeword folder
set the -ns option
use the cleanup function for my harddrive
reduced # of chars in save folder from 7 to 5
and on top of that I also did the very last thing mentioned in that post: I removed the -dirext -txt parameters from the shortcut...

art_testing_se_load.png

Profile 6 is with all of the changes outlined above and for profile 7 I reinstated the -direct -txt parameter.

For profile 6 I had 662MF which results in an adjeff of 2,374. I never managed to get better than high 2,6's previously. If I take the minions killed into consideration (assuming like 5 of them per run) like I did here, I get to a guesstimate of 2,242 fabians ... :eek:

I think this warrants some tests on p3 later in the week
 
Last edited:
Glide settings / how I organize shortcuts. As mentioned before, never noticed any of these making a big difference. I tweak them to make the game look and feel playable.

All extensions are off (no idea what they do).

Shortcuts without RWM do not have the "start in" set to the runewords folder. Note that screenshots are saved where the shortcut points to (can get a bit messy if I switch a lot).

d2_setup.jpg
 
PurePremium
Estimated market value
Low
High