• Type: Bug
    • Resolution: Fixed
    • Priority: Minor
    • None
    • Affects Version/s: None
    • Environment:

      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?)

       

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

              Created:
              Updated:
              Resolved: