Multicraft Settings

Server Settings

The available settings depend on your role in the panel and the available features. The following list is ordered as seen by a panel Superuser. The order can be different depending on your role.

Setting Description
Daemon A list of daemons this server can be assigned to. If the setting is changed you will have the choice between just changing the daemon ID of the server without transferring files or automatically transferring server files to the new daemon and changing the setting automatically as soon as the transfer has succeeded
Name The server name displayed in the panel and on the server banner
Player Slots The maximum player count this server supports
Status The current server status and the status banner image link if available
Assign to User This is a search field for the username of the new server owner. Make sure to remove FTP access rights from the old owner in case they should no longer have access
Send Assign Notification When the owner is changed the new owner will receive an email about their new server
Default: enabled
IP The IP this server will bind to. Leave empty to use the default value configured under "Settings"
Port The port this server will bind to. Empty to automatically assign a suitable port
Memory In MB. The amount of RAM to assign to this server. Empty for default value
Disk Space Limit In MB. The amount of disk space this server can use in total. Empty for no limit. Requires a server restart to take effect
Domain The subdomain to assign to this server.
JAR File The name of the server executable file. Empty for default. Settings specific to this executable will be loaded from the .conf file matching the executable name. For example "minecraft_server.jar.conf" for the name "minecraft_server.jar"
Owner selectable JAR When enabled the server owner can select a JAR file from the list of available JARs themselves
Default: disabled
Owner can set Name When enabled the server owner can change the name of the server
Default: enabled

Advanced Server Settings

Setting Description
World The name of the world to use. Empty for "world". If the world does not exist it will be generated on server startup
Base Directory Should not usually be changed. Leave empty to generate automatically as "serverX" where X is the server ID. This is the directory where all server files will reside, it's a sub-directory of the "servers" directory
Startup Memory In MB. The amount of memory to allocate as the server starts up. This does not usually have to be changed
Displayed IP The IP displayed in the panel and on the server status banner. Can also be a hostname
Autostart When enabled this server will be automatically started when the daemon is started
Default: enabled
Owner Scheduled Tasks When enabled the server owner can use the task scheduler
Default: enabled
Owner managed FTP When enabled the server owner can assign FTP access to users under "Advanced"->"Users"
Default: disabled
Owner set Visibility When enabled the server owner can change the visibility settings in the server settings
Default: enabled
Owner set Player Count When enabled the server owner can change the "Player Slots" setting
Default: disabled
Owner set JAR directory When enabled the server owner can change the "Look for JARs in" setting
Default: disabled
Owner can use Templates When enabled the server owner can use the template feature under "Files">"Setup"
Default: enabled
Owner set Startup Parameters When enabled the server owner can use the optional startup settings feature under "Advanced">"Startup Parameters"
Default: disabled
Owner set Server Memory When enabled the server owner can change the amount of RAM assign to the server (dangerous with untrusted users)
Default: disabled
Owner configurable Crash Detection When enabled the server owner can change crash detection settings (see "Crash Detection" below). If crash detection is disabled globally the user settings will have no effect
Default: disabled
Owner set Subdomain When enabled the server owner can configure a subdomain for their server
Default: disabled
Owner can create MySQL DB When enabled the server owner can create/delete MySQL databases under "Advanced"->"MySQL"
Default: enabled
Owner can add Ports When enabled the server owner can allocate additional ports under "Advanced"->"Additional Ports"
Default: disabled
Look for JARs in The directory the server JAR file will be loaded from. Options:
  • Daemon JAR directory
    The "jar" directory in the daemon base directory
  • Server JAR directory
    The "jar" directory inside the server directory. If the JAR file is not found here it will be copied from the daemon "jar" directory
  • Server base directory
    The server directory itself. If the JAR file is not found here it will be copied from the daemon "jar" directory
