Updated Commands and Permissions (markdown)

ME1312 2020-02-29 21:19:01 -05:00
parent 4af6a73eb1
commit 9b61514d8c

@ -1,5 +1,9 @@
This page defines all the commands provided by SubServers apps across your network and their permissions where they apply.<br><br>
### BungeeCord Commands
SubServers does provide for some of the more well-known BungeeCord commands as well as its own for a more seamless experience. For more information about these commands and their permissions, please visit the [BungeeCord Wiki](https://www.spigotmc.org/wiki/bungeecord-commands/).<br><br>
# SubServers Commands
**Permission:** `subservers.command`<br>
@ -7,12 +11,167 @@ This is the main group of commands provided by SubServers that are intended for
For in-game users, these commands are all handled by SubServers.Client. So when applying these permissions, apply them on the servers, not the proxies. The above permission is required to access any commands in this group as a whole.<br><br>
> // We're still writing this part of the docs<br>
> // Sorry about that!
## /sub
**Aliases:** `sub`, `subserver`, `subservers`<br>
**Permission:** `subservers.interface`<br><br>
When entered with no additional arguments, this command will attempt to open a visuals-based way of interacting with the server manager. If you don't have permission to do so, or if a GUI is not available, it will instead send you the same thing `/sub help` does.<br><br>
## /sub help
<br>
## Selecting Multiple Servers
Sends you a concise, helpful list of many of the commands you see here.<br><br>
## /sub version
**Aliases:** `ver`, `version`<br><br>
Sends you versioning info about a SubServers App and the platforms it runs on. Useful for troubleshooting your SubServers network.<br>
This info will differ depending on where you send the command. Sending the command in-game and entering it in BungeeCord's console, for example, will produce different results.<br><br>
## /sub list
<br>
Sends you information about all known objects within SubServers in a detailed, yet concise, list format. This includes objects like: Proxies, Hosts, Groups, Servers and Subservers; the relationships between them; and their statuses.<br><br>
## /sub info
**Aliases:** `info`, `status`<br>
**Usage:** `/sub info [proxy|host|group|server] <Name>`<br>
**Examples:**<br>
&nbsp; &nbsp; `/sub info Server1`<br>
&nbsp; &nbsp; `/sub info server Server1`<br><br>
Sends you all relevant information about a specific object within SubServers. This command can be really useful in troubleshooting. If you need a more in-depth look at an object than `/sub list` can give you, this is how you get it.<br>
If, for whatever reason, you have objects that share the same name, you can specify the type of object you are looking for as well. Specifying a type also makes the command faster since it doesn't have to search all object types.<br><br>
## /sub start
**Permission:** `subservers.subserver.<SubServers>.start`<br>
**Usage:** `/sub start <Subservers>`<br>
**Examples:**<br>
&nbsp; &nbsp; `/sub start Server1`<br><br>
Starts one or more subservers on the network.<br><br>
## /sub restart
**Permission:** `subservers.subserver.<SubServers>.stop` and `subservers.subserver.<SubServers>.start`<br>
**Usage:** `/sub restart <Subservers>`<br>
**Examples:**<br>
&nbsp; &nbsp; `/sub restart Server1`<br><br>
Starts or restarts one or more subservers on the network.<br><br>
## /sub stop
**Permission:** `subservers.subserver.<SubServers>.stop`<br>
**Usage:** `/sub stop <Subservers>`<br>
**Examples:**<br>
&nbsp; &nbsp; `/sub stop Server1`<br><br>
Stops one or more subservers on the network.<br><br>
## /sub terminate
**Aliases:** `kill`, `terminate`<br>
**Permission:** `subservers.subserver.<SubServers>.terminate`<br>
**Usage:** `/sub terminate <Subservers>`<br>
**Examples:**<br>
&nbsp; &nbsp; `/sub terminate Server1`<br><br>
Forcefully stops one or more subservers on the network.<br>
Stopping subservers in this way can make you lose unsaved data though, so it is generally not recommended to use this command unless a server stops responding.<br><br>
## /sub command
**Aliases:** `cmd`, `command`<br>
**Permission:** `subservers.subserver.<SubServers>.command`<br>
**Usage:** `/sub command <Subservers> <Command> [Args...]`<br>
**Examples:**<br>
&nbsp; &nbsp; `/sub command Server1 version`<br>
&nbsp; &nbsp; `/sub command Server1 op Notch`<br>
&nbsp; &nbsp; `/sub command Server1 say Hello World!`<br><br>
Sends a command to the console of one or more subservers on the network.<br><br>
## /sub sudo
**Aliases:** `sudo`, `screen`<br>
**Exclusive To:** `SubServers.Bungee`<br>
**Usage:** `/sub sudo <Subserver>`<br>
**Examples:**<br>
&nbsp; &nbsp; `/sub sudo Server1`<br><br>
Takes control over a subserver on the network in a more direct fashion. All commands sent after this one will be forwarded to the console of the subserver as-is, allowing you to send multiple commands more easily. Additionally, any further log messages from other subservers will be muted while in sudo.<br>
To return to the BungeeCord console from sudo, type `exit`.<br><br>
## /sub teleport
**Aliases:** `tp`, `teleport`<br>
**Exclusive To:** `SubServers.Client`<br>
**Permission:** `subservers.server.<Servers>.teleport`, `subservers.server.<Servers>.teleport-others`<br>
**Usage:** `/sub teleport [Player] <Server>`<br>
**Examples:**<br>
&nbsp; &nbsp; `/sub teleport Server1`<br>
&nbsp; &nbsp; `/sub teleport Notch Server1`<br>
&nbsp; &nbsp; `/sub teleport @p Server1`<br><br>
Server-side teleportation command; teleports a player on this server to another server on the network.<br>
This is different from proxy-side teleportation commands, like `/server` and `/send`, because the execution is handled on the side of the server. Additionally, the command is limited to only selecting players that are on same the server it is being ran on. Because of these limitations, it is hidden from the help menu.<br>
### Usage in Command Blocks
Aside from usage in other server-side plugins, Command Blocks are pretty much the de facto reason for this command's existence. Among other creative uses, you could do things like creating portals by using this command.<br>
Spigot servers do not handle command block selectors correctly at this time. To use this command effectively in a command block, you should install [CommandHook](https://www.spigotmc.org/resources/commandhook.61415/) on your servers.<br><br>
## /sub create
**Permission:** `subservers.host.<Hosts>.create`<br>
**Usage:** `/sub create <Name> <Host> <Template> [Version] [Port]`<br>
**Examples:**<br>
&nbsp; &nbsp; `/sub create Server2 Host1 MyTemplate`<br>
&nbsp; &nbsp; `/sub create Server2 Host1 Vanilla 1.12.2`<br>
&nbsp; &nbsp; `/sub create Server2 Host1 Vanilla 1.12.2 25567`<br><br>
Creates a subserver using the specified template on the specified host. For more information about this process, see the [SubCreator](https://github.com/ME1312/SubServers-2/wiki/SubCreator) page.<br>
The version argument is template-dependent in this command, meaning that it is only required if your template requires it. Similarly, it will only be used if your template uses it.<br><br>
## /sub update
**Aliases:** `update`, `upgrade`<br>
**Permission:** `subservers.subserver.<SubServers>.update`<br>
**Usage:** `/sub update <SubServers> [Version]`<br>
**Examples:**<br>
&nbsp; &nbsp; `/sub update Server2`<br>
&nbsp; &nbsp; `/sub update Server2 1.14.2`<br><br>
Updates one or more subservers on the network. For more information about this process, see the [SubCreator](https://github.com/ME1312/SubServers-2/wiki/SubCreator) page.<br>
Like in `/sub create`, the version argument is template-dependent in this command, meaning that it is only required if your template requires it. Similarly, it will only be used if your template uses it. Additionally, your template might not support updating at all. If this is the case, the command will fail.<br>
When selecting multiple servers, keep in mind that some templates use this command to rebuild their cache like the default templates `Spigot` and `Vanilla`. In such cases, you would want to update a single server first to rebuild the cache and then update the rest in bulk.<br><br>
## /sub delete
**Aliases:** `del`, `delete`, `remove`<br>
**Usage:** `/sub delete <Subservers>`<br>
**Examples:**<br>
&nbsp; &nbsp; `/sub delete Server2`<br><br>
Removes one or more subservers from the network and moves its files to the `Recently Deleted` folder.<br>
It should be noted that this is functionally the same internally as the API methods starting with `.recycle`, which is different from the API methods starting with `.delete` that actually permanently delete the files on disk. Even so, due to the destructive nature of this command, it is not available in-game.<br><br>
# Selecting Multiple Servers
Some commands on this page allow you to perform the same action on multiple servers without having to retype the command every time. In a similar fashion, some permissions can use these same methods to grant a permission on multiple servers.<br><br>
**Selecting a single Server:**<br>
@ -43,7 +202,7 @@ Speaking of wildcard symbols, this one is used to select the server you are curr
```
<br>
### Selecting Multiple Servers using Groups
## Selecting Multiple Servers using Groups
You can also use groups to select servers. To begin selecting using groups, type a `:` before whatever you are trying to select. Many of the methods and limitations beyond that point are the same as they were in the last section.
**Selecting all Servers that belong to a single Group:**<br>
@ -70,7 +229,7 @@ You can also use groups to select servers. To begin selecting using groups, type
```
<br>
### Selecting Multiple SubServers using Hosts
## Selecting Multiple SubServers using Hosts
Lastly, you can select subservers using their hosts. To begin selecting using hosts, type a `::` before whatever you are trying to select. Many of the methods and limitations beyond that point are the same as they were in the last two sections.
**Selecting all Subservers that belong to a single Host:**<br>