Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Suggestion: Delete Old Files #40

Open
ooxavenue opened this issue Jun 14, 2016 · 2 comments
Open

Suggestion: Delete Old Files #40

ooxavenue opened this issue Jun 14, 2016 · 2 comments

Comments

@ooxavenue
Copy link

I don't believe this feature is implemented, but I think there should be a way to delete the game folder of all files not listed in the manifest. Some games generate config files that can generate user errors (if the user does something wrong). And/or maybe files listed in manifest with a null or 00000000000000000000 as their md5 will signal that this file is flagged for deletion.

@Nihlus
Copy link
Owner

Nihlus commented Jun 15, 2016

I've been considering this for a while, but I think it would be a hindrance
for games that support mods or user settings - configuration files packaged
with the game are already reset when the game is verified.

Extending this functionality to files not listed in the manifest would be
an issue for games where the game could generate files during runtime, or
where the user could add mods or components - not to mention the horror
situation where some freak bug could have the launcher delete all files not
listed in the manifest from a folder outside of the game dir.

However, adding the capacity for the developer to selectively delete known
paths via the manifest is not a bad thought. There may be instances where
that is required (old assets, leaked debug symbols etc). While it may
require some sort of diffing between old game versions and new ones, I'll
take it into consideration.
On 14 Jun 2016 9:47 pm, "ooxavenue" notifications@github.com wrote:

I don't believe this feature is implemented, but I think there should be a
way to delete the game folder of all files not listed in the manifest. Some
games generate config files that can generate user errors (if the user does
something wrong). And/or maybe files listed in manifest with a null or
00000000000000000000 as their md5 will signal that this file is flagged for
deletion.


You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
#40, or mute the thread
https://github.com/notifications/unsubscribe/ACO2TFI2cxqPi8Fngf9JTy-picNDz3n3ks5qLwVfgaJpZM4I1sOX
.

@ooxavenue
Copy link
Author

Here's some thoughts,

  1. Add some extra functionality to the repair button that gives the option to delete all excess files so the game folder will match exactly whats hosted on the ftp. Maybe with a warning window that says are you sure you want to delete all user mods, files, configs, and obtain a pure copy, this way the user is given some control over the situation.
  2. Create a separate manifest file that has all files flagged for deletion with the option to target a specific md5, if checksum is blank, missing, 00000s, or null only the file name is needed for delete. This would probably be the best option.
  3. Create yet another text file that has a version history note hosted on the ftp. Where if the client is running version 0.1.0 or below, there will be a flag in the text file like
    0.1.0 LAUNCHER_REINSTALL_ALL
    0.2.1 LAUNCHER_REMOVE_THIS name.ext, file.txt,
    0.3.8 LAUNCHER_REMOVE_ALL_BUT assets.zip client.exe
    This would have to run before the manifest does. The Version number thing might be overkill and not needed, not to mention vague and not really any version history of the client folder like a git or SVN.

I think that 2 would probably be the best, clear, and easiest option, 1 may end up having a freak bug where all things get deleted, not to mention a lot of games nowadays assign most user config files to the My Games folder or Homepath. While 3 may have the most control for developers, but also more of a possibility to screw things up. Just throwing an idea, change, merge, or partially implement any of these suggestions, I am sure you will come up with the best solution(s), best of luck and thank you for the consideration.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants