Project Red - Expansion

Project Red - Expansion

31M Downloads

[IC2 compatibility] Crafting chip doesn't pull crafted batteries or other stuff

Psy-Virus opened this issue · 6 comments

commented

If you automate the crafting of Industrial Craft² Stuff, the crafting chip doesn't pull out uncharged batteries/CESU's and other energy components.
The same happens if you try to pull out an "discharged" battery from a chest via extractor chip instead of a fully charged one.
Doesn't matter for what you let the chip check.

Fully charged components are getting pulled.

commented

An option to ignore NBT data for outputs of Item Crafting chips (as it already exists for inputs) would solve the problem. I have the same problem and any workaround currently requires to avoid ProjectRed pipes for RE-battery crafting, or to use IC2 machines to pull, fully charge and push back the batteries, which is pretty ugly. Ignoring NBT data would be a nice and clean solution.

commented

I was testing this a bit more.
It seems like when the IC2 stuff is crafted, it doesn't have the "NBT-Tags-Key" in the data structure.
After I copied the NBT Key from another CESU for example that got pulled to the freshly crafted, this one also got pulled.

Could it be that a non existant NBT key and and empty NBT key are handled in different ways?

commented

They are. I believe IC has a history with their batteries being weird in regards to their NBT data. Technically, the NBT should be null when nothing is in it. Or alternatively (but not preferred) it can always be empty instead of null. However, the same item can not use a null NBT or an empty NBT interchangeably, as they are not considered equivalent.

I can force the system to treat null and empty tags as the same, but that would also not be correct, since the same items that are equivalent should not conflict like this and it may cause unintended behaviors for other mods.

commented

A quick thought: If the item that is crafted has either a non-existent NBT or an empty NBT and just get pulled regardless or the NBT without changing the item, it shouldn't interfere with anything. I mean, empty is not null, of course but if there is no data in the NBT, it is like it's not there...
But maybe it would be a good thing to be able to control if the NBT is checked/ignored for the output item?

commented

Oh and I have to correct myself. It is possible to extract those items from chests with extractor chips by ignoring either the meta or the NBT or both or none of them, depending on the item.... srsly weird.
But I also tried to manage the extraction with Thermal Dynamics. And with their pipes it mostly worked when I ignored the meta. But that way, the crafting chip ofc doesn't register that the item was successfully crafted.

commented

@MrTJP, It looks like this is not a problem in single player.
I just tested it by accident and the crafting chip seems to behave different in single player than in multi player.