When using something other than "Daemon JAR directory" you need to run the daemon in "multiuser" mode. Please also see the following security recommendation.
When this as well as the "Owner selectable JAR" is enabled the user will also have the option to enter an arbitrary JAR name.
Default: Daemon JAR directory
Unauthorized Kick Delay In milliseconds. How many milliseconds to wait for before kicking a non-whitelisted or banned user
Default: 3000
Autosave When enabled regular save commands will be sent to the server according to the "Autosave Interval" setting under "Settings"
Default: enabled
Announce World Save When enabled a message will be broadcast to the players on the server whenever the world has been written to the disk
Default: enabled
Crash Detection The way server crash detection should be handled. Options:
  • Use default settings
    Use the setting configured for "Assume servers are still running on" below
  • Strict crash detection
    Same as ""List" command output" for the setting "Assume servers are still running on" below
  • Basic crash detection
    Same as "Any console output" for the setting "Assume servers are still running on" below
  • Disable crash detection
    Disables crash detection entirely
When crash detection has been disabled using the "Crash Check Interval" setting below this setting will have no effect
Default: Use default settings
Repair Tool A button to run a repair tool when available

Server Permission Settings

Setting Description
Server Visibility The visibility of the server in the server list. Options:
  • Owner only
    Only the server owner can see the server
  • By Default Role
    The server is only visible if the "Default Role" is set to "Guest" or higher
  • Users with Roles only
    The server is only visible for users that have explicitly been assigned a role under "Advanced">"Users"
Default: By Default Role
Default Role The role to assign to guests and to users who don't have an explicit role assigned under "Advanced">"Users". Options:
  • No Access
    Access to the server is denied by default. Connecting users are kicked from the server
  • Guest
    The server can be connected to by anyone, basic server information is visible in the panel
  • User
    Everyone can use the web based chat and other privileges of the "User" role. See Available User Roles
  • Moderator (not recommended)
    Everyone has Moderator privileges. See Available UserRoles
  • Super Moderator (not recommended)
    Everyone has Super Moderator privileges. See Available UserRoles
Default: Guest
IP Auth Role The role assigned to users whose IP matches the IP of a player ingame. This can be used to give users panel permissions as long as they are on the server
Default: Guest
Cheat Role The role required to use web based cheat commands like teleport and give in the player view. If set to "Guest" or lower everyone can use these commands
Default: Moderator


Global Settings

Setting Description
Autosave Interval The number of seconds between sending save commands to the server to write the world to the disk. Use 0 to disable autosave globally
Default: 600
Number of lines to store in chat window The number of lines to store in the chat window. When exceeded, older chat lines will be removed as new ones get added
Default: 120
Number of lines to store in log/console window The number of lines to store in the console/log window. When exceeded, older lines will be removed as new ones get added
Default: 120
Number of backups to keep The number of backup files to keep. Backups are rotated with the names world.zip, world.1.zip, ..., world.X.zip where X would be this setting
Default: 3
Number of servers per page The number of servers visible on one page in the main server list under "Servers"
Default: 10
Default server name Used when no value is indicated when creating a server
Default: Minecraft Server
Default number of player slots Used when no value is indicated when creating a server
Default: 8
Default amount of memory In MB. Used when no value is indicated when creating a server
Default: 1024
Default server IP Used when no value is indicated when creating a server. Options:
  • All interfaces (0.0.0.0)
    The server will bind to the IP 0.0.0.0, meaning all available IP addresses can be used to connect to the server. Use this when running the server behind a NAT (router)
  • Daemon IP
    Use the same IP as the daemon (the "externalIp" setting in the multicraft.conf of the daemon where the server is created)
  • Daemon FTP Server IP
    Use the same IP as the FTP server of the daemon (the "ftpExternalIp" setting in the multicraft.conf of the daemon where the server is created)
Default: All interfaces (0.0.0.0)
Base server port to use on new IPs Auto assigned ports start at this value. New servers will be assigned ports according to the setting 'Use lowest possible unused port', see below
Default: 25565
Minecraft EULA How to handle the Minecraft EULA. Options:
  • Manual
    Users have to manually change the setting in the eula.txt file through the FTP server
  • Show "Accept EULA" button
    Show a button to accept the EULA in the server settings
  • Automatically accept
    Automatically change the setting in the eula.txt before a server starts. Make sure to get confirmation from your users that the EULA has indeed been accepted
Default: Show "Accept EULA" button

Advanced Global Settings

