Rework paper page for setup
This commit is contained in:
3 files changed
+122
-85
No files matched your search
@@ -1,8 +1,7 @@
|
||||
import type { HostingProvider, ProviderType } from "@site/src/types/providers";
|
||||
import ReactMarkdown from "react-markdown";
|
||||
import Admonition from '@theme/Admonition';
|
||||
import React, { useState } from 'react';
|
||||
import Translate, { translate } from "@docusaurus/Translate";
|
||||
import { translate } from "@docusaurus/Translate";
|
||||
import { providersData } from "../data/providers";
|
||||
|
||||
export const noP = (props: { children: any; }) => {
|
||||
@@ -29,7 +28,7 @@ export const Provider = ({ type }) => {
|
||||
)
|
||||
}
|
||||
|
||||
export const ProviderSelector = () => {
|
||||
export const ProviderSelector = ({setProvider}) => {
|
||||
const providers: HostingProvider[] = [
|
||||
...Object.values(providersData.built_in),
|
||||
...Object.values(providersData.support),
|
||||
@@ -51,6 +50,7 @@ export const ProviderSelector = () => {
|
||||
const selectedName = event.target.value;
|
||||
const provider = providers.find(p => p.name === selectedName);
|
||||
setSelectedProvider(provider);
|
||||
setProvider(provider);
|
||||
}
|
||||
|
||||
return (
|
||||
@@ -63,15 +63,6 @@ export const ProviderSelector = () => {
|
||||
</option>
|
||||
))}
|
||||
</select>
|
||||
<Admonition type="tip" title={<Translate id='components.provider.instructions'>Provider Instructions</Translate>}>
|
||||
{selectedProvider ? (
|
||||
<ReactMarkdown>{selectedProvider.description}</ReactMarkdown>
|
||||
) : (
|
||||
<p>
|
||||
<Translate id='components.provider.select'>Select a provider to see specific installation instructions</Translate>
|
||||
</p>
|
||||
)}
|
||||
</Admonition>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
+64
-48
@@ -4,60 +4,76 @@ page_sidebar: false
|
||||
description: Guides to setup Geyser on all supported platforms
|
||||
---
|
||||
|
||||
import Tabs from "@theme/Tabs";
|
||||
import TabItem from "@theme/TabItem";
|
||||
import Tabs from '@theme/Tabs'
|
||||
import TabItem from '@theme/TabItem'
|
||||
import Admonition from '@theme/Admonition';
|
||||
import Translate from "@docusaurus/Translate";
|
||||
|
||||
import ModdedServers from './setup/provider/modded-servers.mdx';
|
||||
import ProxyServers from './setup/provider/proxy-servers.mdx';
|
||||
import PaperSpigot from './setup/provider/paper-spigot.mdx';
|
||||
import ModdedServers from '@site/wiki/geyser/setup/provider/modded-servers.mdx'
|
||||
import ProxyServers from '@site/wiki/geyser/setup/provider/proxy-servers.mdx'
|
||||
import PaperSpigot from '@site/wiki/geyser/setup/provider/paper-spigot.mdx'
|
||||
|
||||
import ModdedServersSelf from './setup/self/modded-servers.mdx';
|
||||
import ProxyServersSelf from './setup/self/proxy-servers.mdx';
|
||||
import PaperSpigotSelf from './setup/self/paper-spigot.mdx';
|
||||
import ViaProxy from './setup/self/viaproxy.mdx';
|
||||
import Standalone from './setup/self/standalone.mdx';
|
||||
import ModdedServersSelf from '@site/wiki/geyser/setup/self/modded-servers.mdx'
|
||||
import ProxyServersSelf from '@site/wiki/geyser/setup/self/proxy-servers.mdx'
|
||||
import PaperSpigotSelf from '@site/wiki/geyser/setup/self/paper-spigot.mdx'
|
||||
import ViaProxy from '@site/wiki/geyser/setup/self/viaproxy.mdx'
|
||||
import Standalone from '@site/wiki/geyser/setup/self/standalone.mdx'
|
||||
|
||||
import PlatformIcon from '@site/src/components/PlatformIcon'
|
||||
import ModIcon from '@site/static/img/icons/fabric.png';
|
||||
import ProxyServersIcon from '@site/static/img/icons/velocity.png';
|
||||
import PaperSpigotIcon from '@site/static/img/icons/paper.png';
|
||||
import ViaProxyIcon from '@site/static/img/icons/viaproxy.png';
|
||||
import StandaloneIcon from '@site/static/img/icons/geyser.png';
|
||||
import ModIcon from '@site/static/img/icons/fabric.png'
|
||||
import ProxyServersIcon from '@site/static/img/icons/velocity.png'
|
||||
import PaperSpigotIcon from '@site/static/img/icons/paper.png'
|
||||
import ViaProxyIcon from '@site/static/img/icons/viaproxy.png'
|
||||
import StandaloneIcon from '@site/static/img/icons/geyser.png'
|
||||
|
||||
import { ProviderSelector } from "@site/src/components/Provider";
|
||||
import { ProviderSelector } from '@site/src/components/Provider'
|
||||
import { useState } from 'react'
|
||||
|
||||
<Tabs queryString="host" className="tabs-host-type">
|
||||
<TabItem value="provider" label="Host Provider" default>
|
||||
<ProviderSelector/>
|
||||
<Tabs queryString="platform">
|
||||
<TabItem value="paper-spigot" label={<PlatformIcon img={PaperSpigotIcon} text="Paper / Spigot"/>} default>
|
||||
<PaperSpigot/>
|
||||
export const SetupGuide = () => {
|
||||
const [provider, setProvider] = useState(null)
|
||||
return (
|
||||
<Tabs queryString='host' className='tabs-host-type'>
|
||||
<TabItem value='provider' label='Host Provider' default>
|
||||
<ProviderSelector setProvider={setProvider} />
|
||||
{provider ? (
|
||||
<>
|
||||
{provider.connect_instructions ? (
|
||||
<Tabs queryString='platform'>
|
||||
<TabItem value='paper-spigot' label={<PlatformIcon img={PaperSpigotIcon} text='Paper / Spigot' />} default>
|
||||
<PaperSpigot provider={provider} />
|
||||
</TabItem>
|
||||
<TabItem value='modded-servers' label={<PlatformIcon img={ModIcon} text='Modded Servers' />}>
|
||||
<ModdedServers />
|
||||
</TabItem>
|
||||
<TabItem value='proxy-servers' label={<PlatformIcon img={ProxyServersIcon} text='Proxy Servers' />}>
|
||||
<ProxyServers />
|
||||
</TabItem>
|
||||
</Tabs>
|
||||
) : (<Admonition type="warning" title={<Translate id='components.provider.no_support'>Not supported</Translate>}>{provider.warn}</Admonition>)}
|
||||
</>
|
||||
) : null}
|
||||
</TabItem>
|
||||
<TabItem value="modded-servers" label={<PlatformIcon img={ModIcon} text="Modded Servers"/>}>
|
||||
<ModdedServers/>
|
||||
</TabItem>
|
||||
<TabItem value="proxy-servers" label={<PlatformIcon img={ProxyServersIcon} text="Proxy Servers"/>}>
|
||||
<ProxyServers/>
|
||||
<TabItem value='self' label='Self Host'>
|
||||
<Tabs queryString='platform'>
|
||||
<TabItem value='paper-spigot' label={<PlatformIcon img={PaperSpigotIcon} text='Paper / Spigot' />} default>
|
||||
<PaperSpigotSelf />
|
||||
</TabItem>
|
||||
<TabItem value='modded-servers' label={<PlatformIcon img={ModIcon} text='Modded Servers' />}>
|
||||
<ModdedServersSelf />
|
||||
</TabItem>
|
||||
<TabItem value='proxy-servers' label={<PlatformIcon img={ProxyServersIcon} text='Proxy Servers' />}>
|
||||
<ProxyServersSelf />
|
||||
</TabItem>
|
||||
<TabItem value='viaproxy' label={<PlatformIcon img={ViaProxyIcon} text='ViaProxy' />}>
|
||||
<ViaProxy />
|
||||
</TabItem>
|
||||
<TabItem value='standalone' label={<PlatformIcon img={StandaloneIcon} text='Standalone' />}>
|
||||
<Standalone />
|
||||
</TabItem>
|
||||
</Tabs>
|
||||
</TabItem>
|
||||
</Tabs>
|
||||
</TabItem>
|
||||
<TabItem value="self" label="Self Host">
|
||||
<Tabs queryString="platform">
|
||||
<TabItem value="paper-spigot" label={<PlatformIcon img={PaperSpigotIcon} text="Paper / Spigot"/>} default>
|
||||
<PaperSpigotSelf/>
|
||||
</TabItem>
|
||||
<TabItem value="modded-servers" label={<PlatformIcon img={ModIcon} text="Modded Servers"/>}>
|
||||
<ModdedServersSelf/>
|
||||
</TabItem>
|
||||
<TabItem value="proxy-servers" label={<PlatformIcon img={ProxyServersIcon} text="Proxy Servers"/>}>
|
||||
<ProxyServersSelf/>
|
||||
</TabItem>
|
||||
<TabItem value="viaproxy" label={<PlatformIcon img={ViaProxyIcon} text="ViaProxy"/>}>
|
||||
<ViaProxy/>
|
||||
</TabItem>
|
||||
<TabItem value="standalone" label={<PlatformIcon img={StandaloneIcon} text="Standalone"/>}>
|
||||
<Standalone/>
|
||||
</TabItem>
|
||||
</Tabs>
|
||||
</TabItem>
|
||||
</Tabs>
|
||||
)
|
||||
}
|
||||
|
||||
<SetupGuide />
|
||||
@@ -4,6 +4,8 @@ description: Learn how to set up Geyser on a Paper or Spigot server from a hosti
|
||||
hide_title: true
|
||||
---
|
||||
|
||||
import Admonition from '@theme/Admonition';
|
||||
|
||||
import { Versions } from '@site/src/components/Versions'
|
||||
|
||||
:::info
|
||||
@@ -11,32 +13,60 @@ If your server is not running <Versions platform="java"/>, you will need to inst
|
||||
See also [this page](/wiki/geyser/supported-versions/) on supported versions.
|
||||
:::
|
||||
|
||||
1. Select your server hosting provider in the dropdown above.
|
||||
2. Download the plugin from [the download page](/download).
|
||||
3. Place the Geyser-Spigot.jar in the `plugins` folder, and restart the server.
|
||||
4. Open your Geyser config, located in `/plugins/Geyser-Spigot/config.yml`, and find the following:
|
||||
{props.provider.warn ? <Admonition type="warning" title='Warn'>{props.provider.warn}</Admonition> : null}
|
||||
|
||||
```yaml
|
||||
bedrock:
|
||||
# The IP address that will listen for connections.
|
||||
# Generally, you should only uncomment and change this if you want to limit what IPs can connect to your server.
|
||||
#address: 0.0.0.0
|
||||
|
||||
# The port that will listen for connections. This is the port that Bedrock players will use to connect to your server.
|
||||
port: 19132
|
||||
<h3>Install:</h3>
|
||||
{props.provider.custom_install_location ? props.provider.custom_install_location : (
|
||||
<ol>
|
||||
<li>Download the plugin from [the download page](/download).</li>
|
||||
<li>Place the Geyser-Spigot.jar in the `plugins` folder, and restart the server.</li>
|
||||
</ol>
|
||||
)}
|
||||
<br />
|
||||
|
||||
# Some hosting services change your Java port everytime you start the server and require the same port to be used for Bedrock.
|
||||
# This option makes the Bedrock port the same as the Java port every time you start the server.
|
||||
# This option is for the plugin version only.
|
||||
clone-remote-port: false
|
||||
```
|
||||
The vital part is the port. This is the port that Bedrock players will use to connect to your server.
|
||||
Follow the instructions in the provider selector - change the port, and if necessary, `clone-remote-port` & `address`.
|
||||
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.
|
||||
{props.provider.config ? (
|
||||
<>
|
||||
<h3>Make the following config changes:</h3>
|
||||
Open your Geyser config, located in `/plugins/Geyser-Spigot/config.yml`
|
||||
<ul>
|
||||
{props.provider.config.address ? <li>Change the `address` to `{props.provider.config.address}`</li> : null}
|
||||
{props.provider.config.port ? <li>Change the `port` to `{props.provider.config.port}`</li> : null}
|
||||
{props.provider.config.clone_remote_port ? <li>Change `clone-remote-port` to `{props.provider.config.clone_remote_port}`</li> : null}
|
||||
{props.provider.config.port_instruction ? <li>{props.provider.config.port_instruction}</li> : null}
|
||||
{props.provider.config.address_instruction ? <li>{props.provider.config.address_instruction}</li> : null}
|
||||
{props.provider.config.other_instructions ? <li>{props.provider.config.other_instructions}</li> : null}
|
||||
</ul>
|
||||
</>
|
||||
) : null}
|
||||
|
||||
:::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>.
|
||||
:::
|
||||
{props.provider.additional_step ? (
|
||||
<>
|
||||
<h3>Additional Steps:</h3>
|
||||
{props.provider.additional_step}
|
||||
<br />
|
||||
</>
|
||||
) : null}
|
||||
|
||||
|
||||
{props.provider.connect_instructions ? (
|
||||
<b>
|
||||
{props.provider.connect_instructions}
|
||||
<br />
|
||||
<br />
|
||||
</b>
|
||||
) : (<div>Nope</div>)}
|
||||
|
||||
|
||||
{props.provider.info ? <Admonition type="info" title='Info'>{props.provider.info}</Admonition> : null}
|
||||
|
||||
|
||||
{props.provider.hosting_article || props.provider.hosting_support ? (
|
||||
<>
|
||||
<h4>More Information:</h4>
|
||||
<ul>
|
||||
{props.provider.hosting_article ? (<li><a href={props.provider.hosting_article} target='_blank'>Hosting provider article</a></li>) : null}
|
||||
{props.provider.hosting_support ? (<li><a href={props.provider.hosting_support} target='_blank'>Hosting provider support</a></li>) : null}
|
||||
</ul>
|
||||
</>
|
||||
) : null}
|
||||
Reference in new issue
Block a user