Original Post (OP) below:
================================================== =======
Stuttering Problem Description:
The problem is that the game does not use "loading screens" to load all needed data from your hard disk drive (HDD) to your memory. Instead, the game is constantly reading from your HDD. Since other background running programs (including Windows) are also using your HDD while you are playing, it will cause your game to stutter. This happens because the game will have to wait for read/write access to your HDD.
Note: any stuttering caused by network lags (latency) is beyond our control. Huge number of enemies on one screen (+animations) will lower your FPS (this is common sense).
================================================== =======
How I figured out this was the problem:
Basically, I noticed that my HDD had approximately 250ms (avg) - 1,500ms (max) read response time (RRT) for any read access to MPQ files located inside the folder:
"C:\Program Files (x86)\Diablo III\Data_D3\PC\MPQs"
I've tried defragmenting C: before and after installing Diablo3, but it didn't help with the slow HDD read response time. You can find your read response time in "Resource Monitor" in windows, or just type "res" in start menu. Just put the game in windowed mode and observe "Resource Monitor" > "Disk" > "Response Time" while you are moving your character around the screen and through different areas which normally stutters.
================================================== =======
SOLUTION (Windows 7 or Vista):
1) You will need (minimum) 16GB USB flash drive (or 16GB SD card). An 8GB flash drive will not work because it will translate to 7.45GB under windows, which is smaller than needed (7.7GB).
2) Copy the entire "MPQs" folder (7.7GB) from:
"C:\Program Files (x86)\Diablo III\Data_D3\PC\MPQs"
to your USB/SD drive. For me, it was "D:\" drive, so the final result was "D:\MPQs". It might be a different drive name for you, so just use what you get.
3) Rename the original "MPQs" ( located on your HDD) to anything you want.
now the tricky part ...ready ?
4) Go to windows start > and type the following in the search box:
cmd
and hit (CTRL+SHIFT+ENTER), which will prompt you to run command line in administrator mode.
5) Once in command prompt, type the following (make sure you have the right letter drive):
cd "C:\Program Files (x86)\Diablo III\Data_D3\PC"
mklink /j "C:\Program Files (x86)\Diablo III\Data_D3\PC\MPQs" "D:\MPQs"
***Note: you cannot "CTRL+V" in command prompt, but you can right click "paste" instead.
***if you don't like this command-line stuff (step 4 and 5) you can jump to windows XP solution, but you have to install an extra program.
If you get a message that says something like: "a symbolic link has been created .." then you did it right. Your done!
================================================== =======
SOLUTION (Windows XP) also works for windows 7/Vista (no command-line involved):
Follow steps 1 through 3 from windows 7 solution above
***Note: in windows XP, the "C:\Program Files\...." will not have the (x86) part.
4) Download a free program called "Link Shell Extension" from download.cnet website. This comes in two versions 32bit and 64bit. You have to install the right version depending on which windows XP you are using (most likely 32bit). After you install it, restart your computer.
5) Browse to the folder you created in step 3, for me it was "D:\MPQs", and righ-click on the "MPQs" folder, and select >"Pick Link Source".
6) Go to the original folder location on your hard drive:
"C:\Program Files\Diablo III\Data_D3\PC"
right-click anywhere inside the "PC" folder and select > Drop As ..> Symbolic Link ( or Junction).
Thats it! your done!
================================================== =======
Basically, we faked the location of the MPQs directory and relocated it to a flash drive with faster read response than your HDD.
Now, you should have read response times (RRT) around 5ms !
Even the smallest donations help keep sc2sea running! All donations go towards helping our site run including our monthly server hosting fees and sc2sea sponsored community tournaments we host. Find out more here.