Uploaded image for project: 'Spigot'
  1. Spigot
  2. SPIGOT-6934

Plugin chunk load tickets dont tick Block/entities as of 1.18

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Minor Minor
    • None
    • None
    • None
    • Windows 7 (lol) JDK 17

    • This server is running CraftBukkit version dev-Spigot-6edb62f-de95135 (MC: 1.18.1) (Implementing API version 1.18.1-R0.1-SNAPSHOT)
    • Tested with BKCommonLib/Traincarts
    • Yes

      As of Minecraft 1.18 the block/entity/tileentity ticking tickets are a separate structure inside the Chunk distance map. Spigot calls addTicketAtLevel, which only adds it to one of two stores. The result is that the chunk is loaded, but that entities/blocks/redstone/physics/etc. don't get ticked at all.

      This is fixed by calling the newly added addRegionTicket/removeRegionTicket, which adds them to both distance tracking stores. (see screenshot)

      It may be required to add a separate option for this. In some cases you may not want to also tick entities inside, for example, if you just want to read or modify block data at those coordinates.

      But in the vast majority of cases I'd imagine plugins use this as chunk loaders, and then you do want all that ticking to occur.

      I can confirm that calling those methods instead works. A hopper redstone clock works again.

            Unassigned Unassigned
            bergerkiller Irmo van den Berge
            Votes:
            1 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: