Server (server.toml)
Each server.toml file defines a differient server.
To generate one, you can use the mcman init command (see Getting Started)
Note
If you are in your server's sub-directories, mcman will be able to find the server.toml file recursively.
Fields
name: String
The name field defines the name of the server. It's recommended to be alphanumeric because of the other features using this field.
For example, to overwrite the SERVER_PORT variable, you can use the PORT_name environment variable where name is the server's name.
The SERVER_NAME variable can be used to access this field.
mc_version: String
The mc_version field is used in many ways, most notably:
- Selecting the server jar
- Filtering addon versions
This field can also be accessed using the SERVER_VERSION, mcversion or mcver variables.
jar: Downloadable
launcher: Server Launcher
This field is used to configure or disable the generated start.bat and start.sh scripts.
The order of these arguments are:
java [jvm_args] [memory] [preset] [eula] [properties] <startup> [nogui] [game_args]
Where startup is either -jar *.jar or some library shenanigans (NeoForge/Forge require this).
launcher.disable-
Set to
trueif you do not wantstart.batorstart.shgenerated. launcher.eula_args-
Bukkit/Spigot forks such as Paper and Purpur all support the
-Dcom.mojang.eula.agree=trueflag which allows the agreement of eula withouteula.txt. If this is set to true, mcman will add this flag to the arguments. If the server software does not support this argument,eula=truewill be written toeula.txt. launcher.nogui-
Adds
--noguito the end launcher.preset_flags-
The preset flags to use. Available preset flags:
aikars: The famous Aikar's flags, mostly used by Paper-like servers but probably also effective in modded servers.proxy: These flags were optimized for proxy servers such as bungeecord, waterfall or velocity.none: (default) Dont use any preset flags
These flags were generously borrowed from flags.sh
launcher.java_version-
This field does not add any arguments to the startup command but rather helps mcman decide which java binary to use.
See this section for more information.
launcher.jvm_argsandlauncher.game_args-
These optional fields allow you to add your own custom arguments.
launcher.memory-
If set, this controls the
-Xmx/-Xmsarguments. The value is the same as those arguments, for example:However you can override this using the
MC_MEMORYenvironment variable. launcher.properties-
This table allows you to write property arguments such as
-Dcom.mojang.eula.agree=true:
plugins/mods: Downloadable[]
clientsidemods: ClientSideMod[]
variables: Table of Strings
worlds: Table of String to World
markdown: Markdown Options
options: Server Options
| Name | Type | Description |
|---|---|---|
name |
string | Name of the server |
mc_version |
string/"latest" |
The minecraft version of the server |
jar |
Downloadable | Which server software to use |
launcher |
ServerLauncher | Options for generating launch scripts |
plugins |
Downloadable[] | A list of plugins to download |
mods |
Downloadable[] | A list of mods to download |
clientsidemods |
ClientSideMod[] | A list of client-side only mods, for packwiz/mrpack support |
variables |
table of string | See variables section |
worlds |
table of World | A table of worlds which may contain datapacks. The keys are the world names |
markdown |
MarkdownOptions | Options for markdown files, see here for more info |