3 carpets not enough to smelt one item in smoker or blast furnace
The burn time of carpets needs to be adjusted. It's 67 for normal furnace. Rounding down to 33 is the problem.
Code analysis
Code analysis based on MCP-Reborn 1.17.1 by [Mod] Avoma can be found in this comment.
In net.minecraft.world.level.block.entity.BlastFurnaceBlockEntity.java and net.minecraft.world.level.block.entity.SmokerBlockEntity.java, the duration each fuel item lasts is calculated with the following method:
protected int getBurnDuration(ItemStack $$0) { return super.getBurnDuration($$0) / 2; }
According to net.minecraft.world.level.block.entity.AbstractFurnaceBlockEntity.java, carpets have a burn time of 67. When the integer 67 is divided by the integer 2 in the method described above, the output value is 33. Therefore, three carpets have a burn time of 99, which is short of the time of 100 required to smelt the item.
Linked Issues
is duplicated by1
Created Issue:
3 carpets not enough to smelt one item in smoker or blast furnace
burn time of carpets needs to be adjusted. It's 67 for normal furnace. Rouding down to 33 is likely the problem
The burn time of carpets needs to be adjusted. It's 67 for normal furnace. Rounding down to 33 is likely the problem.
The burn time of carpets needs to be adjusted. It's 0.67 for normal furnace. Rounding down to 0.33 is likely the problem.
The burn time of carpets needs to be adjusted. It's
0.67 for normal furnace. Rounding down to0.33 is likely the problem.
is duplicated by
The burn time of carpets needs to be adjusted. It's 67 for normal furnace. Rounding down to 33 is
likelythe problem.The burn time of carpets needs to be adjusted. It's 67 for normal furnace. Rounding down to 33 is the problem.
Code analysis
Code analysis based on MCP-Reborn 1.17.1 by [Mod] Avoma can be found in this comment .
In net.minecraft.world.level.block.entity.BlastFurnaceBlockEntity.java and net.minecraft.world.level.block.entity.SmokerBlockEntity.java , the duration each fuel item lasts is calculated with the following method:
protected int getBurnDuration(ItemStack $$0) { return super.getBurnDuration($$0) / 2; }According to net.minecraft.world.level.block.entity.AbstractFurnaceBlockEntity.java , carpets have a burn time of 67. When the integer 67 is divided by the integer 2 in the method described above, the output value is 33. Therefore, three carpets have a burn time of 99, which is short of the time of 100 required to smelt the item.
Can confirm in 20w51a.
Can confirm in 21w03a.
Can confirm in 21w05b.
Can confirm in 21w06a.
Can confirm in 1.16.5 and 21w08b.
Can confirm in 21w10a. Video attached.
Can confirm in 1.17.
Can confirm in 1.17.1.
I am able to confirm this behavior in 21w43a. Here are some extra details regarding this problem.
The Bug:
Three carpets aren't enough to smelt a singular item in smokers or blast furnaces.
Steps to Reproduce:
Observed Behavior:
Three carpets aren't enough to smelt a singular item in smokers or blast furnaces.
Expected Behavior:
Three carpets would be enough to smelt a singular item in smokers and blast furnaces, just like how they are in regular furnaces.
I can confirm this behavior in both 1.17.1 and 1.18 Pre-release 8.
Here's a code analysis of this issue. All of the following is based on a decompiled version of Minecraft 1.17.1 using MCP-Reborn. Please note that I'm quite tentative about this analysis, although I'm persuaded to believe that this is likely a cause of the problem.
If we look at the above classes, we can see that they both contain the line of code,
and as we know, this is used to increase the speed at which items are smelted at. Since both smokers and blast furnaces utilize this piece of code, it means that the burn time of fuel sources placed within them is halved.
Looking at the above class, we can see that the burn time of a carpet is 67 and it's important to note that this value is stored as an integer. Where this problem comes to light is when 67 is halved. When the integer 67 is divided by the integer 2, the output value is 33. If we take this knowledge and apply it with 3 carpets, we get a total burn time of 99, and with smokers and blast furnaces, at least 100 is required in order to smelt an item, therefore resulting in this issue occurring.
Can confirm in 1.18.
Can confirm as of 22w03a
Can confirm in 1.18.2.
Can confirm in 1.19.
Can confirm in 1.19.2.