Blue Feb 26, 2024 @ 11:26pm
Solved (sort of): Steam Download Cache Location (Hard-Drive Problem)
Hello,

i recently realized some interesting and annoying Problem with Steam-Patch-Downloads.

Basicly my PC is set up with 4 Hard-Drives:
1 - SSD - Main for OS, Steam-Client and specific Software
2 - SSD - Primary Game Hard-Drive
3 - HDD - Secondary Game Hard-Drive
4 - USB 3 - Just to store some Games that i then transfer to 2. if i want to play (to not have to wait for Download)


The Problem now is something like this:
A Game that is installed on the 2. Hard-Drive, got a Patch. Steam started to download the Cache-Files befor unpacking to the 4. Hard-Drive.
And because the 4. Hard-Drive is connected via USB 3 it slowed the entire Process down during Download and during unpacking it towards 2. Hard-Drive where the Files belong.

I actually do wonder why Steam decided to download the Cache Files to the 4. Hard-Drive instead of 1. Hard-Drive (where Steam-Client is installed) or the 2. Hard-Drive (where the Game was installed).


So the Question is;
Does anyone know how to set the Location for the Steam-Cache-File Download to a specific Hard-Drive so that it wont try to use the 4. (slow) Hard-Drive again?


_________________________

Edit:
Solved (sort of). Based on the *available Space* Thing of the Client i am now filling up the Space on my USB Drive to force the Steam-Client to have to pick another Drive for Cache-Downloads.
Not the optimal Solution, but at least it should keep Steam from trying to use the USB again for Patches of Games from other Drives.
Also i put up a Suggestion-Comment in the Forum in the hope that Valve-Team would read it and add an option for Users to choose the Cache-Folder-Location.

Thanks again to all the responses and Tips and Tricks i got here from you guys.
Last edited by Blue; Feb 27, 2024 @ 1:00pm

Something went wrong while displaying this content. Refresh

