FastCraft

FastCraft

138k Downloads

Conflict issue with ProRecipes?

MoCaveman opened this issue · 16 comments

commented

Description

getting a null pointer error in console with multiple warnings
03.11 13:56:56 [Server] WARN java.lang.NullPointerException

Debug Output

Show **/fcadmin debug** output

03.11 14:50:44 [Server] INFO ========== FastCraft+ Debug Info ==========
03.11 14:50:44 [Server] INFO Versions:
03.11 14:50:44 [Server] INFO FastCraft+ v0.26
03.11 14:50:44 [Server] INFO git-Spigot-850da7e-b6490da (MC: 1.10.2)
03.11 14:50:44 [Server] INFO 1.10.2-R0.1-SNAPSHOT
03.11 14:50:44 [Server] INFO Java 1.8.0_111
03.11 14:50:44 [Server] INFO Other Plugins (23):
03.11 14:50:44 [Server] INFO AdvancedBan 2.0.5
03.11 14:50:44 [Server] INFO AutomaticInventory 2.7.1
03.11 14:50:44 [Server] INFO CS-CoreLib 1.5.10
03.11 14:50:44 [Server] INFO Essentials TeamCity
03.11 14:50:44 [Server] INFO GraviTree 2.7.2
03.11 14:50:44 [Server] INFO GriefPrevention 15.3
03.11 14:50:44 [Server] INFO GriefPreventionFlags 4.5.2
03.11 14:50:44 [Server] INFO HorseInfoTags 1.0.1
03.11 14:50:44 [Server] INFO NightVision 1.7
03.11 14:50:44 [Server] INFO PermissionsEx 1.23.4
03.11 14:50:44 [Server] INFO PickYourPic 1.2
03.11 14:50:44 [Server] INFO PortableHorses 1.8-SNAPSHOT
03.11 14:50:44 [Server] INFO Portables_Lite 1.1
03.11 14:50:44 [Server] INFO ProRecipes 1.8.5
03.11 14:50:44 [Server] INFO ProtocolLib 4.1.0
03.11 14:50:44 [Server] INFO RandomTeleport 1.7.4 (build #20)
03.11 14:50:44 [Server] INFO SilkSpawners 3.7.3
03.11 14:50:44 [Server] INFO SimpleAlias 1.6.2
03.11 14:50:44 [Server] INFO TreasureChest 8.5
03.11 14:50:44 [Server] INFO Vault 1.5.6-b49
03.11 14:50:44 [Server] INFO VillageInfo 6
03.11 14:50:44 [Server] INFO WorldEdit 6.1.3;7a097ca
03.11 14:50:44 [Server] INFO WorldGuard 6.1.2;e38d98d
03.11 14:50:44 [Server] INFO ===========================================

Stack Trace

Show stack trace

03.11 13:56:56 [Server] INFO Enabling FastCraftPlus v0.26
03.11 13:56:56 [Server] WARN java.lang.NullPointerException
03.11 13:56:56 [Server] WARN at co.kepler.fastcraftplus.recipes.FastRecipe.getDisplayResult(FastRecipe.java:114)
03.11 13:56:56 [Server] WARN at co.kepler.fastcraftplus.recipes.FastRecipe.hashCode(FastRecipe.java:271)
03.11 13:56:56 [Server] WARN at java.util.HashMap.hash(Unknown Source)
03.11 13:56:56 [Server] WARN at java.util.HashMap.put(Unknown Source)
03.11 13:56:56 [Server] WARN at java.util.HashSet.add(Unknown Source)
03.11 13:56:56 [Server] WARN at co.kepler.fastcraftplus.compat.Compat_ProRecipes.getRecipes(Compat_ProRecipes.java:62)
03.11 13:56:56 [Server] WARN at co.kepler.fastcraftplus.compat.RecipeCompatManager.loadCompat(RecipeCompatManager.java:50)
03.11 13:56:56 [Server] WARN at co.kepler.fastcraftplus.compat.RecipeCompatManager.<init>(RecipeCompatManager.java:30)
commented

I believe v0.26.1 resolves this. Please try it and let me know if the issue is fixed.

commented

Thank you very much. I love the plugin and the next time I can afford I
hope to donate to your brillant future. don't get too excited, I am rather
limitted.... But seriously thanks.

WC Sleeper
MoCaveman

On Sat, Nov 12, 2016 at 5:37 PM, Ben Woodworth notifications@github.com
wrote:

I believe v0.26.1 resolves this. Please try it and let me know if the
issue is fixed.


You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
#89 (comment),
or mute the thread
https://github.com/notifications/unsubscribe-auth/ARofg-ZH77vaq7e9xY35zvdCAG4romxFks5q9k2ggaJpZM4Ko9e4
.

commented

Ben,
My console is still showing,

12.11 18:53:13 [Server] INFO at
org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:487)
[Spigot.jar:git-Spigot-850da7e-b6490da] 12.11 18:53:13 [Server] INFO at
org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:502)
[Spigot.jar:git-Spigot-850da7e-b6490da] 12.11 18:53:13 [Server] INFO at
org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62)
~[Spigot.jar:git-Spigot-850da7e-b6490da] 12.11 18:53:13 [Server] INFO at
org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:306)
~[Spigot.jar:git-Spigot-850da7e-b6490da] 12.11 18:53:13 [Server] INFO
org.bukkit.event.EventException
12.11 18:53:13 [Server] ERROR Could not pass event CraftItemEvent to
ProRecipes v1.8.5 12.11 18:53:13 [Server] INFO ... 26 more 12.11 18:53:13
[Server] INFO at
org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:302)
~[Spigot.jar:git-Spigot-850da7e-b6490da] 12.11 18:53:13 [Server] INFO at
java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_111] 12.11
18:53:13 [Server] INFO at
sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
~[?:1.8.0_111] 12.11 18:53:13 [Server] INFO at
sun.reflect.GeneratedMethodAccessor169.invoke(Unknown Source) ~[?:?] 12.11
18:53:13 [Server] INFO at mc.mcgrizzz.prorecipes.bg.a(Recipes.java:1556)
~[?:?] 12.11 18:53:13 [Server] INFO at java.util.ArrayList.get(Unknown
Source) ~[?:1.8.0_111] 12.11 18:53:13 [Server] INFO at
java.util.ArrayList.rangeCheck(Unknown Source) ~[?:1.8.0_111] 12.11 18:53:13
[Server] INFO Caused by: java.lang.IndexOutOfBoundsException: Index: 0,
Size: 0 12.11 18:53:13 [Server] INFO at java.lang.Thread.run(Unknown
Source) [?:1.8.0_111] 12.11 18:53:13 [Server] INFO at

On Sat, Nov 12, 2016 at 7:50 PM, William Sleeper wcsleeper@gmail.com
wrote:

Thank you very much. I love the plugin and the next time I can afford I
hope to donate to your brillant future. don't get too excited, I am rather
limitted.... But seriously thanks.

WC Sleeper
MoCaveman

On Sat, Nov 12, 2016 at 5:37 PM, Ben Woodworth notifications@github.com
wrote:

I believe v0.26.1 resolves this. Please try it and let me know if the
issue is fixed.


You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
#89 (comment),
or mute the thread
https://github.com/notifications/unsubscribe-auth/ARofg-ZH77vaq7e9xY35zvdCAG4romxFks5q9k2ggaJpZM4Ko9e4
.

commented

I'll continue looking into it. Now it's being thrown by ProRecipes, so I'll see if there's any bad data I'm sending that could be causing the issue.

It looks like it's being caused by a recipe that has no results. Could you see if you are registering any recipes like that?

For my own reference:


