[1.10.2] Getting gold instead of iron (Compacting Drawer)
ZigTheHedge opened this issue · 18 comments
Well, subj.
How to reproduce:
- Place down compacting drawer
- Put Blocks of Iron into
- Enjoy your gold ingots of nuggets ;)
Alternatively, it may be sufficient to enable debug logging in the mod options, then copy what's printed to the server console once you insert the first block into the comp drawer.
I have de exact same problème...
When I paklce on Compacting Drawer a block of Iron, on is transform to Gold Ingot and Gold Nugget.
https://s13.postimg.org/5innh72jb/iron_gold.jpg
Other problem, some metal block, like you can see (Copper and Gold) doesn't want to give a ingot...
Little precision, on a crafting table, 1 block of Iron = 9 ingot of Iron (not gold...)
https://s18.postimg.org/l1382al2h/ironingot_craft.jpg
Other think strange think some item can't be stack and is same on the drawer...
https://s15.postimg.org/5vfx2z3qz/stack_emc.jpg
The only difference I can find is the "Stack EMC"...
@ZigTheHedge It might be the blockMetal oredict key, but the particular circumstances that such a key would "work" are pretty narrow. It has to appear to the system to be indistinguishable from something like 3 different kinds of iron ingots registering as "ingotIron". Which means that those blocks only register under the key blockMetal, and do not register under other different keys like blockIron and blockGold, and that no other blocks registering under blockMetal are registering under different keys.
The system is ultimately asking the question "Can I turn an item with key A into an item with key C via common key B?" If the answer is yes, B gets blacklisted.
Easy to test: add "blockMetal" to the ore dictionary blacklist in the config.
@Fireztonez same as above. Do you register these things to "blockMetal" (maybe because you're both using a mod that does this?) As for not finding ingots and nuggets, what version are you on? There was a relatively recent fix for that.
As for the stacking, the two items have different NBT tags on them. While the mod adding the EMC support might have some support for combining them in your inventory, most mods are going to see these as two completely different items. Like two different colors of dyed leather.
Here's the output:
[12:18:58] [Client thread/INFO] [StorageDrawers]: BlockDrawers.onBlockActivated
[12:18:58] [Client thread/INFO] [StorageDrawers]: 64xtile.blockIron@0
[12:18:59] [Server thread/INFO] [StorageDrawers]: BlockDrawers.onBlockActivated
[12:18:59] [Server thread/INFO] [StorageDrawers]: 64xtile.blockIron@0
[12:18:59] [Server thread/INFO] [StorageDrawers]: Finding ascending candidates for 64xtile.blockIron@0
[12:18:59] [Server thread/INFO] [StorageDrawers]: No candidates found
[12:18:59] [Server thread/INFO] [StorageDrawers]: Finding descending candidates for 64xtile.blockIron@0
[12:18:59] [Server thread/INFO] [StorageDrawers]: Found descending candidate for 64xtile.blockIron@0: 1xitem.ingotGold@0 size=9, inverse=9xitem.ingotGold@0
[12:18:59] [Server thread/INFO] [StorageDrawers]: Found descending candidate for 64xtile.blockIron@0: 1xitem.ingotIron@0 size=9, inverse=9xitem.ingotIron@0
[12:18:59] [Server thread/INFO] [StorageDrawers]: Picked candidate 1xitem.ingotGold@0 with conv=9
[12:18:59] [Server thread/INFO] [StorageDrawers]: Finding descending candidates for 1xitem.ingotGold@0
[12:18:59] [Server thread/INFO] [StorageDrawers]: Found descending candidate for 1xitem.ingotGold@0: 1xitem.goldNugget@0 size=9, inverse=9xitem.goldNugget@0
[12:18:59] [Server thread/INFO] [StorageDrawers]: Picked candidate 1xitem.goldNugget@0 with conv=9
But there's no recipe to turn Block of Iron into gold ingots or vice-versa...
P.S: Block of Iron and Block of Gold are both registered as blockMetal in oreDict.
Enable debug logging in the mod options. Try inserting the block or ingot into the drawer, then copy the lines it prints to your server log. I may also need a dump of your ore dictionary and recipe lists (not sure what options there are for that in 1.10).
Quark has been recently implicated in a bunch of non-stacking shenanigans.
I added a few ____Metal entries to the global blacklist in 3.5.7. Maybe that was the cause; maybe it wasn't. If not, I need those data dumps.
Ok. Found out the mod, which causes this behavior - Tinkers Construct. But I can't understand what it's doing to make this happen...
Heh. Tinkers Construct adds Iron and Gold to blockMetal. If you guessed it has to do with crafting a Tool Forge, you'd be right.
@codewarrior0 But blacklisting blockMetal in Storage Drawers config doesn't resolve the issue unfortunately...
@jaquadro Thank'you for your reply, if is can help for diagnostic, I can give the PasteBin fron my server log-file: https://gist.github.com/Fireztonez/42dc1fa87eafce2fed784976f60969d8
*** The content is realy realy long...
And, I use the version 3.5.6 from Storage Drawer, on Forge 1.10.2-12.18.2.2151
The version of Java is :
java version "1.8.0_111"
Java(TM) SE Runtime Environment (build 1.8.0_111-b14)
Java HotSpot(TM) 64-Bit Server VM (build 25.111-b14, mixed mode)
This server Run on a private Ubuntu Server, I have the total controle of this server.
For the NBT tag I know is can cause unstackable items, but I don't know what mod can cause that...
Other strange things, the Iron Ingot when I a stack place on the Compacting Drawer is palce at the top, can't make a block and doesn't make any nugget...
I try A block of Copper made by my Tinker Smeltery, and I can't place with the rest of my copper... is look the same, but convert to another type of Copper ingot than the block I craft with multiple stack of C Copper Ingot...
On other server I have before, on 1.10.2 also, with about the same mods I think, everything works fine, but I make a something wrong and the world of that one is corrupt now :(
Huh. Maybe not! That surprises me. This feels like something that should have showed up as an issue by now -- at least in a Gregtech pack or something.
@jaquadro Do you happen to know if the oredict blacklist also affects the Compacting Drawer's recipe lookup, or just the automatic conversion when inserting items into any drawers?
Some history. Before August 2015, I think this was rightly blocked. But then I had a web of issues like this:
#127
Because a lot of recipes are written against oredict keys, and a proliferation of keys by mods of a pack author usually leads to a lot of auto-blacklisted keys.
Then in Apr 2016 I re-enabled the strict lookup on the "check" of the descending lookup,, but I can't find any issue or reason attached to it. It may be an issue I encountered in testing.
b11216d
Sure enough, re-enforcing the strict check on the remainder of the lookup reintroduces the bug from #127, e.g. placing a Forestry copper block, despite the whitelist.
Ore dictionary is hard.
Oops, it's not despite the whitelist. I still had copper ingots in the blacklist for testing something else.
But it's still full-circle to #127. If the key has been auto-blacklisted, it's not going to work. Invalid item conversion is a worse problem, so I'm going to have to commit this change. People will need to manage their lists when expected compacting recipes don't work.