Shopkeepers

Shopkeepers

2M Downloads

Item Issues

OmikronOverload opened this issue · 1 comments

commented

Preliminaries:

  • Shopkeepers version: Version 2.11.0
  • Spigot version: Using Paper 132

  • I have checked that my issue/question does not get answered by:
  • I have checked all open and closed issues, but none seems to fit my issue/question.

Reproduction on a fresh and up-to-date Spigot (paper) server:

I was not able ** to reproduce my issue on a freshly setup and up-to-date Spigot (Paper) server with the latest version of Shopkeepers (currently **Version 2.11.0`), with no other plugins and with no kinds of other server or client mods.

The issue:

Provide a detailed description of your problem and add as much information as possible which could help reproducing the issue.

Include:

  • Decoding of Item formats.

  • You need Shopkeepers and Mythic mobs Items, put the MythicMobs Item with Meta data into your desired Shopkeeper. Reload/Restart and the Items are no longer the same.

  • Works like a charm until you Reload, then no longer Stackable/Tradeable.

  • Should be Stackable after Reload/Restart.

  • MythicMobs, Create an item in the Config, then reload the plugin to use it in Shopkeeper.

  • After Restarting or Reloading Shopkeepers the Item is different then the created one but still looks exactly the same.

  • My Latest Log is 20 Mb in Size, uploading it afterwards.

  • If modified from default: Plugin configurations.

  • If you look at your Multiverse Inventory data it look like this.
    {"==":"org.bukkit.inventory.ItemStack","v":2567,"type":"FIRE_CHARGE","meta":{"==":"ItemMeta","meta-type":"UNSPECIFIC","display-name":"§cSeele einer Korrumpierten Gestalt","lore":["§cKann mit einem korrumpierten Schluessel fusioniert werden"],"ItemFlags":["HIDE_ATTRIBUTES"]}}}
    {"==":"org.bukkit.inventory.ItemStack","v":2567,"type":"FIRE_CHARGE","meta":{"==":"ItemMeta","meta-type":"UNSPECIFIC","display-name":"§cSeele einer Korrumpierten Gestalt","lore":["§cKann mit einem korrumpierten Schluessel fusioniert werden"],"ItemFlags":["HIDE_ATTRIBUTES"]}}
    When you look closer you will see that there are 3 Curly brackets on the first item which is the Shopkeepers Item, on the other one there are only 2, making the Items completely useless for players.

  • Additional Info: We are currently having an Event where Custom Mobs drop key and Souls which players can Trade for Keys to Open LootCrates.

commented

I can't see the specific difference in those two items above (the curly brackets are probably not the difference here, because items are saved by their contents, not their exact representation). If you want to compare the actualy item data, you have to compare the items' nbt data, for example via external programs like NBTExplorer, or in-game via Minecraft's /data get ... command.

Regarding items not being the same before and after serialization: There is already a ticket about that here, which is why I will close this as duplicate: #578
Since the plugin uses Spigot's ItemStack serialization API to save and load items, the underyling issue is caused by this: https://hub.spigotmc.org/jira/browse/SPIGOT-5063

Specific for items created by MythicMobs, there has also been this issue ticket in this: https://git.lumine.io/mythiccraft/MythicMobs/-/issues/90

On a side note: This issue should not affect items that conform to Spigot's internal item data format. The Spigot-side of this issue is about retaining the data of non-conforming items during item serialiazation. So a fix for this could either be to have Spigot retain this non-conforming item data, or for MythicMobs to create items with conforming data in the first place.