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
+49 -19

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}
@@ -9,14 +9,14 @@ Usually, this error is caused by improper configuration of Geyser, or issues wit
:::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!
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.
`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).