GitBook: [#58] New config.yml and updated permissions

This commit is contained in:
OpenSource 2021-12-12 01:16:36 +00:00 committed by gitbook-bot
parent 00f70ee1a3
commit 5a66456489
No known key found for this signature in database
GPG Key ID: 07D2180C7B12D0FF
41 changed files with 1112 additions and 0 deletions

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 298 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

View File

@ -1 +1,30 @@
---
description: >-
An advanced plugin which allows your players to create their sub-servers as
part of your BungeeCord / Waterfall / Travertine / HexaCord network and manage
them with easy-to-use, friendly GUI
---
# PlayerServers - General
## Description
PlayerServers is an advanced plugin that will allow your players to create their own BungeeCord sub-server with just one command. On that server, they'll be owners and they'll have the whole control under that server. They'll even be able to install plugins on it using an advanced GUI. [**In order to purchase it, please scroll to the bottom of this page.**](./#purchase-it-now)****
## Features
* **Async, lag-free:** Creation of servers happens 95% in async mode, which means that the creation of servers will be processed in a separate thread and 0 lag will be generated during that period.
* ~~**Templates:** You'll be able to create the default template which will be used when creating the servers. (coming in 1.0.0 - STABLE)~~
* **HubCore:** When purchasing this plugin, you'll get an additional HubCore plugin which will allow you to make a compass that will show online & offline player servers and give your players the ability to connect to them. Furthermore, it will give you some basic options for your lobby like disabling rain, hunger & damage. A special placeholder that will allow players to see current player-count on their sub server is also included.
* **Automatically terminate inactive servers**: if servers are inactive (or don't have any players) for a configurable amount of time, they will automatically shutdown.
* **Fast & Efficient:** The creation of the server happens in less than 2 seconds which will allow your players to be teleported to their sub server in less than 15 seconds (other time will be used for boot-up of spigot server, and generating the main world - also, the huge factor is your server CPU)
* **ControlGUI:** Server owners will have their GUI control panel, that they'll be able to access with command /menu. It will allow them to manage various parts of the server (whitelist, bans, weather & more) and give them an option to install, enable, or disable additional plugins (see screenshots below).
* **Permissions-based:** Configure per-group permissions on max plugins, max players or RAM
* **Automatic & works out of the box:** The plugin is working out of the box without any need for external dependencies. Thanks to the integration of the [Bungee Server Manager plugin](https://www.spigotmc.org/resources/bungeeservermanager.7388/) (which I'm allowed to integrate, as it could be seen [here](https://i.imgur.com/iMT8RAh.png)), we were able to achieve the effect of automatically adding newly created sub servers to the BungeeCord config & server list without the need of any reboot or greload. The same goes for the deletion of sub servers as well.
## Purchase it now
* SpigotMC - [https://www.spigotmc.org/resources/82268/](https://www.spigotmc.org/resources/%E3%80%8C-playerservers-%E3%80%8Dlet-your-players-have-their-own-server.82268/)
* MC-Market - [https://www.mc-market.org/resources/15521/](https://www.mc-market.org/resources/15521/)
* Songoda - [https://songoda.com/marketplace/product/418](https://songoda.com/marketplace/product/playerservers-let-your-players-have-their-own-server-an-advanced-plugin-which-allows-you.418)

40
SUMMARY.md Normal file
View File

@ -0,0 +1,40 @@
# Table of contents
* [PlayerServers - General](README.md)
* [Updates](updates/README.md)
* [v1.1 to v1.2](updates/v1.1-to-v1.2.md)
* [8.0 to v1.0](updates/8.0-to-v1.0.md)
* [5.0 to 6.0](updates/5.0-to-6.0.md)
* [3.7-D to 4.0](updates/update1.md)
## For Players
* [Basic instructions](for-players/basic-instructions.md)
* [Plugin management](for-players/plugin-management.md)
* [Editing config files](for-players/editing-config-files.md)
## For Owners
* [Plugin Installation Tutorial](for-owners/installation.md)
* [Current Config & Messages File](for-owners/config.md)
* [Permissions & Commands](for-owners/permissions-and-commands.md)
* [Limitations](for-owners/limitations/README.md)
* [Permission-based RAM](for-owners/limitations/permission-based-ram.md)
* [Max players limitation](for-owners/limitations/max-players-limitation.md)
* [Max plugins limitation](for-owners/limitations/max-plugins-limitation.md)
* [Adding pre-defined plugins](for-owners/adding-pre-defined-plugins.md)
* [Creating MySQL database](for-owners/creating-mysql-database.md)
* [Additional Tutorials (FAQ)](for-owners/additional-tutorials-faq.md)
* [Screen (accessing consoles)](for-owners/screen.md)
* [Screen (advanced)](https://linuxize.com/post/how-to-use-linux-screen/)
## experimental
* [Templates](experimental/templates.md)
* [Multi-Node Support](experimental/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)
* [Support Discord](https://invite.gg/arcadiaxyz)

View File

@ -0,0 +1,46 @@
---
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
## 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
{% hint style="info" %}
Before reading this, please read [update notes](https://www.spigotmc.org/resources/82268/update?update=359257) for version v1.0-dev2.
{% endhint %}
The installation process for PlayerServers Daemon, even in developer beta 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 (in /root directory, if possible). Download the following jar file and drop it into your Daemon folder:
{% file src="../.gitbook/assets/Daemon-v1.1 (1).zip" %}
Daemon v1.1 - Release
{% 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.toml inside your BungeeCord/plugins/PlayerServers/multinode.toml and your Daemon config.toml which will be generated in your Daemon root directory - please don't forget to include the same key inside both configs!
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!**
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 a large amount of 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 %}

27
experimental/templates.md Normal file
View File

@ -0,0 +1,27 @@
---
description: Learn how to setup templates with plugins, mods, worlds, pre-configurations
---
# Templates
## Instructions
1. Create folder in /templates/\<yourtemplate>
2. Put all the server files there INCLUDING Spigot.jar (do not include server.properties or spigot.yml)
3. If the folder includes plugins, please do not include PSServerCore.jar or it's configuration files
4. If your server includes plugins, please add all of them to plugins-to-be-installed-ingame folder
5. Add your template to config.yml as in the following example:
```yaml
templates:
default:
plugins:
- EssentialsX-2.18.1.0.jar;Essentials;Provides an essential, core set of commands for Bukkit.
```
As you can see, the template is the following: \
JarFileNameFromPluginsToBeInstalledIngameFolder;PluginNameFromPlugin.yml;Description
* JarFileNameFromPluginsToBeInstalledIngameFolder - the name of the jar file from the plugins to be installed ingame folder (example: EssentialsX-2.18.1.0.jar)
* PluginNameFromPlugin.yml - Find it by openning the plugin with WinRar, for example. Inside, you will see plugin.yml. Copy the plugin name from there
* Description - As described in the previous step, there is also a plugin description in plugin.yml. Copy it in the description part. NOTE THAT NOT ALL THE PLUGINS CONTAIN DESCRIPTION. In that case, you can create a custom one.

View File

@ -0,0 +1,17 @@
---
description: >-
In the tutorial below, you'll learn how to add pre-defined plugins to the
plugin-installer GUI.
---
# Adding pre-defined plugins
In order to add plugins to the plugin-installer GUI and make those plugins available to ALL of your players and their servers, you need to navigate to your BungeeCord plugins folder, than go to the PlayerServers folder, and from there, navigate to the `plugins-to-be-added-ingame` subfolder.
After that, put the .jar files of all the plugins you want your players to be able to install on their sub-servers.
{% hint style="warning" %}
WARNING: Please do not put in too much plugins. **You should not have more than 45 plugins available there.** The plugin may handle more, but it is not recommended.
The maximum of allowed plugins is: **75**, and after that number, the plugin will most likely break and not function properly. _Please kindly note that I **will not** support anyone that is adding more than 45 plugins to this directory._
{% endhint %}

View File

@ -0,0 +1,57 @@
---
description: Friendly asked Questions & Answers
---
# Additional Tutorials (FAQ)
## Below you can see some of the most asked questions & answers
{% hint style="info" %}
### Will I be able to run this plugin on GameHosting (such as Server.pro)?
**No**, you can only run this plugin on Dedicated / VPS hosting. We have our hosting too! Click this link in order to access our [Support Discord](https://discord.io/arcadiaservices), where you can contact owners & buy VPS machines starting from only **3.5€ / mo (1 core, 2GB of RAM)**.
{% endhint %}
{% hint style="info" %}
### How can I change the version sub-servers are creating with?
Navigate to `BungeeCord -> Plugins -> PlayerServers -> templates` and replace Spigot.jar with the new version of Spigot you want your users to run on their server.
**NOTE**: There'll be a VersionSelector available soon 😊.
{% endhint %}
{% hint style="info" %}
### How can I change the default RAM of SubServers?
That's pretty simple. Just navigate to the **config.yml** and edit `ram-per-server`
{% endhint %}
{% hint style="info" %}
### How can I change the limit of the currently-running subservers?
You can change the limit in the **config.yml** file, by changing `max-running-instances` option.
{% endhint %}
{% hint style="warning" %}
### ~~How to add default plugins which will be added automatically on server creation? - `Experimental, not recommended`~~` ``- REMOVED`
~~In order to do so, you'll need to add their _original name\*_ to the BungeeCord PlayerServers **config.yml** and add all of them to the following directories:~~
~~`BungeeCord -> Plugins -> PlayerServers -> templateplugins`~~
~~`BungeeCord -> Plugins -> PlayerServers -> plugins-to-be-added-ingame`~~
~~By "**original name**" I mean the name written in plugin.yml file of that specific plugin. For instance, the original plugin name for WorldEdit is just WorldEdit, for EssentialsX, it's just EssentialsX, but for some other plugins this might be different. Please be careful while using this option and kindly note that there will be no support for using it, as it's **EXPERIMENTAL** and it may be removed in any of the future updates.~~
{% endhint %}
{% hint style="info" %}
### Can I purchase the SourceCode of this plugin?
Yes, you can. Please contact me on Discord (`OpenSource#3310`).
{% endhint %}
{% hint style="info" %}
### Where could I get support?
For all the additiona help & support, please join our [Discord](https://discord.io/arcadiaservices)
{% endhint %}

210
for-owners/config.md Normal file
View File

@ -0,0 +1,210 @@
# Current Config & Messages File
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.
{% endhint %}
```yaml
# __________.__ _________
# \______ \ | _____ ___.__. ___________/ _____/ ______________ __ ___________ ______
# | ___/ | \__ \< | |/ __ \_ __ \_____ \_/ __ \_ __ \ \/ // __ \_ __ \/ ___/
# | | | |__/ __ \\___ \ ___/| | \/ \ ___/| | \/\ /\ ___/| | \/\___ \
# |____| |____(____ / ____|\___ >__| /_______ /\___ >__| \_/ \___ >__| /____ >
# \/\/ \/ \/ \/ \/ \/
#
# An advanced plugin which allows your players to create their own sub-servers, created by thearcadia.xyz
# Please enter your MySQL information below.
mysql:
hostname: 127.0.0.1
username: web
password: webmaster
database: playerservers
useSSL: true
additionaloptions: []
# - "allowPublicKeyRetrieval=true"
# 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
# Where should players be moved after they /stop or /ps kill their server?
balancer:
- Hub1
- Hub2
# Use player-name instead of server UUID? Basically, when turned on, server-names
# will be equal to player username instead of (for example) aa386b6h
use-usernames: true
server-name-format:
# Should we enable custom server name formatting?
enabled: false
# Which format should we use?
# %id% equals to player name or uuid depending on use-usernames option
format: "PS_%id%"
# What is the max amount of servers that can be running at once?
max-running-instances: 15
# If there are no online players, and the last join was before
# more than minutes-to-shutdown, the server will automatically shutdown
# to allow more space for active ones.
minutes-to-shutdown: 15
# After how many seconds after executing cp -r <templatefile> <yourserverfolder>
# 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)
# or, else, the command will be blocked, and player will not be able to create
# the server. If set to false, everyone will have ram-per-server amount of RAM.
use-permissions: false
# How much RAM (in MB) should we allocate to each PlayerServer?
ram-per-server: 512
player-limiting:
# Should we use permissions for max-players management? If set to true, your
# players should have playerserver.players.<amount>. The max amount of players
# that you could give to a single server is 100000. You can also give them
# playerserver.players.unlimited - for unlimited players. If the player
# has no permission, he'll be able to have unlimited players.
#
# NOTE: If you use permissions, and you change player's permissions,
# their server will need to reboot in order for changes to take place.
use-permissions: false
# What is the max players each server should have?
max-players-per-server: 20
plugin-limiting:
# Should we use permissions for max-plugins management? If set to true, your
# players should have playerserver.plugins.<amount>. The max amount of plugins
# that you could give to a single server is 20000. You can also give them
# playerserver.plugins.unlimited - for unlimited plugins. If the player
# has no permission, he'll be able to have unlimited players.
#
# NOTE: If you use permissions, and you change player's permissions,
# their server will need to reboot in order for changes to take place.
use-permissions: false
# What is the max players each server should have?
max-plugins-per-server: 20
# Should we enable smart /ps command? You can find more info about it here:
# https://gitlab.com/OpenSource02/playerservers/-/issues/21
smart-command: false
# Should we enable permissions for server creation, deletion & more?
# If set to false, all the players will have access to those basic commands.
# Obviously, admin commands require permission no matter what.
enable-permissions: true
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: []
# 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
# PlayerServers 2.0 experimental web-panel feature (concept only, for now).
# Enable it only for testing purposes. It can and will cause security vulnerabilities.
#
# Read instructions here https://www.spigotmc.org/resources/82268/update?update=394183
experimental-panel: false
```
## Current messages.toml
```
run-in-game = "&9Error> &7Oops! You can only run this command in-game."
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."
successfully-renamed = "&9PlayerServers> &7Successfully renamed server."
rename-failed = "&9PlayerServers> &7Oops, the server with that name already exists."
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."
[server-creation]
process-first = "&9PlayerServer> &7Starting the creation of your server..."
process-second = "&9Process> &7Successfully copied Spigot.jar & created eula.txt"
process-third = "&9Process> &7Successfully copied the PlayerServerCore to your server."
process-fourth = "&9Process> &7Successfully created server.properties & start.sh"
post-process-one = "&9PostProcess> &7Your server has been added to the BungeeCord. 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."
[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..."
```

View File

@ -0,0 +1,42 @@
# Creating MySQL database
In order to **create** required **MySQL database** on your server, you first need to have **mariadb-server** installed. If you don't have it, please run the command below:
{% hint style="info" %}
Please note that it is generally recommended to execute`apt-get update`before installing new packages on the machine, as else you might encounter some errors.
{% endhint %}
```
$ apt-get install mariadb-server -y
```
After successfully installing MariaDB server, you can now proceed with creating required databases. First of all, you need to login to the mysql terminal. Execute the command below in order to do so.
```
$ mysql -u root -p
```
After that, we need to create user. You can do that by executing the command below:
```sql
CREATE USER 'playerserversuser'@'127.0.0.1' IDENTIFIED BY 'somePassword';
```
After that, you need to create **new database** for PlayerServers:
```sql
CREATE DATABASE PlayerServers;
```
Next up, we need to give playerservers user permission to access the database. We can do that by executing the next two commands:
```sql
GRANT ALL PRIVILEGES ON PlayerServers.* TO 'playerserversuser'@'127.0.0.1';
FLUSH PRIVILEGES;
```
{% hint style="success" %}
### That's it!
If you've done everything correctly, you'll now have a new user called `playerserversuser` which will have password you defined in the second step under`somePassword`field and that user will be able to access the newely created database called `PlayerServers`.
{% endhint %}

101
for-owners/installation.md Normal file
View File

@ -0,0 +1,101 @@
---
description: >-
Here is a guide with details that you need to follow in order to complete the
installation.
---
# Plugin Installation Tutorial
## Before installation
In order to install PlayerServers, you will need to have a **VPS or Dedicated** server with **root** access. If you do not have it, please do not buy the plugin or try to install it on **Shared (Game) Hosting.**
{% hint style="info" %}
Also, thanks to FullOfCode#6328, we have a (unofficial) video tutorial, so maybe you should consider [watching it,](https://www.youtube.com/watch?v=VApcwAG4y5c) instead of reading the rest of this page.
{% endhint %}
## Picking the right OS
I understand that if you have your server already up and running, it might come hard for you to change your OS. That's why we tested our plugin on many of the popular OS-es. Even tho some of them are marked with ⚠️, it doesn't mean the plugin will not work there, it just means that the instructions from this guide will not help you while setting up the plugin on those Operating Systems, but if you configure everything correctly (like installing Java, Screen & Fuser) the plugin should work without any problems. If you have any problems with an OS-es marked with ✅ or ⚠️, please contact me so we can solve it.
Operating Systems marked with ⛔️ are currently not supported at all, but the support for them come in the future versions. Below is the list of all the popular operating systems:
| **Operating System** | Version | Supported | Notes |
| -------------------- | --------------------------------------------------------- | --------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Ubuntu** | <p>20.04</p><p>21.04</p> | ✅ | This OS-es are fully supported by PlayerServers |
| **Ubuntu** | <p>18.04</p><p>(Bionic)</p> | ✅ | <p>Documentation written assuming Ubuntu 18.04<br>as the base OS.</p> |
| **Ubuntu** | 16.04 | ⚠️ | Untested, but the plugin should work |
| **Debian** | <p>9</p><p>10</p><p>11</p> | ✅ | <p>Not <em>heavely</em> tested, the plugin worked but the<br>instructions from this guide might be invalid for that OS.</p><p>Some additional repos might be required.</p> |
| **Debian** | 8 | ⚠️ | Untested, additional repos are most likely required |
| **CentOS** | 7 & 8 | ⚠️ | **Not tested** and **not recommended** at all |
| **Windows** | <p>Server 2016</p><p>Server 2019</p><p>10</p><p>11</p> | ❌❓ | <p><strong>Not tested at all.</strong> It <strong>may</strong> work though, by installing</p><p>Ubuntu subsystem for Windows 10. You can find more</p><p>tutorials about that on Youtube.</p> |
| **MacOS** | <p>Mojave</p><p>Catalina</p><p>Big Sur</p><p>Monterey</p> | ✅ | <p>Should work without any problems as it comes with</p><p>screen &#x26; fuser pre-installed. Tested on M1 processors as well.</p> |
## Requirements
{% hint style="info" %}
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 plugin was compiled using Java 8, as it's the standard version of Java, and it's been tested on Java 11, but it should work on newer versions as well. If it does not, please report it). The recommended version of Java to be used with this plugin is Java 11. If you don't have it already installed, please execute the command below in your Linux Terminal.
{% hint style="warning" %}
If you're using 2.0+ versions of PlayerServers, you'll need to install Java 16, or preferrably Java 17 - as it'll become standard as of PlayerServers 3.0.
You can find an in-depth guide on that [here](https://linuxways.net/ubuntu/how-to-install-oracle-java-16-on-ubuntu-18-04-20-04/).
{% endhint %}
```bash
$ apt-get install default-jre -y
```
The second required dependency is Screen. We use screens for providing easy access to PlayerServers. In order to install it, you need to execute the command below. For further help with Screen, please go to the [Screen (accessing consoles)](screen.md) page.
```
$ apt-get install screen -y
```
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:
```
$ apt-get install fuser -y
```
## 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.
{% hint style="danger" %}
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're unsure on how to create database on Linux machine, this [Creating MySQL database](creating-mysql-database.md) page might help you.
After the configuration of MySQL database, boot up your BungeeCord server. The plugin should successfully launch this time.
{% hint style="success" %}
### That's it!
If you followed the guide correctly, you will have a working version of PlayerServers installed. If there are any additional errors, or you need help with something, please don't hesitate to send me PM od MC-Market, or on Discord - `OpenSource#3310`
{% endhint %}
## ~~Possible Issues~~
~~While installing PlayerServers for the first time, it is **required** for the plugin to download some **dependencies** from our servers. If servers are down, you might encounter some errors. If you see those errors, please contact the developer on our~~ [~~Support Discord~~](https://discord.io/arcadiaservices)~~.~~
\~\~Don't worry, **you can still install the plugin even if servers are down**. In the downloaded .zip file, you'll see sub-folder called **Use only if needed**. Copy the contents of that folder to:
`BungeeCord -> plugins -> PlayerServers -> Templates`
and you should be fine to complete the installation. If there are any other unexpected issues, don't hesitate to ask. We'll always respond in less than 24 hours.\~\~
{% hint style="warning" %}
~~**NOTE FOR SPIGOT / MINEMEN USERS:** Since spigot does not allow large file sizes, you'll need to download required files from links blow, as your download does not include **Use only if needed** folder.~~
* ~~\~\~\[~~PlayerServerCore.jar~~]\(~~[http://cdn.thearcadia.xyz/playerservers/PlayerServerCore.jar](http://cdn.thearcadia.xyz/playerservers/PlayerServerCore.jar)~~)~~\~\~
* ~~\~\~\[~~Launcher.jar~~]\(~~[http://cdn.thearcadia.xyz/playerservers/Launcher.jar](http://cdn.thearcadia.xyz/playerservers/Launcher.jar)~~)~~\~\~
* ~~\~\~\[~~Spigot.jar~~]\(~~[http://cdn.thearcadia.xyz/playerservers/Spigot.jar](http://cdn.thearcadia.xyz/playerservers/Spigot.jar)~~)~~\~\~
* ~~\~\~\[~~eula.txt~~]\(~~[http://cdn.thearcadia.xyz/playerservers/eula.txt](http://cdn.thearcadia.xyz/playerservers/eula.txt)~~) \~\~- copy contents of this page inside new file: eula.txt, and put it in your templates directory, as described above.~~
{% endhint %}
If you're using 8.0+, you will not ever encounter those issues, as the plugin is no longer cloud-depandent

View File

@ -0,0 +1,16 @@
# Limitations
On pages below, you'll learn how to set permission-based limitations for your players.
{% content-ref url="permission-based-ram.md" %}
[permission-based-ram.md](permission-based-ram.md)
{% endcontent-ref %}
{% content-ref url="max-players-limitation.md" %}
[max-players-limitation.md](max-players-limitation.md)
{% endcontent-ref %}
{% content-ref url="max-plugins-limitation.md" %}
[max-plugins-limitation.md](max-plugins-limitation.md)
{% endcontent-ref %}

View File

@ -0,0 +1,35 @@
# Max players limitation
## Introduction
We know that making a permission-based slots system is a crucial to our customers and could be greately used for online stores in order for them to earn money for Ranks & Perks, so we've implemented a permission-based slots system. In this tutorial, you'll learn how to configure it for your needs.
## Tutorial
In order to begin, you'll need to change a few config options. Make sure your player-limiting part of the config looks as following:
```yaml
player-limiting:
# Should we use permissions for max-players management? If set to true, your
# players should have playerserver.players.<amount>. The max amount of players
# that you could give to a single server is 100000. You can also give them
# playerserver.players.unlimited - for unlimited players. If the player
# has no permission, he'll be able to have unlimited players.
#
# NOTE: If you use permissions, and you change player's permissions,
# their server will need to reboot in order for changes to take place.
use-permissions: true
# What is the max players each server should have?
max-players-per-server: 20
```
By enabling use-permissions, the plugin will ignore max-players-per-server option and will use permission-based slots management system.
The next thing you'll wanna do is to give all the groups that have `playerserver.manage` permission a new permission as following: `playerserver.players.<amount>`. Here's an example in LuckPerms:
```yaml
/lp group default permission set playerserver.players.10
```
If your groups have parent permission, the plugin will give the player the largest possible amount of slots by their permission.

View File

@ -0,0 +1,35 @@
# Max plugins limitation
## Introduction
We know that making a permission-based plugins limitation system is a crucial to our customers and could be greately used for online stores in order for them to earn money for Ranks & Perks, so we've implemented a permission-based plugin limitation system. In this tutorial, you'll learn how to configure it for your needs.
## Tutorial
In order to begin, you'll need to change a few config options. Make sure your plugin-limiting part of the config looks as following:
```yaml
plugin-limiting:
# Should we use permissions for max-plugins management? If set to true, your
# players should have playerserver.plugins.<amount>. The max amount of plugins
# that you could give to a single server is 20000. You can also give them
# playerserver.plugins.unlimited - for unlimited plugins. If the player
# has no permission, he'll be able to have unlimited players.
#
# NOTE: If you use permissions, and you change player's permissions,
# their server will need to reboot in order for changes to take place.
use-permissions: true
# What is the max players each server should have?
max-plugins-per-server: 20
```
By enabling use-permissions, the plugin will ignore max-plugins-per-server option and will use permission-based plugin limiting system.
The next thing you'll wanna do is to give all the groups that have `playerserver.manage` permission a new permission as following: `playerserver.plugins.<amount>`. Here's an example in LuckPerms:
```yaml
/lp group default permission set playerserver.plugins.10
```
If your groups have parent permission, the plugin will give the player the largest possible amount of plugins by their permission.

View File

@ -0,0 +1,33 @@
---
description: Learn how to make a permission-based RAM system for your players
---
# Permission-based RAM
## Introduction
We know that making a permission-based RAM system is a crucial to our customers and could be greately used for online stores in order for them to earn money for Ranks & Perks, so we've implemented a permission-based RAM system. In this tutorial, you'll learn how to configure it for your needs.
## Tutorial
In order to begin, you'll need to change a few config options. Make sure your ram-limiting part of the config looks as following:
```yaml
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)
# or, else, the command will be blocked, and player will not be able to create
# the server. If set to false, everyone will have ram-per-server amount of RAM.
use-permissions: true
# How much RAM (in MB) should we allocate to each of the PlayerServers?
ram-per-server: 512
```
By enabling use-permissions, the plugin will ignore ram-per-server option and will use permission-based RAM management system.
The next thing you'll wanna do is to give all the groups that have `playerserver.manage` permission a new permission as following: `playerserver.ram.<amount in MB>`. Here's an example in LuckPerms:
```yaml
/lp group default permission set playerserver.ram.512
```

View File

@ -0,0 +1,35 @@
---
description: Below is the list of all the commands & plugin permissions
---
# Permissions & Commands
## Commands
| Command | Aliases | Plugin | Notes |
| ------------------------------------------------------------- | --------------------------------------------------------- | -------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| /playerserver | /ps | PlayerServers Bungee | Gives you the plugin description & licence info. |
| <p>/playerserver</p><p>create <strong>&#x3C;tmp></strong></p> | /ps create | PlayerServers Bungee | <p>Creates a new subserver if you don't already<br>have one. &#x3C;tmp> variable is optional and</p><p>used to specify template name. If no tmp is</p><p>specified, and if players just do /ps create,</p><p>it will simply just create the server with the</p><p>"default" template.</p> |
| <p>/playerserver</p><p>start</p> | <p>/ps boot</p><p>/ps enable</p> | PlayerServers Bungee | If your server is offline, it will try to boot it up. |
| <p>/playerserver</p><p>delete</p> | /ps remove | PlayerServers Bungee | <p>At first it asks you to confirm your decesion by</p><p>repeating the command, tha it removes your</p><p>sub-server and removes you from the database.</p> |
| <p>/playerserver</p><p>reboot</p> | /ps restart | PlayerServers Bungee | <p>Gives you some info on how to restart your</p><p>sub-server.</p> |
| <p>/playerserver</p><p>stop</p> | <p>/ps shutdown</p><p>/ps forcestop</p><p>/ps disable</p> | PlayerServers Bungee | <p>Forcefully kills your sub-server. Not</p><p>recommended at all and can cause some</p><p>world destruction. Chunks could be damaged.</p> |
| <p>/playerserver</p><p>join</p> | /ps connect | PlayerServers Bungee | <p>Connects you to your sub-server and gives</p><p>you your ServerID and a special command that</p><p>your friends can use to connect to your server.</p> |
| <p>/playerserver</p><p>admin delete</p> | none | PlayerServers Bungee | <p>Followed by serverID, forcefully kills and</p><p>removes the server with given serverID.</p> |
| <p>/playerserver</p><p>admin update</p> | none | PlayerServers Bungee | <p>Automatically download and update</p><p>PlayerServerCore accross all of your Player</p><p>servers. Note that this will require manual</p><p>restart of each subserver, in order to take effect</p> |
| /menu | none | PlayerServers Core | <p>Opens up Server Manager GUI for general</p><p>info and statistics, as well as for installing</p><p>predefined plugins</p> |
| /config | none | PlayerServers Core | <p>Opens up config file manager for editing</p><p>config files</p> |
## Permissions
I know, there are not much permissions, but that's just to keep things simple. Yes, I could make one permission for every single command, but I just don't see the real usage for such a thing like that.
| Permission | Plugin | Notes |
| ------------------------------------------------ | -------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **playerserver.manage** | PlayerServers Bungee | <p>This permission node allows the player to create,<br>manage, and delete their sub-server. It will only work if</p><p><code>enable-permissions</code> is set to true in the config file.</p> |
| **playerserver.admin** | PlayerServers Bungee | <p>This permission node allows the player to execute</p><p>admin commands, such as /playerserver admin delete.</p> |
| **playerserver.menu** | PlayerServers Hub | <p>This permission allows the player to execute <code>/pslist</code></p><p>or <code>/serverlist</code> command.</p> |
| <p>playerserver.players.</p><p>&#x3C;amount></p> | PlayerServers Bungee | <p>Limits the amount of players that player's server can</p><p>have. You can do playerserver.players.unlimited too.</p> |
| <p>playerserver.ram.</p><p>&#x3C;amount></p> | PlayerServers Bungee | <p>Amount of RAM in MB that player's server will be</p><p>started with. <strong>The max amount you can set is 20000</strong>.</p> |
| <p>playerserver.plugins.</p><p>&#x3C;amount></p> | PlayerServers Bungee | <p>Limits the amount of plugins that player can install.</p><p>You can do playerserver.plugins.unlimited too.</p> |
| playerservers.templates.\<name> | PlayerServers Bungee | If template.requires-permission is set to true, than the player must have this permission in order to create a server using this template. |

31
for-owners/screen.md Normal file
View File

@ -0,0 +1,31 @@
---
description: >-
In the tutorial below, you'll learn how to access the console of the
sub-servers
---
# Screen (accessing consoles)
In order to make our plugin function, we use Screen. In order to access the console of sub-servers, you just need to simply execute the command below:
```
$ screen -r <the first part of the ServerID, example: screen -r 8451ld>
```
{% hint style="info" %}
If the command above does not work for you, you need to execute this one first:
`screen -d <the first part of the ServerID>`
And after that, repeat the command above.
{% endhint %}
In order to see all the active screens, you can execute the command below:
```
$ screen -ls
```
{% hint style="success" %}
That's it. If you want to learn more about Screen, you can always click on the [Screen (Advanced)](https://linuxize.com/post/how-to-use-linux-screen/) section in the Sidebar menu.
{% endhint %}

View File

@ -0,0 +1,85 @@
---
description: >-
Below you can find some of the basic instructions on how to create your
sub-server, how to shut it down, how to boot it back up, and how to access it.
---
# Basic instructions
Please note that if you need help with those commands, you should ask them on your server's website, their forums, support page, on their email / twitter or their Discord. Please do **not join** our Discord for help with the commands. It's intended to give support for server owners, not their players.
{% tabs %}
{% tab title="Creating the server" %}
## Creating the server
In order to create your player-server, you just need to run the command below:
```
/playerserver create
```
After that, you'll get a message that your server is being created. If everything went fine, you'll be sent to your sub-server and you'll get a special code that other users will be able to use in order to teleport to your server. If not, you'll get an **error** message. In that case, please contact the server administrator.
{% hint style="warning" %}
**WARNING**: You can create only one subserver. The command above will NOT work if you already own one.
{% endhint %}
{% endtab %}
{% tab title="Deletion of your server" %}
In order to delete your server, you need to shut it down first. In order to do so, you first need to join your server. If you're unsure on how to do so, please type the command below:
```
/playerserver join
```
After that, you need to type the command below:
```
/stop
```
After stopping your server, you need to run the final command which will delete your server
```
/playerserver delete
```
If everything went successfully, your server should be deleted now. If something failed, you'll get an error code. In that case, please contact the server administrator
{% endtab %}
{% tab title="Stopping & Booting up your server" %}
## Shutting down your server
In order to stop your server, you just need to execute the command below, while you're connected to your server:
```
/stop
```
## Booting up your server
If your server is down, you just need to execute command below in order to boot it up:
```
/playerserver start
```
{% endtab %}
{% tab title="How to join your server" %}
## How to join your server
If you're on the main lobby, you just need to execute the command below in order to be teleported to your server:
```
/playerserver join
```
After being teleported, you'll get a command that your friends will be able to use to teleport to your server.
{% hint style="danger" %}
## I was not teleported! What now?!
If you were not teleported, it is most likely that your server is down. In order to boot it up, please click on the Stopping & Booting up your server section in order to get instructions on how to boot up your server.
{% endhint %}
{% endtab %}
{% endtabs %}

View File

@ -0,0 +1,46 @@
---
description: >-
This tutorial might be a little bit confusing for non-experienced users, but
we tried to explain it step-by-step as good as we possibly could. If you need
additional help, please contact server staff.
---
# Editing config files
## Editing config files - full tutorial
{% hint style="info" %}
In order to edit the config files, you first need to be connected to your subserver. If you're not sure on how to do that, [Basic Instructions](basic-instructions.md) page will help you.
{% endhint %}
After connecting to your server, execute the following command:
```
/config
```
That command will open up the GUI with all the files on your server. From there, you'll be able to navigate to the folder of the plugin you want to edit. There are some screenshots below:
![The main GUI that will show all the contents of /plugins directory](<../.gitbook/assets/screen-shot-2020-05-13-at-6.15.01-pm (2) (1).png>)
![By clicking on the WorldEdit folder, we've entered the sub-folder content.](<../.gitbook/assets/screen-shot-2020-05-13-at-6.15.08-pm (2) (1).png>)
By clicking on the config.yml file, you'll be generated the link in the chat. That link will navigate you to the HasteBin (or in some cases paste.md-5.net) website. By opening it up, you'll see the contents of your config file. The worldedit example will look like the following:
![By clicking on config.yml, we've gotten the hastebin link. We'll open it up in the next screenshot.](<../.gitbook/assets/Screen Shot 2020-05-13 at 6.19.21 PM.png>)
![And here is our config](<../.gitbook/assets/Screen Shot 2020-05-13 at 6.20.35 PM.png>)
Now, in order to edit your config, please click on duplicate and edit button on the top right side of the screen, as it could be seen on the image below:
![By clicking on duplicate & edit button, our config will become editable](<../.gitbook/assets/Screen Shot 2020-05-13 at 6.22.48 PM.png>)
By clicking that option, you'll be granted the access to modify your config. After modifying it, be sure to click the save button:
![](<../.gitbook/assets/Screen Shot 2020-05-13 at 6.24.05 PM.png>)
By clicking the save button, the config will no longer be editable once again. Now, the only thing you need to do is open up the `/config` menu once again, navigate to your config file, and this time, you need to **right click it.** After that, Anvil GUI will pop up and you need to paste the link of your new edited version of the file, **but without https://.** For example, if you've gotten the link https://hastebin.com/mynewconfig.yml, you need to paste in just hastebin.com/mynewconfig.yml, **without **~~**https://.**~~
{% hint style="success" %}
And that's it. Your file is now modified. In order to apply the changes, please consider **restarting your server.** More detailed guide on how to stop & boot up your server can be found on the [Basic Instructions](basic-instructions.md) page. If you need any additional informations, contact the staff team.
{% endhint %}

View File

@ -0,0 +1,29 @@
---
description: >-
Below you can see the tutorial on how to install & remove plugins on / from
your sub-server.
---
# Plugin management
## Installing plugins on your sub-server
{% hint style="info" %}
In order to install plugins, you'll need to be on your server. If you're not sure on how to connect to it, the [Basic Instructions](basic-instructions.md) page might help you.
{% endhint %}
After successfully connecting to your subserver, you need to execute the command below:
```
/menu
```
A Inventory GUI should appear. If it does not, please contact the server administrator for help. The GUI should look like this:
![Server Management GUI](../.gitbook/assets/Screen%20Shot%202020-05-13%20at%205.36.21%20PM.png)
After entering the GUI, select the clock icon with text Plugin Management. By clicking this button, you'll see all available plugins that owners pre-configured for you to be able to install. All the plugins marked with red-stone blocks are disabled and ready for you to install them. All the plugins that are marked with emerald blocks are currently installed and can be removed with a simple click.
{% hint style="danger" %}
**WARNING**: Please make sure to reboot your server after installing new plugins by typing in the command `/stop.`After that, you can boot your server back up by executing command `/playerserver start`. For more informations, visit the [Basic Instructions](basic-instructions.md) page.
{% endhint %}

54
updates/5.0-to-6.0.md Normal file
View File

@ -0,0 +1,54 @@
# 5.0 to 6.0
## Introduction
6.0 was probably the biggest update yet, which requires some changes. You can read all of those on our MC-Market [post here](https://www.mc-market.org/resources/15521/update?update=48897), in case you're updating between preview versions. In case you waited for the stable version, here are some info:
## Update process
1. Execute **/ps admin update** in order to update PlayerServerCore
2. Add following three blocks to your config.yml file
```yaml
player-limiting:
# Should we use permissions for max-players management? If set to true, your
# players should have playerserver.players.<amount>. The max amount of players
# that you could give to a single server is 100000. You can also give them
# playerserver.players.unlimited - for unlimited players. If the player
# has no permission, he'll be able to have unlimited players.
use-permissions: false
# What is the max players each server should have?
max-players-per-server: 20
```
```yaml
build-tools:
# Should we log build-tools console output? Highly recommended to set
# to true, as it will help me a lot with potential issues.
build-tools-debug: true
# What version should we build for PlayerServers?
# Do "latest" for latest, do "1.8.8" for 1.8.8, etc.
# If you want to change the sub-servers version,
# you will have to delete templates/Spigot.jar first,
# and than reboot the server. Btw, it is highly
# recommended to use 1.8.8 for sub-servers.
build-version: "1.8.8"
```
```yaml
plugin-limiting:
# Should we use permissions for max-plugins management? If set to true, your
# players should have playerserver.plugins.<amount>. The max amount of plugins
# that you could give to a single server is 20000. You can also give them
# playerserver.plugins.unlimited - for unlimited plugins. If the player
# has no permission, he'll be able to have unlimited players.
#
# NOTE: If you use permissions, and you change player's permissions,
# their server will need to reboot in order for changes to take place.
use-permissions: false
# What is the max players each server should have?
max-plugins-per-server: 20
```

71
updates/8.0-to-v1.0.md Normal file
View File

@ -0,0 +1,71 @@
# 8.0 to v1.0
Execute the following linux commands:
```bash
mysql -u root -p
USE dbName; # Replace dbName with your playerservers database name
ALTER TABLE PLAYERSERVERS NODE ADD COLUMN varchar(20);
```
Execute the following command:
```
/ps admin sqlhotfix
```
Add the following blocks to the bottom of your config.yml:
```yaml
# BETA FEATURES. USE AT OWN RISK!!
multi-node: false
experimental-rename: false
pterodactyl-compatibility: false
```
Make sure your messages.toml contains all the messages:
```yaml
run-in-game = "&9Error> &7Oops! You can only run this command in-game."
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."
successfully-renamed = "&9PlayerServers> &7Successfully renamed server."
rename-failed = "&9PlayerServers> &7Oops, the server with that name already exists."
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."
[server-creation]
process-first = "&9PlayerServer> &7Starting the creation of your server..."
process-second = "&9Process> &7Successfully copied Spigot.jar & created eula.txt"
process-third = "&9Process> &7Successfully copied the PlayerServerCore to your server."
process-fourth = "&9Process> &7Successfully created server.properties & start.sh"
post-process-one = "&9PostProcess> &7Your server has been added to the BungeeCord. 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."
[server-stop]
successfully-killed = "&9Success> &7Your server has been successfully killed."
[server-start]
prepairing = "&9PlayerServers> &7Preparing to launch your server."
successfully-started = ""
[server-connect]
connected = "&9PlayerServer> &7You've been successfully sent to your server. Your friends can use &a/server %uuid%&7 to connect."
```
{% hint style="success" %}
## Great, you're done!
If you had any problems upgrading, please contact us on our Discord [here](https://invite.gg/arcadiaxyz).
{% endhint %}

18
updates/README.md Normal file
View File

@ -0,0 +1,18 @@
---
description: Here you can read update instructions between major versions
---
# Updates
{% content-ref url="8.0-to-v1.0.md" %}
[8.0-to-v1.0.md](8.0-to-v1.0.md)
{% endcontent-ref %}
{% content-ref url="update1.md" %}
[update1.md](update1.md)
{% endcontent-ref %}
{% content-ref url="5.0-to-6.0.md" %}
[5.0-to-6.0.md](5.0-to-6.0.md)
{% endcontent-ref %}

42
updates/update1.md Normal file
View File

@ -0,0 +1,42 @@
# 3.7-D to 4.0
## Introduction
4.0 is quite a huge update, as the introduction of Permission-based RAM management requires update for other dependencies & config, and therefore requires you to do some additional steps in order to upgrade.
## Upgrade process
This update required me to change some of the functionalities of LauncherWrapper. That being said, it was required to implement a command to automatically download the latest Launcher.jar and replace it in all of your sub-servers. Begin this update process by executing:
```
/ps admin updatelauncher
```
Wait for the process to finish. After that, it is required to change a few things in your config.yml. Begin by removing the following line: `ram-per-server: 512`, and replace it with the following block:
```yaml
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)
# or, else, the command will be blocked, and player will not be able to create
# the server. If set to false, everyone will have ram-per-server amount of RAM.
use-permissions: false
# How much RAM (in MB) should we allocate to each of the PlayerServers?
ram-per-server: 512
```
In case you'd like to see the default config after this update, please click the link below:
{% content-ref url="../for-owners/config.md" %}
[config.md](../for-owners/config.md)
{% endcontent-ref %}
In case you'd like to learn more about permission-based RAM system, follow this link:
{% content-ref url="../for-owners/limitations/permission-based-ram.md" %}
[permission-based-ram.md](../for-owners/limitations/permission-based-ram.md)
{% endcontent-ref %}

13
updates/v1.1-to-v1.2.md Normal file
View File

@ -0,0 +1,13 @@
# v1.1 to v1.2
## Updating PlayerServers
For the initial update, please reset your messages.toml, or take a look at the [new version](https://gitlab.com/OpenSource02/playerservers/-/blob/master/messages.toml) of the mentioned file and add the missing messages.
{% hint style="success" %}
Great, you're done! If you use multi-node as well, continue reading below to learn how to update it as well.
{% endhint %}
## Updating Daemon
With the new Daemon, a new Templates system from v1.2 comes as well. In the template named "Default" (located in Daemon/templates/default - which SHOULD be automatically generated after you run Daemon v1.1 for the first time), please insert at least Spigot.jar. Should you wish to edit the template further, please add any plugins/worlds to it as well.