Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/un-pogaz/MC-Modrinth-Project-Manager
A simple Python CLI Project Manager for Minecraft and Modrinth (mod, resource packs, shaders, datapacks)
https://github.com/un-pogaz/MC-Modrinth-Project-Manager
minecraft minecraft-mod mod mod-manager modrinth modrinth-api package-manager python
Last synced: 6 days ago
JSON representation
A simple Python CLI Project Manager for Minecraft and Modrinth (mod, resource packs, shaders, datapacks)
- Host: GitHub
- URL: https://github.com/un-pogaz/MC-Modrinth-Project-Manager
- Owner: un-pogaz
- License: gpl-3.0
- Created: 2022-11-29T07:24:43.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2024-09-04T14:08:05.000Z (2 months ago)
- Last Synced: 2024-09-05T18:49:00.152Z (2 months ago)
- Topics: minecraft, minecraft-mod, mod, mod-manager, modrinth, modrinth-api, package-manager, python
- Language: Python
- Homepage:
- Size: 113 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome - un-pogaz/MC-Modrinth-Project-Manager - A simple Python CLI Project Manager for Minecraft and Modrinth. Support Mods, Resource Packs, Shaders, Data Packs. (Mod managers/updaters / CLI)
README
# Simple Modrinth Project Manager for Minecraft
mcsmp is a light CLI project manager that gets mods and resourcepacks from Modrinth. One of it's strengths is that it can handle multiple folders, and support a large type of project (mod, resource packs, shader, datapack).\
mcsmp use the packages `requests` as dependencies.mcsmp is inspire by [Fxomt-III/Minecraft-package-manager](https://github.com/Fxomt-III/Minecraft-package-manager).
Setup:\
First, install Minecraft with your favorite laucher.\
Second, install the mod loader that you use.\
Then, install the python script in the folder of your choice.After installing mcsmp, you have to define a .minecraft folder to manage.\
To add this, use this command:
```bat
mcsmp directory_add
```Once directory are defined, you have to set the Minecraft version assosiated to it, as well as the mod loader used.
```bat
mcsmp version
```
```bat
mcsmp loader
```
You can display the defined directorys with the command:
```bat
mcsmp list
```
When a directory is defined, you can manage it with the other commands.
To install a project, use this command:
```bat
mcsmp install
```
To instal a project, you need to recover and use its slug-name.\
The slug-name is usually the name of the project you are looking for, in lower case and with hyphens (-) instead of space. For example "Sodium" and "Sodium Extra" have respectively the slug-name `sodium` and `sodium-extra`.\
But this is not always the case! For example, the "Iris Shaders" has as slug-name `iris` and not `iris-shaders`. One way to get the slug-name of a project is to regad its name in the modrinth link: https://modrinth.com/mod/iris. This is sometimes more devious as [FerriteCore](https://modrinth.com/mod/ferrite-core) where the slug-name is `ferrite-core`. Caution is therefore required.\
If the project has dependencies, these will also be installed.\
Note, to update a project you just have to do this command again.
You can shows the installed projects:
```bat
mcsmp list
```Check if a specific project is installed:
```bat
mcsmp check
```Eventualy, enabled or disabled:
```bat
mcsmp enable
```
```bat
mcsmp disable
```
(This will add, or remove, a ".disabled" string at the end of the project file, so that it will not be loaded by Minecraft, but it will still be possible to use the mcsmp commands on this project)And removing a project:
```bat
mcsmp uninstall
```
A key feature is the possibility to update all the projects in a directory with a simple command:
```bat
mcsmp update
```
Also, you can shows the info about a project:
```bat
mcsmp info
```
The api print the json of a Modrinth-API request in the terminal. Useful for debugging:
```bat
mcsmp api URL [-- PARAMS ...]
```
The last command is to clear the cache, or just some specific files in the cache:
```bat
mcsmp clear-cache [FILE ...]
```
examples:
```bat
mcsmp directory_add fabric-1.18.2 C:\Users\ME\AppData\Roaming\.minecraft
mcsmp check fabric-1.18.2 sodium
mcsmp install fabric-1.18.2 sodium
mcsmp install fabric-1.18.2 sodium-extra
mcsmp install fabric-1.18.2 indium
mcsmp install fabric-1.18.2 lithium
mcsmp install fabric-1.18.2 phosphor
mcsmp install fabric-1.18.2 ferrite-core
mcsmp list fabric-1.18.2
mcsmp info sodium
```
To use mcsmp with datapacks, you must also specify the world you targeting by adding its folder name at the end of the command. Commands that can support the "world last argument" for datapack are: `list`, `check`, `install`, `enable`, `disable`, `uninstall`, `update`\
examples, with the world "New Start":
```bat
mcsmp check fabric-1.18.2 rpgtitles "New Start"
mcsmp install fabric-1.18.2 rpgtitles "New Start"
mcsmp install fabric-1.18.2 gm4-bat-grenades "New Start"
mcsmp disable fabric-1.18.2 gm4-bat-grenades "New Start"
mcsmp uninstall fabric-1.18.2 gm4-bat-grenades "New Start"
mcsmp list fabric-1.18.2 "New Start"
mcsmp update fabric-1.18.2 "New Start"
```
The `mcsmp.bat` and `mcsmp.sh` are little bash to facilitating the use and execution of many commands.