Quickstart

This guide will help you set up a basic SimpleCloud installation using the CLI, including a proxy and an initial server group functioning as a lobby. We'll cover the CLI and standardized official Droplets.

System Requirements

Before installing SimpleCloud, ensure that the following programs are installed on your system, as they are required for the cloud to function correctly:

  • Java 21: Required to run Minecraft servers and other Java-based components.
  • screen: Allows you to run processes in the background on Linux.
  • lsof: Used for checking open files and network connections. (Already installed on most Linux distributions)

Installing SimpleCloud

SimpleCloud now offers an extensive CLI that covers everything you need to manage SimpleCloud. It’s a small application that serves as an interface for sending commands to your SimpleCloud instance and is the easiest way to get started with SimpleCloud. You can install it with the following command:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/theSimpleCloud/simplecloud-manifest/HEAD/install.sh)" && sc setup

After installing the CLI, the setup process will automatically start. You will be presented with the following options:

  • New Installation: Install and set up a new SimpleCloud instance.
  • Add Server Host: Add a new server host to an existing cloud installation.
  • Droplet: Install one or more droplets.
  • CLI Only: Continue with CLI usage.

Select New Installation to install the complete bundle. This process includes setting up all core components needed for SimpleCloud.

If you already have a running SimpleCloud instance and want to add another Root Server, consider using the Server Host Droplet.

Running SimpleCloud

Starting the cloud is straightforward. By executing the following command, the cloud will access and start every component needed to run SimpleCloud.

sc start cloud

The CLI will run a script in your installation directory to start everything necessary for SimpleCloud. You can customize this script if needed, located in the scripts directory.

Currently, starting specific components via the CLI is not supported. However, you can start them individually by executing the corresponding script in the scripts directory.

Creating a Proxy Group

With a running SimpleCloud instance, you can create your first group. A group consists of Minecraft or proxy servers and is managed by the Controller.

For a functioning Minecraft server network you first need to create a Proxy Group:

sc create group

Creating a Server Group

To run an actual Minecraft server, you also need to create a Server Group:

sc create group

Configuring the Connection Plugin

Configure the Connection Plugin to route players to your created server group when joining a proxy. Additionally you can configure your group to be used as a fallback group and provide a navigation command for it. Follow these steps:

  1. Ensure the plugin is installed: The plugin is installed by default in the bundle. In other cases you can get it from the releases page and place it in your proxy template's plugins folder.

  2. Edit the config.yml: Configure your server group as a connection in the config.yml file. For example:

    connections:
      - name: "lobby" # Name of this connection target
        permission: ""  # No permission required
        server-name-matcher:
          operation: "STARTS_WITH"
          value: "lobby" # The name of your server group
    
  3. Set Network Join Handling: Configure that players are routed to your server group upon joining the network by configuring the network join target:

    network-join-target:
      enabled: true
      no-target-connections-found-message: "Couldn't connect you to the network because no target servers are available."
      target-connections:
        - name: "lobby" # The name of the connection target you configured above
          priority: 0
    

The following steps are only useful if you plan on having a setup with multiple server groups.

  1. Configure Fallback System: Configure your server group as a fallback group for when players are kicked from other servers:

    fallback-connections:
      enabled: true
      no-target-connections-found-message: "You have been disconnected from the network since you have been kicked and no fallback server are available."
      target-connections:
        - name: "lobby" # The name of the connection target you configured above
          priority: 0
    
  2. Define a Navigation Command: Create a custom command to allow players to navigate from other server groups to the one you created:

    commands:
      - name: "lobby" # The name of the command
        aliases:
          - "l"
          - "hub"
          - "quit"
          - "leave"
        target-connections:
          - name: "lobby" # The name of the above configured connection target
            priority: 0
        already-connected-message: "<red>You are already connected to the lobby!"
    no-target-connections-found-message: "There are no lobby servers available at the moment."
    permission: "" # No permission required
    

These example configurations ensure you have a proper lobby server group set up.

What's next?

Great, you're now set up with SimpleCloud. Here are a few links that might be helpful as you continue to explore SimpleCloud:

Was this page helpful?