Setting Description
Default amount of startup memory In MB. Used when no value is indicated when creating a server
Default: 0 MB
Check for Multicraft updates When enabled the daemon and the panel will regularly check for new Multicraft versions
Default: true
Anonymous usage statistics When enabled sends anonymous usage statistics about the daemon
Default: true
Crash Check Interval The number of seconds between sending a status command ("list" for Minecraft servers) to the server. Use 0 to disable these status commands
Default: 30
Response Timeout The number of seconds to wait for a reply to the status command before a server is considered crashed and will be restarted
Default: 0
Number of Ping Timeouts to Allow The number of timeouts in a row to allow for the status command. This overrides the "Response Timeout" as it will only restart the server once this number of timeouts has been reached
Default: 1
Server Restart Delay The number of seconds to wait before starting a server again on a restart command
Default: 3
Crashed Server Restart Delay The number of seconds to wait before starting a crashed server again. Use 0 to disable restarting crashed servers
Default: 5
Minimum time between two world saves The minimum number of seconds between issuing world save commands
Default: 120
Minimum time between two world backups The minimum number of seconds between creating world backup zip files
Default: 300 (5 minutes)
Minimum time between two resource checks The minimum number of seconds between checks of a servers resource usage
Default: 1
Assume servers are still running on This determines how replies to the status command ("list" for Minecraft) are handled. Options:
  • Known console output
    Treat any kind of recognized console output as a sign that the server is still running. This includes replies to the status command, player connects/disconnects, error messages, chat, etc.
  • "List" command output
    Require a recognized format of the "list" command output in reply to using the "list" command in order to consider the server still running.
  • Any console output
    Any kind of console output from the server will be accepted as a sign that the server is still running
Default: Known console output
Limit number of console lines per second to Limit the number of lines that a server can output to the console per second
Default: 30
Plugin repository refresh interval The number of seconds between refreshes of the local server plugin repository
Default: 5
Save player information (ip, lastseen, etc.) When to save the player information of new players seen on the server. Options:
  • Always Save
    Save the information of every player seen on the server in the player list of the panel
  • Update Existing
    Only update the information of players that are already in a servers player list but don't create new player entries
  • Never Save
    Never save player information in the panels player list. All players that should get a special role assigned to them have to be created manually
Default: Always Save


Panel Configuration

Setting Description
Administrator Name The name of the administrator of this panel installation
Default: Multicraft Administrator
Administrator contact Email The contact email of the administrator of this panel. Setting this will enable the "Support" menu entry. This is required for the "Welcome" and "Assign" email functionality as well as password resets to work
Restrict Administrator IPs Restrict Superuser access to the IPs in this list (comma separated). This also needs to include the IPs that you want to use for API access
Restrict API IPs Restrict API access to the IPs in this list (comma separated). If the API access required includes superuser level commands you need to put the IP in the "Restrict Administrator IPs" list as well
Enable the Multicraft API The API is required for billing system integration
Default: No
Allow users to generate API keys When enabled allows every user to generate their own API key. This is not recommended unless you want to enable users to be able to use external apps to manage their server. We suggest disabling user registration when this is enabled
Default: No
Hide the userlist from normal users When enabled only superusers can see the full user list
Default: Yes
Minimum password length Enforce a minimum password length
Default: empty (no minimum length)
Theme The default theme, can be overridden by users
Mobile Theme The theme to use for mobile users
Default: Same as Normal Theme
User can select theme When enabled users can change their panel theme
Default: No
Language The default panel language, can be overridden by users
Generate server status banners Status banners are linked from the server settings when enabled. The PHP GD extension is required for this to work correctly
Default: Yes
Welcome Mail Sends a welcome email when a user is created as well as password change notifications
Default: No
Assign Mail Sends an email to a user when a new server is assigned to them
Default: No
Default Display IP The default Display IP to assign to new servers
Default: empty
Use lowest possible unused port When enabled port gaps created by deleting servers will be filled. Otherwise the port used for new servers will always be the largest port currently in use +1 (this was the old behavior)
Default: Yes
Show Server Memory Show the assigned RAM in the server settings
Default: Yes
Show console and chat from bottom to top When enabled displays the input field at the bottom and newer messages get added at the bottom. When disabled the field will be at the top with new messages added at the top (this was the old behavior)
Default: Yes
Auto-save JAR change When enabled a change to the "JAR File" field will automatically save the server settings page
Default: Yes
Show Server List For Who can see the list of visible servers. The visibility setting of the servers still overrides this. Options:
  • Everyone
    Everyone can see the server list (this is the old behavior)
  • Logged in Users
    Only logged in users can see the server list
  • Superusers
    Only superusers can see the server list
Default: Logged in Users
Use Bukkit plugin list This enables the Bukkit plugin list powered by BukGet. For support, please visit this page
Default: No
Allow Users to Create a MySQL Database This enables the MySQL database provisioning feature under "Advanced">"MySQL Database". The servers still need to have the "Owner can create MySQL DB" setting enabled for the owners to be able to use this themselves.
For this feature to work at least the DB Host, Username and Password have to be specified
Default: No
User DB Host The hostname of the DB server to be used for user created MySQL databases. We recommend using a separate MySQL server for these databases. This can also include a port, for example "localhost;post=3306"
User DB Username
User DB Password
The DB credentials of the MySQL server to use for user created MySQL databases
User DB Prefix The prefix to use for user created MySQL databases. For example: When this setting is set to "mc_db" the database for server 1 would be called "mc_db1"
User DB Admin Link The link to the DB administration tool for user created MySQL database. This can be left empty if no such tool is available

Advanced Panel Configuration

Setting Description
Disable the integrated FTP client (net2ftp) When set to "Yes" the integrated net2ftp client will not be available
Default: No
Use passive mode in FTP client When this is enabled the integrated net2ftp client will use Passive mode instead of Active mode for FTP connections
Default: No
Disable template setup functionality This can be used to disable the server template/setup functionality
Default: No
Show the kill button for The Kill button instantly terminates a server process. This can lead to data loss and corruption. This setting decides who has access to the Kill button functionality. Options:
  • No one
    The Kill button is not available
  • Superusers
    Only superusers can use the Kill button
  • Users
    The Kill button is available for all users with the appropriate server role
Default: No one
Show the repair tool button for When configured a repair tool can be started using a button from the server settings page. This controls who has access to that button. Options:
  • No one
  • Superusers
  • Users
    The button is available for all users with the appropriate server role
Default: No one
Show "Delete all Players" link for The "Delete all Players" link will delete all player entries of a server under "Players". This controls who has access to that link. Options:
  • No one
  • Superusers
  • Users
    The button is available for all users with the appropriate server role
Default: Superusers
Disable AJAX updates Setting this to "Yes" will reduce HTTP requests by disabling AJAX updates. This will disable automatic refresh of console/chat/server status
Default: No
AJAX update interval The time between two AJAX updates (for example console refresh) in milliseconds. Minimum 250
Default: 2000
Use AJAX in the serverlist for faster loading This will instantly load the serverlist and then update the status of each server on the list individually. Opens a new HTTP request for each server
Default: No
Use schema cache to reduce queries When enabled a separate SQLite database will be used as a database schema cache to reduce the number of queries on the main database. This requires the SQLite PDO extension to be installed
Default: No
Use separate DB for command cache Usually daemon commands are cached in the main database. Enable this to cache the commands in a separate SQLite database. Requires the SQLite PDO extension to be installed
Default: No
Timeout for daemon connection Timeout in seconds for connections to the daemon. When your panel frequently loads for a long time because a daemon is not reachable try reducing this. Similarly, if you're getting "Empty Response" errors for daemons that are up but potentially overloaded, try increasing this
Default: 5
Mark daemon offline for When a daemon times out it will be marked as offline for this number of seconds. Offline daemons are not sent any commands to avoid slowing down panel load times. When daemon connections are usually stable you can safely increase this. If your daemon connections are unstable and time out frequently you might have to lower or disable this. Use 0 to disable this feature
Default: 10
Disable User Registration This disables user registration. New users can only be created manually by the admin or through the API (for example by billing system modules)
Default: Yes
Number of login attempts before blocking New login attempts from the same user will be blocked after this number of tries. Use 0 to disable this feature
Default: 4
Login block interval The number of seconds to block a user after too many login attempts
Default: 300 (5 minutes)
Reset Token Valid for The number of hours the password reset token stays valid for. If this is set to 0 the password reset functionality will not be available
Default: 0
Allow IP change for login sessions by default Allowing IP changes means that the login session will be considered valid even if a users IP changes. This is useful when logging in on mobile devices but it also means that stolen session cookies will be valid. Then this is enabled IP changes will be allowed by default
Default: No
Allow GET requests to the API By default only POST requests are accepted by the API. Use this to allow GET requests
Default: No
Block special characters in chat When enabled the panel will block certain characters from being used in chat to increase security
Default: Yes
Log commands with username in the panel console When enabled each command issued through the panel will be logged in the server console. This causes an additional daemon command to be sent for each console command
Default: No
Enable CSRF validation Enables Cross-site request forgery protection (recommended)
Default: Yes
Enable Cookie validation Enables cookie validation (recommended)
Default: Yes
Password Encryption Set the kind of password hashing algorithm to use. We recommend using SHA512 if available. Options:
  • MD5
    Deprecated (this is the old default value)
  • SHA256
  • SHA512
    Recommended
