diff --git a/config-specs/paper/vanilla/paper-global.yml b/config-specs/paper/vanilla/paper-global.yml new file mode 100644 index 00000000..12467433 --- /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. They may be removed at any time, so use them at your own risk. + 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 00000000..48b9cfc4 --- /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 00000000..fc36306c --- /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 e3d3c727..dd380bc3 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 00000000..834f5366 --- /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. +--- + +# Vanilla-like 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.