# -------------------------------- # Geyser Configuration File # # A bridge between Minecraft: Bedrock Edition and Minecraft: Java Edition. # # GitHub: https://github.com/GeyserMC/Geyser # Discord: https://discord.gg/geysermc # Wiki: https://geysermc.org/wiki # # NOTICE: See https://geysermc.org/wiki/geyser/setup/ for the setup guide. Many video tutorials are outdated. # In most cases, especially with server hosting providers, further hosting-specific configuration is required. # -------------------------------- # Network settings for the Bedrock listener bedrock: # The IP address that Geyser will bind on to listen for incoming Bedrock connections. # Generally, you should only change this if you want to limit what IPs can connect to your server. address: 0.0.0.0 # The port that will Geyser will listen on for incoming Bedrock connections. # Since Minecraft: Bedrock Edition uses UDP, this port must allow UDP traffic. port: 19132 # 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. clone-remote-port: false # Network settings for the Java server connection java: # What type of authentication Bedrock players will be checked against when logging into the Java server. # Can be "floodgate" (see https://wiki.geysermc.org/floodgate/), "online", or "offline". auth-type: online # MOTD settings motd: # The MOTD that will be broadcasted to Minecraft: Bedrock Edition clients. This is irrelevant if "passthrough-motd" is set to true. # If either of these are empty, the respective string will default to "Geyser" primary-motd: Geyser secondary-motd: Another Geyser server. # Whether Geyser should relay the MOTD from the Java server to Bedrock players. passthrough-motd: true # Maximum amount of players that can connect. # This is only visual, and is only applied if passthrough-motd is disabled. max-players: 100 # Whether to relay the player count and max players from the Java server to Bedrock players. passthrough-player-counts: true # Whether to use server API methods to determine the Java server's MOTD and ping passthrough. # There is no need to disable this unless your MOTD or player count does not appear properly. integrated-ping-passthrough: true # How often to ping the Java server to refresh MOTD and player count, in seconds. # Only relevant if integrated-ping-passthrough is disabled. ping-passthrough-interval: 3 # Gameplay options that affect Bedrock players gameplay: # The server name that will be sent to Minecraft: Bedrock Edition clients. This is visible in both the pause menu and the settings menu. server-name: Geyser # Allow a fake cooldown indicator to be sent. Bedrock players otherwise do not see a cooldown as they still use 1.8 combat. # Please note: with the integrated pack disabled, some users may see a black box during the cooldown sequence, like below: # https://geysermc.org/img/external/cooldown_indicator.png # This can be resolved by enabling the integrated pack, or by going into Bedrock settings under the accessibility tab and setting "Text Background Opacity" to 0. # This setting can be set to "crosshair", "hotbar", or "disabled" cooldown-type: crosshair # Bedrock clients can freeze when opening up the command prompt for the first time if given a lot of commands. # Disabling this will prevent command suggestions from being sent and solve freezing for Bedrock clients. command-suggestions: true # Controls if coordinates are shown to players. show-coordinates: true # Whether Bedrock players are blocked from performing their scaffolding-style bridging. disable-bedrock-scaffolding: false # Bedrock prevents building and displaying blocks above Y127 in the Nether. # This config option works around that by changing the Nether dimension ID to the End ID. # The main downside to this is that the entire Nether will have the same red fog rather than having different fog for each biome. nether-roof-workaround: false # Whether to show Bedrock Edition emotes to other Bedrock Edition players. emotes-enabled: true # Whether to remove legacy text formatting codes sent by Bedrock players. # Unlike on Java Edition, typing section signs for legacy color codes is possible on Bedrock Edition. # See https://minecraft.wiki/w/Formatting_codes for further information. block-legacy-codes: true # Which item to use to mark unavailable slots in a Bedrock player inventory. Examples of this are the 2x2 crafting grid while in creative, # or custom inventory menus with sizes different from the usual 3x9. A barrier block is the default item. # This config option can be set to any Bedrock item identifier. If you want to set this to a custom item, make sure that you specify the item in the following format: "geyser_custom:" unusable-space-block: minecraft:barrier # Whether to add any items and blocks which normally does not exist in Bedrock Edition. # This should only need to be disabled if using a proxy that does not use the "transfer packet" style of server switching. # If this is disabled, furnace minecart items will be mapped to hopper minecart items. # Geyser's block, item, and skull mappings systems will also be disabled. # This option requires a restart of Geyser in order to change its setting. enable-custom-content: true # Force clients to load all resource packs if there are any. # If set to false, it allows the user to connect to the server even if they don't # want to download the resource packs. force-resource-packs: true # Whether to automatically serve a resource pack that is required for some Geyser features to all connecting Bedrock players. # If enabled, force-resource-packs will be enabled. enable-integrated-pack: true # Whether to forward player ping to the server. While enabling this will allow Bedrock players to have more accurate # ping, it may also cause players to time out more easily. forward-player-ping: false # Allows Xbox achievements to be unlocked. # If a player types in an unknown command, they will receive a message that states cheats are disabled. # Otherwise, commands work as expected. xbox-achievements-enabled: false # The maximum number of custom skulls to be displayed per player. Increasing this may decrease performance on weaker devices. # A value of 0 will disable all custom skulls. # Setting this to -1 will cause all custom skulls to be displayed regardless of distance or number. max-visible-custom-skulls: 128 # The radius in blocks around the player in which custom skulls are displayed. custom-skull-render-distance: 32 # The default locale if we don't have the one the client requested. If set to "system", the system's language will be used. default-locale: system # Whether player IP addresses will be logged by the server. log-player-ip-addresses: true # For online mode authentication type only. # Stores a list of Bedrock player usernames that should have their Java Edition account saved after login. # This saves a token that can be reused to authenticate the player later. This does not save emails or passwords, # but you should still be cautious when adding to this list and giving others access to this Geyser instance's files. # Removing a name from this list will delete its cached login information on the next Geyser startup. # The file that tokens will be saved in is in the same folder as this config, named "saved-refresh-tokens.json". saved-user-logins: - ThisExampleUsernameShouldBeLongEnoughToNeverBeAnXboxUsername - ThisOtherExampleUsernameShouldAlsoBeLongEnough # For online mode authentication type only. # Specify how many seconds to wait while user authorizes Geyser to access their Microsoft account. # User is allowed to disconnect from the server during this period. pending-authentication-timeout: 120 # Whether to alert the console and operators that a new Geyser version is available that supports a Bedrock version # that this Geyser version does not support. It's recommended to keep this option enabled, as many Bedrock platforms # auto-update. notify-on-new-bedrock-update: true # Advanced configuration options. These usually do not need modifications. advanced: # Specify how many days player skin images will be cached to disk to save downloading them from the internet. # A value of 0 is disabled. (Default: 0) cache-images: 0 # Geyser updates the Scoreboard after every Scoreboard packet, but when Geyser tries to handle # a lot of scoreboard packets per second, this can cause serious lag. # This option allows you to specify after how many Scoreboard packets per seconds # the Scoreboard updates will be limited to four updates per second. scoreboard-packet-threshold: 20 # Whether Geyser should send team names in command suggestions. # Disable this if you have a lot of teams used that you don't need as suggestions. add-team-suggestions: true # A list of remote resource pack urls to send to the Bedrock client for downloading. # The Bedrock client is very picky about how these are delivered - please see our wiki page for further info: https://geysermc.org/wiki/geyser/packs/ resource-pack-urls: [] # Floodgate uses encryption to ensure use from authorized sources. # This should point to the public key generated by Floodgate (BungeeCord, Spigot or Velocity) # You can ignore this when not using Floodgate. # If you're using a plugin version of Floodgate on the same server, the key will automatically be picked up from Floodgate. floodgate-key-file: key.pem # Advanced networking options for the Geyser to Java server connection java: # Whether to enable HAPROXY protocol when connecting to the Java server. # This is useful only when: # 1) Your Java server supports HAPROXY protocol (it probably doesn't) # 2) You run Velocity or BungeeCord with the option enabled in the proxy's main config. # IF YOU DON'T KNOW WHAT THIS IS, DON'T TOUCH IT! use-haproxy-protocol: false # Whether to connect directly into the Java server without creating a TCP connection. # This should only be disabled if a plugin that interfaces with packets or the network does not work correctly with Geyser. # If enabled, the remote address and port sections are ignored. # If disabled, expect performance decrease and latency increase. use-direct-connection: true # Whether Geyser should attempt to disable packet compression (from the Java Server to Geyser) for Bedrock players. # This should be a benefit as there is no need to compress data when Java packets aren't being handled over the network. # This requires use-direct-connection to be true. disable-compression: true # Advanced networking options for Geyser's Bedrock listener bedrock: # The port to broadcast to Bedrock clients with the MOTD that they should use to connect to the server. # A value of 0 will broadcast the port specified above. # DO NOT change this unless Geyser runs on a different port than the one that is used to connect. broadcast-port: 0 # How much to compress network traffic to the Bedrock client. The higher the number, the more CPU usage used, but # the smaller the bandwidth used. Does not have any effect below -1 or above 9. Set to -1 to disable. compression-level: 6 # Whether to expect HAPROXY protocol for connecting Bedrock clients. # This is useful only when you are running a UDP reverse proxy in front of your Geyser instance. # IF YOU DON'T KNOW WHAT THIS IS, DON'T TOUCH IT! use-haproxy-protocol: false # A list of allowed HAPROXY protocol speaking proxy IP addresses/subnets. Only effective when "use-proxy-protocol" is enabled, and # should really only be used when you are not able to use a proper firewall (usually true with shared hosting providers etc.). # Keeping this list empty means there is no IP address whitelist. # IP addresses, subnets, and links to plain text files are supported. haproxy-protocol-whitelisted-ips: [] # Should be enabled if this Geyser instance is behind a WaterdogPE proxy. If enabled, Geyser will # use the xuid / address sent from WaterdogPE and reject clients that do not send it. use-waterdogpe-forwarding: false # The internet supports a maximum MTU of 1492 but could cause issues with packet fragmentation. # 1400 is the default. mtu: 1400 # This option disables the auth step Geyser performs for connecting Bedrock players. # It can be used to allow connections from ProxyPass and WaterdogPE. In these cases, make sure that users # cannot directly connect to this Geyser instance. See https://www.spigotmc.org/wiki/firewall-guide/ for # assistance - and use UDP instead of TCP. # Disabling Bedrock authentication for other use-cases is NOT SUPPORTED, as it allows anyone to spoof usernames, and is therefore a security risk. # All Floodgate functionality (including skin uploading and account linking) will also not work when this option is disabled. validate-bedrock-login: true # If debug messages should be sent through console debug-mode: false # Do not change! config-version: 7