Fushigiri 17/dez./2022 às 9:58
What the F steam
A 1.6 gb update tells me i dont have enough free space when i have 40 free gb. I cleared the downloads cache , i verified the integrity of the files , nothing works , what am i supposed to do reinstall?? every single time 200 mb get updated just cause steam cant pull his ♥♥♥♥ together?
< >
Exibindo comentários 1630 de 37
Fushigiri 18/dez./2022 às 10:09 
With all your understanding of whatever protocols or how they manage data , in the end it dosent really help does it? when the only tip, and dont get me wrong its a good tip to maintain your rig in a good healthy state, thanks Gunsforbucks for it, to make more space it dosent really fix my issue. I just wanna know if there is a work-a-round for it or something i could do to not re-install my games on every patch, because as it stands i got 82 free gb and it still wont do it so i doubt its a memory issue
GunsForBucks 18/dez./2022 às 10:29 
There is no way around it. Unless the devs change how the download is installed.

A USB drive works fine for games as long as it is USB 2 or 3. Just expand, the bonus being you have a removable drive with all your games when you upgrade etc. On top of better performance on the OS.

On 446gig OS drive I have 277 free gigs.

On my game drive I have 3.63TBs with 1.5TB free.

https://steamcommunity.com/sharedfiles/filedetails/?id=2903570893
Última edição por GunsForBucks; 18/dez./2022 às 10:33
Its best to have drives where 10% free space is more than 40gb, which should be free anyway.
RiO 18/dez./2022 às 23:32 
Escrito originalmente por TipoffGiggots:
it's not steam's fault, but alright just don't believe anyone else
It is Steam's fault. In the sense that their patch implementation is down right stupid and consumes and conserves a multitude of the file size it actually needs while the operation is running.

What Steam does:
  1. Download patch
  2. Copy original files to temp folder
  3. Apply patch and create result files
  4. Delete original files and move patched files to install folder

In the more pessimistic cases where the patch itself is almost as big as the file it is patching - which is not unthinkable given encrypted or compressed packed assets are very popular - that means you have three or four copies of the whole thing on disk:
the original file; the patch itself; the temporary copy; and - depending on whether Valve update the temporary copy in place or not - the output of the patching operation.


What they could instead do:
  1. Download patch, and then file-by-file:
  2. Move original file to temp folder.
    (Atomic move operation: takes no time. No file data written to disk; only updating the lookup tables.)
  3. Patch from original file (in temp folder) to result file in install folder
    (Filesystem can pre-allocate without zero-writes, costing effectively no time to perform, and can then perform a streamed contiguous write for max throughput.)
  4. Delete original file from temp folder.

And look: suddenly you only need enough disk space for the patch; the original installation; and the biggest file that is being patched. This is still a deterministic metric the patch process can pre-compute and thus it can still warn the user if they are low on disk-space.


Yes; this process doesn't keep a full safety copy for when the patch process fails.
But you know what? Why does Steam do that when it doesn't allow you to start an unpatched copy anyway ??

Once the local client has become aware of an update, it demands that it is applied. So even if you could roll back to the unpatched situation, you'd still not be allowed to start the game.

And also: in the edge case that the patch fails, the patcher could automatically use the implementation of the "verify files" procedure under the hood and reacquire the broken files in full instead.


As is the case with many features in Steam, the developers didn't think it through properly; rushed out something semi-working; and then called it a day to never look back on actually fixing it, instead only being interested in the new-and-shiny.

This is also literally why the client is adopting heavy-weight Chromium web views everywhere: the Steam client developers were fed up maintaining the existing UI framework.

So instead, they deliver something half-broken that e.g. causes people to no longer be able to log in and use Steam at all.

