PaperMC / Paper

The most widely used, high performance Minecraft server that aims to fix gameplay and mechanics inconsistencies
https://papermc.io/
Other
9.91k stars 2.29k forks source link

/Forceload looses track of its selections after a server restart. #2322

Closed NobleStrike closed 3 years ago

NobleStrike commented 5 years ago

What behaviour is expected:

What you expected to see All "/Forceload"ed selections should be properly reloaded back up after a server restart.

What behaviour is observed:

What you actually saw "/forceload" looses track of its force-loaded selections after a server restart, but it still thinks those selections are still loaded as it will not let you re-add those selections until you "/forceload remove" to remove them. They did not slip into this glitched state until the restart.

Steps/models to reproduce:

This may include a build schematic, a video, or detailed instructions to help reconstruct the issue

  1. "/Forceload add" two small single chunk selections well over 300 blocks away from eachother
  2. Place a command block with a /setblock command to set a stone block in the other forceloaded selection.
  3. Teleport back and forth to either location and test with the setblock command blocks, it will work fine.
  4. Restart the server
  5. Try step 3 again, it will fail.
  6. Try to "/forceload add" the two selections again. It will send you this annoying message "No chunks were marked for force loading" because it thinks those chunks are actually loaded, but they are not as step 3 confirms.
  7. "/forceload remove" those selections, it will let you.
  8. "/forceload add" those selections, It will now let you.
  9. Try step 3 again, It will work. Which confirms my issue.

Plugin list:

A list of your plugins Plugins (55): AdminChatCC, AdvancedRegionMarket, AntiAFKPlus, AntiCurse, AutoMessage, AutoRespawnPlus, BukkitCompat, Carz, CCUtils, ChainmailCrafting, ChestShop, ClearLag, ColoredAnvils, CommandHook, CoreProtect, DailyRewards, DiamondHunter, dynmap, EditableSign, EnjinMinecraftPlugin, Essentials, EssentialsChat, EssentialsSpawn, GriefPrevention, HolographicDisplays, Horses, JoinLog, KeepItems, KillerMoney, mcMMO, MineableSpawners, Multiverse-Core, NametagEdit, OneTimeItem, OpenInv, PermissionsEx, PerWorldInventory, PhantomSpawnControl, PlayerHeads, PlayerParticles, SafeTrade, ServerListPlus, Tadukoo_Bible, TitleManager, Vault, VKBackPack, VoidGenerator, Votifier*, VotingPlugin, WorldBorder, WorldEdit, WorldEditCUI, WorldGuard, WorldGuardExtraFlags, YourAuction

Paper build number:

This can be found by running /version on your server. latest is not a proper version number; we require the output of /version so we can properly track down the issue. This server is running Paper version git-Paper-131 (MC: 1.14.3) (Implementing API version 1.14.3-R0.1-SNAPSHOT) Previous version: git-Paper-127 (MC: 1.14.3)

Anything else:

Anything else you think may help us resolve the problem Commands like forceload and setblock apply to the main overworld level which is set in server.properties as "level-name=Spawn" All the /forceload commands for this ticket were fired from console as they are restricted to.

My temp fix is to /forceload remove all selections before my daily server restart and /forceload add them all back after the restart via scheduled tasks.

This issue does effect plugins that relay on forcechunk loading I believe.

Thank you for your help. Please let me know if you need any more info or testing. This is my first bug report ticket since converting from spigot to paper. Thank you for your stable 1.14.3 api.

NobleStrike commented 5 years ago

New to paper, is paper based off spigots updates? Should I be reporting this bug to mojang or spigot instead?

Spottedleaf commented 5 years ago

If it occurs in spigot yeah you could also open an issue there - we generally don't have problems solving issues even if they're in spigot/vanilla though, so it's also fine to report here

Spottedleaf commented 5 years ago

Locally testing shows I can be far away from the chunk and still set the blocks in it, and neighbours in a 2 square radius (as expected)

NobleStrike commented 5 years ago

I'll test it again tonight with video on the latest version of paper. I dont want this issue brushed off and closed if it's still present. Maybe it was patched? Again forceloading works but after a restart it lost track of the forceloaded chunk areas. I'll respond again after tonight's test.

NobleStrike commented 5 years ago

@spottedleaf It appears the issue was patched somewhere along the line. Which is awesome. Running paper 146 1.14.4

ghost commented 4 years ago

I got the same issue (as descripbed above) on git-Paper-174 (MC: 1.16.2)

NobleStrike commented 4 years ago

I've given up on this issue long ago and just tolerate it, i think it has something to do with importing single player Flatworlds, or at least the only other people that I've met with this issue have that in common. Hopefully I'm wrong and this is fixable, I believe a file is corrupt/incompatible and the force chuck data is unable to save on server stop, putting it into a glitched state when it starts back up.

stale[bot] commented 3 years ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

StrangeDOS commented 3 years ago

I'm still having this issue. I'm using 1.16.4 Paper. The problem is any of the chunks that I loaded using force load several versions ago will survive restarting the server. However, any NEW chunks I add using forceload will not stay loaded after a server restart.

NobleStrike commented 3 years ago

I'm still having this issue. I'm using 1.16.4 Paper. The problem is any of the chunks that I loaded using force load several versions ago will survive restarting the server. However, any NEW chunks I add using forceload will not stay loaded after a server restart.

I highly doubt this bug will ever be patched. I've had issues with this for like 2 years as well as a few other server owners. I've had to use workarounds such as lineups of command blocks to unload all glitched chunks then load them properly, they work until the next restart. This issue seems to be only an issue with users with flatworlds, are you using a flatworld?

Because most of us don't understand how world file structure is setup, we can't point out the exact issue to be patched or provide predictable replication. My guess is that the file location for force loaded chunks is corrupt or incompatible somehow, which prevents it from saving what chunks are force loaded, I assume flatworlds are a bit different making the saving malfunction. But I am no coder so I can't say anything for sure.

stale[bot] commented 3 years ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

stale[bot] commented 3 years ago

This issue has been automatically closed because it has not had activity in a long time. If the issue still applies to the most recent supported version, please open a new issue referencing this original issue.