12.11 18:53:13 [Server] INFO at java.lang.Thread.run(Unknown Source) [?:1.8.0_111]
12.11 18:53:13 [Server] INFO Caused by: java.lang.IndexOutOfBoundsException: Index: 0, Size: 0
12.11 18:53:13 [Server] INFO at java.util.ArrayList.rangeCheck(Unknown Source) ~[?:1.8.0_111]
12.11 18:53:13 [Server] INFO at java.util.ArrayList.get(Unknown Source) ~[?:1.8.0_111]
12.11 18:53:13 [Server] INFO at mc.mcgrizzz.prorecipes.bg.a(Recipes.java:1556) ~[?:?]
12.11 18:53:13 [Server] INFO at sun.reflect.GeneratedMethodAccessor169.invoke(Unknown Source) ~[?:?]
12.11 18:53:13 [Server] INFO at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_111]
12.11 18:53:13 [Server] INFO at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_111]
12.11 18:53:13 [Server] INFO at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:302) ~[Spigot.jar:git-Spigot-850da7e-b6490da]
12.11 18:53:13 [Server] INFO ... 26 more
12.11 18:53:13 [Server] ERROR Could not pass event CraftItemEvent to ProRecipes v1.8.5
12.11 18:53:13 [Server] INFO org.bukkit.event.EventException
12.11 18:53:13 [Server] INFO at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:306) ~[Spigot.jar:git-Spigot-850da7e-b6490da]
12.11 18:53:13 [Server] INFO at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) ~[Spigot.jar:git-Spigot-850da7e-b6490da]
12.11 18:53:13 [Server] INFO at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:502) [Spigot.jar:git-Spigot-850da7e-b6490da]
12.11 18:53:13 [Server] INFO at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:487) [Spigot.jar:git-Spigot-850da7e-b6490da]
commented

Thank you sir for your fast reaction. I appologize that I am off to bed on
reciept of this message. Due to my health I can not push harder tonight.

I will check, I know a "noob admin" that was making erros in the recipies
frequent. I will get back to you tommorow.

Thanks again,

WCSleeper
MoCaveman
http://www.Caveland.US

On Sat, Nov 12, 2016 at 10:10 PM, Ben Woodworth notifications@github.com
wrote:

I'll continue looking into it. Now it's being thrown by ProRecipes, so
I'll see if there's any bad data I'm sending that could be causing the
issue.

It looks like it's being caused by a recipe that has no results. Could you
see if you are registering any recipes like that?

For my own reference:

12.11 18:53:13 [Server] INFO at java.lang.Thread.run(Unknown Source) [?:1.8.0_111]
12.11 18:53:13 [Server] INFO Caused by: java.lang.IndexOutOfBoundsException: Index: 0, Size: 0
12.11 18:53:13 [Server] INFO at java.util.ArrayList.rangeCheck(Unknown Source) ~[?:1.8.0_111]
12.11 18:53:13 [Server] INFO at java.util.ArrayList.get(Unknown Source) ~[?:1.8.0_111]
12.11 18:53:13 [Server] INFO at mc.mcgrizzz.prorecipes.bg.a(Recipes.java:1556) ~[?:?]
12.11 18:53:13 [Server] INFO at sun.reflect.GeneratedMethodAccessor169.invoke(Unknown Source) ~[?:?]
12.11 18:53:13 [Server] INFO at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_111]
12.11 18:53:13 [Server] INFO at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_111]
12.11 18:53:13 [Server] INFO at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:302) ~[Spigot.jar:git-Spigot-850da7e-b6490da]
12.11 18:53:13 [Server] INFO ... 26 more
12.11 18:53:13 [Server] ERROR Could not pass event CraftItemEvent to ProRecipes v1.8.5
12.11 18:53:13 [Server] INFO org.bukkit.event.EventException
12.11 18:53:13 [Server] INFO at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:306) ~[Spigot.jar:git-Spigot-850da7e-b6490da]
12.11 18:53:13 [Server] INFO at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) ~[Spigot.jar:git-Spigot-850da7e-b6490da]
12.11 18:53:13 [Server] INFO at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:502) [Spigot.jar:git-Spigot-850da7e-b6490da]
12.11 18:53:13 [Server] INFO at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:487) [Spigot.jar:git-Spigot-850da7e-b6490da]


You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
#89 (comment),
or mute the thread
https://github.com/notifications/unsubscribe-auth/ARofgyjG0WQarJO1N43ZTEVAyh-jAYNVks5q9o3BgaJpZM4Ko9e4
.

commented

Here is the recipe.yml file in question.

recipes.zip

commented

Thanks! I'll look into it later when I get a chance.

Here're recipe.yml files from you and Joapple. I'll look into them later on.

MoCaveman's recipe.yml

shaped:
  '0':
    structure: a_b|c_d|null
    characters:
      a:
        ==: org.bukkit.inventory.ItemStack
        type: ICE
      b:
        ==: org.bukkit.inventory.ItemStack
        type: DIRT
      c:
        ==: org.bukkit.inventory.ItemStack
        type: DIRT
      d:
        ==: org.bukkit.inventory.ItemStack
        type: ICE
    result:
      ==: org.bukkit.inventory.ItemStack
      type: CLAY_BALL
  '1':
    structure: a_b_c|d_e_f|g_h_i
    characters:
      a:
        ==: org.bukkit.inventory.ItemStack
        type: AIR
        damage: -1
        amount: 0
      b:
        ==: org.bukkit.inventory.ItemStack
        type: ENDER_PEARL
      c:
        ==: org.bukkit.inventory.ItemStack
        type: AIR
        damage: -1
        amount: 0
      d:
        ==: org.bukkit.inventory.ItemStack
        type: ENDER_PEARL
      e:
        ==: org.bukkit.inventory.ItemStack
        type: ENDER_PEARL
      f:
        ==: org.bukkit.inventory.ItemStack
        type: ENDER_PEARL
      g:
        ==: org.bukkit.inventory.ItemStack
        type: AIR
        damage: -1
        amount: 0
      h:
        ==: org.bukkit.inventory.ItemStack
        type: ENDER_PEARL
      i:
        ==: org.bukkit.inventory.ItemStack
        type: AIR
        damage: -1
        amount: 0
    result:
      ==: org.bukkit.inventory.ItemStack
      type: INK_SACK
      damage: 4
  '2':
    structure: a_b_c|d_e_f|null
    characters:
      a:
        ==: org.bukkit.inventory.ItemStack
        type: AIR
        damage: -1
        amount: 0
      b:
        ==: org.bukkit.inventory.ItemStack
        type: ENDER_PEARL
      c:
        ==: org.bukkit.inventory.ItemStack
        type: AIR
        damage: -1
        amount: 0
      d:
        ==: org.bukkit.inventory.ItemStack
        type: ENDER_PEARL
      e:
        ==: org.bukkit.inventory.ItemStack
        type: ENDER_PEARL
      f:
        ==: org.bukkit.inventory.ItemStack
        type: ENDER_PEARL
    result:
      ==: org.bukkit.inventory.ItemStack
      type: REDSTONE
  '3':
    structure: a_b_c|d_e_f|g_h_i
    characters:
      a:
        ==: org.bukkit.inventory.ItemStack
        type: SAND
      b:
        ==: org.bukkit.inventory.ItemStack
        type: SAND
      c:
        ==: org.bukkit.inventory.ItemStack
        type: SAND
      d:
        ==: org.bukkit.inventory.ItemStack
        type: SAND
      e:
        ==: org.bukkit.inventory.ItemStack
        type: RED_ROSE
      f:
        ==: org.bukkit.inventory.ItemStack
        type: SAND
      g:
        ==: org.bukkit.inventory.ItemStack
        type: SAND
      h:
        ==: org.bukkit.inventory.ItemStack
        type: SAND
      i:
        ==: org.bukkit.inventory.ItemStack
        type: SAND
    result:
      ==: org.bukkit.inventory.ItemStack
      type: SAND
      damage: 1
      amount: 8
  '4':
    structure: a_b_c|d_e_f|g_h_i
    characters:
      a:
        ==: org.bukkit.inventory.ItemStack
        type: ROTTEN_FLESH
      b:
        ==: org.bukkit.inventory.ItemStack
        type: ROTTEN_FLESH
      c:
        ==: org.bukkit.inventory.ItemStack
        type: ROTTEN_FLESH
      d:
        ==: org.bukkit.inventory.ItemStack
        type: ROTTEN_FLESH
      e:
        ==: org.bukkit.inventory.ItemStack
        type: ROTTEN_FLESH
      f:
        ==: org.bukkit.inventory.ItemStack
        type: ROTTEN_FLESH
      g:
        ==: org.bukkit.inventory.ItemStack
        type: ROTTEN_FLESH
      h:
        ==: org.bukkit.inventory.ItemStack
        type: ROTTEN_FLESH
      i:
        ==: org.bukkit.inventory.ItemStack
        type: ROTTEN_FLESH
    result:
      ==: org.bukkit.inventory.ItemStack
      type: LEATHER
  '5':
    structure: a_b_c|d_e_f|g_h_i
    characters:
      a:
        ==: org.bukkit.inventory.ItemStack
        type: COAL
        damage: 1
      b:
        ==: org.bukkit.inventory.ItemStack
        type: COAL
        damage: 1
      c:
        ==: org.bukkit.inventory.ItemStack
        type: COAL
        damage: 1
      d:
        ==: org.bukkit.inventory.ItemStack
        type: COAL
        damage: 1
      e:
        ==: org.bukkit.inventory.ItemStack
        type: AIR
        damage: -1
        amount: 0
      f:
        ==: org.bukkit.inventory.ItemStack
        type: COAL
        damage: 1
      g:
        ==: org.bukkit.inventory.ItemStack
        type: COAL
        damage: 1
      h:
        ==: org.bukkit.inventory.ItemStack
        type: COAL
        damage: 1
      i:
        ==: org.bukkit.inventory.ItemStack
        type: COAL
        damage: 1
    result:
      ==: org.bukkit.inventory.ItemStack
      type: COAL_BLOCK
  '6':
    structure: a_b_c|d_e_f|g_h_i
    characters:
      a:
        ==: org.bukkit.inventory.ItemStack
        type: DIRT
        damage: 1
      b:
        ==: org.bukkit.inventory.ItemStack
        type: DIRT
        damage: 1
      c:
        ==: org.bukkit.inventory.ItemStack
        type: DIRT
        damage: 1
      d:
        ==: org.bukkit.inventory.ItemStack
        type: DIRT
        damage: 1
      e:
        ==: org.bukkit.inventory.ItemStack
        type: RAW_FISH
        damage: 3
      f:
        ==: org.bukkit.inventory.ItemStack
        type: DIRT
        damage: 1
      g:
        ==: org.bukkit.inventory.ItemStack
        type: DIRT
        damage: 1
      h:
        ==: org.bukkit.inventory.ItemStack
        type: DIRT
        damage: 1
      i:
        ==: org.bukkit.inventory.ItemStack
        type: DIRT
        damage: 1
    result:
      ==: org.bukkit.inventory.ItemStack
      type: SPONGE
  '7':
    structure: a|null|null
    characters:
      a:
        ==: org.bukkit.inventory.ItemStack
        type: SANDSTONE
    result:
      ==: org.bukkit.inventory.ItemStack
      type: SAND
      amount: 4
shapeless:
  '0':
    items:
      '1':
        ==: org.bukkit.inventory.ItemStack
        type: ICE
      '2':
        ==: org.bukkit.inventory.ItemStack
        type: ICE
      '3':
        ==: org.bukkit.inventory.ItemStack
        type: ICE
      '4':
        ==: org.bukkit.inventory.ItemStack
        type: ICE
    result:
      ==: org.bukkit.inventory.ItemStack
      type: PACKED_ICE
furnaces:
  '0':
    result:
      ==: org.bukkit.inventory.ItemStack
      type: QUARTZ
      amount: 2
    source:
      ==: org.bukkit.inventory.ItemStack
      type: STONE
      damage: 3
multi:
  '0':
    structure: a|null|null|null
    characters:
      a:
        ==: org.bukkit.inventory.ItemStack
        type: INK_SACK
        damage: 4
textures: {}

Joapple's recipe.yml

shaped:
  '0':
    structure: a|null|null
    characters:
      a:
        ==: org.bukkit.inventory.ItemStack
        type: BEDROCK
    result:
      ==: org.bukkit.inventory.ItemStack
      type: BEDROCK
shapeless:
  '0':
    items:
      '1':
        ==: org.bukkit.inventory.ItemStack
        type: SKULL_ITEM
        damage: 3
        meta:
          ==: ItemMeta
          meta-type: SKULL
          display-name: §6TalaCorp Gadget Component
          lore:
          - §f
          - §7Used in the construction of a §dTalaCorp
          - §dGadget Core§7, which is then used to make
          - §7a unique §dTalaCorp Gadget§7. To construct,
          - '§7combine the following:'
          - §f
          - §e8x TalaCorp Gadget Component
          - §e1x TalaCorp Gadget Power Source
          - §f
          - §aPower sources can be purchased from
          - §athe TalaCorp Token Shop.
          internal: H4sIAAAAAAAAAFWPy26CQBiF/zZtIqSP0S3JONxk2RQThzhYUW6zG2QQ6Iw1CEZ8qj5i6a5dnZzb4tMBdHjZfQ5SfnRfVSPFDB5JCa9FZSMX88IoPNczrNLyDF5ZC0MUC87d0nG5g3XQp9NZdH0jLhrMenHrh05cdAB4mMFzwuUg4FuMAWJZjcoskIeROJPf75DckPbsklMyFu/EIWrqV2/OevT+bO2ep7bMzaBmp+1QqAStzUiKVTQ/qPga7pcjxcTa+EcUqi0OVXzLMZNU5Thso5reWc38SdugoekS5fdAURUj5hM7THNEUybDNLZpK5tNGpvMPzZVNvdAA23XHE/8F+Y/y9Mcm9aUwA+deURIOAEAAA==
    result:
      ==: org.bukkit.inventory.ItemStack
      type: SKULL_ITEM
      damage: 3
      amount: 16
      meta:
        ==: ItemMeta
        meta-type: SKULL
        display-name: §6Intricate Gadget Component
        lore:
        - §f
        - §7Combined at a crafting table to create
        - §7the highest level of gadgets, or used to
        - §7upgrade certain existing gadgets.
        internal: H4sIAAAAAAAAAFWPy26CQBiF/zZtIqSP0S3JONxk2RQThzhYUW6zG2QQ6Iw1CEZ8qj5i6a5dnZzb4tMBdHjZfQ5SfnRfVSPFDB5JCa9FZSMX88IoPNczrNLyDF5ZC0MUC87d0nG5g3XQp9NZdH0jLhrMenHrh05cdAB4mMFzwuUg4FuMAWJZjcoskIeROJPf75DckPbsklMyFu/EIWrqV2/OevT+bO2ep7bMzaBmp+1QqAStzUiKVTQ/qPga7pcjxcTa+EcUqi0OVXzLMZNU5Thso5reWc38SdugoekS5fdAURUj5hM7THNEUybDNLZpK5tNGpvMPzZVNvdAA23XHE/8F+Y/y9Mcm9aUwA+deURIOAEAAA==
  '1':
    items:
      '1':
        ==: org.bukkit.inventory.ItemStack
        type: SKULL_ITEM
        damage: 3
        amount: 64
        meta:
          ==: ItemMeta
          meta-type: SKULL
          display-name: §6Intricate Gadget Component
          lore:
          - §f
          - §7Combined at a crafting table to create
          - §7the highest level of gadgets, or used to
          - §7upgrade certain existing gadgets.
          internal: H4sIAAAAAAAAAFWPy26CQBiF/zZtIqSP0S3JONxk2RQThzhYUW6zG2QQ6Iw1CEZ8qj5i6a5dnZzb4tMBdHjZfQ5SfnRfVSPFDB5JCa9FZSMX88IoPNczrNLyDF5ZC0MUC87d0nG5g3XQp9NZdH0jLhrMenHrh05cdAB4mMFzwuUg4FuMAWJZjcoskIeROJPf75DckPbsklMyFu/EIWrqV2/OevT+bO2ep7bMzaBmp+1QqAStzUiKVTQ/qPga7pcjxcTa+EcUqi0OVXzLMZNU5Thso5reWc38SdugoekS5fdAURUj5hM7THNEUybDNLZpK5tNGpvMPzZVNvdAA23XHE/8F+Y/y9Mcm9aUwA+deURIOAEAAA==
      '2':
        ==: org.bukkit.inventory.ItemStack
        type: SKULL_ITEM
        damage: 3
        amount: 64
        meta:
          ==: ItemMeta
          meta-type: SKULL
          display-name: §6Intricate Gadget Component
          lore:
          - §f
          - §7Combined at a crafting table to create
          - §7the highest level of gadgets, or used to
          - §7upgrade certain existing gadgets.
          internal: H4sIAAAAAAAAAFWPy26CQBiF/zZtIqSP0S3JONxk2RQThzhYUW6zG2QQ6Iw1CEZ8qj5i6a5dnZzb4tMBdHjZfQ5SfnRfVSPFDB5JCa9FZSMX88IoPNczrNLyDF5ZC0MUC87d0nG5g3XQp9NZdH0jLhrMenHrh05cdAB4mMFzwuUg4FuMAWJZjcoskIeROJPf75DckPbsklMyFu/EIWrqV2/OevT+bO2ep7bMzaBmp+1QqAStzUiKVTQ/qPga7pcjxcTa+EcUqi0OVXzLMZNU5Thso5reWc38SdugoekS5fdAURUj5hM7THNEUybDNLZpK5tNGpvMPzZVNvdAA23XHE/8F+Y/y9Mcm9aUwA+deURIOAEAAA==
    result:
      ==: org.bukkit.inventory.ItemStack
      type: SKULL_ITEM
      damage: 3
      meta:
        ==: ItemMeta
        meta-type: SKULL
        display-name: §d§lPortable EnderChest
        lore:
        - §f
        - §7The latest in TalaCorp storage technology,
        - §7the Portable EnderChest will allow you to
        - §7access your EnderChest from anywhere.
        - §f
        - §e§lRight-Click to open.
        internal: H4sIAAAAAAAAAFWPy06DQBiFf40mLfEx3JLADJey6MJIYocUKi29zOyYMrTADDYUKvhUPqK40+X5zjmLTwPQ4GlTdVK+Nx95IcUE7kkGzzjn3kx4ru5myNOtPMP6jGNb55mZzoTFkYtyDbTxdBFNW4jrFCat6NuuEVcNAO4m8LhLZSfgWwyBwQ5nIzsE8jgQZ8zJxpArUl5cUu8G/kocosZ+8eIsB+/P1m7TvS0pDs6sjjuudsYSr6VYrM2j2t5owkr6FVuRCgeqtj1FxGZvIysDGSVRxXx5DtHWpsnJClGg6H5dhGU29pUZKdqv/Aoxn36GihihTzGpTS+P53OYwnRTnOr0V+a/y4OJsDUS+AGkw9MzOAEAAA==
  '2':
    items:
      '1':
        ==: org.bukkit.inventory.ItemStack
        type: SKULL_ITEM
        damage: 3
        amount: 64
        meta:
          ==: ItemMeta
          meta-type: SKULL
          display-name: §6Intricate Gadget Component
          lore:
          - §f
          - §7Combined at a crafting table to create
          - §7the highest level of gadgets, or used to
          - §7upgrade certain existing gadgets.
          internal: H4sIAAAAAAAAAFWPy26CQBiF/zZtIqSP0S3JONxk2RQThzhYUW6zG2QQ6Iw1CEZ8qj5i6a5dnZzb4tMBdHjZfQ5SfnRfVSPFDB5JCa9FZSMX88IoPNczrNLyDF5ZC0MUC87d0nG5g3XQp9NZdH0jLhrMenHrh05cdAB4mMFzwuUg4FuMAWJZjcoskIeROJPf75DckPbsklMyFu/EIWrqV2/OevT+bO2ep7bMzaBmp+1QqAStzUiKVTQ/qPga7pcjxcTa+EcUqi0OVXzLMZNU5Thso5reWc38SdugoekS5fdAURUj5hM7THNEUybDNLZpK5tNGpvMPzZVNvdAA23XHE/8F+Y/y9Mcm9aUwA+deURIOAEAAA==
      '2':
        ==: org.bukkit.inventory.ItemStack
        type: SKULL_ITEM
        damage: 3
        amount: 32
        meta:
          ==: ItemMeta
          meta-type: SKULL
          display-name: §6Intricate Gadget Component
          lore:
          - §f
          - §7Combined at a crafting table to create
          - §7the highest level of gadgets, or used to
          - §7upgrade certain existing gadgets.
          internal: H4sIAAAAAAAAAFWPy26CQBiF/zZtIqSP0S3JONxk2RQThzhYUW6zG2QQ6Iw1CEZ8qj5i6a5dnZzb4tMBdHjZfQ5SfnRfVSPFDB5JCa9FZSMX88IoPNczrNLyDF5ZC0MUC87d0nG5g3XQp9NZdH0jLhrMenHrh05cdAB4mMFzwuUg4FuMAWJZjcoskIeROJPf75DckPbsklMyFu/EIWrqV2/OevT+bO2ep7bMzaBmp+1QqAStzUiKVTQ/qPga7pcjxcTa+EcUqi0OVXzLMZNU5Thso5reWc38SdugoekS5fdAURUj5hM7THNEUybDNLZpK5tNGpvMPzZVNvdAA23XHE/8F+Y/y9Mcm9aUwA+deURIOAEAAA==
    result:
      ==: org.bukkit.inventory.ItemStack
      type: ELYTRA
      meta:
        ==: ItemMeta
        meta-type: UNSPECIFIC
        display-name: §d§lElytra Model X
        lore:
        - §f
        - §7The latest in TalaCorp flight technology,
        - §7the Model X will allow you to glide through
        - §7the air in style. Can be upgraded with extra
        - §7features.
        - §f
        - §e§lRight-Click to upgrade.
        Unbreakable: true
  '3':
    items:
      '1':
        ==: org.bukkit.inventory.ItemStack
        type: LEASH
        meta:
          ==: ItemMeta
          meta-type: UNSPECIFIC
          display-name: §d§lTalaCorp Creature Catcher
          lore:
          - §f
          - §7The latest in TalaCorp capture technology,
          - §7The creature catcher will allow you to
          - §7trap animals and monsters in a spawn egg
          - §7to be released at a later time.
          - §f
          - §e§lLeft-Click on mob to capture.
          - §c§lRequires 3 redstone per capture.
    result:
      ==: org.bukkit.inventory.ItemStack
      type: LEASH
      meta:
        ==: ItemMeta
        meta-type: UNSPECIFIC
        display-name: §d§lCreature Catcher 9000
        lore:
        - §f
        - §7The latest in TalaCorp capture technology,
        - §7The creature catcher will allow you to
        - §7trap animals and monsters in a spawn egg
        - §7to be released at a later time.
        - §f
        - §e§lLeft-Click on mob to capture.
        - §c§lRequires 3 redstone per capture.
        Unbreakable: true
  '4':
    items:
      '1':
        ==: org.bukkit.inventory.ItemStack
        type: SKULL_ITEM
        damage: 3
        amount: 64
        meta:
          ==: ItemMeta
          meta-type: SKULL
          display-name: §6Intricate Gadget Component
          lore:
          - §f
          - §7Combined at a crafting table to create
          - §7the highest level of gadgets, or used to
          - §7upgrade certain existing gadgets.
          internal: H4sIAAAAAAAAAFWPy26CQBiF/zZtIqSP0S3JONxk2RQThzhYUW6zG2QQ6Iw1CEZ8qj5i6a5dnZzb4tMBdHjZfQ5SfnRfVSPFDB5JCa9FZSMX88IoPNczrNLyDF5ZC0MUC87d0nG5g3XQp9NZdH0jLhrMenHrh05cdAB4mMFzwuUg4FuMAWJZjcoskIeROJPf75DckPbsklMyFu/EIWrqV2/OevT+bO2ep7bMzaBmp+1QqAStzUiKVTQ/qPga7pcjxcTa+EcUqi0OVXzLMZNU5Thso5reWc38SdugoekS5fdAURUj5hM7THNEUybDNLZpK5tNGpvMPzZVNvdAA23XHE/8F+Y/y9Mcm9aUwA+deURIOAEAAA==
      '2':
        ==: org.bukkit.inventory.ItemStack
        type: SKULL_ITEM
        damage: 3
        amount: 16
        meta:
          ==: ItemMeta
          meta-type: SKULL
          display-name: §6Intricate Gadget Component
          lore:
          - §f
          - §7Combined at a crafting table to create
          - §7the highest level of gadgets, or used to
          - §7upgrade certain existing gadgets.
          internal: H4sIAAAAAAAAAFWPy26CQBiF/zZtIqSP0S3JONxk2RQThzhYUW6zG2QQ6Iw1CEZ8qj5i6a5dnZzb4tMBdHjZfQ5SfnRfVSPFDB5JCa9FZSMX88IoPNczrNLyDF5ZC0MUC87d0nG5g3XQp9NZdH0jLhrMenHrh05cdAB4mMFzwuUg4FuMAWJZjcoskIeROJPf75DckPbsklMyFu/EIWrqV2/OevT+bO2ep7bMzaBmp+1QqAStzUiKVTQ/qPga7pcjxcTa+EcUqi0OVXzLMZNU5Thso5reWc38SdugoekS5fdAURUj5hM7THNEUybDNLZpK5tNGpvMPzZVNvdAA23XHE/8F+Y/y9Mcm9aUwA+deURIOAEAAA==
    result:
      ==: org.bukkit.inventory.ItemStack
      type: LEASH
      meta:
        ==: ItemMeta
        meta-type: UNSPECIFIC
        display-name: §d§lCreature Catcher 9000
        lore:
        - §f
        - §7The latest in TalaCorp capture technology,
        - §7The creature catcher will allow you to
        - §7trap animals and monsters in a spawn egg
        - §7to be released at a later time.
        - §f
        - §e§lLeft-Click on mob to capture.
        - §c§lRequires 3 redstone per capture.
        Unbreakable: true
  '5':
    items:
      '1':
        ==: org.bukkit.inventory.ItemStack
        type: SKULL_ITEM
        damage: 3
        amount: 64
        meta:
          ==: ItemMeta
          meta-type: SKULL
          display-name: §fSimple Gadget Component
          lore:
          - §f
          - §7Combined at a crafting table to create
          - §7low-level gadgets, or used to upgrade
          - §7certain existing gadgets.
          internal: H4sIAAAAAAAAAFWPy26CQBhG/zZtgqSP0S3JXAB14cLURofIUAFB2KEMAs5Qo2BLn6qPWLprl9/lLI4OoMNTcOqkfLu8F5UUGtyzHJ5JNskxNQvDRLZtmGaOjD2ZTgxrbFNijYtDjrEO+gCdxaWtxHUEWis+2+4irjoA3GnwGGWyE/AtegeluxLlO0ceemYPOQyQ9Fh9HrMm6vcvzGZq2Fdze91P/3ytNostmVCnTJtNt1cRWlNfipWPD2p785a8Ssjrhxs6ite55KF/SkNZpvGWuipVfMFQGs4xV26fxFvsLX3J46hMiGvxhSyT2hn4jcXr41dCopo1eFpsZjMYwSiojk32K/Pf5QETag4N/AB/8eR4OAEAAA==
    result:
      ==: org.bukkit.inventory.ItemStack
      type: IRON_PICKAXE
      meta:
        ==: ItemMeta
        meta-type: UNSPECIFIC
        display-name: §f[§7Basic Multitool§f]
        lore:
        - §r§6Universal II
        - §f
        - §7A special tool that can transform into
        - §7an axe, shovel, pickaxe, or shears
        - §7based on what the user is harvesting.
        - §7It can be upgraded to a better version
        - §7with gadget components at a crafting table.
        - §f
        - §cThis item cannot be repaired or combined
        - §cwith another item at an anvil.
        enchants:
          DURABILITY: 1
          MENDING: 1
        repair-cost: 63
  '6':
    items:
      '1':
        ==: org.bukkit.inventory.ItemStack
        type: IRON_PICKAXE
        meta:
          ==: ItemMeta
          meta-type: UNSPECIFIC
          display-name: §f[§7Basic Multitool§f]
          lore:
          - §r§6Universal II
          - §f
          - §7A special tool that can transform into
          - §7an axe, shovel, pickaxe, or shears
          - §7based on what the user is harvesting.
          - §7It can be upgraded to a better version
          - §7with gadget components at a crafting table.
          - §f
          - §cThis item cannot be repaired or combined
          - §cwith another item at an anvil.
          enchants:
            DURABILITY: 1
            MENDING: 1
          repair-cost: 63
      '2':
        ==: org.bukkit.inventory.ItemStack
        type: SKULL_ITEM
        damage: 3
        amount: 64
        meta:
          ==: ItemMeta
          meta-type: SKULL
          display-name: §fSimple Gadget Component
          lore:
          - §f
          - §7Combined at a crafting table to create
          - §7low-level gadgets, or used to upgrade
          - §7certain existing gadgets.
          internal: H4sIAAAAAAAAAFWPy26CQBhG/zZtgqSP0S3JXAB14cLURofIUAFB2KEMAs5Qo2BLn6qPWLprl9/lLI4OoMNTcOqkfLu8F5UUGtyzHJ5JNskxNQvDRLZtmGaOjD2ZTgxrbFNijYtDjrEO+gCdxaWtxHUEWis+2+4irjoA3GnwGGWyE/AtegeluxLlO0ceemYPOQyQ9Fh9HrMm6vcvzGZq2Fdze91P/3ytNostmVCnTJtNt1cRWlNfipWPD2p785a8Ssjrhxs6ite55KF/SkNZpvGWuipVfMFQGs4xV26fxFvsLX3J46hMiGvxhSyT2hn4jcXr41dCopo1eFpsZjMYwSiojk32K/Pf5QETag4N/AB/8eR4OAEAAA==
    result:
      ==: org.bukkit.inventory.ItemStack
      type: IRON_PICKAXE
      meta:
        ==: ItemMeta
        meta-type: UNSPECIFIC
        display-name: §7[§fImproved Multitool§7]
        lore:
        - §r§6Universal II
        - §f
        - §7A special tool that can transform into
        - §7an axe, shovel, pickaxe, or shears
        - §7based on what the user is harvesting.
        - §7It can be upgraded to a better version
        - §7with gadget components at a crafting table.
        - §f
        - §cThis item cannot be repaired or combined
        - §cwith another item at an anvil.
        enchants:
          DIG_SPEED: 3
          DURABILITY: 3
          MENDING: 1
        repair-cost: 63
  '7':
    items:
      '1':
        ==: org.bukkit.inventory.ItemStack
        type: SKULL_ITEM
        damage: 3
        amount: 8
        meta:
          ==: ItemMeta
          meta-type: SKULL
          display-name: §fSimple Gadget Component
          lore:
          - §f
          - §7Combined at a crafting table to create
          - §7low-level gadgets, or used to upgrade
          - §7certain existing gadgets.
          internal: H4sIAAAAAAAAAFWPy26CQBhG/zZtgqSP0S3JXAB14cLURofIUAFB2KEMAs5Qo2BLn6qPWLprl9/lLI4OoMNTcOqkfLu8F5UUGtyzHJ5JNskxNQvDRLZtmGaOjD2ZTgxrbFNijYtDjrEO+gCdxaWtxHUEWis+2+4irjoA3GnwGGWyE/AtegeluxLlO0ceemYPOQyQ9Fh9HrMm6vcvzGZq2Fdze91P/3ytNostmVCnTJtNt1cRWlNfipWPD2p785a8Ssjrhxs6ite55KF/SkNZpvGWuipVfMFQGs4xV26fxFvsLX3J46hMiGvxhSyT2hn4jcXr41dCopo1eFpsZjMYwSiojk32K/Pf5QETag4N/AB/8eR4OAEAAA==
    result:
      ==: org.bukkit.inventory.ItemStack
      type: STONE_SWORD
      meta:
        ==: ItemMeta
        meta-type: UNSPECIFIC
        display-name: §f[§7Training Sword§f]
        lore:
        - '§7§0§1§r§7Level§0§1§r§7: §0§2§r§a1§0§2§r§7 §7[§d§1§0§r§d0.0§1§0§r§d§7/§d§1§1§r§d225.0§1§1§r§d§7]'
        - §f
        - §7A basic sword that can be upgraded to a
        - §7better version with gadget components at
        - §7a crafting table.
        - §f
        - §cRequires Level §a10§c to upgrade.
        enchants:
          DAMAGE_ALL: 1
          LOOT_BONUS_MOBS: 1
        repair-cost: 511
        Unbreakable: true
  '8':
    items:
      '1':
        ==: org.bukkit.inventory.ItemStack
        type: STONE_SWORD
        meta:
          ==: ItemMeta
          meta-type: UNSPECIFIC
          display-name: §f[§7Training Sword§f]
          lore:
          - '§7§0§1§r§7Level§0§1§r§7: §0§2§r§a10§0§2§r§7 §7[§d§1§0§r§d0.0§1§0§r§d§7/§d§1§1§r§d800.0§1§1§r§d§7]'
          - §f
          - §7A basic sword that can be upgraded to a
          - §7better version with gadget components at
          - §7a crafting table.
          - §f
          - §cRequires Level §a10§c to upgrade.
          enchants:
            DAMAGE_ALL: 1
            LOOT_BONUS_MOBS: 1
          repair-cost: 511
          Unbreakable: true
      '2':
        ==: org.bukkit.inventory.ItemStack
        type: SKULL_ITEM
        damage: 3
        amount: 32
        meta:
          ==: ItemMeta
          meta-type: SKULL
          display-name: §fSimple Gadget Component
          lore:
          - §f
          - §7Combined at a crafting table to create
          - §7low-level gadgets, or used to upgrade
          - §7certain existing gadgets.
          internal: H4sIAAAAAAAAAFWPy26CQBhG/zZtgqSP0S3JXAB14cLURofIUAFB2KEMAs5Qo2BLn6qPWLprl9/lLI4OoMNTcOqkfLu8F5UUGtyzHJ5JNskxNQvDRLZtmGaOjD2ZTgxrbFNijYtDjrEO+gCdxaWtxHUEWis+2+4irjoA3GnwGGWyE/AtegeluxLlO0ceemYPOQyQ9Fh9HrMm6vcvzGZq2Fdze91P/3ytNostmVCnTJtNt1cRWlNfipWPD2p785a8Ssjrhxs6ite55KF/SkNZpvGWuipVfMFQGs4xV26fxFvsLX3J46hMiGvxhSyT2hn4jcXr41dCopo1eFpsZjMYwSiojk32K/Pf5QETag4N/AB/8eR4OAEAAA==
    result:
      ==: org.bukkit.inventory.ItemStack
      type: STONE_SWORD
      meta:
        ==: ItemMeta
        meta-type: UNSPECIFIC
        display-name: §7[§fImproved Sword§7]
        lore:
        - '§7§0§1§r§7Level§0§1§r§7: §0§2§r§a1§0§2§r§7 §7[§d§1§0§r§d0.0§1§0§r§d§7/§d§1§1§r§d225.0§1§1§r§d§7]'
        - §f
        - §7A basic sword that can be upgraded to a
        - §7better version with gadget components at
        - §7a crafting table.
        - §f
        - §cRequires Level §a10§c to upgrade.
        enchants:
          DAMAGE_ALL: 5
          FIRE_ASPECT: 1
          LOOT_BONUS_MOBS: 2
        repair-cost: 511
        Unbreakable: true
furnaces:
  '0':
    result:
      ==: org.bukkit.inventory.ItemStack
      type: BEDROCK
    source:
      ==: org.bukkit.inventory.ItemStack
      type: BEDROCK
      amount: 61
multi: {}
textures:
  shapeless:
    '0':
      items:
        '1':
          texture: eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvNTEyM2I4ODg0NmQ2NmUxY2ZlMmY2NjRhMzZhZDRhMjJiMWE0YzJmMmU0ZDI5NWY0MWZlNWU5MjliOWU3ZDgifX19
          uuid: bf5072ab-b979-4d49-af48-eb8aa7d67a62
      result:
        texture: eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvNTEyM2I4ODg0NmQ2NmUxY2ZlMmY2NjRhMzZhZDRhMjJiMWE0YzJmMmU0ZDI5NWY0MWZlNWU5MjliOWU3ZDgifX19
        uuid: bf5072ab-b979-4d49-af48-eb8aa7d67a62
    '1':
      items:
        '1':
          texture: eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvNTEyM2I4ODg0NmQ2NmUxY2ZlMmY2NjRhMzZhZDRhMjJiMWE0YzJmMmU0ZDI5NWY0MWZlNWU5MjliOWU3ZDgifX19
          uuid: bf5072ab-b979-4d49-af48-eb8aa7d67a62
        '2':
          texture: eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvNTEyM2I4ODg0NmQ2NmUxY2ZlMmY2NjRhMzZhZDRhMjJiMWE0YzJmMmU0ZDI5NWY0MWZlNWU5MjliOWU3ZDgifX19
          uuid: bf5072ab-b979-4d49-af48-eb8aa7d67a62
      result:
        texture: eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvYTZjYzQ4NmMyYmUxY2I5ZGZjYjJlNTNkZDlhM2U5YTg4M2JmYWRiMjdjYjk1NmYxODk2ZDYwMmI0MDY3In19fQ==
        uuid: 3fb98e97-7d29-4fd3-8b35-bd1a8e4b272f
    '2':
      items:
        '1':
          texture: eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvNTEyM2I4ODg0NmQ2NmUxY2ZlMmY2NjRhMzZhZDRhMjJiMWE0YzJmMmU0ZDI5NWY0MWZlNWU5MjliOWU3ZDgifX19
          uuid: bf5072ab-b979-4d49-af48-eb8aa7d67a62
        '2':
          texture: eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvNTEyM2I4ODg0NmQ2NmUxY2ZlMmY2NjRhMzZhZDRhMjJiMWE0YzJmMmU0ZDI5NWY0MWZlNWU5MjliOWU3ZDgifX19
          uuid: bf5072ab-b979-4d49-af48-eb8aa7d67a62
    '4':
      items:
        '1':
          texture: eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvNTEyM2I4ODg0NmQ2NmUxY2ZlMmY2NjRhMzZhZDRhMjJiMWE0YzJmMmU0ZDI5NWY0MWZlNWU5MjliOWU3ZDgifX19
          uuid: bf5072ab-b979-4d49-af48-eb8aa7d67a62
        '2':
          texture: eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvNTEyM2I4ODg0NmQ2NmUxY2ZlMmY2NjRhMzZhZDRhMjJiMWE0YzJmMmU0ZDI5NWY0MWZlNWU5MjliOWU3ZDgifX19
          uuid: bf5072ab-b979-4d49-af48-eb8aa7d67a62
    '5':
      items:
        '1':
          texture: eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvOGNiY2EwMTJmNjdlNTRkZTlhZWU3MmZmNDI0ZTA1NmMyYWU1OGRlNWVhY2M5NDlhYjJiY2Q5NjgzY2VjIn19fQ==
          uuid: 2a8d134f-4066-44d0-b298-5763257fcd11
    '6':
      items:
        '2':
          texture: eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvOGNiY2EwMTJmNjdlNTRkZTlhZWU3MmZmNDI0ZTA1NmMyYWU1OGRlNWVhY2M5NDlhYjJiY2Q5NjgzY2VjIn19fQ==
          uuid: 2a8d134f-4066-44d0-b298-5763257fcd11
    '7':
      items:
        '1':
          texture: eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvOGNiY2EwMTJmNjdlNTRkZTlhZWU3MmZmNDI0ZTA1NmMyYWU1OGRlNWVhY2M5NDlhYjJiY2Q5NjgzY2VjIn19fQ==
          uuid: 2a8d134f-4066-44d0-b298-5763257fcd11
    '8':
      items:
        '2':
          texture: eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvOGNiY2EwMTJmNjdlNTRkZTlhZWU3MmZmNDI0ZTA1NmMyYWU1OGRlNWVhY2M5NDlhYjJiY2Q5NjgzY2VjIn19fQ==
          uuid: 2a8d134f-4066-44d0-b298-5763257fcd11
