Feature: Document cloud changes (#8)

* Prepare for cloud change: `/geyser connectiontest` takes ip and port as separate fields

* Document other cloud changes: permissions.yml, LuckLink, other various Geyser command permissions

* Also update extension docs/api version in api docs

---------

Signed-off-by: Joshua Castle <26531652+Kas-tle@users.noreply.github.com>
Co-authored-by: Joshua Castle <26531652+Kas-tle@users.noreply.github.com>
This commit is contained in:
chrisandJoshua Castle authored and GitHub committed 2024-08-01 03:04:11 +02:00
1 parent 50e0e601ce
commit 47c6afd1d0
12 files changed
+51 -21

No files matched your search

+33 -2
View File
@@ -17,7 +17,8 @@ on the proxy server to assign permissions to players. Assigning permissions on t
## Geyser commands & their permissions {#geyser-commands--their-permissions}
| Command | Permission | Description |
|:--------------------------------------:|:------------------------------:|:-------------------------------------------------------------------:|
|:-------------------------------------:|:-----------------------------:|:----------------------------------------------------------------------------------------------------:|
| `geyser` <br/> Geyser root command | `geyser.command` | The permission required to see/run any Geyser commands. |
| `geyser help` <br/> `geyser ?` | `geyser.command.help` | Shows help for all registered commands. |
| `geyser advancements` | `geyser.command.advancements` | Open the Java advancements menu. |
| `geyser dump` | `geyser.command.dump` | Dumps Geyser debug information for bug reports. |
@@ -29,14 +30,44 @@ on the proxy server to assign permissions to players. Assigning permissions on t
| `geyser statistics` | `geyser.command.statistics` | Open the Java statistics menu. |
| `geyser version` | `geyser.command.version` | Shows the current Geyser version and checks for updates. |
| `geyser tooltips` | `geyser.command.tooltips` | Toggle showing Advanced Tooltips (F3 + H on Java) |
| `geyser extensions` | `geyser.command.extensions` | Lists all currently loaded extensions. This command is only registered if any extensions are loaded. |
## Permissions for Geyser extensions {#extension-permissions}
For the following, `<id>` refers to the extensions' id.
| Command | Permission | Description |
|:---------------------------|:------------------------------|:----------------------------------------------------------|
| `<id> help` <br/> `<id> ?` | `geyser.command.exthelp.<id>` | Shows help for all commands registered by this extension. |
## Other Permissions {#other-permissions}
Besides commands, there are other permissions that are used to guard specific Geyser features.
| Permission | Description |
|--------------------------|------------------------------------------------------------------------------------------------------------|
|-----------------------------|-------------------------------------------------------------------------------------------------------------------------------------|
| `geyser.settings.server` | Allow players to use the [game settings menu](/img/wiki/game_menu.png). (Also requires player to have op.) |
| `geyser.settings.gamerules` | Defines whether a user can alter gamerules in the [game settings menu](/img/wiki/game_menu.png). (Also requires player to have op.) |
| `geyser.update` | Whether this player will receive Geyser update notifications upon joining. |
## Permissions when using Geyser-Standalone/Geyser-ViaProxy {#standalone-viaproxy-permissions}
Geyser-ViaProxy and Geyser-Standalone feature their own basic permission handler. To edit base permissions,
open the `permissions.yml` file and add or remove permissions that Geyser players should receive when joining.
See the file for more information.
You can further customize permission handling by creating a [Geyser extension](/wiki/geyser/extensions/) that makes use of Geysers API
to deal with permission checking.
## Permissions when using Geyser on platforms without permission handlers {#permissions-platforms-no-permission-handlers}
The following affects Geyser-BungeeCord, Geyser-Velocity, and Geyser-Fabric.
These platforms unfortunately do not have built-in permission handlers. Because of that, you will need to grant permissions on those platforms
manually using permission handlers, such as [LuckPerms](https://luckperms.net/). Geyser's permission are listed above. For extension permissions, consult their documentation.
Alternatively, you can use [LuckLink](https://github.com/onebeastchris/LuckLink), a third-party Geyser extension, to automatically register permissions using [LuckPerms](https://luckperms.net/).
- Install [LuckPerms](https://luckperms.net/) on the platform where you've installed Geyser (BungeeCord/Velocity/Fabric).
- To allow Geyser to automatically register permission defaults, install the [LuckLink](https://github.com/onebeastchris/LuckLink) Geyser extension
by downloading the `LuckLink.jar` and adding it to Geyser's `extensions` folder.
- Restart the server, and permissions should be automatically registered.
## Floodgate commands and permissions {#floodgate-commands-and-permissions}
+2 -2
View File
@@ -47,7 +47,7 @@ Geyser recognizes extensions when they have a file called `extension.yml` in the
id: exampleid
name: ExampleExtension
main: org.geyser.extension.exampleid.ExampleExtension
api: 1.0.0
api: 2.4.1
version: 1.0.0
authors: [ExampleAuthor]
```
@@ -56,7 +56,7 @@ Explanations for the individual fields:
- id: The id of the extension. Every extension needs to have their unique id - all lowercase letters. If you e.g. register a command for your extension, it will have the id as a prefix: e.g. `/exampleid command`.
- name: The name of the extension.
- main: The main class of your extension.
- api: The Base API version your extension targets.
- api: The Geyser API version your extension targets.
- authors: The author(s) of the extension. To add more than one entry, separate entries with a comma.
## Creating the main class {#creating-the-main-class}
@@ -8,15 +8,15 @@ This is by far the most common error people get when attempting to set up Geyser
Usually, this error is caused by improper configuration of Geyser, or issues with your network.
:::warning
If you are using a Minecraft server hosting provider (e.g. Aternos, or Apex Hosting), you should refer to the hosting provider setup instructions on
the <a href="/wiki/geyser/setup/">setup</a> page. Following these will most likely resolve the issue!
If you are using a Minecraft server hosting provider (e.g. Aternos, or Apex Hosting), you should refer to the hosting provider setup instructions on
the [setup](/wiki/geyser/setup) page. Following these will most likely resolve the issue!
:::
If you are not using a Minecraft server hosting provider, carry on.
:::info
To check if your server is (theoretically) reachable on Bedrock edition, try running the following command in your server console:
<code>geyser connectiontest &lt;ip&gt;:&lt;port&gt;</code>, and see what it suggests to try.
To check if your server is (theoretically) reachable on Bedrock edition, try running the following command in your server console:
`geyser connectiontest <ip> <port>`, and see what it suggests to try.
:::
### Java Edition players can't connect! {#java-edition-players-cant-connect}
+4 -4
View File
@@ -32,7 +32,7 @@ Add Geyser's API codebase as a dependency:
<dependency>
<groupId>org.geysermc.geyser</groupId>
<artifactId>api</artifactId>
<version>2.2.0-SNAPSHOT</version>
<version>2.4.1-SNAPSHOT</version>
<scope>provided</scope>
</dependency>
```
@@ -40,7 +40,7 @@ Add Geyser's API codebase as a dependency:
**Gradle**
```groovy
dependencies {
compileOnly('org.geysermc.geyser:api:2.2.0-SNAPSHOT')
compileOnly('org.geysermc.geyser:api:2.4.1-SNAPSHOT')
}
```
@@ -66,7 +66,7 @@ Add Floodgate's API as a dependency:
<dependency>
<groupId>org.geysermc.floodgate</groupId>
<artifactId>api</artifactId>
<version>2.2.2-SNAPSHOT</version>
<version>2.2.3-SNAPSHOT</version>
<scope>provided</scope>
</dependency>
```
@@ -74,7 +74,7 @@ Add Floodgate's API as a dependency:
**Gradle**
```groovy
dependencies {
compileOnly('org.geysermc.floodgate:api:2.2.2-SNAPSHOT')
compileOnly('org.geysermc.floodgate:api:2.2.3-SNAPSHOT')
}
```
@@ -38,7 +38,7 @@ Geyser only works with **server-side** mods. Mods that require a client-side ins
If `clone-remote-port` is enabled, the bedrock port will be overwritten with the Java port!
**Important**: Other services/mods that rely on ports with UDP, such as Voice Chats or Query, cannot share the port with Geyser.
5. Verify whether connections are possible by running `geyser connectiontest <ip>:<port>` in the console.
5. Verify whether connections are possible by running `geyser connectiontest <ip> <port>` in the console.
:::info
For Geyser-Fabric: To allow Bedrock Edition players to join your server without needing to log in to a paid Java Edition account, you can use <a href="/wiki/floodgate/setup/">Floodgate</a>.
+1 -1
View File
@@ -35,7 +35,7 @@ See also [this page](/wiki/geyser/supported-versions/) on supported versions.
If `clone-remote-port` is enabled, the bedrock port will be overwritten with the Java port!
**Important**: Other services/plugins that rely on ports with UDP, such as Voice Chats or Query, cannot share the port with Geyser.
5. Verify whether connections are possible by running `geyser connectiontest <ip>:<port>` in the console.
5. Verify whether connections are possible by running `geyser connectiontest <ip> <port>` in the console.
:::info
To allow Bedrock Edition players to join your server without needing to log in to a paid Java Edition account, you can use <a href="/wiki/floodgate/setup/">Floodgate</a>.
+1 -1
View File
@@ -36,7 +36,7 @@ import { Versions } from '@site/src/components/Versions'
If `clone-remote-port` is enabled, the bedrock port will be overwritten with the Java port!
**Important**: Other services/plugins that rely on ports with UDP, such as Voice Chats or Query, cannot share the port with Geyser.
5. Verify whether connections are possible by running `geyser connectiontest <ip>:<port>` in the console.
5. Verify whether connections are possible by running `geyser connectiontest <ip> <port>` in the console.
:::info
To allow Bedrock Edition players to join your server without needing to log in to a paid Java Edition account, you can use <a href="/wiki/floodgate/setup/">Floodgate</a>.
+1 -2
View File
@@ -33,7 +33,6 @@ Geyser only works with **server-side** mods. Mods that require a client-side ins
Since you are self-hosting, you can choose the port freely - the default port is 19132.
**Important**: Other services/mods that rely on ports with UDP, such as Voice Chats or Query, cannot share the port with Geyser.
4. Connecting to your server
**Connecting locally in the same network**
@@ -53,7 +52,7 @@ Geyser only works with **server-side** mods. Mods that require a client-side ins
the playit.gg service to create a tunnel for you to route the traffic through. See our [playit.gg guide](/wiki/geyser/playit-gg).
Ngrok will not work since it is TCP-only.
5. Verify whether connections from other networks are possible by running `geyser connectiontest <ip>:<port>` in the console.
5. Verify whether connections from other networks are possible by running `geyser connectiontest <ip> <port>` in the console.
:::info
For Geyser-Fabric: To allow Bedrock Edition players to join your server without needing to log in to a paid Java Edition account, you can use <a href="/wiki/floodgate/setup/">Floodgate</a>.
+1 -1
View File
@@ -48,7 +48,7 @@ See also [this page](/wiki/geyser/supported-versions/) on supported versions.
the playit.gg service to create a tunnel for you to route the traffic through. See our [playit.gg guide](/wiki/geyser/playit-gg).
Ngrok will not work since it is TCP-only.
5. Verify whether connections from other networks are possible by running `geyser connectiontest <ip>:<port>` in the console.
5. Verify whether connections from other networks are possible by running `geyser connectiontest <ip> <port>` in the console.
:::caution
To allow Bedrock Edition players to join your server without needing to log in to a paid Java Edition account, you can use <a href="/wiki/floodgate/setup/">Floodgate</a>.
+1 -1
View File
@@ -50,7 +50,7 @@ import { Versions } from '@site/src/components/Versions'
the playit.gg service to create a tunnel for you to route the traffic through. See our [playit.gg guide](/wiki/geyser/playit-gg).
Ngrok will not work since it is TCP-only.
5. Verify whether connections from other networks are possible by running `geyser connectiontest <ip>:<port>` in the console.
5. Verify whether connections from other networks are possible by running `geyser connectiontest <ip> <port>` in the console.
:::info
To allow Bedrock Edition players to join your server without needing to log in to a paid Java Edition account, you can use <a href="/wiki/floodgate/setup/">Floodgate</a>.
+1 -1
View File
@@ -75,7 +75,7 @@ set it to either `online` for an online mode server, or `offline` for an offline
the playit.gg service to create a tunnel for you to route the traffic through. See our [playit.gg guide](/wiki/geyser/playit-gg).
Ngrok will not work since it is TCP-only.
6. Verify whether connections from other networks are possible by running `geyser connectiontest <ip>:<port>` in the console.
6. Verify whether connections from other networks are possible by running `geyser connectiontest <ip> <port>` in the console.
### Running Geyser-Standalone on Android {#running-geyser-standalone-on-android}
+1 -1
View File
@@ -48,7 +48,7 @@ description: Learn how to set up Geyser with ViaProxy.
the playit.gg service to create a tunnel for you to route the traffic through. See our [playit.gg guide](/wiki/geyser/playit-gg).
Ngrok will not work since it is TCP-only.
6. Verify whether connections from other networks are possible by running `geyser connectiontest <ip>:<port>` in the console.
6. Verify whether connections from other networks are possible by running `geyser connectiontest <ip> <port>` in the console.
:::info
To allow Bedrock Edition players to join your server without needing to log in to a paid Java Edition account, you can use [Floodgate](/wiki/floodgate/setup).