Folia icon indicating copy to clipboard operation
Folia copied to clipboard

nether portal cannot load chunk centered on itself 3*3 chunks as vanilla

Open cgw2023 opened this issue 1 year ago • 1 comments

Expected behavior

nether portal under normal circumstances can be loaded centered on itself 3*3 chunks

Observed/Actual behavior

nether portal chunk loading centered on itself 3*3 chunks seems to have failed

Steps/models to reproduce

Whenever an entity is teleported through a nether portal, the chunk at the linked portal gets load ticket with load level of 30, meaning that it is fully loaded and can process entities. This load level also spreads to adjacent chunks but they get lower for each chunk. This results in 8 more fully loaded "entity ticking" chunks with gradually fewer loaded chunks further out.

These chunks remain loaded for 15 seconds but this timer gets refreshed each time the entity passes through the portal (including mobs wandering through it from either direction). This can be used to permanently load chunks, creating a "chunk loader". Permanently-loaded chunks created using chunk loaders create a considerable amount of lag.

https://youtu.be/yVc1LPf_LhY

Plugin and Datapack List

Bukkit Plugins: AnnouncerPlus, AntiPopup, Attollo, AutoTreeChop, AxInventoryRestore, AxShulkers, BetterRTP, BlockLocker, BlueMap, BungeeGuard Chunky, ChunkyBorder, CMILib, CodFrame, CoreProtect, DecentHolograms, DeluxeMenus, DiscordSRV, DragonDropElytra, Essentials EssentialsChat, EssentialsGeoIP, EssentialsProtect, EssentialsSpawn, FancyNpcs, floodgate, FoliaFlow, GreenChunk, GSit, HeadDrop Kaiivoid, LuckPerms, Matrix, PlaceholderAPI, PlayerWarps, ProtocolLib, Residence, ShulkerRespawner, spark, TAB-Bridge Vault, ViaBackwards, ViaVersion, VillagerOptimizer, zAuctionHouseV3

Folia version

This server is running Folia version git-Folia-"3843340" (MC: 1.20.2) (Implementing API version 1.20.2-R0.1-SNAPSHOT) (Git: https://github.com/PaperMC/Folia/commit/3843340cba3aac68f5ab54bd8a0cafd2670a9458 on dev/1.20.2)

Other

No response

cgw2023 avatar Feb 15 '24 13:02 cgw2023

Any mechanic that relies on precise timing of these tickets cannot work on Folia. The ticket is added before the entity is teleported, but Folia adds some number of ticks of delay before the entity arrives to the target location. This doesn't take in account the fact that regions tick in parallel and as a result there is no synchronisation in the ticks between them. Folia additionally enforces that the chunks in the entity's bounding box is loaded, which may add yet more delay after the ticket is added before the entity arrives.

I can see locally that the ticket is being added, so it is definitely not due to a lack of the ticket being added.

So if your machine relies on the ticket being there for exactly 300 ticks, it can't work. Do you know how tight the timing is on this machine?

Spottedleaf avatar Feb 21 '24 00:02 Spottedleaf