docs icon indicating copy to clipboard operation
docs copied to clipboard

Add page documenting gameplay changes and how to reset them

Open TheMrEngMan opened this issue 4 years ago • 9 comments
trafficstars

This is a request to list all (major) changes PaperMC makes to gameplay on top of Spigot (i.e. that players would notice versus a vanilla server or that break adventure maps/farms made for vanilla servers) that are enabled by default. I have looked through the docs and while these are listed in the configuration page, it would be very, very helpful to have these listed separately, for example, on the FAQ page (https://paper.readthedocs.io/en/latest/about/faq.html).

This way, instead of looking though the configuration docs/file and figuring out if each setting should be true or false (basically having to read the all the config options and debate if they are different from the vanilla behaviour), it would be a simple glance at the FAQ to figure out which setting(s) to change.

Not only would this benefit first-time setup, but it would also benefit in the case people (like many) have not updated in a while and notice a new build of PaperMC made a gameplay change so they now have to go through several (possibly lots of) commit messages to track down what has changed. In fact, this issue was prompted by the "Don't apply cramming damage to players" patch (https://github.com/PaperMC/Paper/pull/5903) which changes gameplay by default but can be hard to notice, especially as time passes and this build/commit message is not displayed on the downloads page anymore.

A list of the changes I can think of that should be listed:

  • The various fixed duplication glitches
  • Disabled breaking unbreakable blocks (+headless pistons)
  • save-empty-scoreboard-teams
  • use-vanilla-world-scoreboard-name-coloring
  • allow-non-player-entities-on-scoreboards
  • iron-golems-can-spawn-in-air
  • disable-unloaded-chunk-enderpearl-exploit
  • fix-curing-zombie-villager-discount-exploit
  • fix-invulnerable-end-crystal-exploit
  • allow-player-cramming-damage

Note that the above list is probably incomplete because (and this illustrates my point) I am not 100% sure if any of the other settings can impact gameplay/break some adventure maps/farms. Also, just to be clear, I am not asking for any of these settings to be removed/changed back to the setting that would match vanilla by default, but to simply point them out in a single location (the FAQ page).

This would also help clear up the confusion that some people have which sometimes leads to server owners choosing Spigot because "Paper changes vanilla too much" but they are not sure exactly what or what setting to change.

TL;DR - please list all the (major) changes PaperMC makes to vanilla with the default configuration in the FAQ.

TheMrEngMan avatar Jul 20 '21 06:07 TheMrEngMan

Would also need to keep track of every single Bukkit and Spigot change. Bukkit also changes vanilla stuff in ways that aren't predictable.

HexedHero avatar Jul 20 '21 07:07 HexedHero

Would also need to keep track of every single Bukkit and Spigot change.

In an ideal world, it would be great if all those changes were listed, but yes, I know what you mean in that it isn't feasible to keep track of all those changes and it's also not the responsibility of the Paper team.

So I see your point (please correct me if I am misunderstanding) of "this list would not encompass all changes to vanilla since Paper is built on top of Bukkit & Spigot which have their own changes" and I agree with it. However, I still believe it would be very useful to have a list of changes Paper makes on top of the Bukkit & Spigot changes.

In other words, "what elements of gameplay would be different on a Paper server compared to a Spigot server, both with default configurations".

Edit: I've edited the first sentence of my original message to clarify this (added "on top of Spigot").

TheMrEngMan avatar Jul 20 '21 07:07 TheMrEngMan

Here's the list I could find (but IDK how I would put it in the docs, because I don't know what style guides exist, etc.): In progress (9/30 done)

World settings

Additional notes

  1. I've found that the default for iron-golems-can-spawn-in-air actually is not changed from Vanilla (at least in my research)
  2. map-item-frame-cursor-limit should not be changed to anything high in my opinion, as it fixes a critical exploit, as detailed in this FitMC video.
  3. duplicate-uuid-resolver fixes some weird bugs, and should not be disabled in my opinion (it's disabled when set to nothing or warn). See https://github.com/PaperMC/Paper/blob/master/patches/server/0353-Duplicate-UUID-Resolve-Option.patch for more info.
  4. seed-based-feature-search is recommended to be set to true, as it affects nothing, but improves performance
  5. seed-based-feature-search-loads-chunks is not present on Vanilla, due to how seed-based-feature-search works. However, setting this to false will make seed-based-feature-search not behave Vanilla

Gaming32 avatar Sep 01 '21 15:09 Gaming32

I don't think documenting the differences to spigot is relevant. we want to document the changes needed to make it behave as closely as possible to vanilla. it will however, never be perfect, by design, we aren't vanilla.

looking at the changes you found, you actually did that, so I guess just remove references to spigot and say vanilla instead.

MiniDigger avatar Sep 02 '21 06:09 MiniDigger

The docs only cover 1.17, and we generally don't support old versions, so for inclusion here only the latest version.

Regarding style, we currently don't have a super set style guide. Even within one page the style changes a decent bit at points (looking at the configuration page). if you would like to PR something for this, really, just look at the other pages and have it decently match. This is something I hope to standardize more in the future. A page like this would go under the server section. If you don't want to PR it, that's fine as well. I'm happy to do that for you as you're already doing the work of compiling a list.

Another thing to consider, and part of why having a section like this is a lot harder than it seems, is a lot of changes made have no config options, are inherited from upstream, or are bugs. However, just having the config changes documented is more than a good start.

e-im avatar Sep 03 '21 19:09 e-im

Thanks for the encouragement 😄

Gaming32 avatar Sep 03 '21 20:09 Gaming32

I'd also love this, my primary complaint over recommending people using paper by default over spigot, is the large amount of changes + default configs that enact changes to vanilla by default.

One way I propose that this information could be conveyed, is on the configuration section, for each option,

  1. show the default (as it's doing)
  2. the paper recommendation (this is probably the default, so may not need to be included)
  3. The value that is most like vanilla.

The other major thing that the config options need, is the common reason or justification of why someone would want to change the setting.

e.g.

disable-sprint-interruption-on-attack: false

As a user I immediately understand the implications of changing this value, but I don't immediately know

  1. What the vanilla behavior is and
  2. Whether it's designed to fix a common exploit that hack clients use, or if it's just a 'nice to have' combat change that people prefer.

That information is critical in making an informed decision about whether to use the vanilla behavior, or to correct it.

ryantheleach avatar Dec 17 '21 11:12 ryantheleach

I made a list of differences, along with the changed config files: https://gist.github.com/Earthcomputer/2296da33b8cc91dba81b48103c0e1fe3

Earthcomputer avatar Mar 27 '24 00:03 Earthcomputer

I made a list of differences, along with the changed config files:

https://gist.github.com/Earthcomputer/2296da33b8cc91dba81b48103c0e1fe3

Incredible thank you. I will modify my PR the upcoming days.

Leguan16 avatar Mar 27 '24 03:03 Leguan16