commented

14.11 21:05:58 [Server] INFO ... 26 more 14.11 21:05:58 [Server] INFO at
org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:302)
~[Spigot.jar:git-Spigot-850da7e-b6490da] 14.11 21:05:58 [Server] INFO at
java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_111] 14.11
21:05:58 [Server] INFO at
sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
~[?:1.8.0_111] 14.11 21:05:58 [Server] INFO at
sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
~[?:1.8.0_111] 14.11
21:05:58 [Server] INFO at
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
~[?:1.8.0_111] 14.11
21:05:58 [Server] INFO at mc.mcgrizzz.prorecipes.bg.a(Recipes.java:1556)
~[?:?] 14.11 21:05:58 [Server] INFO at java.util.ArrayList.get(Unknown
Source) ~[?:1.8.0_111] 14.11 21:05:58 [Server] INFO at
java.util.ArrayList.rangeCheck(Unknown Source) ~[?:1.8.0_111] 14.11 21:05:58
[Server] INFO Caused by: java.lang.IndexOutOfBoundsException: Index: 0,
Size: 0 14.11 21:05:58 [Server] INFO at java.lang.Thread.run(Unknown
Source) [?:1.8.0_111] 14.11 21:05:58 [Server] INFO at
net.minecraft.server.v1_10_R1.MinecraftServer.run(MinecraftServer.java:567)
[Spigot.jar:git-Spigot-850da7e-b6490da] 14.11 21:0

On Mon, Nov 14, 2016 at 9:38 PM, Ben Woodworth notifications@github.com
wrote:

Give v0.26.2 a try. I think the issues are resolved :)


You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
#89 (comment),
or mute the thread
https://github.com/notifications/unsubscribe-auth/ARofg6lVbnBZkj_dULaKFxJfzZUP-H99ks5q-SlGgaJpZM4Ko9e4
.

commented

I'm having a little trouble reproducing the error. Could you zip the FastCraftPlus and ProRecipes folders in the Plugins folder? I want to make sure everything's the same between us.

commented

Let me know if you need anything else. I see 1.11 is out too. LOL Thanks again.


This zip contains the prorecipes and fastcraft plugin folders.
FC_PR_Folders.zip

commented

Here are the two errors I'm getting. I'll update the comments as I figure out what's causing the errors.


Reason for error in FastCraft+:
With an empty ProRecipes/recipes.yml file, there is no issue. With this one multi recipe alone, the exception is thrown:

File: ProRecipes/recipes.yml

shaped: {}
shapeless: {}
furnaces: {}
multi:
  '0':
    structure: a|null|null|null
    characters:
      a:
        ==: org.bukkit.inventory.ItemStack
        type: INK_SACK
        damage: 4
textures: {}

Recipes provided by ProRecipes all had four results, many containing "null" results. Some recipes only had "null" results. FastCraft+ was not handling these properly.

