univrsal / XACT

Xhamolk's Advanced Crafting Table. Inspired by Eloraam mod's RP2 and it's Project Table.
http://www.minecraftforum.net/forums/mapping-and-modding/minecraft-mods/wip-mods/2425847-xact-1-7-10-port
6 stars 2 forks source link

XACT Crafter crafting issue #5

Closed JasonMcRay closed 9 years ago

JasonMcRay commented 9 years ago

I have no idaea how to properly ame this issue but here is whats happening. I am using XACT in my modpack together with gregtech. GT adds Concrete blocks, that can be chiseled with tool named FILE into chiseled versions. There are two versions of chiseled concrete, one light (made with Light Concrete) and second one dark (made with Dark Concrete). Now the issue is that I am able to make Chiseled Light or Dark Concrete with ANY concrete that shares the same oredictionary tag (in this case its stoneConcrete).

Here a reproduction steps: 1) Craft Iron File (Wooden stick with 2 Iron Plates on top of it) 2) Find in NEI Chiseled Light Concrete and click on question mark to put recipe in 3) Now put ANY kind of gregtech Concrete into the storage of Crafter with the File (for example Dark Concrete) 4) You can craft the Chiseled Light Concrete by using the Dark one (which should not be possible)

if I instead of click on question mark to put recipe in, insert the items manually into the grid, it works as it should work.

Also If I shift click the crafting output to get all Concrete blocks i can, it just breaks the File tool and gives me only 1 concrete.

I am finding that it happens with most of the recipes where there are items that share at least one oreDictionary tag (for example I am able to craft Annealed Copper Plates, by using just normal Copper Ingots. These two share the oreDictionary tag plateAnyCopper for the plate and ingotAnyCopper (for ingots). Annealed and normal copper arent the same, annealed version needs higher tier of machinery to create).

If you still dont understand what the problem is, I can record short video of it for you.

univrsal commented 9 years ago

I'll look into it

univrsal commented 9 years ago

So I looked into it and it has something todo with GregTech using same oreDictionary tags on both of the concrete blocks although they're not the same. XACT checks if there are othere blocks with the same tag and just assumes that they are allowed for that recipe. I thought I fixed it but seems like I'll have to look how to handle oredictionary correctly. Also for me shift clicking with the file worked just fine.

JasonMcRay commented 9 years ago

Wouldnt be better to just check the actuall recipe and use that? So if the recipe itslf is oredicted, then it will use the oredict, if it is coded to use certain items only, it will use that.

As for the File issue, I think it is tied to this oredict handling aswell. Try to put just one concrete in the storage area and then shift click the output. For me it seems like its crafting the concrete in a loop. It crafts one, puts it into storage area, and then crafts it again, because due to the oredict problem with Crafter. Then it loops until the file is broken. I am completely able to recrete the issue numerous times, also with just Xact, IC2, GT and NEI installed

univrsal commented 9 years ago

Ahh, that makes sense. I tried it after I "fixed" that ore dictionary issue so it probably didn't reuse the crafted concrete. Also as you said it would be the best to just use the recipe directly, but that is all code by Xhamolk so I have to look into how that all works since I never actually touched that part of XACT.

So yeah I'll see what I can do tomorrow

univrsal commented 9 years ago

Ok looks like that ore dictionary problem is fixed but I've stumbled upon another really wierd bug:

xact-bug

As you can see for some reason mixing two different items with the same ore dictionary entry seems to screw with the item detection since the recipe is craftable although I only put in two wood planks...

JasonMcRay commented 9 years ago

I wish I could be able to help you, but I am no modder :(

univrsal commented 9 years ago

Pheew, I think I finally got that bug worked out aswell. I'm very sorry for taking so long but I'm very lazy lately. I'll put up an release later when I push all the changes.

Fixes

I gave the build a short test and as it seems everything is working. Hopefully that will solve the issues Here's the release

JasonMcRay commented 9 years ago

Thank you very much. I am lazy as well as a pack dev, so no worries. Will give it bigger test when I am will have time (probably tomorrow) :)

JasonMcRay commented 9 years ago

Ok, i am sorry to say that, but something else broke with your change/fix.... Now I am unable to craft for example Integrated Circuit with Screwdriver to change its configuration. 2015-08-23_21 47 19 I have noticed that if I have the recipe layed out and I put only Integrated Circuit in the storage it doesnt detect it. When I put in Screwdriver, it detects only the Integrated Circuit. if I put into the crafting table two screwdrivers it works.

JasonMcRay commented 9 years ago

Same is happening for example when crafting LV Machine Hull. I have 2 Tin Wires and one LV Machine Casing in the storage area, but it says that one Tin Wire is missing. And lots of other recipes as well... It is currently unusable :(

Do you want me to open new issue, or will you reopen this one?

univrsal commented 9 years ago

Geee, why am I not suprised by that :P Welp seems like this bug is going to hunt me for a little longer... I'll just reopen this issue

univrsal commented 9 years ago

Well that is really odd I'll see what I can do tomorrow

univrsal commented 9 years ago

So there we go there were a lot of things wrong with the last release. But hopefully I got everything fixed now. Here's the release. I really hope that this finally covers the issues with oredictionary :D I'll close the issues when I know that you didn't come across any issues Edit: So I found out that the crafting of magical wood from Extra Utilities is buggy I'll see what is causing that

JasonMcRay commented 9 years ago

Sorry for lack of response on this one... Was quite busy. I did not had a chance to test the new build out yet. Will get onto it ASAP :)

JasonMcRay commented 9 years ago

Ok so far with the testing I have performed it looks fine.

univrsal commented 9 years ago

So I got the crafter to update the output depending on which enchanted books are found. It only works for the internal inventory but since it's only visually I don't think I'll bother with that. As I saw in one of your videos it seems that shift-clicking some gregtech recipes doesn't work, I might look into that. Here's the release. I hope I didn't miss anything :D

accessdenied0 commented 9 years ago

Hey dear @UniversalLP,

So if I get this right, you don't work on AE2 support in this version anymore? :( I miss this kind of feature a lot...

access_denied

JasonMcRay commented 9 years ago

@UniversalLP the shift clicking doesnt work indeed. It is because GT is doing little magic with some components. if the component is crafted in crafting table it gets assigned an NBT (which stores material info the item has been crafted with for future disassembling), if the component is crafted in machine, it will not get that NBT. if I understand correctly, NEI is not handling NBT at all in recipes, so if I shift click recipe from NEI it will put in the items in the grid which DOESNT have NBT. but since the components you have in storage area are with NBT, it just doesnt work.

Exactly same problem is with LogisticsPipes crafting, but for example AE2 handles this without problem.

univrsal commented 9 years ago

@JasonMcRay Ok well then maybe I can look at the AE2 code to see how they handle it.

@accessdenied0 I started working on it, I also had an XACT Terminal planned but the AE2 API is reeeally complicated so I just stopped a while ago and forgot about it. So I might make an exception and add that feature if I can get to the point where I understand the API

accessdenied0 commented 9 years ago

@UniversalLP thank you very much... wish I could help.

univrsal commented 9 years ago

@JasonMcRay Well I'll need your help with the recipe stuff. When you get to try out the new build and you find a recipe which doesn't work with shift-clicking tell me about it because I couldn't find one

JasonMcRay commented 9 years ago

I am currently not able to look at the new build, am at work, but when I get home I will take a look, but from top of my head it was any recipe with for example Electric Motors in it (like Conveyor Module). When testing you can't spawn in the Electric Motor, you need to craft it, so it gets the NBT data assigned.

1) Craft normaly Electric Motor (LV) 2) Feel free to cheat in the rest of materials 3) Shift click the recipe for Conveyor Module (LV) 4) make sure you arenot in creative, or you have the "Free crafting" disabled 5) ??? 6) Profit (or in this case, not profit :D)

univrsal commented 9 years ago

Well seems like I fixed that since the last build because it works for me just fine. I guess that is because XACT Ignores the NBT tag which containes the items that were used to craft an item.

JasonMcRay commented 9 years ago

Yup confirmed.... It works as intended.. Great job