GITBOOK-88: No subject

This commit is contained in:
OpenSource 2023-02-17 11:45:54 +00:00 committed by gitbook-bot
parent a775d85b37
commit a24100424b
No known key found for this signature in database
GPG Key ID: 07D2180C7B12D0FF
36 changed files with 263 additions and 270 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 48 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 103 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 62 KiB

View File

@ -6,9 +6,9 @@
* [🚀 Plugin Installation Tutorial](overview/installation/README.md)
* [🎁 Templates](overview/installation/templates.md)
* [📦 Adding pre-defined plugins](overview/installation/adding-pre-defined-plugins.md)
* [⌨ Multi-Node Support](overview/installation/multi-node-support.md)
* [🛳 Docker configuration](overview/installation/docker-installation.md)
* [🌐 Pterodactyl configuration](overview/installation/pterodactyl-configuration.md)
* [🌐 Pterodactyl configuration](overview/pterodactyl-configuration/README.md)
* [Download custom wings](overview/pterodactyl-configuration/download-custom-wings.md)
* [How to create tokens](overview/pterodactyl-configuration/how-to-create-tokens.md)
* [📜 Current Config files](overview/config.md)
* [🚫 Limitations](overview/limitations/README.md)
* [Permission-based RAM](overview/limitations/permission-based-ram.md)
@ -18,30 +18,30 @@
***
* [👵 Legacy](legacy/README.md)
* [Updates](legacy/updates/README.md)
* [PlayerServers - General](legacy/updates/master.md)
* [v1.1 to v1.2](legacy/updates/v1.1-to-v1.2.md)
* [8.0 to v1.0](legacy/updates/8.0-to-v1.0.md)
* [5.0 to 6.0](legacy/updates/5.0-to-6.0.md)
* [3.7-D to 4.0](legacy/updates/update1.md)
* [Basic instructions](legacy/basic-instructions.md)
* [Plugin management](legacy/plugin-management.md)
* [Plugin Installation Tutorial](legacy/installation.md)
* [Editing config files](legacy/editing-config-files.md)
* [Current Config & Messages File](legacy/config.md)
* [Permissions & Commands](legacy/permissions-and-commands.md)
* [Limitations](legacy/limitations/README.md)
* [Permission-based RAM](legacy/limitations/permission-based-ram.md)
* [Max players limitation](legacy/limitations/max-players-limitation.md)
* [Max plugins limitation](legacy/limitations/max-plugins-limitation.md)
* [Adding pre-defined plugins](legacy/adding-pre-defined-plugins.md)
* [Creating MySQL database](legacy/creating-mysql-database.md)
* [Additional Tutorials (FAQ)](legacy/additional-tutorials-faq.md)
* [Screen (accessing consoles)](legacy/screen.md)
* [👵 Legacy (v2.x)](legacy-v2.x/README.md)
* [Updates](legacy-v2.x/updates/README.md)
* [PlayerServers - General](legacy-v2.x/updates/master.md)
* [v1.1 to v1.2](legacy-v2.x/updates/v1.1-to-v1.2.md)
* [8.0 to v1.0](legacy-v2.x/updates/8.0-to-v1.0.md)
* [5.0 to 6.0](legacy-v2.x/updates/5.0-to-6.0.md)
* [3.7-D to 4.0](legacy-v2.x/updates/update1.md)
* [Basic instructions](legacy-v2.x/basic-instructions.md)
* [Plugin management](legacy-v2.x/plugin-management.md)
* [Plugin Installation Tutorial](legacy-v2.x/installation.md)
* [Editing config files](legacy-v2.x/editing-config-files.md)
* [Current Config & Messages File](legacy-v2.x/config.md)
* [Permissions & Commands](legacy-v2.x/permissions-and-commands.md)
* [Limitations](legacy-v2.x/limitations/README.md)
* [Permission-based RAM](legacy-v2.x/limitations/permission-based-ram.md)
* [Max players limitation](legacy-v2.x/limitations/max-players-limitation.md)
* [Max plugins limitation](legacy-v2.x/limitations/max-plugins-limitation.md)
* [Adding pre-defined plugins](legacy-v2.x/adding-pre-defined-plugins.md)
* [Creating MySQL database](legacy-v2.x/creating-mysql-database.md)
* [Additional Tutorials (FAQ)](legacy-v2.x/additional-tutorials-faq.md)
* [Screen (accessing consoles)](legacy-v2.x/screen.md)
* [Screen (advanced)](https://linuxize.com/post/how-to-use-linux-screen/)
* [Templates](legacy/templates.md)
* [Multi-Node Support](legacy/multi-node-support.md)
* [Templates](legacy-v2.x/templates.md)
* [Multi-Node Support](legacy-v2.x/multi-node-support.md)
* [Unofficial Video Tutorial](https://www.youtube.com/watch?v=VApcwAG4y5c)
* [MC-Market Thread](https://www.mc-market.org/threads/583445/#post-4508558)

View File

@ -1,13 +1,13 @@
# 📜 Current Config files
{% hint style="info" %}
The below page explains how to use this feature on PlayerServers 3. This is only relevant if you're a beta tester. To view this page for PlayerServers 3, click [here.](../legacy/config.md)
The below page explains how to use this feature on PlayerServers 3. This is only relevant if you're a beta tester. To view this page for PlayerServers 3, click [here.](../legacy-v2.x/config.md)
{% endhint %}
Below you can see the contents of the newest BungeeCord PlayerServers configuration file.
{% hint style="info" %}
Please note that in some extremely rare cases I may **forget to update the config** on this page.
Please note that in some extremely rare cases I may **forget to update the config** on this page. For the most up to date config.yml and messages.yml, click [here](https://github.com/arcadiadevs/playerservers-everything).
{% endhint %}
```yaml
@ -22,43 +22,19 @@ Please note that in some extremely rare cases I may **forget to update the confi
# Please enter your MySQL information below.
mysql:
hostname: 127.0.0.1
username: web
password: webmaster
database: playerservers
useSSL: true
# Url of the MySQL server, in format: jdbc:mysql://<host>:<port>/<database>
# Any additional options can be added at the end of url, such as:
# ?autoReconnect=true&useSSL=false?useUnicode=true&characterEncoding=UTF-8
url: "jdbc:mysql://localhost:3306/playerservers?useSSL=false&serverTimezone=UTC"
additionaloptions: []
# - "allowPublicKeyRetrieval=true"
username: root
password: root
url-based-connection:
enabled: false
driverName: "com.mysql.cj.jdbc.Driver"
# If you're using this connection method, you'll be entering your hostname,
# port and database name below in the jdbcUrl string. The ones above will not
# be considered.
jdbcUrl: "jdbc:mysql://localhost:3306/playerservers"
# Between version v1.2-RC6 and v1.2-RC7 there was a change in
# Database handling. Everyone upgrading that were satisfied
# on how it worked before should keep it as false, or first
# try enabling it and seeing if their servers are still
# attached to their account or not. In some rare cases it
# can happen that changing the value of this option can
# detach servers from your account, so enabling it if it
# worked correctly for you before is not needed.
use-modern-database: true
# This setting defines port range
ports:
# Server port range
start-port: 30000
end-port: 40000
# Panel port range only if experimental-panel is enabled
panel-start-port: 40000
panel-end-port: 50000
# Developer options, do not change unless you know what you are doing.
driver: "com.mysql.cj.jdbc.Driver"
update-policy: "update"
debug: false
get-from-file: false
# Where should players be moved after they /stop or /ps kill their server?
balancer:
@ -75,6 +51,19 @@ server-name-format:
# Which format should we use?
# %id% equals to player name or uuid depending on use-usernames option
# %uuid% is a random UUID (independent of use-usernames option)
# %uuidshort% is a random UUID without dashes (independent of use-usernames option)
# %player% is the player name (independent of use-usernames option)
# %playeruuid% is the player UUID
# %playeruuidshort% is the player UUID without dashes
# %timestamp% is a timestamp in milliseconds
# %timestampshort% is a timestamp in seconds
# %day% is a day of the month
# %month% is a month of the year
# %year% is a year
#
# To find out what a UUID looks like, you can use this website:
# https://www.uuidgenerator.net
format: "PS_%id%"
# What is the max amount of servers that can be running at once?
@ -89,20 +78,6 @@ minutes-to-shutdown: 15
# should we launch the server? Increase this if you get could not connect message.
copy-delay: 3
# Default startup command. Supports %uuid% for server UUID and %mem% for memory.
launch-command: "screen -dmS %uuid% java -Xmx%mem%M -jar Spigot.jar"
# In how much seconds, after first boot-up of the server should we
# teleport the player to their sub-server? This depends on the strength
# of your machine CPU. If you have a stronger machine, you might wanna set
# it to something like 12 seconds, if you have some kind of Xeon with less
# than 3.9Ghz, you might wanna set this to 15-20 seconds.
teleport-time: 15
# In how many seconds should we attempt to connect player to their
# sub-server after it being launched by /playerserver start command?
teleport-time-normal: 10
ram-limiting:
# Should we use permissions for ram management? If set to true, you MUST give
# your players permission playerserver.ram.<amount> (ex: playerserver.ram.512)
@ -114,8 +89,7 @@ ram-limiting:
ram-per-server: 512
cpu-limiting:
# Only for docker-based servers,
# should we use permissions for cpu management? If set to true, you MUST give
# Should we use permissions for cpu management? If set to true, you MUST give
# your players permission playerserver.cpu.<amount> (ex: playerserver.cpu.1)
# or, else, the command will be blocked, and player will not be able to create
# the server. If set to false, everyone will have cpu-per-server amount of CPU.
@ -161,107 +135,140 @@ smart-command: false
# Obviously, admin commands require permission no matter what.
enable-permissions: true
# Should we disable OOM killer? If set to true, the server will not be
# killed if it runs out of memory, but will instead slowly crash.
# Enable this if your server is crashing due to OOM killer.
disable-oom-killer: false
# Templates will not work on Pterodactyl.
templates:
default:
# This is just an example of what you can do with requires-permission.
# Default template will never require permission, even if set to true.
requires-permission: false
# What launch command should be used? If set as %default%, launch-command
# from above will be used (~line 70). Supports %mem% and %uuid% placeholders.
launch-command: "%default%"
# What plugins does this template contain?
# More info: https://playerservers.thearcadia.xyz/experimental/templates
plugins: []
# The plugin is built around itzg/minecraft-server as a base image.
# You can use any image you want, but we do not provide support for it.
# Use variables below to customize the way your server will be created.
docker-image: "itzg/minecraft-server"
# The type of the server jar. Can be "SPIGOT", "PAPER", "PUFFERFISH",
# "PURPUR", "MAGMA", "FORGE", "FABRIC" and much more.
#
# For a full list of supported server jars, check out this link:
# https://github.com/itzg/docker-minecraft-server/blob/master/README.md#server-types
type: "PAPER"
# The version of the template. Paper jar will be downloaded automatically
# Please avoid using non-standard versions such as 1.7.5 or 1.10 or 1.17.1
# If you use LATEST, server will always automatically update to the latest
# version of Minecraft available, as soon as server is restarted.
# If you use SNAPSHOT, server will always automatically update to the latest
# snapshot version of Minecraft available, as soon as server is restarted.
# SNAPSHOT may not work on all types of servers.
version: "1.8.8"
# These variables are always sent if you use the default docker image
# (itzg/minecraft-server) and can not be changed.
#
# EULA=true
# TYPE=%typeFromAbove%
# VERSION=%versionFromAbove%
# ONLINE_MODE=false
# SERVER_PORT=%serverPort%
#
# Below you can add more variables for this image or in case you use a custom one.
# Format: VARIABLE_NAME: "VARIABLE_VALUE"
variables:
USE_NATIVE_TRANSPORT: "false" # Required for older versions of Minecraft
# Which folders or files will not show in /config file manager?
disabled-access:
- "ExampleFolder"
- "Plugin.jar"
# BETA FEATURES. USE AT OWN RISK!!
multi-node: false
experimental-rename: false
pterodactyl:
# Should we enable Pterodactyl deployment? If set to true, you don't need
# to configure PlayerServers Daemon. All deployments will be done by Pterodactyl.
enabled: false
url: "http://localhost:8080"
token: "token"
# Url of your panel. Example: https://panel.example.com
# Make sure not to have / at the end!!
url: "http://localhost:8080"
# Application token can be created under "Admin" -> "Application API."
# Make sure to give it read/write access:
# - Servers
# - Allocations
# - Users
# For everything else except "server databases", give it read-only access.
application-token: "token"
# Client token can be generated under "Account" -> "API Credentials."
# Url: https://panel.example.com/account/api
# This token must be generated by an admin account.
client-token: "token"
# Important variables to configure. Make sure to enter valid nest and egg id from
# which the servers will be deploy.
# Location id is the ID of location used for load-balanced deployments.
# Nodes under the selected location will be slowly filled up with servers.
nest-id: 0
egg-id: 0
location-id: 0
# Should we print the docker container installation output to the user?
# Could be useful for debugging, and nonetheless, it can be cool for the player :)
install-output: true
environment_map:
SERVER_JARFILE: "server.jar"
VERSION: "1.8.8"
docker:
enabled: false
MINECRAFT_VERSION: "1.8.8"
```
## Current messages.toml
```toml
playerservers-default-cmd = "&9PlayerServers> &7An advanced Server Management plugin which allows players to create and manage their own subserver."
license-msg = "&9Licence> &7%license%"
run-in-game = "&9Error> &7Oops! You can only run this command in-game."
no-server = "&9Error> &7You don't own a server. Don't worry, you can create one by executing &a/ps create"
not-enough-arguments = "&9PlayerServers> &7Oops, not enough arguments: /playerservers admin test <node-name>"
not-enough-arguments-kill = "&9PlayerServers> &7Oops, not enough arguments: /playerserver kill stop <uuid (example: 1F4a2id)>"
not-enough-arguments-delete = "&9PlayerServers> &7Not enough arguments. &a/playerservers admin delete <uuid>. Please keep in mind that you should not enter the full id. You should just enter the first part (example: if full UUID is 1234-5678-1223-5623, you should just enter 1234)."
no-permission = "&9Error> &7Oops, it seems like you don't have permission to do that."
launching-server = "&c&lLaunching your server. This might take some time. You will be teleported as soon as it's ready."
server-online = "&9PlayerServers> &7Oops, it seems like your server is not online."
already-have = "&9Error> &7Oops, it seems like you already have a server!"
too-many-online = "&9Error> &7Oops, it seems like too many servers are running at the moment."
template-no-permission = "&9Error> &7Oops, you don't have permission to use that template!"
[server-creation]
starting-creation = "&9PlayerServer> &7Starting the creation of your server..."
copied-files = "&9Process> &7Successfully copied required files and built the server container."
teleporting-soon = "&9PostProcess> &7Your server has been created. Teleporting in &a%time% &7seconds..."
sending-to-remote-server = "&9Process> &7We're beginning the creation of your server on the first remote node that provides us with ample resources. This will not take a while."
# Pterodactyl
account-created-successfully = "&9Success> &7Your account has been created successfully."
account-creation-failed = "&9Error> &7Account creation failed. Please try again later. Error: %error%"
server-created-successfully = "&9Success> &7Your server has been created successfully on Pterodactyl panel."
server-creation-failed = "&9Error> &7Server creation failed. Please try again later. Error: %error%"
[server-reboot]
message = "&9PlayerServers> &7In order to restart your server, you need to shut it down first by running &a/stop&7 from your server. You can also forcefully kill it by running &c/playerserver stop.&7 After stopping your server, execute command &a/playerserver start&7 in order to boot it up again."
warning = "&9WARNING> &7You can also &aFORCE REBOOT&7 the server by executing this command again in &c5 seconds&7, but world may end up being &6unsaved&7, and &ccorruption&7 may appear."
[server-rename]
successfully-renamed = "&9PlayerServers> &7Successfully renamed server."
too-long = "&9Error> &7Oops, the servername must be 15 characters long at most."
invalid-characeters = "&9Error> &7Oops, the servername can only contain A-Z, a-z, 1-9."
rename-failed = "&9PlayerServers> &7Oops, the server with that name already exists."
[server-stop]
not-online = "&9PlayerServers> &7Oops, it seems like your server is not online."
successfully-killed = "&9Success> &7Your server has been successfully killed."
[server-start]
prepairing = "&9PlayerServers> &7Preparing to launch your server."
[server-connect]
connected = "&9PlayerServer> &7You've been successfully sent to your server. Your friends can use &a/server %uuid%&7 to connect."
[server-restart]
killing = "&9PlayerServers> &7Trying to kill your server..."
[server-remove]
remove-warning = "&c&lAre you sure you want to delete your server? If you do, please repeat this command in the next 5 seconds."
removing = "&9PlayerServers> &7Deleting your server..."
successfully-removed = "&c&lYour server has been successfully deleted. Removing you from the database now..."
playerservers-default-cmd="&9PlayerServers> &7An advanced Server Management plugin which allows players to create and manage their own subserver."
license-msg="&9Licence> &7%license%"
no-server="&9Error> &7You don't own a server. Don't worry, you can create one by executing &a/ps create"
not-enough-arguments="&9Error> &7Not enough arguments. Please use &a/ps help &7for more information."
not-enough-arguments-kill="&9PlayerServers> &7Oops, not enough arguments: /playerserver kill stop <uuid (example: 1F4a2id)>"
not-enough-arguments-delete="&9PlayerServers> &7Not enough arguments. &a/playerservers admin delete <uuid>. Please keep in mind that you should not enter the full id. You should just enter the first part (example: if full UUID is 1234-5678-1223-5623, you should just enter 1234)."
no-permission="&9Error> &7Oops, it seems like you don't have permission to do that."
launching-server="&9PlayerServers> &7Your server is starting up. Please wait..."
server-online="&9PlayerServers> &7Your server is now online. You will be connected shortly. Your friends can use &a/server %uuid%&7 to connect."
server-offline="&9PlayerServers> &7Your server is offline. You can start it by executing &a/ps start&7."
already-have="&9PlayerServers> &7You already have a server!"
too-many-online="&9PlayerServers> &7You have too many servers online. Please wait until one of your servers is offline."
template-no-permission="&9PlayerServers> &7You don't have permission to use this template."
starting-creation="&9PlayerServers> &7Your server is being created. Please wait..."
teleporting-soon="&9PlayerServers> &7You will be teleported to your server in a few seconds."
sending-to-remote-server="&9PlayerServers> &7Sending you to your server..."
message="&9PlayerServers> &7%message%"
warning="&c&lAre you sure you want to do that? If you do, please repeat this command in the next 5 seconds."
successfully-renamed="&9PlayerServers> &7Your server has been successfully renamed."
too-long="&9Error> &7Your server name is too long. Please choose a shorter name."
invalid-characters="&9Error> &7Your server name contains invalid characters. Please choose a valid name."
rename-failed="&9Error> &7Renaming your server failed. Please try again later."
not-online="&9Error> &7Your server is not online."
successfully-killed="&9PlayerServers> &7Your server has been successfully killed."
connected="&9PlayerServers> &7You are being connected to your server..."
killing="&9PlayerServers> &7Killing your server..."
successfully-removed="&9PlayerServers> &7Your server has been successfully removed."
removing="&9PlayerServers> &7Deleting your server..."
remove-warning="&9PlayerServers> &7Are you sure you want to remove your server? If you do, please repeat this command in the next 5 seconds."
account-created-successfully="&9PlayerServers> &7Your account has been created successfully."
account-creation-failed="&9Error> &7Account creation failed. Please try again later. Error: %error%"
server-created-successfully="&9PlayerServers> &7Your server has been created successfully on Pterodactyl panel. Please login at &6%link% &7 with username &6%username% &7 and password &6%password% &7 to manage your server."
server-creation-failed="&9Error> &7Server creation failed. Please try again later. Error: %error%"
no-port-available="&9Error> &7Oops, it seems like there are no ports available. Please try again later."
no-node-available="&9Error> &7Oops, it seems like there are no nodes available. Please try again later."
action-error="&9Error> &7Oops, it seems like there was an error while performing this action. Please try again later. Error: %error%"
node-created-successfully="&9PlayerServers> &7Node has been created successfully."
server-not-found="&9Error> &7Oops, we couldn't find that server."
not-enough-arguments-start="&9Error> &7You didn't provide enough arguments. Please use &a/ps admin start <uuid>&7."
sending-info-to-remote-server="&9PlayerServers> &7Sending information to the remote node..."
node-not-found="&9Error> &7Oops, we couldn't find that node."
node-removed-successfully="&9PlayerServers> &7Node has been removed successfully."
```

View File

@ -33,18 +33,12 @@ Operating Systems marked with ⛔️ are currently not supported at all, but the
Before installing the dependencies below, it is recommended to run `apt-get update` command as the commands below might not work without it.
{% endhint %}
In order to install PlayerServers on your machine, you obviously need to have Java. The minimum version of Java to be used with this plugin is Java 17. If you don't have it already installed, please follow the link below in order to learn how to install it.
In order to install PlayerServers on your machine, you need to have Java. The minimum version of Java to be used with this plugin is Java 18. If you don't have it already installed, please follow the link below in order to learn how to install it.
{% embed url="https://docs.azul.com/core/zulu-openjdk/install/debian" %}
Azul Zulu Java installation guide (for Debian)
Azul Zulu Java installation guide (for Debian/Ubuntu)
{% endembed %}
After successfully installing Screen, you will need to install **fuser**. Many Linux distros already come with it **pre-installed**, but if you don't have it, make sure to install it by executing the following command:
```bash
$ apt-get install fuser -y # Ubuntu/Debian command. May vary on other systems.
```
## Installation of the plugin
In order to install the plugin, you just need to put it into your BungeeCord plugins folder. After that, please reboot your server and let the plugin generate it's config files and download some other required dependencies.
@ -53,10 +47,10 @@ In order to install the plugin, you just need to put it into your BungeeCord plu
After the first boot of the server, you will see some errors generated by the plugin. Don't worry, just **shutdown** your BungeeCord server and follow the instructions below in order to solve it.
{% endhint %}
Now navigate to the `plugins folder -> PlayerServers` and open up the config.yml file. It is recommended to open it usign some sort of advanced text editor (like [Notepad++](https://notepad-plus-plus.org) or [VisualStudio Code](https://code.visualstudio.com)). After that, you will have to enter your MySQL informations. If you don't have a MySQL server running already, please follow the link below.
Now navigate to the `plugins folder -> PlayerServers` and open up the config.yml file. It is recommended to open it using some sort of advanced text editor (like [Notepad++](https://notepad-plus-plus.org) or [VisualStudio Code](https://code.visualstudio.com)). After that, you will have to enter your MySQL informations. If you don't have a MySQL server running already, please follow the link below.
{% content-ref url="../../legacy/creating-mysql-database.md" %}
[creating-mysql-database.md](../../legacy/creating-mysql-database.md)
{% content-ref url="../../legacy-v2.x/creating-mysql-database.md" %}
[creating-mysql-database.md](../../legacy-v2.x/creating-mysql-database.md)
{% endcontent-ref %}
After the configuration of MySQL database, boot up your BungeeCord server. The plugin should successfully launch this time.

View File

@ -1,36 +0,0 @@
---
description: >-
Since PlayerServers v3, we now offer Docker support as well for those that
care about security and network isolation of their subservers.
---
# 🛳 Docker configuration
{% hint style="info" %}
The below page explains how to use this feature on PlayerServers 3. This is only relevant if you're a beta tester. This feature does not exist on the public release yet.
{% endhint %}
## Introduction
Docker adds a secure isolation layer to your PlayerServers, so you can safely allow players to install all sorts of plugins without being afraid of them breaking something.&#x20;
## Tutorial
### Docker installation
For a quick install of Docker CE, you can execute the command below:
```bash
curl -sSL https://get.docker.com/ | CHANNEL=stable bash
```
### Configuration
After successfully installing docker, you can enable docker support inside your config.yml.
{% code title="Config.yml" overflow="wrap" lineNumbers="true" %}
```yaml
docker:
enabled: true
```
{% endcode %}

View File

@ -1,52 +0,0 @@
---
description: >-
Learn how to install and configure PlayerServers daemon and be the first to
try out our experimental support for hosting your servers on multiple
machines.
---
# ⌨ Multi-Node Support
{% hint style="info" %}
The below page explains how to use this feature on PlayerServers 3. This is only relevant if you're a beta tester. To view this page for PlayerServers 3, click [here](../../legacy/multi-node-support.md).
{% endhint %}
## Requirements
* Purchased PlayerServers. This addon is free of charge
* Have two (or more) machines
* Decent network connection
* At least 200MB of RAM dedicated to Daemon
## Instructions
The installation process for PlayerServers Daemon is pretty straight forward. The first thing you need to do is simply enable multi-node support under experimental options at the end of your configuration file. After that, just reboot your BungeeCord and let the plugin generate required files.
After that's done, create a folder Daemon. Download the following jar file and drop it into your Daemon folder:
{% file src="../../.gitbook/assets/PlayerServersDaemon.jar" %}
Daemon v3 (for PlayerServers v3 Beta)
{% endfile %}
{% file src="../../.gitbook/assets/Daemon-v1.1 (1).zip" %}
Daemon v1.1 - Release (for PlayerServers v2)
{% endfile %}
After that's done, run it for the first time by using `java -Xmx200M -jar Daemon.jar` in order to let it generate the required files. Now exit it by typing in `exit`. After that's done, configure both multinode.yml inside your `BungeeCord/plugins/PlayerServers/multinode.yml` and your Daemon config.toml which will be generated in your Daemon root directory. It is important to include the same token inside both configs!
{% hint style="info" %}
As the last step, it is required to copy all your templates to each daemon. For example, if you have PS/templates/default and PS/templates/1.8, you need to have the exact same files across each daemon with exact same templates. **Each template MUST have Spigot.jar file inside it!**
{% endhint %}
Now, you can just make a start.sh script with the following code
```
screen -dmS Daemon java -Xmx200M -jar Daemon.jar
```
and just run it with `sh start.sh` in order to make your Daemon run 24/7 on a separate screen.
{% hint style="warning" %}
Great! You're done! Now, please note that PlayerServersDaemon is still under early-access development and may have bugs. Please report all of those to our Issue tracker [here](https://gitlab.com/OpenSource02/playerservers/-/issues). Additionally, please take a backup of your MySQL Database and your server data before proceeding. It is important to note that we did take every possible step to reduce the amount of possible issues that can happen, but we do highly encounter you to take those steps, just to be on the safe side.
{% endhint %}

View File

@ -1,14 +0,0 @@
---
description: >-
Learn how to setup and configure PlayerServers to work with Pterodactyl
control panel and give your users ability to manage their server through
Pterodactyls beautiful and easy-to-use interface.
---
# 🌐 Pterodactyl configuration
{% hint style="info" %}
The below page explains how to use this feature on PlayerServers 3. This is only relevant if you're a beta tester. This feature does not exist on the public release yet.
{% endhint %}
## This page is work in progress.

View File

@ -0,0 +1,34 @@
---
description: >-
Learn how to setup and configure PlayerServers to work with Pterodactyl
control panel and give your users ability to manage their server through
Pterodactyls beautiful and easy-to-use interface.
---
# 🌐 Pterodactyl configuration
{% hint style="info" %}
The below page explains how to use this feature on PlayerServers 3. This is only relevant if you're a beta tester.
{% endhint %}
## Introduction
> Pterodactyl® is a free, open-source game server management panel built with PHP, React, and Go. Designed with security in mind, Pterodactyl runs all game servers in isolated Docker containers while exposing a beautiful and intuitive UI to end users.
PlayerServers offers the possibility to sync with your panel and create Pterodactyl servers on the fly - offering your users all that PlayerServers offers + the ability to manage their server through Pterodactyl's amazing UI.
## How to setup
{% hint style="info" %}
In order to begin, you need to have Pterodactyl, Docker and PlayerServers properly installed on your system. To learn how to install Pterodactyl, click [here](https://pterodactyl.io/panel/1.0/getting\_started.html).
{% endhint %}
1. Shutdown your BungeeCord
2. Edit PlayerServers [config.yml](../config.md), enable pterodactyl mode
3. Insert your application token and client token
4. Insert your Minecraft nest-id, Paper egg-id and the location-id of the location your nodes are based in.
5. Just like that, you're done!
{% hint style="warning" %}
We highly recommend downloading our custom Wings and replacing Pterodactyl's Wings. This will prevent unwanted modifications to PSServerCore config and jar. Click the button below to learn more.
{% endhint %}

View File

@ -0,0 +1,25 @@
---
description: >-
Learn how to download our custom wings to prevent unwanted modifications on
your subservers.
---
# Download custom wings
In order to make sure your players can't remove ServerCore from their servers and thus removing the only thing that will stop their server from being online 24/7, this modification is highly recommended.
## Instructions
In order to replace Pterodactyl's wings, you'll first need to download our custom ones from our GitHub. You can also download the latest **dev build** which is almost always in sync with the latest Pterodactyl release [here](https://github.com/arcadiadevs/wings/actions).
{% embed url="https://github.com/arcadiadevs/wings/releases" %}
Download custom wings
{% endembed %}
After downloading it, navigate to `/usr/local/bin` and remove `wings` from there. Afterwards, upload our custom wings and make sure to name it `wings`. Afterwards, simply restart your wings, usually by running `service wings restart`.
{% hint style="success" %}
### Great, you're done!
Our custom wings will not negatively impact your existing non-PlayerServers servers. Any server created outside of PlayerServers environment will not be affected by PlayerServers or our modified wings.
{% endhint %}

View File

@ -0,0 +1,35 @@
---
description: Learn how to create Pterodactyl client and application API token.
---
# How to create tokens
## Introduction
Application and Client tokens are essential in the way PlayerServers communicates with your panel and thus need to be correctly set with appropriate privileges.
## How to create Application Token
In order to create an application token, please navigate to the Pterodactyl admin interface, and select "Application API"
<figure><img src="../../.gitbook/assets/Screenshot 2023-02-11 at 00.01.14.png" alt=""><figcaption><p>Application API interface</p></figcaption></figure>
Afterwards, click on the blue Create New button on the top right and make sure to fill the fields just like on the image below.
<figure><img src="../../.gitbook/assets/Screenshot 2023-02-11 at 00.03.44.png" alt=""><figcaption><p>Application API - required permissions</p></figcaption></figure>
As that's done, you'll receive your application token which you need to put in your `config.yml`.
## How to create Client Token
In order to create an application token, please navigate to the Pterodactyl admin interface and click on your profile icon on the top right.
<figure><img src="../../.gitbook/assets/Screenshot 2023-02-17 at 12.29.22.png" alt=""><figcaption><p>Click on profile icon</p></figcaption></figure>
After that, navigate to the API Credentials tab.
<figure><img src="../../.gitbook/assets/Screenshot 2023-02-17 at 12.31.20.png" alt=""><figcaption><p>API Credentials</p></figcaption></figure>
From here, create a new API key. Name it whatever you want and click create. Optionally, add the IP address of your BungeeCord instance to prevent unauthorised access to your API key.
From there, proceed by putting the newly generated API key to your `config.yml` file.