58 lines
2.0 KiB
Markdown
58 lines
2.0 KiB
Markdown
|
mccl
|
||
|
====
|
||
|
|
||
|
Which stands for Minecraft Console Launcher.
|
||
|
|
||
|
As a fellow pirate I got tired of that there are no vanilla builds on torrents.
|
||
|
After a very short research I found I can just download everything directly
|
||
|
from Mojang without authorization. xD
|
||
|
|
||
|
So I wrote this launcher... :)
|
||
|
|
||
|
It can install only vanilla game, mod launchers should be installed using theirs
|
||
|
installers. But, after some testing and fixes (fixes for Forge), it can run
|
||
|
Forge, Fabric, and Quilt. I know there are other mod launchers as well, but
|
||
|
I didn't test them.
|
||
|
|
||
|
There's still a lot of work left.
|
||
|
|
||
|
Since I don't have a Mac or Hackintosh I cannot handle MacOS properly. Rules
|
||
|
should probably work though.
|
||
|
|
||
|
Using
|
||
|
-----
|
||
|
|
||
|
```bash
|
||
|
mccl install|i version directory
|
||
|
mccl run|r version directory [-u User] [-U UUID] [--java-Xmx 4G] [--profile]
|
||
|
mccl list|l directory
|
||
|
```
|
||
|
|
||
|
`version` is game version like `1.20.2` or `23w43b`. Or it can be
|
||
|
`[latest-]release` or `[latest-]snapshot` to install respectively a freshest
|
||
|
release or snapshot version.
|
||
|
|
||
|
`directory` is a root path where all game files will be installed to, or runned
|
||
|
from, or listed.
|
||
|
|
||
|
`-u,--username` is a player's in-game username.
|
||
|
|
||
|
`-U,--uuid` is a UUID of your account. Even though this launcher doesn't perform
|
||
|
an authorization, passing your username and account's UUID will still load your
|
||
|
skin.
|
||
|
|
||
|
`--profile` tells to load a `mccl_profile.json` if it exists or store passed
|
||
|
(or theirs defaults otherwise) `--username` `--uuid` and `--java-Xmx`. Once
|
||
|
stored, you can omit `-u`, `-U`, and `--java-Xmx`, and just pass `--profile`,
|
||
|
and it will load your username, UUID and a maximum heap size.
|
||
|
|
||
|
TODO
|
||
|
----
|
||
|
|
||
|
- Rewrite LocateJavaHome for Linux so that it will actually search for an
|
||
|
existing Java installation.
|
||
|
- Implement `uninstall|u` command. It is not easy, since I must look through all
|
||
|
installed versions what assets and libraries are used. Btw, I think it will be
|
||
|
good if in case of removing of a vanilla version all mod loaders for that
|
||
|
version should be removed as well. Make that a default behaviour and introduce
|
||
|
a flag that disable it.
|