2021-11-21 00:42:50 +00:00
|
|
|
# High-level Goals
|
|
|
|
|
|
|
|
- modrinth mod searching
|
|
|
|
- modrinth mod installation
|
2021-11-22 01:43:35 +00:00
|
|
|
- curseforge api too?
|
2021-11-21 00:42:50 +00:00
|
|
|
- per-instance mod management
|
|
|
|
- mod updating
|
2021-11-22 01:43:35 +00:00
|
|
|
- fish autocomplete
|
|
|
|
- bash autocomplete
|
|
|
|
- zsh autocomplete
|
|
|
|
- nushell autocomplete
|
|
|
|
- manpage
|
2021-11-21 00:42:50 +00:00
|
|
|
|
2021-11-22 01:43:35 +00:00
|
|
|
Long-term/host-dependent:
|
2021-11-21 00:42:50 +00:00
|
|
|
- conflict resolution
|
|
|
|
- dependency resolution
|
2021-11-22 01:43:35 +00:00
|
|
|
- shaderpack and resource pack management
|
2021-11-29 00:21:18 +00:00
|
|
|
- integrate into multimc or theseus
|
|
|
|
- graphical frontend (w/ notifications?)
|
|
|
|
|
|
|
|
[Modrinth REST API docs](https://github.com/modrinth/labrinth/wiki/API-Documentation)
|
2021-11-21 00:42:50 +00:00
|
|
|
|
|
|
|
# File Architecture
|
|
|
|
|
|
|
|
```bash
|
|
|
|
- .config/hopper/config.toml # Main config file
|
|
|
|
- .local/share/multimc/instances/*/.minecraft/Hopfile.toml # Multimc
|
|
|
|
- .minecraft/Hopfile.toml # Official launcher
|
|
|
|
- .var/app/com.mojang.Minecraft/.minecraft/Hopfile.toml # Flatpak version
|
|
|
|
- .cache/hopper/ # Mod cache
|
|
|
|
| - hopper.lock # Lock file
|
|
|
|
| - mod1.jar # Mods
|
|
|
|
| - mod2.jar
|
|
|
|
+------------- - ...
|
|
|
|
```
|
|
|
|
|
|
|
|
# Usage (Planned)
|
|
|
|
|
|
|
|
Create `Hopfile.toml` in your instance directory:
|
|
|
|
```
|
|
|
|
hopper init
|
|
|
|
```
|
|
|
|
|
|
|
|
Add mods:
|
|
|
|
```
|
|
|
|
hopper add iris
|
|
|
|
hopper add sodium
|
|
|
|
hopper add phosphor
|
|
|
|
```
|
|
|
|
|
|
|
|
Check for mod updates:
|
|
|
|
```
|
|
|
|
hopper update
|
|
|
|
```
|
|
|
|
|
|
|
|
# Docs (Planned)
|
|
|
|
|
|
|
|
## `hopper init`
|
|
|
|
|
|
|
|
```
|
|
|
|
hopper init < --dir=./path/to/instance >
|
|
|
|
```
|
|
|
|
|
|
|
|
Inits in current directory if `dir` is left out, otherwise inits in given dir.
|
|
|
|
|
|
|
|
## `hopper update`
|
|
|
|
|
|
|
|
```
|
|
|
|
hopper update < --mc-version=1.17 >
|
|
|
|
```
|
|
|
|
|
|
|
|
Updates all installed mods of a specific version, or a version set in the config.
|
|
|
|
|
|
|
|
## `hopper add`
|
|
|
|
|
|
|
|
```
|
2021-11-21 18:18:26 +00:00
|
|
|
$ hopper add sodium --mc-version 1.17
|
|
|
|
4 Indium 1.0.0+mc1.17.1 [1.17.1] (21557 downloads)
|
|
|
|
Sodium addon providing support for the Fabric Rendering API, based on Indigo
|
|
|
|
3 Reese's Sodium Options 1.2.1 [1.16.5] (548 downloads)
|
|
|
|
Alternative Options Menu for Sodium
|
|
|
|
2 Sodium Extra mc1.17.1-0.3.6 [1.17.1] (16387 downloads)
|
|
|
|
Features that shouldn't be in Sodium.
|
|
|
|
1 Sodium mc1.17.1-0.3.2 [1.17.1] (962361 downloads)
|
|
|
|
Modern rendering engine and client-side optimization mod for Minecraft
|
2021-11-21 00:42:50 +00:00
|
|
|
:: Select a mod
|
|
|
|
:: ...
|
|
|
|
```
|
|
|
|
|
2021-11-22 01:43:35 +00:00
|
|
|
- configurable mod search results like [Starship](https://starship.rs)
|
2021-11-21 18:18:26 +00:00
|
|
|
- pad mod indices based on largest number
|
|
|
|
- option in config to reverse sorting order
|
|
|
|
- add parameter to restrict target Minecraft version
|
|
|
|
- manually pick out Minecraft version
|
2021-11-22 01:43:35 +00:00
|
|
|
- square colored creeper face progress indicator (from top-left clockwise spiral in)
|
2021-11-21 18:18:26 +00:00
|
|
|
|
2021-11-21 00:42:50 +00:00
|
|
|
## `hopper get`
|
|
|
|
|
2021-11-22 01:43:35 +00:00
|
|
|
Just like `hopper add` but simply downloads a mod jar to the current directory.
|