{"id":13543536,"url":"https://github.com/astrooom/Minecraft-Serverpack-Installer","last_synced_at":"2025-04-02T13:30:33.261Z","repository":{"id":37210267,"uuid":"386068274","full_name":"astrooom/Minecraft-Serverpack-Installer","owner":"astrooom","description":"Python 3 script that downloads and installs serverpacks of modpacks for Minecraft from various different modpack providers.","archived":false,"fork":false,"pushed_at":"2022-09-12T16:06:36.000Z","size":7409,"stargazers_count":12,"open_issues_count":1,"forks_count":6,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-11-03T10:32:58.987Z","etag":null,"topics":["curseforge","ftb","minecraft","minecraft-modpack","minecraft-server","modpack-downloader","modpack-installer","modrinth","pterodactyl","technic","voidswrath"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/astrooom.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2021-07-14T20:28:19.000Z","updated_at":"2024-09-20T07:25:32.000Z","dependencies_parsed_at":"2023-01-17T14:02:01.552Z","dependency_job_id":null,"html_url":"https://github.com/astrooom/Minecraft-Serverpack-Installer","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/astrooom%2FMinecraft-Serverpack-Installer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/astrooom%2FMinecraft-Serverpack-Installer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/astrooom%2FMinecraft-Serverpack-Installer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/astrooom%2FMinecraft-Serverpack-Installer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/astrooom","download_url":"https://codeload.github.com/astrooom/Minecraft-Serverpack-Installer/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246823524,"owners_count":20839740,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["curseforge","ftb","minecraft","minecraft-modpack","minecraft-server","modpack-downloader","modpack-installer","modrinth","pterodactyl","technic","voidswrath"],"created_at":"2024-08-01T11:00:32.695Z","updated_at":"2025-04-02T13:30:31.880Z","avatar_url":"https://github.com/astrooom.png","language":"Python","funding_links":[],"categories":["Miscellaneous"],"sub_categories":["In-game"],"readme":"# Minecraft Serverpack Downloader and Installer\n\nThis is a Python script made to automatically download and install Minecraft modpacks from \nCurseforge, Technicpack, FTB, and a direct download link as the pack was intended by the modpack author. Serverpacks provided for modpacks by their authors come in very different kinds, with many different installers. This is an attempt to unify the installation of all serverpacks (for both Forge and Fabric) as the modpack author intended them to be. [Here's the kinds of serverpack installers the script works with](#installer-types). The script is extensively tested and should work with all modpacks on Curseforge.\n\n#### The script will:\n1. Download the modpacks serverpack (or non-serverpack) from the Curseforge Project ID, Technic modpack slug, FTB modpack ID, or a direct download link (url). See details below.\n\n2. Run any provided installers through a unification attempt that come with the serverpack if needed.\n\n3. Remove garbage files.\n\nAfter the installer is done, the modpack will be fully installed in a separate folder (named after the modpack itself) and ready to be started.\n\n## Compatibility\nOS: ```Windows```, ```Linux```  \nThe script works with both Forge and Fabric modpacks.\n\n## Usage\n### 1. Download and unarchive the repository into any directory you want\n\n### 2. Install requirements.txt using ```pip install -r requirements.txt```\n\n### 3. Run \"run.py\" from your terminal with specified [arguments](#arguments) like:\n##### optional arguments marked in square [brackets].\npython run.py ```-provider PROVIDER``` ```-modpack-id MODPACK-ID``` ```[--modpack-version MODPACK-VERSION]``` ```[--pterodactyl]``` ```[--clean-scripts]``` ```[--update]```\n\n### Done!\n\n## Arguments\n#### provider\nProvider sets from where to fetch the modpack. Available modes are ```curse``` for Curseforge, ```technic``` for Technicpack, ```ftb``` for Feed The Beast, ```modrinth``` for Modrinth, and ```direct``` for a direct download link (url) to a modpack (can be from any site).\n#### modpack-id\nIf provider is set to ```curse``` this should be the modpacks project ID found on \u003ca href=\"https://www.curseforge.com/minecraft/modpacks\"\u003ethe Curseforge website\u003c/a\u003e in the top right \"About Project\" section of your desired modpack.\n\nIf provider is set to ```technic```, this should be the modpack slug found for each modpack on \u003ca href=\"https://www.technicpack.net/modpacks/official\"\u003e the Technicpack website\u003c/a\u003e. For example, the url for the Attack of the B-Team modpack is https://www.technicpack.net/modpack/attack-of-the-bteam.552556. The slug is the last part of this url minus the dot and the numbers (i.e attack-of-the-bteam).\n\nIf provider is set to ```ftb```, this should be the modpack ID found on \u003ca href=\"https://feed-the-beast.com/modpack\"\u003e the Feed The Beast website\u003c/a\u003e. In the first part of the url for each modpack there is a numerical ID. For example, The Direwolf20 1.16 modpack's link is https://feed-the-beast.com/modpack/79_ftb_presents_direwolf20_1_16. This modpacks' ID is therefore 79.\n\nIf provider is set to ```modrinth```, this should be the modpack project ID OR the modpack slug found on \u003ca href=\"https://modrinth.com/modpack\"\u003e the Modrinth website\u003c/a\u003e. On each modpack page, the project ID is found on the bottom-left under \"Technical information\". The modpack slug is found in the URL after /modpack. Example: https://modrinth.com/modpack/mechanic-craft/ - the slug here is mechanic-craft.\n\nIf provider is set to ```direct```, this should be a direct download link (url), from where to fetch the modpack.\n#### modpack-version (optional)\nWhich version of the modpack to install. Specify a version from the modpacks name. For example, \u003ca href=\"https://www.curseforge.com/minecraft/modpacks/rlcraft\"\u003eRLCraft\u003c/a\u003e names their releases like \"v.2.9\", \"v.2.8.2\" etc. (as you can see by going to the \"Files\" section). Here, you can use \"v.2.8.2\" to pull that version. You can also use an exact version ID from Curseforge found in the URL of the specific pack version. For Technic, versions are labeled as \"builds\" instead of versions. For FTB, the version is found as an ID using the modpacks.ch api with the modpack ID. Example: https://api.modpacks.ch/public/modpack/79 for Direwolf20 1.16. For Modrinth, the modpack version is found using the Modrinth API labeled as \"id\". This option is not available if provider is set to ```direct```. If left unspecified, the installer will fetch the latest recommended version of the modpack.\n\nIn conjunction with Curseforges' release type system, if no \"recommended\" version exists, it will pull the latest \"beta\" serverpack. If no \"beta\" version exists it will pull the latest \"alpha\" serverpack. If the modpack has no provided serverpack at all it will pull the latest non-serverpack in the same order. For technic, all modpacks have a recommended version.\n#### clean-scripts (optional)\nSet to clean (remove) the provided startup scripts (.sh for linux and .bat for Windows) when installing the modpack.\n#### update (optional)\nSet to remove the /mods, /.fabric and /libraries folders before installing the modpack. This should be set if updating a modpack and not set if it's a first-time install.\n\n#### pterodactyl (optional)\nPterodactyl is intended to use in conjunction with a pterodactyl egg install script ([More details on this](#pterodactyl-mode)).\n\n## Installer types\nThere is currently no standardization in how serverpacks are uploaded on Curseforge. \n* Some serverpacks include **all** required files to run the server by default\n* Some require Forge or Fabric to be installed separately with only the mods and libraries folders included\n* Some for mods to be downloaded using the [ServerStarter script by BloodyMods](https://github.com/BloodyMods/ServerStarter) or the somewhat standardized manifest.json file. \n\nThis script is compatible with all different types of installers by identifying and running them as tasks separately if needed. The advantage of using this script over other scripts is that it downloads and installs the serverpack as intended by the modpack author, keeping certain files that they have included which, were the mods installed in any other way, would not have been included. \n\nThe modpack author may, for example, have made modifications to the server.properties file or any mod config file. These modifications would not be carried over using another way of installing the modpack.\n\nFor technic, contrary to curse, modpacks are standardized to include all files required to start the server.\n\n## Pterodactyl Mode\nThe script can also run in the optional ```--pterodactyl``` mode. Pterodactyl mode is intended to be used in conjunction with popular Game Server Panel software [Pterodactyl Panel](https://github.com/pterodactyl/panel) in an egg install script (in bash). Currently, this mode will move the files directly to the root folder of the installation script instead of the modpack installing in it's own subfolder.\n\n## Requirements\n```Python 3.7+``` (Might work on earlier versions of python as well - not tested.)  \n```python3-pip```  \n```Java (11 or later)``` (for Forge/Fabric installers)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fastrooom%2FMinecraft-Serverpack-Installer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fastrooom%2FMinecraft-Serverpack-Installer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fastrooom%2FMinecraft-Serverpack-Installer/lists"}