Stack Trace: Server startup / Open FastCraft+ interface


[20:39:10 INFO]: Kepler_ issued server command: /craft

[20:39:10 WARN](java.lang.NullPointerException):    at co.kepler.fastcraftplus.recipes.FastRecipe.hashCode(FastRecipe.java:275)
[20:39:10 WARN](java.lang.NullPointerException):    at java.util.HashMap.hash(HashMap.java:338)
[20:39:10 WARN](java.lang.NullPointerException):    at java.util.HashMap.put(HashMap.java:611)
[20:39:10 WARN](java.lang.NullPointerException):    at java.util.HashSet.add(HashSet.java:219)
[20:39:10 WARN](java.lang.NullPointerException):    at co.kepler.fastcraftplus.compat.Compat_ProRecipes.getRecipes(Compat_ProRecipes.java:62)
[20:39:10 WARN](java.lang.NullPointerException):    at co.kepler.fastcraftplus.compat.RecipeCompatManager.getRecipes(RecipeCompatManager.java:74)
[20:39:10 WARN](java.lang.NullPointerException):    at co.kepler.fastcraftplus.craftgui.layouts.LayoutRecipesItems.(LayoutRecipesItems.java:21)
[20:39:10 WARN](java.lang.NullPointerException):    at co.kepler.fastcraftplus.craftgui.LayoutManager.getNewLayout(LayoutManager.java:26)
[20:39:10 WARN](java.lang.NullPointerException):    at co.kepler.fastcraftplus.craftgui.GUIFastCraft.(GUIFastCraft.java:51)
[20:39:10 WARN](java.lang.NullPointerException):    at co.kepler.fastcraftplus.commands.CmdCraft.open(CmdCraft.java:52)
[20:39:10 WARN](java.lang.NullPointerException):    at co.kepler.fastcraftplus.commands.CmdCraft.onCommand(CmdCraft.java:33)
[20:39:10 WARN](java.lang.NullPointerException):    at co.kepler.fastcraftplus.commands.CommandManager.onCommand(CommandManager.java:46)
[20:39:10 WARN](java.lang.NullPointerException):    at org.bukkit.command.PluginCommand.execute(PluginCommand.java:44)
[20:39:10 WARN](java.lang.NullPointerException):    at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:141)
[20:39:10 WARN](java.lang.NullPointerException):    at org.bukkit.craftbukkit.v1_10_R1.CraftServer.dispatchCommand(CraftServer.java:647)
[20:39:10 WARN](java.lang.NullPointerException):    at net.minecraft.server.v1_10_R1.PlayerConnection.handleCommand(PlayerConnection.java:1358)
[20:39:10 WARN](java.lang.NullPointerException):    at net.minecraft.server.v1_10_R1.PlayerConnection.a(PlayerConnection.java:1193)
[20:39:10 WARN](java.lang.NullPointerException):    at net.minecraft.server.v1_10_R1.PacketPlayInChat.a(PacketPlayInChat.java:45)
[20:39:10 WARN](java.lang.NullPointerException):    at net.minecraft.server.v1_10_R1.PacketPlayInChat.a(PacketPlayInChat.java:1)
[20:39:10 WARN](java.lang.NullPointerException):    at net.minecraft.server.v1_10_R1.PlayerConnectionUtils$1.run(SourceFile:13)
[20:39:10 WARN](java.lang.NullPointerException):    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
[20:39:10 WARN](java.lang.NullPointerException):    at java.util.concurrent.FutureTask.run(FutureTask.java:266)
[20:39:10 WARN](java.lang.NullPointerException):    at net.minecraft.server.v1_10_R1.SystemUtils.a(SourceFile:45)
[20:39:10 WARN](java.lang.NullPointerException):    at net.minecraft.server.v1_10_R1.MinecraftServer.D(MinecraftServer.java:732)
[20:39:10 WARN](java.lang.NullPointerException):    at net.minecraft.server.v1_10_R1.DedicatedServer.D(DedicatedServer.java:400)
[20:39:10 WARN](java.lang.NullPointerException):    at net.minecraft.server.v1_10_R1.MinecraftServer.C(MinecraftServer.java:668)
[20:39:10 WARN](java.lang.NullPointerException):    at net.minecraft.server.v1_10_R1.MinecraftServer.run(MinecraftServer.java:567)
[20:39:10 WARN](java.lang.NullPointerException):    at java.lang.Thread.run(Thread.java:745)

Reason for error in ProRecipes:
ProRecipes is expecting an inventory viewer in the crafting event (the player crafting the recipe), but FastCraft+ is not providing a viewer in the event it is triggering.

Stack Trace: After crafting with FastCraft+