Error Reference: Community_9734361_
Loading CSS chunk 7561 failed.
(error: https://community.fastly.steamstatic.com/public/css/applications/community/communityawardsapp.css?contenthash=789dd1fbdb6c6b5c773d)
Originally posted by xarvn:
Originally posted by Blue:
...I actually do wonder why Steam decided to download the Cache Files to the 4. Hard-Drive instead of 1. Hard-Drive (where Steam-Client is installed) or the 2. Hard-Drive (where the Game was installed)...
I suspect, but am not entirely sure, that Steam does this because the slow drive has enough free space whereas the others do not. Steam requires a lot of free space because files are encrypted and compressed. Unpacking and decoding data in one drive and then moving the files to another where it is to be applied, for example update files in drive 4 moved to drive 1 where the game is installed, is not ideal compared to unpacking, decoding, and updating files in-place in one drive. I would imagine Steam does this only if conditions require it.
< 1 2 >
Showing 1-15 of 27 comments
xarvn Feb 27, 2024 @ 1:32am 
If the slow drive 4 is a USB external drive then why not just leave it unplugged and unpowered until needed?
cSg|mc-Hotsauce Feb 27, 2024 @ 1:38am 
Use a symlink for the download cache.

:winterbunny2023:
Blue Feb 27, 2024 @ 1:45am 
Originally posted by xarvn:
If the slow drive 4 is a USB external drive then why not just leave it unplugged and unpowered until needed?

I could, but that still does not solve the Problem of the Steam-Client randomly picking another Drive.

Today it was even worse as i tried to block patch Files to be cached on it by unplugging it.
The Download was no longer working until i completly uninstalled the Game from the SSD and initiated an entire new Download.

Also, there are some other Files on that USB Drive too, some back-up files and notes. (basicly everything that does not require that much of speed).

And it would be annoying to unplug and plug a Drive all the time. Would prefer it to be able to set the Location of the Cache-Files to a specific Drive (would even prefer it to download the cache on the 1. one instead of anywhere else.

Originally posted by cSg|mc-Hotsauce:
Use a symlink for the download cache.

:winterbunny2023:

And what exactly is a Symlink and how would that work with Steam?
Dr.Shadowds 🐉 Feb 27, 2024 @ 1:50am 
My advice either do symlink or don't plug that usb drive unless you need it.

What symlink does it redirects where the app to read, and write to so example if usb drive is F drive, and 2nd drive is D, you made symlink for one folder on F to D drive, it will think it writing or reading on F drive but actually doing it on D drive.
Blue Feb 27, 2024 @ 1:54am 
Originally posted by Dr.Shadowds 🐉:
...
What symlink does it redirects where the app to read, and write to so example if usb drive is F drive, and 2nd drive is D, you made symlink for one folder on F to D drive, it will think it writing or reading on F drive but actually doing it on D drive.

And how need that to be set up in order to work with only the Steam-Cache-File-Downloads?
Dr.Shadowds 🐉 Feb 27, 2024 @ 2:13am 
Originally posted by Blue:
Originally posted by Dr.Shadowds 🐉:
...
What symlink does it redirects where the app to read, and write to so example if usb drive is F drive, and 2nd drive is D, you made symlink for one folder on F to D drive, it will think it writing or reading on F drive but actually doing it on D drive.

And how need that to be set up in order to work with only the Steam-Cache-File-Downloads?
You make the symlink folder name it the same as the folder you want things written, or read to from you point it to where you want the stuff to be written and read from.



You open command prompt then do the following.
mklink <Option> <Link> <Target>

mklink <--- mean you want to symlink.

Option <--- mean what kind of symlink in your case you want /d as it means soft symlink, there hard link, and junkion link, but soft link all you need really easy, and simple.

Link <--- mean what it from.

Target <--- mean what it want to go to.

Let say want a folder from D drive to be done at C drive that
d:/Steam/Steamapp/downloads

C:/program/Steam/Steamapp/downloads

So you write it like this.

Mklink /d d:/Steam/Steamapp/downloads C:/program/Steam/Steamapp/downloads

As you notice /d is your soft link, then got link you want the folder to be redirected to your target link you put.
Blue Feb 27, 2024 @ 2:20am 
So.. if i understand that correctly,.. that would make everything that Steam-Client would try to safe on d:/Steam/Steamapp/downloads then towards C:/program/Steam/Steamapp/downloads ?

But would that not still run over the Connection of the Drive from D:?
(Cause if its just some sort of transfer command, it would still be slowed down by the USB Connection)

And also would Steam be able to read those Files correctly then when it needs to unpack them for installation/update or would it simply think that the Download failed cause it cant find it in the Location Steam expected them to be?
Last edited by Blue; Feb 27, 2024 @ 2:26am
Dr.Shadowds 🐉 Feb 27, 2024 @ 2:28am 
Originally posted by Blue:
So.. if i understand that correctly,.. that would make everything that Steam-Client would try to safe on D: then towards C: ?

But would that not still run over the Connection of D:?

And would it also be able to read those Files then when it needs to unpack them for installation/update?
As long it not overwriting import files you need, or stopping it from reading files it need to read it shouldn't be a problem, and yes it would be safe.

That why I suggest just link to folder that need it to write, or read from example as your download folder, and target to your download folder on other drive. So any files it writes, and read that include unpacking, and all that done within the download folder, will be done at the target folder, and game you target to install, or apply patch to on your usb drive will still be applied as you would normally just that download, and unpack be done else where in said folder.
Blue Feb 27, 2024 @ 2:39am 
Originally posted by Dr.Shadowds 🐉:
As long it not overwriting import files you need, or stopping it from reading files it need to read it shouldn't be a problem, and yes it would be safe.

That why I suggest just link to folder that need it to write, or read from example as your download folder, and target to your download folder on other drive. So any files it writes, and read that include unpacking, and all that done within the download folder, will be done at the target folder, and game you target to install, or apply patch to on your usb drive will still be applied as you would normally just that download, and unpack be done else where in said folder.

Thanks for the Information and Explanation. :steamhappy:
I will try that and see how the Steam-Client behaves next time it tries to store Cache-Files on the USB again.


Still weird, that Steam even does this; random picking where it stores cache-files.
Worst part of the slow read and write of files process on an USB is,... that the Download tends to wait on that too, so an already slow download gets paused from time to time and without knowing about what is actually happening, looks like the Download is bugged or something.

Steam lets users choose which location the Install happens, but somehow does not put up an option for where the Cache Location should be.
:steamsad:
The author of this thread has indicated that this post answers the original topic.
xarvn Feb 27, 2024 @ 2:45am 
Originally posted by Blue:
...I actually do wonder why Steam decided to download the Cache Files to the 4. Hard-Drive instead of 1. Hard-Drive (where Steam-Client is installed) or the 2. Hard-Drive (where the Game was installed)...
I suspect, but am not entirely sure, that Steam does this because the slow drive has enough free space whereas the others do not. Steam requires a lot of free space because files are encrypted and compressed. Unpacking and decoding data in one drive and then moving the files to another where it is to be applied, for example update files in drive 4 moved to drive 1 where the game is installed, is not ideal compared to unpacking, decoding, and updating files in-place in one drive. I would imagine Steam does this only if conditions require it.
Blue Feb 27, 2024 @ 2:56am 
Originally posted by xarvn:
I suspect, but am not entirely sure, that Steam does this because the slow drive has enough free space whereas the others do not. Steam requires a lot of free space because files are encrypted and compressed. Unpacking and decoding data in one drive and then moving the files to another where it is to be applied, for example update files in drive 4 moved to drive 1 where the game is installed, is not ideal compared to unpacking, decoding, and updating files in-place in one drive. I would imagine Steam does this only if conditions require it.

I read about that. But my Drives have enough Space. Its the USB that is actually the fullest one (for keeping the Games i am not currently playing stored) while the others contain only the ones i do play.

And the Main Drive has even more Space available, cause i dont store any Games on that one.

From what i have seen, the Client really seems to decide randomly which Drive it uses for Cache Files, no matter how much Space there is and no matter where the actual Game is installed.

I once expected it to be the result of; the Last activity on Steam-Folders on specific Drive.
But the way it kept behaving did not support that as i had multiple Games in the Download-List and 2 of those Games (from the middle of the List) had it again with Files getting sent to USB for some reason.
xarvn Feb 27, 2024 @ 3:27am 
That is interesting. Sorry, can't think of any other fixes.
Blue Feb 27, 2024 @ 12:55pm 
Originally posted by Dr.Shadowds 🐉:
...So any files it writes, and read that include unpacking, and all that done within the download folder, will be done at the target folder, and game you target to install, or apply patch to on your usb drive will still be applied as you would normally just that download, and unpack be done else where in said folder.

I tried that now.
But sadly it did not work on my PC as i hoped it to work. Things i tried to Download, that seemed to try to use the USB again, got an Error message and no matter how much i click on *retry* it just keeps showing the red *Failed* Text.
Seems like that my Steam-Client does not like to be redirected to somewhere else.

But i got another Idea on how i could solve the Problem based on;

Originally posted by xarvn:
...
I suspect, but am not entirely sure, that Steam does this because the slow drive has enough free space whereas the others do not. ...

Seems you where right in some sense here.
Even with enough Space (shown to me at least), Steam still thought that there was not.
According to the Answer i also got from the Support, it takes double the Amount of Space it shows that it requires for the Downloaded Files themselfs.

I am not sure why it then does not like the free Space that still exist on the other Drives, but it gave me an idea;

- I put more Stuff on the USB now to fill up the Space there so that Steam has no other Choice than to use one of the internal ones for the Cache-Download. -
(not the optimal solution, but the USB was meant to keep Games stored anyway)


Thanks again to all the Informations i got here from you Guys.
RunForRest Oct 8, 2024 @ 1:17pm 
This is so fckign annoying - Steam selecting my slowest, oldest HD drive to install games. It has the msot space yes, but my main NVME drive also has plenty of space, but i cant tell Steam to use that.
Blue Oct 8, 2024 @ 1:36pm 
Originally posted by RunForRest:
This is so fckign annoying - Steam selecting my slowest, oldest HD drive to install games. It has the msot space yes, but my main NVME drive also has plenty of space, but i cant tell Steam to use that.
Well only if you do it like i did, filling up the slower drive.
You could also deactivate it, making Steam think that its unplugged when you start your downloads.
< 1 2 >
Showing 1-15 of 27 comments
Per page: 1530 50