Launcher icon indicating copy to clipboard operation
Launcher copied to clipboard

[Feature Request] Update Detection of Packs

Open kreezxil opened this issue 5 years ago • 28 comments

Would be really cool if MultiMC could detect if a mod pack was updated and have the option to download the update and install it.

kreezxil avatar Apr 30 '19 17:04 kreezxil

This will only be implemented for platforms that allow it.

peterix avatar Jun 23 '19 21:06 peterix

Twitch and Technic allow it. Those are the two most popular platforms for launchers.

On Sun, Jun 23, 2019 at 4:11 PM Petr Mrázek [email protected] wrote:

This will only be implemented for platforms that allow it.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/MultiMC/MultiMC5/issues/2640?email_source=notifications&email_token=AA5TJCEGUBT4J2EIZNVG373P37RITA5CNFSM4HJOUE42YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODYLHERA#issuecomment-504787524, or mute the thread https://github.com/notifications/unsubscribe-auth/AA5TJCHN7K37KEX33CFZVMDP37RITANCNFSM4HJOUE4Q .

kreezxil avatar Jun 24 '19 13:06 kreezxil

I would love this for plain http, too. Even if you're just watching for ETag or such.

I'm a Linux person, and I'm getting into small-time pack making, so it would be nice if multimc handled pack updates well. (at all, really)

AstraLuma avatar Nov 11 '19 20:11 AstraLuma

I wouldn't mind if there was no update detection as long as it was a little easier to update a pack at all. Right now I have to make a new instance with the updated pack .zip archive, copy over all of my saves, the server list, options/custom keybinds, and possibly other tweaks, then delete the old instance. If I could just download the new zip and tell MultiMC to replace the existing instance with the new one, then I'd be satisfied. It wouldn't even have to talk to Twitch servers at all beyond what it already does when creating a new instance.

emberquill avatar Nov 27 '19 05:11 emberquill

@EmberQuill sounds like there just needed to be a way to automaticly copy over the files that are needed, so probably some tweaks in the add instance workflow. @kreezxil Technic is completely broken what installation of modpacks in general and an already know issue which makes it nearly impossible to implement their pack download for MultiMC (and reason why it was never added). What the twitch/curse thing belongs, we would need the meta data to compare the installs to see what pack is newer, which isnt possible, due to there is no way to access it without their API and there is no other access from outside. And no, comparing mods one by one is also not possible, cause direct compare is useless due to them not having a usefull info file to tell what is newer and its not possible to use curse data for the same reason we cant compare modpacks in the first place

Zetabite avatar Nov 27 '19 18:11 Zetabite

Twitch definitely does not allow this.

It doesn't really allow anything. What MultiMC does with twitch packs was never allowed and will not be expanded upon in any way that would directly involve twitch services of any kind.

The only reason why the import is there at all is that twitch doesn't exist on Linux, and I see that as a broken promise from their side... So I decided to allow this sort of import.

The reason why it is still around is that I didn't get a cease and desist letter from them, yet. And the API proxy we use has not crumbled to nothing yet either.

peterix avatar Nov 27 '19 20:11 peterix

In other words, update detection is a nice feature, but it will only be implemented where it won't be seen as a hostile action.

peterix avatar Nov 27 '19 20:11 peterix

How is it hostile?

GDLauncher allows for this right now.

On Wed, Nov 27, 2019 at 2:38 PM Petr Mrázek [email protected] wrote:

In other words, update detection is a nice feature, but it will only be implemented where it won't be seen as a hostile action.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/MultiMC/MultiMC5/issues/2640?email_source=notifications&email_token=AA5TJCBKMIUR5C3KOP4VRLDQV3LC5A5CNFSM4HJOUE42YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEFKWADY#issuecomment-559243279, or unsubscribe https://github.com/notifications/unsubscribe-auth/AA5TJCES3CNUNRHBDA7PA73QV3LC5ANCNFSM4HJOUE4Q .

kreezxil avatar Nov 28 '19 15:11 kreezxil

It is also pretty much not on anyone's radar.

peterix avatar Nov 28 '19 15:11 peterix

Not on whose radar?

I sense that every counter you provide is from only your viewpoint.

kreezxil avatar Dec 01 '19 01:12 kreezxil

Idk if they even got the permission by twitch/curse, cause thats why peterix isnt doing it, cause twitch/curse being hostile with everything you do with their site/metadata without their permission and if not using their api that to my knowledge isnt accessable by anyone besides them even with money

Zetabite avatar Dec 01 '19 01:12 Zetabite

@peterix since you work for Mojang, are there any plans to do first party mod hosting or perhaps use something like GitHub Packages? An open alternative to CurseForge would be quite beneficial.

Immortalin avatar Mar 04 '20 16:03 Immortalin

No.

peterix avatar Mar 04 '20 16:03 peterix

Maybe you can start an initiative?

Immortalin avatar Mar 04 '20 18:03 Immortalin

woah, I didn't know you worked for Mojang. This is most interesting to me...

On Wed, Mar 4, 2020 at 12:22 PM Immortalin [email protected] wrote:

Maybe you can start an initiative?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/MultiMC/MultiMC5/issues/2640?email_source=notifications&email_token=AA5TJCAWFXBM7AOGJHOUFQTRF2L5BA5CNFSM4HJOUE42YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOENZMZ7Y#issuecomment-594726143, or unsubscribe https://github.com/notifications/unsubscribe-auth/AA5TJCAKV3E2V35NYUCX2HLRF2L5BANCNFSM4HJOUE4Q .

kreezxil avatar Mar 04 '20 21:03 kreezxil

I tried starting things, and it went nowhere.

peterix avatar Mar 05 '20 12:03 peterix

Try again! Don’t give up :) The modding community does not have a lot of alternatives right now and everyone is suffering for it.

Immortalin avatar Mar 05 '20 16:03 Immortalin

I will not comment on that any further, and it has nothing to do with MultiMC.

peterix avatar Mar 05 '20 16:03 peterix

This feature would be extremely helpful, kinda sad it's not planned for now. It is really frustrating to download pack manually every time, move saves/options/some config files, set additional settings such as RAM allocated, etc. Also, removing old instance in this case will remove all playtime tracked.

I have some suggestion, in which way it may be implemented:

Update procedure:

  • Packs that are installed from other platform (CurseFurge for example) would store some extra data such as platform this pack is fetched from, project id and the version installed (basically info needed to identify the pack)
  • In the instance screen there might be additional tab with the description fetched earlier, current version, links to the pack/issue tracker/etc and the update button. Might be useful to have a editable list of files/folders that should be kept when updating. Or there just might be an update button with current version displayed.
  • Update button will launch routine that will check latest available version for the pack. If it is newer than the current one, update dialogue/manager is brought displaying new version name/number and possibly changelog if platform supports it.
  • If user agrees to update, update managers downloads new instance in the background and installs it as usual, in the meanwhile prompting user to choose which files/folders should be copied from the current instance, as well as other settings and playtime recorded (which might have default values set in the instance settings)
  • After this step and after download of the update finishes, said settings and files are copied to the new instance
  • User is prompted to delete the old instance.

Other tweak:

  • Handling crashes/launcher closing: in described procedure, old instance is deleted only after new one is created and all files are copied. This seems pretty safe for me, but I might overlooked something.
  • Would be useful to have "check installed packs for updates" button, which, well. checks installed packs for updates, displays a list of them, from which user can open instance screen and update the pack.
  • Ability to check for updates on start? Showing icons for packs with updates? Might be neat, but not necessary.

Please let me know if there are some parts that need better explanation or if there are templates for the interface needed.

Lgmrszd avatar Oct 11 '21 17:10 Lgmrszd

It is also pretty much not on anyone's radar.

I know this is an old comment, but I think the continued action on this ticket as well as the multiple similar tickets show that this feature is something that many people want.

Expanding on the previous comment left by another user, this complicated update process means that as a server host for a small group of friends, I need to consider what and when I update far more cautiously. If people need to spend 10 minutes fiddling with the pack every time they want to log on, they'll just go find a game that's easier to play, but if I don't update the pack I can't add new mods people request or apply updates.

DocterDum avatar Jan 09 '22 17:01 DocterDum

@DocterDum From the modpack creator's perspective, especially in the context of "a small group of friends", you might want to look into a tool like packwiz, which allows you to set up the pack in such a way that users would get all updates automatically and transparently.

Somewhat orthogonal to the original issue, but I figured it was worth mentioning for your specific use case.

dragonmaus avatar Jan 09 '22 17:01 dragonmaus

Thanks @dragonmaus, had a brief look and it seems perfect. Will get it all set up when it's not 5 AM :D

DocterDum avatar Jan 09 '22 18:01 DocterDum

has anything changed with the move from twitch to overwolf? Manually updating a modpack is a chore, and from the sounds of it, the infra behind this feature is on the edge (I'm even getting odd timeouts)

Cisien avatar Jan 17 '22 16:01 Cisien

the main thing that changed that curseforge may be dropped completely eventually, since they are planning on closing [1] down their API starting next month [2]

[1] https://mailchi.mp/overwolf/whats-new-with-overwolf-curseforge-november3 [2] https://medium.com/overwolf/our-stance-on-scraping-curseforge-19f4559a322a

phit avatar Jan 17 '22 17:01 phit

Give us a way to update an existing instance (that was created manually or imported from a zip) from a zip, so I don't have to create a new instance and redo my settings when I do wanna update a pack

Waisse avatar Feb 06 '22 14:02 Waisse

One possible solution would be to have MultiMC track all the config files with version control like git and do a diff against the new files whenever the pack is updated.

Immortalin avatar Feb 06 '22 17:02 Immortalin

I think being able to detect and change different versions of modpacks is a must have! There is no reason why other launchers support it but MultiMC doesn't especially because MultiMC started wayyyy back in 2014.

Also I'd just like to chime in as an avid user of GDLauncher, anyone saying "its not under anyones radar" is not taking them seriously. If you want to be like Blockbuster when they said "Steaming is not under anyones radar" only to be destroyed by Netflix, then be my guest. But don't think it wont bite you in the butt sooner or later. People slowly move on to the better product...

Anyways with the criticism out of the way I still want to thank you for everything you do, It's not easy work and plenty of people have kept maintain this project and improving it over all these years. even though I think some parts could be fixed, its an amazing service you all provide! 👍

Rennan24 avatar Jun 14 '22 18:06 Rennan24

This is a huge bummer to stumble across while moving away from GDLauncher since it's an error hellhole to work with. I had high expectations about MMC.

Potato22 avatar Feb 27 '23 10:02 Potato22