
Game Configuration: Command Lines
This is Part 11 of the Game Configuration series. Command lines define the startup arguments passed to the game server executable, with support for multiple presets that operators can switch between.
What Are Command Line Groups?
A command line group is a named set of startup arguments. You can create multiple groups, and operators can switch between them from the server settings β for example, a "Default" group and a "Tournament" group with different tick rates or player limits.
One group is always marked as the default, which is used when the server first starts.
How They Work
When using Direct Command type (from the Execution section), command lines define the arguments passed to the executable:
java -Xmx${MAX_RAM}M -jar server.jar --port ${PORT}
^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Command (from Execution) Arguments (from Command Lines)
Script Mode
When using Bash, Shell, or PowerShell command types, command line groups become startup scripts instead. Each group contains a full script body rather than individual arguments. Operators can switch between different startup scripts.
Creating a Command Line Group
Click Add Command Line (or Add Startup Script in script mode) to create a new group.
In Direct Command Mode
Each group contains a list of arguments β individual parameters passed to the command:
| Argument | Example |
|---|---|
-Xmx${MAX_RAM}M | Java max memory |
-jar server.jar | JAR file to run |
--port ${PORT} | Server port |
--maxplayers ${MAX_PLAYERS} | Player limit |
Arguments support variable substitution β use ${VARIABLE_NAME} to reference environment variables and port variables. The Command Preview in the Execution section shows the fully resolved command.
In Script Mode
Instead of individual arguments, you write a full startup script. The script has access to all environment variables.
Default Group
One group must be the default. This is the group that runs when a server is first created. Operators can switch to a different group from their server settings.
Tips
- Create multiple command line groups for different use cases β vanilla vs modded, casual vs competitive
- Use variable substitution (
${VAR}) in arguments so values are dynamically pulled from environment variables - The Command Preview in the Execution section shows the fully resolved command for the default group
- In script mode, the "command" field from the Execution section is ignored β the startup script contains the full command