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

Filled maps not saving in 1.13

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Minor Minor
    • None
    • None
    • Linux / Mac OS

    • git-Spigot-a85f7ec-5870145

      Using Bukkit.createMap returns a new MapView with a fresh id, but unless a FILLED_MAP ItemStack is created and given to a player, that map id will not be saved in a vanilla world/data/map_XX.dat file. This will cause that map to fail to load on server restart.

      Prior to 1.13, the map data file would always get created.

      Test plugin: https://github.com/NathanWolf/Bukkit-Unit-Tests/tree/1.13-Maps

      jar: https://github.com/NathanWolf/Bukkit-Unit-Tests/releases/tag/1.13-Maps

       

      Use /createmap to see the problem. A new mapview and id will be created, but no .dat file appears. If attempting to load that map on reload, it will fail (the plugin does not test this)

      Using /givemap instead, this will create an ItemStack and give it to the player, which will cause a .dat file to be created.

      Also, friendly reminder that it'd be nice to have a MapMeta.get/setId, and that maybe MapView.getId shouldn't be deprecated (I would bet maps will always have an integer id, though I think maybe they can go outside the bounds of a short now?)

       

            md_5 md_5
            NathanWolf Nathan Wolf
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: