{"id":15531497,"url":"https://github.com/patbox/mrpack4server","last_synced_at":"2025-04-23T13:15:46.452Z","repository":{"id":255912398,"uuid":"853843070","full_name":"Patbox/mrpack4server","owner":"Patbox","description":"A tool to easily install and load mrpack / modrinth based modpacks on any Minecraft server hosting!","archived":false,"fork":false,"pushed_at":"2025-02-08T11:07:08.000Z","size":208,"stargazers_count":38,"open_issues_count":0,"forks_count":2,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-04-23T13:15:23.591Z","etag":null,"topics":["minecraft","minecraft-server","modrinth","mrpack"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Patbox.png","metadata":{"files":{"readme":"README.md","changelog":"changelog-next","contributing":null,"funding":".github/FUNDING.yml","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},"funding":{"ko_fi":"Patbox"}},"created_at":"2024-09-07T17:30:19.000Z","updated_at":"2025-04-21T12:24:36.000Z","dependencies_parsed_at":"2025-02-01T19:26:25.072Z","dependency_job_id":"0102b9fc-ad16-465c-a512-ae7d64d8b15e","html_url":"https://github.com/Patbox/mrpack4server","commit_stats":null,"previous_names":["patbox/mrpack4server"],"tags_count":6,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Patbox%2Fmrpack4server","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Patbox%2Fmrpack4server/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Patbox%2Fmrpack4server/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Patbox%2Fmrpack4server/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Patbox","download_url":"https://codeload.github.com/Patbox/mrpack4server/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250439291,"owners_count":21430824,"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":["minecraft","minecraft-server","modrinth","mrpack"],"created_at":"2024-10-02T11:26:26.066Z","updated_at":"2025-04-23T13:15:46.433Z","avatar_url":"https://github.com/Patbox.png","language":"Java","funding_links":["https://ko-fi.com/Patbox"],"categories":[],"sub_categories":[],"readme":"# mrpack4server\nmrpack4server is a \"server launcher\" that allows you to easily install and run any modpack from Modrinth\n(or one that's exported in `.mrpack` format) as a Minecraft Server on your local machine or any hosting provider that supports custom jars.\nThis tool doesn't require any additional arguments and can work as any other server jar (like vanilla provided one).\n\n## Features:\n- For any users, usable standalone, for setup of any modpack by defining a single file.\n- For modpack makers, allowing quick server setup by having to just download and run a single file.\n- Automatically downloads required mrpack files and any mods / external assets defined by modpack.\n- Automatically downloads and starts the server/modloader files, without requiring renaming of jars, supporting Fabric Loader, \nQuilt Loader, Forge and NeoForge.\nIf used with modpack for other unsupported platforms, it will still install everything, but won't be able to launch.\n\n## Usage:\nThe file is run just like any other Minecraft server (`java -jar mrpack4server.jar`) and will use / pass\nthrough any arguments given to it. When used on its own, it first looks in 3 places for modpack definition:\n- `modpack-info.json` included within jar itself, useful for modpack makers. See below for definition,\n- `modpack-info.json` in server's root directory (alongside jar), defined for general user setups,\n- `local.mrpack` in server's root directory (alongside jar), making it directly use provided mrpack file instead of \npulling one from Modrinth.\n\nIf neither of these is found, it will ask you to either provide link, project id or name of the modpack you want to install\nand then the version of it (suggesting latest one), which will be used to create local `modpack-info.json` file. \nYou can then either update target version by editing it or by removing the file and rerunning the initial setup.\n\nDefault/main jar only supports Java 21 (`mrpack4server-X.Y.Z.jar`). If you want to run it on older Java version you can use:\n- `mrpack4server-X.Y.Z-jvm8.jar` for Java 8 and above,\n- `mrpack4server-X.Y.Z-jvm16.jar` for Java 16 and above,\n- `mrpack4server-X.Y.Z-jvm17.jar` for Java 17 and above.\n\nThese versions however don't override requirements of Minecraft/Loader itself. \nFor example, you still need Java to use Java 17 or above to run Minecraft 1.20.1 and Java 8 (but not newer!) to run Forge 1.16.5.\n\nYou can get download preconfigured jar by downloading it from `https://mrpack4server.pb4.eu/download/\u003cMODPACK\u003e/\u003cVERSION\u003e/\u003cJAVA\u003e/server.jar` url,\nwhere you replace `\u003cMODPACK\u003e` with project id or slug, `\u003cVERSION\u003e` for modpack version, `\u003cJAVA\u003e` for java base used.\nFor example `https://mrpack4server.pb4.eu/download/polymania/0.2.1/jvm21/server.jar` will download launcher for Polymania 0.2.1, using Java 21 variant\nof the mrpack4server. Currently supported variants are `jvm21`, `jvm17`, `jvm16` and `jvm8`.\n\nYou can also create bundled variant by hand with some zip software or by running `java -cp mrpack4server.jar eu.pb4.mrpackserver.Create`.\nBy default, without any arguments, it will copy currently provided `modpack-info.json` file, but you can also set it with arguments (`--arg value`),\nwhere it mirrors all arguments from `modpack-info.json` (aka `--project_id my_modpack --version_id 1.2.3` will create jar with these defined).\nAdditionally, you can use the `--out` argument to set output file path, by default being set to `--out server.jar`.\n\n### `modpack-info.json` format:\n`modpack-info.json` is a regular json file without support for comments. Ones provided below are purely\nto make easier to describe things.\n```json5\n{\n  // (Optional) Display name, used to display as information while starting / download files.\n  \"display_name\": \"My Modpack\",\n  // (Optional) Display version, used to display as information while starting / download files.\n  \"display_version\": \"1.0.0 for 1.21.1\",\n  // Project id used on Modrinth and locally, identifying modpack as unique. Can use slug or ID\n  \"project_id\": \"my_modpack_by_patbox\",\n  // Version id used on Modrinth and locally, identifying used version. Can be a version number, version id or prefixed version type.\n  // As version type, you can set it to \";;release\", \";;beta\" or \";;alpha\", making it download latest version with highest\n  // version number! For most use cases, I would recommend not using this functionality, unless you are 100% modpack's version is consistent\n  // and non-hard breaking. For stability, you should use version numbers directly.\n  \"version_id\": \"1.0.0\",\n  // (Optional) Overrides url used to download the modpack, can download it from anywhere. \n  \"url\": \"https://files.pb4.eu/modpacks/my_modpack.mrpack\",\n  // (Optional) Size of the file downloaded from \"url\", in bytes. It's not required even with \"url\" used.\n  \"size\": 1000,\n  // (Optional) Value of sha512 hash for file downloaded from \"url\", used for validation. It's not required even with \"url\" used.\n  \"sha512\": 1000,\n  // (Optional) Additional list of whitelisted domains, only useful for modpacks hosted outside Modrinth.\n  \"whitelisted_domains\": [\n    \"files.pb4.eu\" // Note it's just a domain, no protocol/ports/paths.\n  ],\n  // (Optional) Additional list of paths that can't be overwritten if they already exist.\n  \"non_overwritable_paths\": [\n    \"global-player-data\" // Note it's just path, always relative to server root.\n  ],\n  // (Optional) Allows to url used for requesting list of available versions, used by auto-updating feature (the ;; versions).\n  \"version_list_url\": \"https://api.modrinth.com/v2/project/{PROJECT_ID}/versions\",\n  // (Optional) Allows to skip java version check. By default is set to false\n  \"skip_java_version_check\": false\n}\n```\n\nExamples:\n- Installing Adrenaline version 1.25.0+1.21.1.fabric.\n```json\n{\n  \"project_id\": \"adrenaline\",\n  \"version_id\": \"1.25.0+1.21.1.fabric\"\n}\n```\n- Installing Cobblemon Official Modpack v1.5.2 (using id's copied from website).\n```json\n{\n  \"project_id\": \"5FFgwNNP\",\n  \"version_id\": \"bpaivauC\"\n}\n```\n\n## Securing folders/files from overriding.\nIf you use mrpack4server 0.5.0 or newer, you can now create a `lockedpaths.txt` file in your main server directory.\nIt will then be used to select which paths are blocked from getting updates/being overwritten.\n\nYou can either provide a folder (for example `mods/luckperms`) or direct file (for example `config/styledchat.json`).\nEvery new entry should be provided on a new line.\n\nBy default, these paths are secured:\n- `world` folder\n- `server.properties`\n- `whitelist.json`\n- `banned-ips.json`\n- `banned-players.json`\n- `ops.json`\n- `.mrpack4server` folder\n- `lockedpaths.txt`","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpatbox%2Fmrpack4server","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpatbox%2Fmrpack4server","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpatbox%2Fmrpack4server/lists"}