Default: SHA512
CPU Usage to Display How to display the CPU usage of servers. Options:
  • Usage of one core
    The usage displayed will be the usage of one core (0-100%)
  • Usage of entire CPU
    The usage displayed will be scaled to the entire CPU (0-100%)
Default: Usage of entire CPU
RAM Usage to Display How to display the RAM usage of servers. Options:
  • % of assigned RAM
    Shows the usage in percent of the RAM assigned to the server
  • % of total system RAM
    Shows the usage in % of total system RAM
  • Usage in MB
    Shows the usage in MB without a limit (this can exceed the assigned RAM due to overhead)
  • Usage in MB (Capped)
    Shows the usage in MB but never show more than the assigned RAM value
Default: % of assigned RAM
Enable disk space limit setting (Linux only) This enables the Linux quota integration feature to limit disk space usage per server. Please see Limit Disk Space
Default: No
Enable IP Authentication Enable the IP authentication feature
Default: Yes
Support Legacy Daemons When using a 2.0.0+ panel with daemon versions prior to 2.0.0 you need to enable this setting
Default: No


Configuration Files

Configuration files shipped with the Multicraft package are named ".conf.dist" in order to avoid overwriting your existing config files. To enable a config file, simply remove the ".dist" part and edit the file to suit your needs.


Daemon: multicraft.conf

This is the main configuration file of the daemon. All settings are documented directly in the multicraft.conf.dist that comes with the downloaded Multicraft archive. The setup.sh script will set the most relevant settings but you might still have to fine tune certain settings like the amount of memory available to the daemon if you're using billing system integration.
Most settings in that file can be changed at runtime but the daemon needs to be informed of the change in the panel under "Settings">"Operations">"Reload Daemon Config File"


Daemon: scripts.conf

This file can be used to configure scripts that can be run directly from the panel. The available settings are documented in the file itself. Additional help can be found here: Running Scripts


Daemon: default_server.conf

This file sets the default settings that are not defined in server executable .conf (see jar/*.conf below) files or if the executable .conf file doesn't exist. The format is the same as for these .conf files


Daemon: server_configs.conf

This file defines the config file to use depending on the server executable name. If there is a conf file for the executable file name (e.g. craftbukkit.jar.conf for craftbukkit.jar) then this file is ignored, otherwise it will be used to determine the conf file to use. The available settings are documented in the file itself.


Daemon: templates/*/template.conf

Every template can optionally provide a template.conf file. Available settings are documented in the template.conf that comes with the sample template "cleanmodsplugins": "templates/cleanmodsplugins/template.conf".


Daemon: jar/*.conf

Please see the documentation of .jar.conf Files. The default "jar/craftbukkit.jar.conf" also contains a listing of available settings.


Panel: protected/config/config.php

This is the main panel configuration file. You should not have to edit it manually since the front end installer (install.php) initializes it for you and you can change most settings directly in the panel under "Settings"->"Panel Configuration". When you need to change the database connection details you can do so by either editing this file or by re-running the front end installer.


Panel: protected/config/internal/application.php

This file should not usually have to be changed but certain features can be enabled by editing it, for example: