-
Notifications
You must be signed in to change notification settings - Fork 14
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
5248fff
commit ef14771
Showing
20 changed files
with
596 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,30 @@ | ||
# `mcman export ...` | ||
|
||
Exporting commands | ||
|
||
## `mcman export mrpack [filename]` | ||
|
||
Export the server as an `mrpack` (modrinth modpack) file | ||
|
||
If `[filename]` argument isn't given, it will be exported as `${SERVER_NAME}.mrpack` | ||
|
||
See also: [special variables](#special-variables) that contain export-related variables | ||
|
||
## `mcman export packwiz` | ||
|
||
> **Alias & Full Command:** `mcman export pw [-o --output <FOLDER>] [--cfcdn]` | ||
Export the server as a packwiz pack, by default to `pack/` folder. | ||
|
||
If you are in a git repo, mcman will give you the githack url to the generated `pack.toml` at the end of the export. | ||
|
||
??? "Extra options (output & cfcdn)" | ||
You can use the `--output <folder>` option to set a custom destination to the pack. | ||
|
||
Using `mcman export pw --output packwiz/pack` will create `pack.toml` to `./packwiz/pack/pack.toml` | ||
|
||
If the `--cfcdn` flag is used, every `curserinth` downloadable will use `download.mode = "url"` with `download.url` being the url from curseforge's cdn. | ||
|
||
If its not used, `download.mode = "metadata:curseforge"` is used with `update.curseforge = { .. }` (default packwiz behavior) | ||
|
||
See also: [special variables](#special-variables) that contain export-related variables |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,84 @@ | ||
# `mcman import ...` | ||
|
||
> Alias: `mcman i ...` | ||
Commands related to importing | ||
|
||
## `mcman import url <URL>` | ||
|
||
Imports a plugin or a mod from a url. | ||
|
||
Supports: | ||
|
||
- `[cdn.]modrinth.com` | ||
- `curserinth.kuylar.dev` | ||
- `www.curseforge.com` | ||
- `www.spigotmc.org` | ||
- `github.com` | ||
- If not any of those, will prompt with **direct url** or **jenkins** | ||
|
||
Example usages: | ||
|
||
```sh | ||
mcman import url https://modrinth.com/plugin/imageframe | ||
mcman import url https://www.spigotmc.org/resources/armorstandeditor-reborn.94503/ | ||
mcman import url https://ci.athion.net/job/FastAsyncWorldEdit/ | ||
``` | ||
|
||
## `mcman import datapack <URL>` | ||
|
||
Like [import url](#mcman-import-url-url), but imports as a datapack rather than a plugin or a mod. | ||
|
||
Example usage: | ||
|
||
```sh | ||
# datapack alias is dp | ||
mcman import dp https://modrinth.com/plugin/tectonic | ||
``` | ||
|
||
## `mcman import mrpack <src>` | ||
|
||
Imports a [mrpack](https://docs.modrinth.com/docs/modpacks/format_definition/) file (modrinth modpacks) | ||
|
||
**Note:** [`mcman init`](#mcman-init) supports mrpacks | ||
|
||
The source can be: | ||
|
||
- A direct URL to a `.mrpack` file | ||
- A local file path | ||
- Modpack URL (`https://modrinth.com/modpack/{id}`) | ||
- Modrinth project id prefixed with `mr:` | ||
|
||
Example usages: | ||
|
||
```sh | ||
# direct link | ||
mcman import mrpack https://cdn.modrinth.com/data/xldzprsQ/versions/xWFqQBjM/Create-Extra-full-1.1.0.mrpack | ||
# only /modpack urls | ||
mcman import mrpack https://modrinth.com/modpack/create-extra | ||
# prefixed | ||
mcman import mrpack mr:simply-skyblock | ||
# local file | ||
mcman import mrpack My-Pack.mrpack | ||
``` | ||
|
||
## `mcman import packwiz <src>` | ||
|
||
> Alias: `mcman i pw <src>` | ||
Imports a [packwiz](https://packwiz.infra.link/) pack | ||
|
||
!!! note | ||
[`mcman init`](./init.md) supports initializing with packwiz | ||
|
||
The source can be: | ||
|
||
- A packwiz pack URL | ||
- A local file path to `pack.toml` | ||
|
||
Example usages: | ||
|
||
```sh | ||
mcman import packwiz https://raw.githack.com/ParadigmMC/mcman-example-quilt/main/pack/pack.toml | ||
mcman import packwiz ../pack.toml | ||
``` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
# CLI Commands | ||
|
||
This section shows the commands of mcman. You can type `mcman` or `mcman --help` for a basic list of it. | ||
|
||
## Cheatsheet | ||
|
||
- `mcman init` | ||
- `mcman init --mrpack <source>` | ||
- `mcman init --packwiz <source>` | ||
- `mcman build` | ||
- `mcman markdown` | ||
- `mcman pull <file>` | ||
- `mcman info` | ||
- `mcman import url <url>` | ||
- `mcman import datapack <url>` | ||
- `mcman import packwiz <source>` | ||
- `mcman import mrpack <source>` | ||
- `mcman export packwiz [folder]` | ||
- `mcman export mrpack [filename]` | ||
- `mcman version` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
# `mcman info` | ||
|
||
Shows info about the server in the terminal. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,48 @@ | ||
# `mcman init` | ||
|
||
Initializes a new server in the current directory. | ||
|
||
> **Full Command:** `mcman init [--name <name>] [--mrpack <source> | --packwiz <source>]` | ||
This command is interactive. Just run `mcman init`! | ||
|
||
??? "📦 Importing from a mrpack (modrinth modpack)" | ||
You can use the `--mrpack` flag on `mcman init` to import from an mrpack while initializing a server. | ||
|
||
- If its from modrinth, like [adrenaserver](https://modrinth.com/modpack/adrenaserver): `mcman init --mrpack mr:adrenaserver` | ||
|
||
Use `mr:` and then the project id/slug of the modpack (should be visible on the url) | ||
|
||
- You can also just paste in the modpack page's url: `mcman init --mrpack https://modrinth.com/modpack/adrenaserver` | ||
|
||
- If its from another source, you can provide a download link to it: `mcman init --mrpack https://example.com/pack.mrpack` | ||
|
||
- If its a file: `mcman init --mrpack ../modpacks/pack.mrpack` | ||
|
||
If your server is already initialized, use the `mcman import mrpack <source>` command. The source argument also accepts the sources defined above. | ||
|
||
Example using [Adrenaserver](https://modrinth.com/modpack/adrenaserver): | ||
|
||
```sh | ||
# these are all identical | ||
mcman init --mrpack mr:adrenaserver | ||
mcman init --mrpack https://modrinth.com/modpack/adrenaserver | ||
mcman init --mrpack https://cdn.modrinth.com/data/H9OFWiay/versions/2WXUgVhc/Adrenaserver-1.4.0%2B1.20.1.quilt.mrpack | ||
``` | ||
|
||
??? "📦 Importing from a packwiz pack" | ||
You can use the `--packwiz` (alias `--pw`) flag on `mcman init` to import a packwiz pack while initializing. | ||
|
||
**If the pack is in your filesystem**: | ||
|
||
```sh | ||
mcman init --pw path/to/pack.toml | ||
``` | ||
|
||
**If the pack is online**: | ||
|
||
```sh | ||
mcman init --pw https://raw.githack.com/EXAMPLE/EXAMPLE/main/pack.toml | ||
``` | ||
|
||
If your server is already initialized, use the `mcman import packwiz <source>` command. The source argument also accepts the sources defined above. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,17 @@ | ||
# `mcman pull <file>` | ||
|
||
'Pulls' a file from `server/` to `config/` | ||
|
||
Example usage: | ||
|
||
```sh | ||
~/smp $ ls | ||
... | ||
server.toml | ||
... | ||
|
||
~/smp $ cd server/config/SomeMod | ||
|
||
~/smp/server/config/SomeMod $ mcman pull config.txt | ||
server/config/SomeMod/config.txt => config/config/SomeMod/config.txt | ||
``` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
# `mcman version` | ||
|
||
Shows the version of **mcman** and checks if its up to date. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,30 @@ | ||
# Folder Structure | ||
|
||
In a normal server environment, everything is in one folder and a big giant mess to navigate. | ||
And database files are next to config files! | ||
|
||
When using `mcman`, your folder structure will look something like this: | ||
|
||
- 📂 **cool_server/** | ||
- 📋 **`server.toml`** | ||
- 🚢 `Dockerfile` | ||
- 📜 `.dockerignore` and `.gitignore` | ||
- 📁 **config/** | ||
- 📜 `server.properties` | ||
- 📁 **server/** (git-ignored - only on your host) | ||
- ... server env files ... | ||
- ☕ `server.jar` | ||
- 📜 `server.properties` | ||
- 📜 `bukkit`/`spigot`/`paper`/`commands`/`help`/`permissions`/`pufferfish`/`purpur`/`wepif.yml` | ||
|
||
Inside the folder for your server, you'll see a few files and folders: | ||
|
||
- **`server.toml`**: This is the configuration file for your server, more info [in its own section](#servertoml) | ||
- **config/** folder: This is the folder your server config files should go. `mcman` will process everything into the output. | ||
- The path is converted as follows: | ||
`config/server.properties` => `server/server.properties` | ||
And every config file (.properties, .toml, .yaml, .yml etc) will be processed with [variables](#variables) | ||
- **server/** folder: This folder is where `mcman` will build the server files into, aka the output. This folder is gitignored by default (because why would you do that?) | ||
- According to the `server.toml`, mcman can generate launcher scripts at `server/start.sh` and `server/start.bat` | ||
- **`.gitignore` and `.dockerignore`**: Ignore files for git and docker | ||
- **Dockerfile**: If you enabled docker, this is the dockerfile |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,23 @@ | ||
[latest-win]: https://github.com/ParadigmMC/mcman/releases/latest/download/mcman.exe | ||
[latest-linux]: https://github.com/ParadigmMC/mcman/releases/latest/download/mcman | ||
|
||
# Installation | ||
|
||
## Stable Releases | ||
|
||
* [Windows][latest-win] | ||
* [OSX/Linux][latest-linux] | ||
|
||
* [Github Releases](https://github.com/ParadigmMC/mcman/releases) | ||
* [build action](https://github.com/ParadigmMC/mcman/actions/workflows/build.yml) (requires github account) | ||
|
||
## Windows: Scoop | ||
|
||
[Scoop](https://scoop.sh/) is a command-line installer for Windows. You can use 2 commands in powershell to install it. | ||
|
||
Add the [minecraft](https://github.com/The-Simples/scoop-minecraft) bucket and install mcman: | ||
|
||
```powershell | ||
scoop bucket add minecraft https://github.com/The-Simples/scoop-minecraft | ||
scoop install mcman | ||
``` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
# ClientSideMod | ||
|
||
This is basically a [Downloadable](./downloadable) of any type with some extra fields: | ||
|
||
| Name | Type | Description | | ||
| --- | --- | --- | | ||
| `optional` | bool | Marks if optional or not | | ||
| `desc` | string | Provide a description | | ||
|
||
These fields are used for exporting to [mrpack]() or [packwiz]() | ||
|
||
!!! example | ||
```toml title="server.toml" | ||
[[clientsidemods]] | ||
type = "modrinth" | ||
id = "3dskinlayers" | ||
version = "JHapWF9O" | ||
optional = true | ||
desc = "It adds 3D skin layers :moyai:" | ||
``` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
# Downloadable | ||
|
||
A `Downloadable` is some project, entity etc. from a source. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,59 @@ | ||
# Markdown Options | ||
|
||
Ever wanted to display all of the mods or plugins your server has? Using `mcman` you can do that! | ||
|
||
If you havent added it, add your markdown file's name (`README.md` for example) into the `markdown.files` list. When the `mcman markdown` command is run, mcman will render every template in the listed files. | ||
|
||
**Fields:** | ||
|
||
| Name | Type | Description | | ||
| --- | --- | --- | | ||
| `files` | string[] | List of filenames to 'render' | | ||
| `auto_update` | bool | If set to `true`, markdown files will be rendered on commands that modify `server.toml` | | ||
|
||
``` toml title="server.toml" | ||
[markdown] | ||
files = [ | ||
"README.md", | ||
"PLUGINS.md", | ||
] | ||
auto_update = false | ||
``` | ||
|
||
!!! warning | ||
If `#!toml auto_update = true`, commands might take longer. We recommend you dont turn it on until you're done adding most of the mods/plugins. | ||
|
||
## Markdown Templates | ||
|
||
These are the templates mcman will render inside your markdown files. When `mcman markdown` runs, the files specified in `server.toml` will be read and the templates below will be updated with the rendered markdown code. You can have as many markdown files or templates as you want. | ||
|
||
### Server Info Table | ||
|
||
This template renders a table with server jar info. | ||
|
||
``` md title="README.md" | ||
<!--start:mcman-server--> | ||
... content ... | ||
<!--end:mcman-server--> | ||
``` | ||
|
||
!!! note "Example render:" | ||
| Version | Type | Build | | ||
| ------- | ------------------------------------------ | -------- | | ||
| 1.20.1 | [Paper](https://papermc.io/software/paper) | *Latest* | | ||
|
||
### Addons List | ||
|
||
This template renders a list of addons (plugins or mods) | ||
|
||
```md title="README.md" | ||
<!--start:mcman-addons--> | ||
... content ... | ||
<!--end:mcman-addons--> | ||
``` | ||
|
||
!!! note "Example render:" | ||
| Name | Description | | ||
| --- | --- | | ||
| [BlueMap](https://modrinth.com/plugin/bluemap) | A Minecraft mapping tool that creates 3D models of your Minecraft worlds and displays them in a web viewer. | | ||
| [FastAsyncWorldEdit](https://modrinth.com/plugin/fastasyncworldedit) | Blazingly fast world manipulation for artists, builders and everyone else | |
Oops, something went wrong.