From b740d574a4aed880e3bd79fe99dabae2d5d48b91 Mon Sep 17 00:00:00 2001 From: leguan Date: Sun, 24 Mar 2024 17:39:13 +0100 Subject: [PATCH] Document vanilla breaking changes Co-authored-by: Joseph Burton --- config-specs/paper/vanilla/paper-global.yml | 61 +++++++++++++++++++ .../paper/vanilla/paper-world-defaults.yml | 45 ++++++++++++++ config-specs/paper/vanilla/spigot.yml | 24 ++++++++ config/sidebar.paper.ts | 1 + docs/paper/admin/how-to/get-to-vanilla.mdx | 38 ++++++++++++ 5 files changed, 169 insertions(+) create mode 100644 config-specs/paper/vanilla/paper-global.yml create mode 100644 config-specs/paper/vanilla/paper-world-defaults.yml create mode 100644 config-specs/paper/vanilla/spigot.yml create mode 100644 docs/paper/admin/how-to/get-to-vanilla.mdx diff --git a/config-specs/paper/vanilla/paper-global.yml b/config-specs/paper/vanilla/paper-global.yml new file mode 100644 index 000000000..0d58ec024 --- /dev/null +++ b/config-specs/paper/vanilla/paper-global.yml @@ -0,0 +1,61 @@ +commands: + fix-target-selector-tag-completion: + default: "false" + suggest-player-names-when-null-tab-completions: + default: "false" + time-command-affects-all-worlds: + default: "true" +item-validation: + book: + author: + default: "2147483647" + title: + default: "2147483647" + page: + default: "2147483647" + display-name: + default: "2147483647" + book-size: + page-max: + default: "2147483647" + total-multiplier: + default: "1.0" + lore-line: + default: "2147483647" + resolve-selectors-in-books: + default: "true" +misc: + max-joins-per-tick: + default: "2147483647" + fix-entity-position-desync: + default: "false" +packet-limiter: + default: "" + description: >- + Vanilla has no packet limit by default (to disable it for all practical purposes set `all-packets.interval` to 0.000001 and `all-packets.max-packet-rate` to 999999.0, + but it's better for security to set more specific limits). It's not feasible to reach Paper's default packet limit with a vanilla client. + This defaults to 500 packets per 7 seconds. If you want you can override this setting for specific packets. +spam-limiter: + default: "" + description: >- + You may want to look into this for fast crafting. Vanilla has no spam limit (set the limits to 2147483647 for this), although it's not feasible to reach Paper's default spam limit with a vanilla client. +unsupported-settings: + inline-docs-warning: + title: "Unsupported Settings" + message: >- + The following settings are provided by Paper but are not officially + supported. Use them at your own risk and they may be removed at any time. + allow-headless-pistons: + default: "true" + allow-permanent-block-break-exploits: + default: "true" + allow-piston-duplication: + default: "true" + perform-username-validation: + default: "false" + allow-grindstone-overstacking: + default: "true" + allow-unsafe-end-portal-teleportation: + default: "true" + allow-tripwire-disarming-exploits: + default: "true" diff --git a/config-specs/paper/vanilla/paper-world-defaults.yml b/config-specs/paper/vanilla/paper-world-defaults.yml new file mode 100644 index 000000000..48b9cfc4e --- /dev/null +++ b/config-specs/paper/vanilla/paper-world-defaults.yml @@ -0,0 +1,45 @@ +chunks: + delay-chunk-unloads-by: + default: "0s" + max-auto-save-chunks-per-tick: + default: "200" +collisions: + allow-player-cramming-damage: + default: "true" + max-entity-collisions: + default: "2147483647" + description: >- + The actual default value would be infinity. 2147483647 is the closest to infinity. +entities: + behavior: + phantoms-do-not-spawn-on-creative-players: + default: "false" + phantoms-only-attack-insomniacs: + default: "false" + spawning: + count-all-mobs-for-spawning: + default: "true" + per-player-mob-spawns: + default: "false" + duplicate-uuid: + mode: + default: "NOTHING" + filter-bad-tile-entity-nbt-from-falling-blocks: + default: "false" + filtered-entity-tag-nbt-paths: + default: "" + description: "The default value is: []" +fixes: + disable-unloaded-chunk-enderpearl-exploit: + default: "false" +hopper: + cooldown-when-full: + default: "false" +maps: + item-frame-cursor-limit: + default: "2147483647" +unsupported-settings: + disable-world-ticking-when-empty: + default: "true" + fix-invulnerable-end-crystal-exploit: + default: "false" diff --git a/config-specs/paper/vanilla/spigot.yml b/config-specs/paper/vanilla/spigot.yml new file mode 100644 index 000000000..fc36306c9 --- /dev/null +++ b/config-specs/paper/vanilla/spigot.yml @@ -0,0 +1,24 @@ +world-settings: + default: + merge-radius: + item: + default: "0.5" + exp: + default: "0.5" + entity-activation-range: + animals: + default: "0" + monsters: + default: "0" + raiders: + default: "0" + misc: + default: "0" + water: + default: "0" + villagers: + default: "0" + flying-monsters: + default: "0" + max-tnt-per-tick: + default: "0" diff --git a/config/sidebar.paper.ts b/config/sidebar.paper.ts index e3d3c727f..dd380bc32 100644 --- a/config/sidebar.paper.ts +++ b/config/sidebar.paper.ts @@ -38,6 +38,7 @@ const paper: SidebarsConfig = { "admin/how-to/update", "admin/how-to/aikars-flags", "admin/how-to/anti-xray", + "admin/how-to/get-to-vanilla", ], }, { diff --git a/docs/paper/admin/how-to/get-to-vanilla.mdx b/docs/paper/admin/how-to/get-to-vanilla.mdx new file mode 100644 index 000000000..ea2206d79 --- /dev/null +++ b/docs/paper/admin/how-to/get-to-vanilla.mdx @@ -0,0 +1,38 @@ +--- +slug: /vanilla +description: This page lists all changes that result in a different experience than vanilla. +--- + +# Hot to get a vanilla experience + +import React from 'react'; +import ConfigDocBlock from '@site/src/components/config/ConfigDocBlock'; +import VanillaWorldDefaults from '!!raw-loader!@site/config-specs/paper/vanilla/paper-world-defaults.yml' +import VanillaGlobalDefaults from '!!raw-loader!@site/config-specs/paper/vanilla/paper-global.yml' +import SpigotChanges from '!!raw-loader!@site/config-specs/paper/vanilla/spigot.yml' + +Due to the way how the Bukkit platform is built and because it fixes vanilla bugs, the gameplay experience between Vanilla and Paper can lead to inconsistencies. +While some people might not notice those inconsistencies, especially tech players might have troubles getting their machines to work like they should. +This page aims to provide a starting point for players, who want to get as close to vanilla as possible. +This page is inspired by [earthcomputer's collection](https://gist.github.com/Earthcomputer/2296da33b8cc91dba81b48103c0e1fe3) of Vanilla breaking changes. + +:::warning + +This guide will only help you to get as close to vanilla as possible. +Unfortunately, it currently is not possible to get a 100% Vanilla experience in Paper. + +::: + +## paper-world-defaults.yml + + +## paper-global.yml + + +## spigot.yml + + +## Further considerations + +* `settings.timeout-time` in `spigot.yml` mirrors the watchdog setting in the `server.properties` file. Keep in mind that the `spigot.yml` setting is in seconds while the default setting is in milliseconds. +* `watchdog` in `paper-global.yml` controls the watchdog early warning. While this is only a warning you might want to disable it as it can get annoying.