{"id":28144849,"url":"https://github.com/marvin1099/automaticoptifinepatcher","last_synced_at":"2026-05-02T03:08:44.698Z","repository":{"id":253301413,"uuid":"843033264","full_name":"marvin1099/AutomaticOptifinePatcher","owner":"marvin1099","description":"A cross-platform Python script that downloads and patches OptiFine into a standalone mod `.jar` file.   This allows it to be used with loaders like Forge/Fabric in any launcher, such as PrismLauncher.   The script supports all OptiFine versions available on optifine.net.","archived":false,"fork":false,"pushed_at":"2025-08-28T08:36:10.000Z","size":49,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-08-28T08:53:16.414Z","etag":null,"topics":["java","multimc","optifine","patch","prismlauncher","python"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/marvin1099.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2024-08-15T16:28:45.000Z","updated_at":"2025-08-28T08:36:13.000Z","dependencies_parsed_at":"2025-08-16T16:30:33.742Z","dependency_job_id":null,"html_url":"https://github.com/marvin1099/AutomaticOptifinePatcher","commit_stats":null,"previous_names":["marvin1099/automatic-optifine-patcher","marvin1099/automaticoptifinepatcher"],"tags_count":5,"template":false,"template_full_name":null,"purl":"pkg:github/marvin1099/AutomaticOptifinePatcher","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marvin1099%2FAutomaticOptifinePatcher","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marvin1099%2FAutomaticOptifinePatcher/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marvin1099%2FAutomaticOptifinePatcher/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marvin1099%2FAutomaticOptifinePatcher/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/marvin1099","download_url":"https://codeload.github.com/marvin1099/AutomaticOptifinePatcher/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marvin1099%2FAutomaticOptifinePatcher/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32521137,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-02T01:12:54.858Z","status":"online","status_checked_at":"2026-05-02T02:00:05.923Z","response_time":132,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["java","multimc","optifine","patch","prismlauncher","python"],"created_at":"2025-05-14T22:13:26.115Z","updated_at":"2026-05-02T03:08:44.693Z","avatar_url":"https://github.com/marvin1099.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Automatic-OptiFine-Patcher\n\nA cross-platform Python script that **downloads and patches OptiFine** into a standalone mod `.jar` file.  \nThis allows it to be used with loaders like **Forge/Fabric** in any launcher, such as PrismLauncher.  \nThe script supports all OptiFine versions available on [optifine.net](https://optifine.net).\n\n---\n\n## Important\n\nFor **Minecraft 1.16.5 or later**, we highly recommend using [Sodium](https://modrinth.com/mod/sodium) instead of OptiFine.  \nSodium offers better performance and compatibility with mods.\n\nIf you still want OptiFine features, check out [OptiFabric](https://modrinth.com/modpack/optifabric-modpack),   \nwhich combines Sodium and other mods for a more complete OptiFine experience.\n\n---\n\n## Requirements\n\n### Python\n\nYou need Python 3 installed.\n\n* **Windows**\n\n  ```\n  winget install Python.Python3\n  ```\n* **Debian/Ubuntu**\n\n  ```\n  sudo apt update \u0026\u0026 sudo apt install python3\n  ```\n* **Arch Linux**\n\n  ```\n  sudo pacman -S python\n  ```\n* **Fedora/RHEL**\n\n  ```\n  sudo dnf install python3\n  ```\n\n### Java\n\nJava is required for patching.\n\n* **Windows**\n\n  ```\n  winget install EclipseAdoptium.Temurin.17.JRE\n  ```\n* **Debian/Ubuntu**\n\n  ```\n  sudo apt install openjdk-17-jre\n  ```\n* **Arch Linux**\n\n  ```\n  sudo pacman -S jdk17-openjdk\n  ```\n* **Fedora/RHEL**\n\n  ```\n  sudo dnf install java-17-openjdk\n  ```\n\n\u003e If installed manually, make sure Java is added to your `PATH`.\n\n---\n\n## Download\n\nGet the latest release from [Codeberg Releases](https://codeberg.org/marvin1099/AutomaticOptifinePatcher/releases/latest).  \nDownload the `optifine_patcher.py` and place it in an empty folder.\n\n---\n\n## Usage\n\nRun the script from a terminal/command prompt:\n\n```bash\ncd PATH/TO/PATCHER\n./optifine-patcher.py [options]\n```\n\nCheck [Examples](#examples) for a jumpstart (section after options)\n\n### Options\n\n| Flag               | Description                                                                                    |\n| ------------------ | ---------------------------------------------------------------------------------------------- |\n| `-l [MC_VERSION]`  | List available OptiFine versions (optionally filtered by MC version).                          |\n| `-d [VERSION]`     | Download and patch OptiFine (`newest` if not specified).                                       |\n| `-j /path/to/java` | Use a custom Java executable (default: `java`).                                                |\n| `-w DIR`           | Set a custom working directory (relative or absolute).                                         |\n| `-n`               | Only include non-preview versions when downloading.                                            |\n| `-r`               | Re-download and overwrite files instead of skipping.                                           |\n| `-c`               | Clean up (delete) the downloaded OptiFine and client `.jar` files.                             |\n| `-m`               | Move the patched mod `.jar` into the working directory and delete the build folder (if empty). |\n| `-f`               | Remove the entire folder after a successful `-m` move.                                         |\n\n---\n\n## Examples\n\n### Listing\n\nList all available OptiFine versions:\n\n```bash\n./optifine-patcher.py -l\n```\n\nList OptiFine releases for Minecraft 1.8.x (eg. 1.8.0, 1.8.8 and 1.8.9):\n\n```bash\n./optifine-patcher.py -l 1.8\n```\n\n### Downloading and patching\n\nDownload and patch the **latest OptiFine** for the newest supported Minecraft version:\n\n```bash\n./optifine-patcher.py -d\n```\n\nDownload and patch a **specific version** (eg. 1.10.2_HD_U_D8):\n\n```bash\n./optifine-patcher.py -d 1.10.2_HD_U_D8\n```\n\n  * The patched file will be created inside a versioned subfolder, for example:\n    ```\n    1.10.2/OptiFine_1.10.2_HD_U_D8-MOD.jar\n    ```\n\nDownload latest OptiFine for Minecraft 1.9.4:\n\n```bash\n./optifine-patcher.py -d 1.9.4\n```\n\nForce re-download of OptiFine and client (1.12.2), then clean up:\n\n```bash\n./optifine-patcher.py -d 1.12.2 -r -c\n```\n\nDownload newest 1.14 (1.14.4), patch, and move the result into working dir:\n\n```bash\n./optifine-patcher.py -d 1.14 -m -f\n```\n\nDownload newest 1.13.0 (listed on optifine as 1.13 but means the same thing):\n\n```bash\n./optifine-patcher.py -d 1.13.0\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmarvin1099%2Fautomaticoptifinepatcher","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmarvin1099%2Fautomaticoptifinepatcher","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmarvin1099%2Fautomaticoptifinepatcher/lists"}