Wonderful, ain't it?
Última edição por RiO; 19/dez./2022 às 0:09
joridiculous 19/dez./2022 às 5:26 
Escrito originalmente por RiO:
Escrito originalmente por TipoffGiggots:
it's not steam's fault, but alright just don't believe anyone else
It is Steam's fault. In the sense that their patch implementation is down right stupid and consumes and conserves a multitude of the file size it actually needs while the operation is running.
No it isnt. (well, not entirely)
It's how the game is built's fault. Using large Packed archives the "patcher" have to unpack to get to the file(s) needing the patch, and then pack it back up again meaning you need the free HDD space of the Game +the copy of the game +temp space for the action.
Lets take a new game, High on Life. To patch that you need at least 50GB of free HDD (size of game) OR you need ~40 -50GB free for the PAK file alone, depending on what is needing the patch. (and if it is patched from Steam or "manually).
How steam patches: Copying the game to ..\Downloads\<some number>, apply the patch to the needed files, Moves the game back to install folder.

"Manual": Applies the patch directly to files in install folder for the "loos files", unpack the packed files and apply patch, packs it back up, done. (VERY simplified)

Both methods needs approx. the games install size free.
lightwo 19/dez./2022 às 5:46 
Escrito originalmente por RiO:
Yes; this process doesn't keep a full safety copy for when the patch process fails.
But you know what? Why does Steam do that when it doesn't allow you to start an unpatched copy anyway ??
It might do with the scrapped system that allowed you to skip updates and play straight away (a console variable). Nowadays, the best I usually get is "update required" even if I used the skip button, so it isn't very useful, but it sounds to me that they designed the patching system before scrapping the skipping system.

If you're wondering, I was referring to:
@AllowSkipGameUpdate
Última edição por lightwo; 19/dez./2022 às 5:54
aiusepsi 19/dez./2022 às 6:58 
Escrito originalmente por RiO:
What Steam does:
  1. Download patch
  2. Copy original files to temp folder
  3. Apply patch and create result files
  4. Delete original files and move patched files to install folder

This isn't really what Steam does. Or, at least, it's a very incomplete picture of what Steam does. One issue is there's at least two methods Steam uses to do patches, using both at once in many cases; for lack of better names, the 'original Steampipe' method, and a more-recent 'delta' method. Unfortunately, I don't have an awesome grasp on what the 'delta' method does, so I might get things a bit wrong with the description of it.

The 'original Steampipe' method looks like this:

  1. Create empty versions of any files in the game which are changed in temp 'downloading' folder
  2. Start populating those empty files by downloading portions of them which are changed, and copying portions of them which are unchanged from the install folder
  3. Erase files from the install folder, move files from the temp 'downloading' folder to the install folder, atomic move operation, no file data written to disk.

That is *really* similar to your suggested operations, just in a slightly different order. At most, this only occupies extra temporary storage of the size of the changed files. As an example, I just observed an update for "Cult of the Lamb" and it created about 184 MB in temporary files, with the game itself being about 1 GB.

I think Steam also has a single file mode, which I've seen mentioned in the Steam/logs/content_log.txt file, but I didn't observe what it was doing as it happened so I don't know exactly what it does, but, if I had to guess based on the name: it does the same process as above but operates file-by-file so it can work with a lower temporary file overhead, and only kicks in when there's limited space for temporary storage.

The significant unknown (to me, anyway) is how exactly the 'delta' method works. You can tell when an update is using 'delta' because in Steam/logs/content_log.txt, the update will say something like "AppID 250900 update started : download 0/6371904, store 0/0, reuse 0/523979975, delta 0/20960454, stage 0/535946143" with 'delta' having actual numbers rather than just having "delta 0/0". (Sidebar: 'reuse' means amount copied from old install, 'store' is from a backup or retail disc, and 'stage' is amount written to the temporary folder)

I know that 'delta' is based on creating very optimal patches between specific pairs of game versions, and they built it to deal with the issue where some games didn't patch very optimally with the basic Steampipe system because of their on-disk data layout and so downloaded more than they really needed to. I think it only kicks in where the 'basic Steampipe' system leads to overly-large download sizes.

If I was going to reconcile our observations about the systems, I would guess that what you're describing might be the 'delta' system, if it works by downloading a single large patch file and then applying it.

As is the case with many features in Steam, the developers didn't think it through properly; rushed out something semi-working; and then called it a day to never look back on actually fixing it, instead only being interested in the new-and-shiny.
I guess the irony here is that the system that (might) be badly-behaved, the 'delta' system, is the result of them looking back at the patching system to try to fix a perceived problem with it.

It is Steam's fault
Yeah. It does irritate me a bit that people rush to blame developers. There *are* things which developers can do which inhibit the ability of Steam to patch efficiently, and Steam's documentation does advise against these things. Developers really should avoid:

  • using small numbers of really huge files
  • spreading data which changes frequently (like timestamps) throughout files rather than keeping them togehter
  • compressing game data
  • encrypting game data

The last two in particular basically make patching impossible; you have to just download from scratch. No patching algorithm can ever make updating encrypted data a patch rather than a full redownload. That's just something the developer just has to stop doing to get a sensible patch. But what Steam can do is design the algorithm, that's entirely within their control, to not behave pathologically in those circumstances.
Última edição por aiusepsi; 19/dez./2022 às 7:00
DrummerJacob 19/dez./2022 às 9:15 
Escrito originalmente por TipoffGiggots:
it's not steam's fault, but alright just don't believe anyone else
It actually is. Steam could do better to communicate what it is actually doing. If it says it needs 1.6gb and it needs 40 gb, who else do you blame for the lack of communication?
Satoru 19/dez./2022 às 9:36 
Escrito originalmente por Lester the Jester:
Escrito originalmente por TipoffGiggots:
it's not steam's fault, but alright just don't believe anyone else
It actually is. Steam could do better to communicate what it is actually doing. If it says it needs 1.6gb and it needs 40 gb, who else do you blame for the lack of communication?

Steam puts this in the UI it tells you both how much it’s downloading as well as how much local files need patching. I mean how much more do you want?
Última edição por Satoru; 19/dez./2022 às 9:37
RiO 19/dez./2022 às 10:34 
Escrito originalmente por aiusepsi:
If I was going to reconcile our observations about the systems, I would guess that what you're describing might be the 'delta' system, if it works by downloading a single large patch file and then applying it.
It is. And it's what Valve really wants all publishers and developers to use. There was iirc even a time when the old system was announced as deprecated and slated for removal, but I think Valve eventually doubled back on that one.

And yes; I may have oversimplified a bit when trying to keep things terse and understandable for lay men. You're right about that.

Like you said: the actual patching algorithm is under Valve's control. They should have the power to avoid pathological cases with compressed or encrypted files. A trivial approach: if the patch data for a file is 90+% the size of the original file, just do a full download of the file itself and don't patch client side.

There is also no reason for them to have designed it around a rigid always-in-use safety copy, when that could've been easily conditionalized on the actual '@AllowSkipGameUpdate' flag value. Something that never even made it to public release, but Valve just didn't care to clean up and optimize the updater afterwards.

Because who doesn't have a spare additional 40+ GB lying around on their SSD, right?
Última edição por RiO; 19/dez./2022 às 10:41
Sexy Salesman 19/dez./2022 às 11:25 
Escrito originalmente por SqueakyTweaky:
Buy a bigger ssd or get rid of junk on your pc. Not steams fault.
Actually its the devs fault for releasing rushed waste that gets patched later in Gigabytes.
That other consumers blame the consumers makes me laugh how about getting actual full releases that you dont have to patch day one or every damn week. Nowadays it seems like every title is a early access game at this point,
Última edição por Sexy Salesman; 19/dez./2022 às 11:29
SqueakyTweaky 19/dez./2022 às 11:27 
Escrito originalmente por -アリツサ-:
Escrito originalmente por SqueakyTweaky:
Buy a bigger ssd or get rid of junk on your pc. Not steams fault.
Actually its the devs fault for releasing rushed crappa that gets patched later in Gigabytes.
I can't say since I never had any issues with a update, all my games auto update and have 6TB of free space for games.
Fushigiri 19/dez./2022 às 12:00 
Dosent the ui show how much you need to download and how much will be written? Or it shows the extra size not the actual current size of your game?
GunsForBucks 19/dez./2022 às 12:02 
Escrito originalmente por Fushigiri:
Dosent the ui show how much you need to download and how much will be written? Or it shows the extra size not the actual current size of your game?
It shows progress but is non specific on size only %
I don't think it shows any temp file sizes just install progress download and write to disk
Satoru 19/dez./2022 às 14:00 
Escrito originalmente por GunsForBucks:
Escrito originalmente por Fushigiri:
Dosent the ui show how much you need to download and how much will be written? Or it shows the extra size not the actual current size of your game?
It shows progress but is non specific on size only %
I don't think it shows any temp file sizes just install progress download and write to disk

Uh no it shows the actual download size and file size......

https://steamcommunity.com/sharedfiles/filedetails/?id=2780434332

The numbers are there. yes there is the overall % indicator, but the actual download size and local disk usage numbers in actual numbers also exists.
< >
Exibindo comentários 1630 de 37
Por página: 1530 50

Publicado em: 17/dez./2022 às 9:58
Mensagens: 37