BuIlDaLiBlE / BetterHI3Launcher

A much better Honkai Impact 3rd launcher.
The Unlicense
105 stars 19 forks source link

Launcher need 3 times the size of update as free space #66

Closed mddanish00 closed 1 year ago

mddanish00 commented 1 year ago

Describe the bug The launcher needs 2 times the update size when first downloading preload. But when installing the update, Launcher still needs 2 times the update size for some reason. So, in the end, I need 3 times the size of the update as free space...

For example, update 10 GB. Space needs 20 GB. Finished downloading the 10 GB update. When trying to install it, the launcher needs 20GB for some reason.

To Reproduce Steps to reproduce the behaviour:

  1. Download preload. The launcher noted needs 2 times space.
  2. Install the update. The launcher noted needs 2 times space for some reason.

Expected behaviour Like the Genshin launcher, only need 2 times of update size. When installing the update, if the update already downloads only check if the free space with 1-time update size.

Additional context I never used the default launcher, so I don't know if this is the default behaviour...

BuIlDaLiBlE commented 1 year ago

The 2 times (approximately) update size is expected, where you do see it happen with 3 times? Sorry for the late reply as the pre-download period has ended already, but do you remember where exactly it showed the 3 times size?

mddanish00 commented 1 year ago

Sorry if I'm not clear. I will try to explain it again.

If the preload is 10 GB, it is expected to have 20 GB of free space. But the end result of the current implementation, I ended up needing 30 GB.

For example, Before preloading, the launcher informs me the update is 10GB, so I prepared 20GB of free space and the free storage check pass.

When preload finished downloading, it occupied 10 GB of 20 GB. So, when I update when the new version arrived, so, in theory, I should not have to do anything and just update...

But when I click the Update button, the free storage check failed to account for the downloaded preload update and still required me to have 20 GB despite already downloaded the 10 GB update preload.

To pass this, I ended up needing to clear up another 10 GB.

BuIlDaLiBlE commented 1 year ago

Ah I see. Did you see any error messages pop up as a separate window or in the log window? The launcher does have a free space check, but it only serves as a warning and doesn't prevent you from proceeding.

mddanish00 commented 1 year ago

Ah I see. Did you see any error messages pop up as a separate window or in the log window?

No

The launcher does have a free space check, but it only serves as a warning and doesn't prevent you from proceeding.

When you think about it, you can proceed. I never tried that so, I forgot sorry. But it is still a bug because it gives a false impression that the user doesn't have enough free space. I never tried to ignore that warning because maybe I am mistaken.

BuIlDaLiBlE commented 1 year ago

I'll look into it, thank you for the report.

BuIlDaLiBlE commented 1 year ago

Having investigated it, I've come to the conclusion that the check is correct (if my logic is right). Say you had 30 GB free space. You have then downloaded 10 GB, so you now have 20 GB free. The compressed archive contains 15 GB worth of files when decompressed - the actual size checked is higher to make sure there's some space to spare in case free space changes during decompression (which is very likely to happen on a system drive, for example). Remember, the archive remains there until decompression is finished - so you need to account the 10 GB it's occupying. After the decompression is done, we are left with 5 GB, then the 10 GB archive is deleted and 15 GB of free space remains.

Hopefully my logic is right, I'm all ears if I made a mistake anywhere.

mddanish00 commented 1 year ago

Yeah, you got it right. I wonder why the official Genshin Launcher doesn't have that problem. (So, you have 20GB free space, preload 10GB, check for 20GB, when update no need to free up another 10GB, it just works like that.)

Anyway, maybe you need to add some clarification on the error message or just straight up use archive size + actual size for the size check?

BuIlDaLiBlE commented 1 year ago

After thinking a bit more, I think I understand what you meant originally. Yes, the "installation size" stays the same before and after the download, because it doesn't actually change (free space required changes, though). I agree that this can be clarified to state the total amount of free space needed.

BuIlDaLiBlE commented 1 year ago

Tweaked the installation UI to provide the archive size + recommended free space prior to decompression in v1.4.20230628.0 as well as having it tell the total free space on disk. The free space recommendation in pre-installation remains the same, as I believe the archive size can be disregarded because files are being mostly overwritten without taking much extra space.

If you have something to say please do otherwise I'm going to close the issue.

mddanish00 commented 1 year ago

From my understanding of what you said, yeah, that should be fine.

I don't think I have anything more about this issue. Thanks!