From d6c9a7b769e7f8ca5d9d519cb5fb46b046826afd Mon Sep 17 00:00:00 2001 From: GDCloud <93287602+GDCloudstrike@users.noreply.github.com> Date: Tue, 9 May 2023 19:30:24 +0200 Subject: fix overflow calculations (#204) --- .../multi/GT_MetaTileEntity_EM_EyeOfHarmony.java | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'src/main') diff --git a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_EyeOfHarmony.java b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_EyeOfHarmony.java index 1501b692b2..68cdde1801 100644 --- a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_EyeOfHarmony.java +++ b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_EyeOfHarmony.java @@ -753,11 +753,11 @@ public class GT_MetaTileEntity_EM_EyeOfHarmony extends GT_MetaTileEntity_Multibl private void calculateHydrogenHeliumInputExcessValues(final long hydrogenRecipeRequirement, final long heliumRecipeRequirement) { - long hydrogenStored = validFluidMap.get(Materials.Hydrogen.getGas(1L)); - long heliumStored = validFluidMap.get(Materials.Helium.getGas(1L)); + double hydrogenStored = validFluidMap.get(Materials.Hydrogen.getGas(1L)); + double heliumStored = validFluidMap.get(Materials.Helium.getGas(1L)); - double hydrogenExcessPercentage = abs(1 - hydrogenStored / hydrogenRecipeRequirement); - double heliumExcessPercentage = abs(1 - heliumStored / heliumRecipeRequirement); + double hydrogenExcessPercentage = hydrogenStored / hydrogenRecipeRequirement - 1; + double heliumExcessPercentage = heliumStored / heliumRecipeRequirement - 1; hydrogenOverflowProbabilityAdjustment = 1 - exp(-pow(30 * hydrogenExcessPercentage, 2)); heliumOverflowProbabilityAdjustment = 1 - exp(-pow(30 * heliumExcessPercentage, 2)); @@ -942,7 +942,7 @@ public class GT_MetaTileEntity_EM_EyeOfHarmony extends GT_MetaTileEntity_Multibl .addInfo( "Going over a recipe requirement on hydrogen or helium has a penalty on yield and recipe chance.") .addInfo("All stored hydrogen and helium is consumed during a craft. The associated formulas are:") - .addInfo(GREEN + "percentageOverflow = abs(1 - fluidStored/recipeRequirement)") + .addInfo(GREEN + "percentageOverflow = fluidStored/recipeRequirement - 1") .addInfo(GREEN + "adjustmentValue = 1 - exp(-(30 * percentageOverflow)^2)") .addInfo("The value of adjustmentValue is then subtracted from the total yield and recipe chance.") .addInfo(TOOLTIP_BAR) -- cgit