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

Support for Optifine #20

Open
jugendhausldbg opened this issue Jun 24, 2021 · 19 comments
Open

Support for Optifine #20

jugendhausldbg opened this issue Jun 24, 2021 · 19 comments
Assignees
Labels
api This issue is related to the API or its implementation enhancement New feature or request

Comments

@jugendhausldbg
Copy link

Hi there,
is it possible to add support for Optifine, or is there already a way to enable Optifine?
thanks for your amazing work

@mindstorm38 mindstorm38 self-assigned this Jun 24, 2021
@mindstorm38 mindstorm38 added enhancement New feature or request and removed enhancement New feature or request labels Jun 24, 2021
@mindstorm38
Copy link
Owner

Hello! Thank you for supporting this project!

Optifine is not currently supported through any addon, however this is a great idea of add-on.

@mindstorm38 mindstorm38 added the addon Addon-related issues (legacy tag, no longer supported by the launcher) label Jun 24, 2021
@GoodDay360
Copy link

@jugendhausldbg You can install Optifine with Fabric.

@mindstorm38
Copy link
Owner

Yes, optifine with fabric is a good idea. If you really want optifine only you can use the optifine installer and then use the version name (something like 1.16.2-OptiFine_HD_U_G3) to start the version with start 1.16.2-OptiFine_HD_U_G3. This should work.

@mindstorm38
Copy link
Owner

I contacted sp614x (OptiFine's author) to ask him for permission to make an addon like this.

He's ok if and only if OptiFine is not bundled nor distributed with PortableMC's package. Hopefully, he seems ok with the idea of an add-on that will download the mod from the website.

This message is just a note for the future, the add-on is not in development for now.

@GoodDay360
Copy link

Btw If you need a way to download Optifine and list all of Optifine versions. I could provide you with the API.

@mindstorm38
Copy link
Owner

Yes why not it would be cool because my current idea is to parse the web page, which is not really easy and lightweight.

@GoodDay360
Copy link

@mindstorm38
Copy link
Owner

Who is maintaining the API?

@GoodDay360
Copy link

@mindstorm38 https://rapidapi.com/user/nitroxenon. The website is broken I used backdoor requests to subscribe to the API.

@WoMspace
Copy link

WoMspace commented Aug 4, 2022

hello! I'm a shader developer, and a moderater over on the shaderLABS discord.
Downloading Optifine programatically from the website is perfectly fine, and sp614x will have no issues with that.

As for an API, major releases are few and far between, so hosting and maintaining a list of URLs somewhere online would be trivial. just curl <someurl>/optifine_links | grep <version> or something when an install is requested.
You might want to take a look at vivecraft, and more specifically install.py and minecriftversion.py.
Alternatively, would it be so hard to ask users to download it and just provide the jar file?

Regardless, if you would like any assistance regarding optifine (including downloading) head over to the shaderLABS discord server

@mindstorm38
Copy link
Owner

Thank you for support! I'll definitely look into it in the future

@GoodDay360
Copy link

@WoMspace It is not that hard to ask the user to install it manually.
But the way of doing it automatically is better.

@mindstorm38 mindstorm38 changed the title support for Optifine Support for Optifine Aug 6, 2023
@GoodDay360
Copy link

GoodDay360 commented Oct 25, 2023

I wonder if PMC supports optifine yet, because it seems like this request is still open. Anyway long ago I provided the api for getting optifine but it is not well maintained.
However a few days ago I managed to web scrape the optifine site and get all version info.
Sauce: https://github.com/GoodDay360/OptiPy

Optifine author seems to be fine about it and he also gives me a direct mirror link for downloading the file.

@mindstorm38
Copy link
Owner

Optifine is not yet supported, and I still wonder if this is a good idea, mainly because Optifine in itself can be installed really quickly as a forge mod, and forge can be installed really easily now... This is not definitive, and I'm still opened to arguments, because I'm afraid it will require some hard work.

@GoodDay360
Copy link

GoodDay360 commented Nov 4, 2023

Optifine is not yet supported, and I still wonder if this is a good idea, mainly because Optifine in itself can be installed really quickly as a forge mod, and forge can be installed really easily now... This is not definitive, and I'm still opened to arguments, because I'm afraid it will require some hard work.

It doesn't require much work to implement this. Just download and write optifine into the user mod folder if they run it with forge especially the version that fabric doesn't support. This saves so much time in some cases instead of opening the browser every time u want optifine on a different version. Caches downloaded optifine if possible if the user doesn't have internet, this may help in case users don't save their own. (Caches doesn't mean bundle the file so it is probably safe to do it).

More than that you can also make an optifine standalone installation too if u have some free time. Launch optifine directly without forge. This gonna take a while to wrap everything.

@mindstorm38
Copy link
Owner

For now, I'll stay away from the mess of managing the "mods" directory, because this would require checking for already installed version, disabling old one, all of this is not trivial at all because mods are not uniquely defined by the file name.

So it seems way more realistic to me to support standalone installation, even if this is still complicated in itself.

@mindstorm38 mindstorm38 added enhancement New feature or request api This issue is related to the API or its implementation and removed addon Addon-related issues (legacy tag, no longer supported by the launcher) labels Apr 16, 2024
@pi-dev500
Copy link

I wrote a complete install script for optifine which works together with portablemc. If you are interested (the script is currently tested with more than 20 different version, but as I coded it very recently, I can't say that it is stable). If you are interested , I can post it.

@mindstorm38
Copy link
Owner

mindstorm38 commented Dec 20, 2024

Wow, insane! I'm really interested in seeing that if you agree. It's in Python, using the API? Or a bash script around the CLI?

@pi-dev500
Copy link

It's a dirty python rewrite of the decompiled optifine installer with additionnal features, using the API of portablemc. I can send it today, but I'll try to cleanup it before sending it in the week.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
api This issue is related to the API or its implementation enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

5 participants