Open Ilia1 opened 3 years ago
Do you think of packaging a running game including the proprietary files? I would like to avoid this due to legal concerns and it would require a lot of maintenance for the frequent game updates.
But packaging the utilities in this repo for downloading a running client should be possible in the future when the whole process is better automated, especially downloading the game files via keg
is a bit complicated and should be improved I think.
Do you think of packaging a running game including the proprietary files?
Yes. Modifications of the game are distributed on the Internet, which seem to be not blocked and the authors are not punished.
it would require a lot of maintenance for the frequent game updates.
I am thinking of automating the build via Github Actions
Hmm, I think for the user, it is no advantage to download the game files from other locations than the official ones and updates would require downloading the full game over and over again. I prefer to have something like a launcher consisting of the tools here which is able to download and update the game files, like the official battle.net app. What do you think?
If I understand correctly, then when using the keg tool:
Using the keg can not download a single patch?
keg is intended to download and keep all game files in a local repository and allows you to install any game version you have previously downloaded. Of course, it consumes a lot of storage and here, we are actually only interested in having the most recent version which makes it far from optimal. keg actually downloads patch files but is not able to apply them since it also always downloads the most recent version of the full files. When there is a new version released, it would basically download all changed files but reuse the unmodified ones that are already available locally from a previous version. When there is no better solution already available somewhere, most of the functionality of keg should allow to build something like an downloader and updater.
Edit: There is at least one other solution that might be interesting: https://github.com/d07RiV/blizzget I tried it some time ago and I worked for windows but if I remember correctly it is not buildable on linux :(
The problem of kegs and getts is that
due to only using one download thread
I found a repository that uses multiprocessing https://github.com/wowdev/ngdp_checker but it doesn't seem to download files. I think should be added to the keg multiprocessing and downloading will be faster.
Hmm I will check this, but still downloading and keeping all previously downloaded files locally and then installing the latest game version is not very convenient with keg.
Worth looking at SharpNGDP Compiles on Linux via dotnet. But when trying to change the platform from windows to osx it crashes with an exception System.NullReferenceException
Exception I have corrected Would now reduce the cache size (now over 29Gb) and execution time (now over 40min)
This sounds great, I will have a look it this! I the meantime, I also improved and automated the script a little bit and could improve the download speed with some arguments but I still dislike the storage consumption.
So does SharpNGDP only download the required files for the installation? And do you think it can handle updates in a better way?
I'm counting on the fact that in general, compiled programs are faster than scripting. But optimization is required anyway. I think that it would be possible to delete already unpacked files from the cache.
Hello, I also would appreciate a real GUI. I can try and work on it myself. Is this still in the works ?
What do you think about creating an AppImage package? You can create automatic assembly through github actions.