[21:13:13 ERROR]: Could not pass event CraftItemEvent to ProRecipes v1.8.5
org.bukkit.event.EventException
    at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:306) ~[spigot-1.10.2.jar:git-Spigot-de459a2-51263e9]
    at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) ~[spigot-1.10.2.jar:git-Spigot-de459a2-51263e9]
    at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:502) [spigot-1.10.2.jar:git-Spigot-de459a2-51263e9]
    at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:487) [spigot-1.10.2.jar:git-Spigot-de459a2-51263e9]
    at co.kepler.fastcraftplus.util.RecipeUtil.callCraftItemEvent(RecipeUtil.java:231) [FastCraftPlus.jar:?]
    at co.kepler.fastcraftplus.recipes.FastRecipe.craft(FastRecipe.java:219) [FastCraftPlus.jar:?]
    at co.kepler.fastcraftplus.craftgui.buttons.GUIButtonRecipe.onClick(GUIButtonRecipe.java:115) [FastCraftPlus.jar:?]
    at co.kepler.fastcraftplus.api.gui.GUI$GUIListener.onInventoryClick(GUI.java:205) [FastCraftPlus.jar:?]
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_111]
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_111]
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_111]
    at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_111]
    at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:302) [spigot-1.10.2.jar:git-Spigot-de459a2-51263e9]
    at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) [spigot-1.10.2.jar:git-Spigot-de459a2-51263e9]
    at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:502) [spigot-1.10.2.jar:git-Spigot-de459a2-51263e9]
    at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:487) [spigot-1.10.2.jar:git-Spigot-de459a2-51263e9]
    at net.minecraft.server.v1_10_R1.PlayerConnection.a(PlayerConnection.java:1861) [spigot-1.10.2.jar:git-Spigot-de459a2-51263e9]
    at net.minecraft.server.v1_10_R1.PacketPlayInWindowClick.a(SourceFile:33) [spigot-1.10.2.jar:git-Spigot-de459a2-51263e9]
    at net.minecraft.server.v1_10_R1.PacketPlayInWindowClick.a(SourceFile:10) [spigot-1.10.2.jar:git-Spigot-de459a2-51263e9]
    at net.minecraft.server.v1_10_R1.PlayerConnectionUtils$1.run(SourceFile:13) [spigot-1.10.2.jar:git-Spigot-de459a2-51263e9]
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:1.8.0_111]
    at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:1.8.0_111]
    at net.minecraft.server.v1_10_R1.SystemUtils.a(SourceFile:45) [spigot-1.10.2.jar:git-Spigot-de459a2-51263e9]
    at net.minecraft.server.v1_10_R1.MinecraftServer.D(MinecraftServer.java:732) [spigot-1.10.2.jar:git-Spigot-de459a2-51263e9]
    at net.minecraft.server.v1_10_R1.DedicatedServer.D(DedicatedServer.java:400) [spigot-1.10.2.jar:git-Spigot-de459a2-51263e9]
    at net.minecraft.server.v1_10_R1.MinecraftServer.C(MinecraftServer.java:668) [spigot-1.10.2.jar:git-Spigot-de459a2-51263e9]
    at net.minecraft.server.v1_10_R1.MinecraftServer.run(MinecraftServer.java:567) [spigot-1.10.2.jar:git-Spigot-de459a2-51263e9]
    at java.lang.Thread.run(Thread.java:745) [?:1.8.0_111]
Caused by: java.lang.IndexOutOfBoundsException: Index: 0, Size: 0
    at java.util.ArrayList.rangeCheck(ArrayList.java:653) ~[?:1.8.0_111]
    at java.util.ArrayList.get(ArrayList.java:429) ~[?:1.8.0_111]
    at mc.mcgrizzz.prorecipes.bg.a(Recipes.java:1556) ~[?:?]
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_111]
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_111]
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_111]
    at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_111]
    at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:302) ~[spigot-1.10.2.jar:git-Spigot-de459a2-51263e9]
    ... 27 more
commented

no that is a new one on me. LOL...

On Mon, Nov 14, 2016 at 7:44 PM, Ben Woodworth notifications@github.com
wrote:

I'm not getting the error you posted, but I am getting this. Have you come
across it?
http://pastebin.com/raw/ZjCTvf7f
Stack Trace

[20:39:10 INFO]: Kepler_ issued server command: /craft

20:39:10 WARN http://java.lang.NullPointerException: at co.kepler.fastcraftplus.recipes.FastRecipe.hashCode(FastRecipe.java:275)
20:39:10 WARN http://java.lang.NullPointerException: at java.util.HashMap.hash(HashMap.java:338)
20:39:10 WARN http://java.lang.NullPointerException: at java.util.HashMap.put(HashMap.java:611)
20:39:10 WARN http://java.lang.NullPointerException: at java.util.HashSet.add(HashSet.java:219)
20:39:10 WARN http://java.lang.NullPointerException: at co.kepler.fastcraftplus.compat.Compat_ProRecipes.getRecipes(Compat_ProRecipes.java:62)
20:39:10 WARN http://java.lang.NullPointerException: at co.kepler.fastcraftplus.compat.RecipeCompatManager.getRecipes(RecipeCompatManager.java:74)
20:39:10 WARN http://java.lang.NullPointerException: at co.kepler.fastcraftplus.craftgui.layouts.LayoutRecipesItems.(LayoutRecipesItems.java:21)
20:39:10 WARN http://java.lang.NullPointerException: at co.kepler.fastcraftplus.craftgui.LayoutManager.getNewLayout(LayoutManager.java:26)
20:39:10 WARN http://java.lang.NullPointerException: at co.kepler.fastcraftplus.craftgui.GUIFastCraft.(GUIFastCraft.java:51)
20:39:10 WARN http://java.lang.NullPointerException: at co.kepler.fastcraftplus.commands.CmdCraft.open(CmdCraft.java:52)
20:39:10 WARN http://java.lang.NullPointerException: at co.kepler.fastcraftplus.commands.CmdCraft.onCommand(CmdCraft.java:33)
20:39:10 WARN http://java.lang.NullPointerException: at co.kepler.fastcraftplus.commands.CommandManager.onCommand(CommandManager.java:46)
20:39:10 WARN http://java.lang.NullPointerException: at org.bukkit.command.PluginCommand.execute(PluginCommand.java:44)
20:39:10 WARN http://java.lang.NullPointerException: at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:141)
20:39:10 WARN http://java.lang.NullPointerException: at org.bukkit.craftbukkit.v1_10_R1.CraftServer.dispatchCommand(CraftServer.java:647)
20:39:10 WARN http://java.lang.NullPointerException: at net.minecraft.server.v1_10_R1.PlayerConnection.handleCommand(PlayerConnection.java:1358)
20:39:10 WARN http://java.lang.NullPointerException: at net.minecraft.server.v1_10_R1.PlayerConnection.a(PlayerConnection.java:1193)
20:39:10 WARN http://java.lang.NullPointerException: at net.minecraft.server.v1_10_R1.PacketPlayInChat.a(PacketPlayInChat.java:45)
20:39:10 WARN http://java.lang.NullPointerException: at net.minecraft.server.v1_10_R1.PacketPlayInChat.a(PacketPlayInChat.java:1)
20:39:10 WARN http://java.lang.NullPointerException: at net.minecraft.server.v1_10_R1.PlayerConnectionUtils$1.run(SourceFile:13)
20:39:10 WARN http://java.lang.NullPointerException: at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
20:39:10 WARN http://java.lang.NullPointerException: at java.util.concurrent.FutureTask.run(FutureTask.java:266)
20:39:10 WARN http://java.lang.NullPointerException: at net.minecraft.server.v1_10_R1.SystemUtils.a(SourceFile:45)
20:39:10 WARN http://java.lang.NullPointerException: at net.minecraft.server.v1_10_R1.MinecraftServer.D(MinecraftServer.java:732)
20:39:10 WARN http://java.lang.NullPointerException: at net.minecraft.server.v1_10_R1.DedicatedServer.D(DedicatedServer.java:400)
20:39:10 WARN http://java.lang.NullPointerException: at net.minecraft.server.v1_10_R1.MinecraftServer.C(MinecraftServer.java:668)
20:39:10 WARN http://java.lang.NullPointerException: at net.minecraft.server.v1_10_R1.MinecraftServer.run(MinecraftServer.java:567)
20:39:10 WARN http://java.lang.NullPointerException: at java.lang.Thread.run(Thread.java:745)


You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
#89 (comment),
or mute the thread
https://github.com/notifications/unsubscribe-auth/ARofgyGuULe7TwSCeAetJD6rJbZqlMqdks5q-Q55gaJpZM4Ko9e4
.

commented

Give v0.26.2 a try. I think the issues are resolved.

EDIT
I completely forgot about the second issue. I'll work on that tomorrow when I get a chance. I'm going to have to call it a night for now.

commented

I just released v0.26.3. Can I finally put this issue to rest? 😛

commented

lets say yes. Regardless. You have put more than enough unpaid time on my
simple needs. I appriciate all of your effort. Is there a link that I can
send my pittance of grattitude?

Thanks
MoCaveman

On Tue, Nov 15, 2016 at 6:52 PM, Ben Woodworth notifications@github.com
wrote:

I just released v0.26.3. Can I finally put this issue to rest? 😛


You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
#89 (comment),
or mute the thread
https://github.com/notifications/unsubscribe-auth/ARofg8uBt9uEbdX8sYPbwW0U7ucGDB3pks5q-lPngaJpZM4Ko9e4
.

commented

Excellent 😄 🎉
Please let me know if you run into any other issues.
And if you insist, you can forsake your pittance here: https://www.paypal.me/BenWoodworth