EMI

EMI

1M Downloads

Unexpected Results with Recipe Tree and Synthetic Favorites.

kalutro opened this issue ยท 3 comments

commented

FTB NeoTech 1.7.0

I am getting weird results when using the recipe tree as seen in the image below.
javaw_KGL7dPbrBY

To make the Steel Rod at the top, I need 1mb of Lubricant. The Lubricant recipe requires 500mb of Creosote and returns 500mb of Lubricant. Please, note the Leftovers section show I will have 500mb of Creosote left over even though it will be used to make the Lubricant. The rest seems accurate.

Below are the recipes I am using for Lubricant and Creosote.
javaw_awz2Xn7Jer
javaw_zr0CNYfT65
The Creosote recipe requires one Coal Dust and returns one Coke Dust and 500mb of Creosote.

This is fine. I make 500mb of Creosote and turn it into 500mb of Lubricant. It's one batch. However, my synthetic favorites show the following:
javaw_ATDcBvRSi3

It's showing that I need 500 Coke Dust, I assume instead of Creosote, and doesn't show Creosote at all. I do need 2 Coke Dust for the Steel Ingots on the left, thought I still think this is an issue.

Another issue arises when trying to make an item that requires using the Lubricant multiple times as shown below.
javaw_eK2KMCCqaP

It is suggesting that I make 1500mb of Creosote for the 4mb of Lubricant that I need.

In the end, both of these issues can be worked around if you know they exist, but this was my first go with the mod and I was halfway through making 500 Coke Dust before I got suspicious. I think this would confuse other first time users, as well.

commented

In the first image the recipe tree is right, you will turn two coal dust into coke dust and in the process produce 1000L of creosote oil, 500 of which you will process into lubricant, 1L of which you will use, leaving you with 500L of creosote oil and 499L of lubricant.
The behavior in the bottom tree is, I assume, also correct. Each individual branch of the tree would need 500L of creosote oil, but if you look at the total cost, it should not be saying you need to do that recipe more than once.

The behavior in the synthetic favorites is indeed incorrect.

commented

I see what you are saying. I may also see what is happening. I was looking through some other recipes to try and figure this out. It looks like any node that directly creates Creosote is considered leftover. Here is a bigger example.

javaw_q0ys0SuOwu

There are nine nodes that create Creosote as the main output. That would be 4500mB total, which is equal to the leftovers. However, if you count the nodes that create Creosote as a byproduct, the ones that create Coke Dust, you get 18 nodes, or 9000mB of Creosote. In reality, this entire tree should only take one craft of Creosote, as it only requires 14mB for the Lubricant. Also, since I am getting it as a byproduct of the Coke Dust, it shouldn't require any direct crafts. This may just be how the tree works.

In fact, the real issue is there shouldn't even be any leftover Creosote. Looking at the Synthetic Favorites for this recipe, it is still showing that I only need a single craft for the Lubricant. So, it knows that I need a single craft, yet it is showing multiple crafts in the tree and inferring multiple crafts are needed via the Leftovers. The leftover Lubricant does show correctly.

If it knows I only need a single craft there shouldn't be any leftovers because I am converting the entire 500mB to Lubricant.

So far, I have only seen this issue with Creosote, though I am not very far into the pack, and it is the only recipe I have come across that has a byproduct. Maybe recipes with byproducts in general cause this?

commented

You misunderstand, this tree has almost a dozen crafts of coke dust, which additionally produces creosote. If you were to make all of that coke dust, you'd be left with a ton of creosote, which the recipe tree is accurately modeling.