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.