Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Blast chiller recipe bugs. #152

Open
bottmint opened this issue Feb 18, 2022 · 5 comments
Open

Blast chiller recipe bugs. #152

bottmint opened this issue Feb 18, 2022 · 5 comments

Comments

@bottmint
Copy link

Describe the bug
Several blast chiller recipes are incorrect. Gold, electrum, invar, copper, osmium, bronze, iron, lead, aluminum, zinc, lumium, steel, silver, signalum, nickel, tin, uranium, constantan, and overworld matter all show requiring 1000 mB of fluid to create one ingot/block (the ingots show 1000 mB when using a tinker's ingot gold cast). Additionally, there are duplicate recipes for several ingots, and ruby, iridium, titanium, and sapphire all show as craftable without an input fluid.

To Reproduce
Steps to reproduce the behavior:

  1. With a fresh install of 14.3, make a creative world.
  2. View recipes for blast chiller. Note the 1000 mB for several ingots and overworld matter. Note the recipes for ruby, iridium, titanium and sapphire.
  3. Attempt to chill 1 bucket of molten overworld matter and see it consumes the entire bucket.
  4. Place tinker's ingot gold cast into empty blast chiller and watch it make titanium ingots.

Expected behavior
Accurate jei recipes, no duplicates and no exploitable recipes.

Screenshots
image
image
image

Version
Seaopolis v14.3

@bottmint bottmint changed the title BUG Blast chiller recipe bugs. Feb 18, 2022
@bottmint
Copy link
Author

There's another issue regarding compacting drawers and overworld matter. I'm not sure how to reproduce it, but more often than not, the amount of stored overworld matter is displayed for compressed overworld matter.
image

@ztahenakos
Copy link

ztahenakos commented Feb 21, 2022

The Blaster Chiller incorrect amount issue is fixed in upstream CoFHCore by CoFH/CoFHCore@ae16751. Updating to CoFHCore v1.4.1.8 resolves this for me in Seaopolis 15.

EDIT: Edited what was addressed to be exact. Referenced commit only fixes part of bottmint's issues as mentioned in the comment below.

@bottmint
Copy link
Author

bottmint commented Feb 21, 2022

I can confirm updating CoFHCore resolves most of the recipe issues, however, the gem recipes and titanium ingot issues still exist. Titanium is still able to be created from nothing when using the Tinker's Ingot Gold Cast. Thanks for that catch.

@ztahenakos
Copy link

ztahenakos commented Feb 21, 2022

I think I've been able to root cause the other issue. Line 56 of kubeJS/server_scripts/unify.js is adding a bunch of thermal chiller recipes and makes an assumption that the fluids are all tconstruct molten fluids, but in the case of lets say ruby for example, there isn't a tconstruct:molten_ruby, so it fails to construct these properly because the source molten fluids don't exist.

@ztahenakos
Copy link

ztahenakos commented Feb 22, 2022

I have a hacky but functional workaround that resolves this. Below are modifications to unify.js that lives in kubeJS/server_scripts:

--- unify.js	2022-02-21 22:11:56.507176300 -0500
+++ unify.js_new	2022-02-21 22:10:58.805917200 -0500
@@ -1,5 +1,6 @@
 //priority: 90
 
+const jaopca_items = ['ruby', 'sapphire', 'iridium', 'titanium']
 onEvent('recipes', e => {
 
     //(unifiedname, ingot, dust, block, nugget, tinkers_ingot_cool_time, plate)
@@ -53,7 +54,11 @@
     e.recipes.thermal.pulverizer(dust, ingot).id(`thermal:machine/pulverizer/pulverizer_${name}_ingot_to_dust`)
     e.recipes.thermal.press(`9x ${ingot}`, [block, 'thermal:press_unpacking_die']).id(`thermal:machine/press/unpacking/press_${name}_unpacking`)
     e.recipes.thermal.press(block, [`9x ${ingot}`, 'thermal:press_packing_3x3_die']).id(`thermal:machine/press/packing3x3/press_${name}_packing`)
-    e.recipes.thermal.chiller(ingot, [Fluid.of(`tconstruct:molten_${name}`, 144), '#tconstruct:casts/multi_use/ingot']).energy(5000).id(`thermal:compat/tconstruct/chiller_tconstruct_${name}_ingot`)
+    if (jaopca_items.includes(name)) {
+    	e.recipes.thermal.chiller(ingot, [Fluid.of(`jaopca:molten.${name}`, 144), '#tconstruct:casts/multi_use/ingot']).energy(5000).id(`thermal:compat/tconstruct/chiller_tconstruct_${name}_ingot`)
+    }else {
+    	e.recipes.thermal.chiller(ingot, [Fluid.of(`tconstruct:molten_${name}`, 144), '#tconstruct:casts/multi_use/ingot']).energy(5000).id(`thermal:compat/tconstruct/chiller_tconstruct_${name}_ingot`)
+    }
     }
 
     //Plate Unification
@@ -143,4 +148,5 @@
 event.remove('forge:gears/diamond', 'titanium:diamond_gear')
 
 })
-//Remove Unwanted in JEI
\ No newline at end of file
+//Remove Unwanted in JEI
+

This now makes sure that it uses the correct item ID (including provider mod). The easier thing to do I think would be if we could simply alias jaopca:molten fluids ot also provide a tconstruct molten fluid so there wouldn't have to be an if here, but I'm learning as I go here hence the hack.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants