Better machine recipes

Issue #124 resolved
B Boldt created an issue

Hello Binnie, I didn't really know how to reach you other than here. You should check out how I have your machine recipes set up in my modpack.

Since the main 2 power systems right now are RF and EU, I thought it was kinda pointless to have 2 different recipes for each one. The base machine should always be RF in my opinion, as forestry itself is RF. I used minetweaker to allow them to be able to use forestry gears, enderio conduits, or thermal expansion coils in the crafting recipes.

Also, I made it so you can craft the machine with an IC2 wrench to get the EU version, and then a shapeless recipe to go back to RF. It works really good like that in practice and is a lot easier to get your head around as a player.

Anyways, if you want to look at my minetweaker scripts for this, you can see them here:

/* Binnie's mods Tweaks */

val nugget = <minecraft:gold_nugget>;
val iron = <ore:ingotIron>;
val chip = <Genetics:misc:9>;
val echip = <Forestry:chipsets:1>;
val pane = <ore:paneGlassColorless>;
val recase = <Genetics:misc>;
val case = <Forestry:sturdyMachine>;

val gear = <ore:geneticGear>;
gear.add(<EnderIO:itemBasicCapacitor>);
gear.add(<Forestry:gearBronze>);
gear.add(<ThermalExpansion:material:3>);

// Isolator
recipes.remove(<Genetics:machine>);
recipes.addShaped(<Genetics:machine>.withTag({"power-system": 1 as byte}), [[nugget, iron, nugget], [chip, recase, chip], [<Genetics:misc:3>, gear, <Genetics:misc:3>]]);
recipes.addShapeless(<Genetics:machine>.withTag({"power-system": 2 as byte}), [<IC2:itemToolWrench:*>.transformDamage(1), <Genetics:machine>.withTag({"power-system": 1 as byte})]);
recipes.addShapeless(<Genetics:machine>.withTag({"power-system": 1 as byte}), [<Genetics:machine>.withTag({"power-system": 2 as byte})]);

// Sequencer
recipes.remove(<Genetics:machine:1>);
recipes.addShaped(<Genetics:machine:1>.withTag({"power-system": 1 as byte}), [[nugget, gear, nugget], [chip, recase, chip], [<Genetics:misc:2>, gear, <Genetics:misc:2>]]);
recipes.addShapeless(<Genetics:machine:1>.withTag({"power-system": 2 as byte}), [<IC2:itemToolWrench:*>.transformDamage(1), <Genetics:machine:1>.withTag({"power-system": 1 as byte})]);
recipes.addShapeless(<Genetics:machine:1>.withTag({"power-system": 1 as byte}), [<Genetics:machine:1>.withTag({"power-system": 2 as byte})]);

// Polymeriser
recipes.remove(<Genetics:machine:2>);
recipes.addShaped(<Genetics:machine:2>.withTag({"power-system": 1 as byte}), [[nugget, iron, nugget], [chip, recase, chip], [nugget, gear, nugget]]);
recipes.addShapeless(<Genetics:machine:2>.withTag({"power-system": 2 as byte}), [<IC2:itemToolWrench:*>.transformDamage(1), <Genetics:machine:2>.withTag({"power-system": 1 as byte})]);
recipes.addShapeless(<Genetics:machine:2>.withTag({"power-system": 1 as byte}), [<Genetics:machine:2>.withTag({"power-system": 2 as byte})]);

// Inoculator
recipes.remove(<Genetics:machine:3>);
recipes.addShaped(<Genetics:machine:3>.withTag({"power-system": 1 as byte}), [[nugget, iron, nugget], [chip, recase, chip], [<ore:gemEmerald>, gear, <ore:gemEmerald>]]);
recipes.addShapeless(<Genetics:machine:3>.withTag({"power-system": 2 as byte}), [<IC2:itemToolWrench:*>.transformDamage(1), <Genetics:machine:3>.withTag({"power-system": 1 as byte})]);
recipes.addShapeless(<Genetics:machine:3>.withTag({"power-system": 1 as byte}), [<Genetics:machine:3>.withTag({"power-system": 2 as byte})]);

// Analyser
recipes.remove(<Genetics:labMachine:1>);
recipes.addShaped(<Genetics:labMachine:1>.withTag({"power-system": 1 as byte}), [[pane, <Forestry:beealyzer>, pane], [echip, recase, echip], [<Genetics:misc:1>, gear, <Genetics:misc:1>]]);
recipes.addShapeless(<Genetics:labMachine:1>.withTag({"power-system": 2 as byte}), [<IC2:itemToolWrench:*>.transformDamage(1), <Genetics:labMachine:1>.withTag({"power-system": 1 as byte})]);
recipes.addShapeless(<Genetics:labMachine:1>.withTag({"power-system": 1 as byte}), [<Genetics:labMachine:1>.withTag({"power-system": 2 as byte})]);

// Incubator
recipes.remove(<Genetics:labMachine:2>);
recipes.addShaped(<Genetics:labMachine:2>.withTag({"power-system": 1 as byte}), [[pane, <minecraft:furnace>, pane], [echip, recase, echip], [<Genetics:misc:1>, gear, <Genetics:misc:1>]]);
recipes.addShapeless(<Genetics:labMachine:2>.withTag({"power-system": 2 as byte}), [<IC2:itemToolWrench:*>.transformDamage(1), <Genetics:labMachine:2>.withTag({"power-system": 1 as byte})]);
recipes.addShapeless(<Genetics:labMachine:2>.withTag({"power-system": 1 as byte}), [<Genetics:labMachine:2>.withTag({"power-system": 2 as byte})]);

// Genepool
recipes.remove(<Genetics:labMachine:3>);
recipes.addShaped(<Genetics:labMachine:3>.withTag({"power-system": 1 as byte}), [[pane, gear, pane], [echip, recase, echip], [<ore:blockGlassColorless>, gear, <ore:blockGlassColorless>]]);
recipes.addShapeless(<Genetics:labMachine:3>.withTag({"power-system": 2 as byte}), [<IC2:itemToolWrench:*>.transformDamage(1), <Genetics:labMachine:3>.withTag({"power-system": 1 as byte})]);
recipes.addShapeless(<Genetics:labMachine:3>.withTag({"power-system": 1 as byte}), [<Genetics:labMachine:3>.withTag({"power-system": 2 as byte})]);

// Acclimatiser
recipes.remove(<Genetics:labMachine:4>);
recipes.addShaped(<Genetics:labMachine:4>.withTag({"power-system": 1 as byte}), [[pane, <minecraft:lava_bucket>, pane], [echip, recase, echip], [<minecraft:water_bucket>, gear, <minecraft:water_bucket>]]);
recipes.addShapeless(<Genetics:labMachine:4>.withTag({"power-system": 2 as byte}), [<IC2:itemToolWrench:*>.transformDamage(1), <Genetics:labMachine:4>.withTag({"power-system": 1 as byte})]);
recipes.addShapeless(<Genetics:labMachine:4>.withTag({"power-system": 1 as byte}), [<Genetics:labMachine:4>.withTag({"power-system": 2 as byte})]);

// Lumbermill
recipes.remove(<ExtraTrees:machine>);
recipes.addShaped(<ExtraTrees:machine>.withTag({"power-system": 1 as byte}), [[<ExtraTrees:misc:3>, <minecraft:iron_axe>, <ExtraTrees:misc:3>], [<minecraft:glass>, case, <minecraft:glass>], [<ExtraTrees:misc:3>, gear, <ExtraTrees:misc:3>]]);
recipes.addShapeless(<ExtraTrees:machine>.withTag({"power-system": 2 as byte}), [<IC2:itemToolWrench:*>.transformDamage(1), <ExtraTrees:machine>.withTag({"power-system": 1 as byte})]);
recipes.addShapeless(<ExtraTrees:machine>.withTag({"power-system": 1 as byte}), [<ExtraTrees:machine>.withTag({"power-system": 2 as byte})]);

// Fruit Press
recipes.remove(<ExtraTrees:machine:4>);
recipes.addShaped(<ExtraTrees:machine:4>.withTag({"power-system": 1 as byte}), [[iron, <minecraft:glass>, iron], [<ore:ingotTin>, case, <ore:ingotTin>], [<ore:ingotTin>, gear, <ore:ingotTin>]]);
recipes.addShapeless(<ExtraTrees:machine:4>.withTag({"power-system": 2 as byte}), [<IC2:itemToolWrench:*>.transformDamage(1), <ExtraTrees:machine:4>.withTag({"power-system": 1 as byte})]);
recipes.addShapeless(<ExtraTrees:machine:4>.withTag({"power-system": 1 as byte}), [<ExtraTrees:machine:4>.withTag({"power-system": 2 as byte})]);

// Brewery
recipes.remove(<ExtraTrees:machine:5>);
recipes.addShaped(<ExtraTrees:machine:5>.withTag({"power-system": 1 as byte}), [[<minecraft:glass>, <minecraft:glass>, <minecraft:glass>], [iron, case, iron], [<minecraft:brewing_stand>, gear, <minecraft:brewing_stand>]]);
recipes.addShapeless(<ExtraTrees:machine:5>.withTag({"power-system": 2 as byte}), [<IC2:itemToolWrench:*>.transformDamage(1), <ExtraTrees:machine:5>.withTag({"power-system": 1 as byte})]);
recipes.addShapeless(<ExtraTrees:machine:5>.withTag({"power-system": 1 as byte}), [<ExtraTrees:machine:5>.withTag({"power-system": 2 as byte})]);

// Distillery
recipes.remove(<ExtraTrees:machine:6>);
recipes.addShaped(<ExtraTrees:machine:6>.withTag({"power-system": 1 as byte}), [[<ore:dustRedstone>, <minecraft:iron_axe>, <ore:dustRedstone>], [iron, case, iron], [<ore:dustRedstone>, gear, <ore:dustRedstone>]]);
recipes.addShapeless(<ExtraTrees:machine:6>.withTag({"power-system": 2 as byte}), [<IC2:itemToolWrench:*>.transformDamage(1), <ExtraTrees:machine:6>.withTag({"power-system": 1 as byte})]);
recipes.addShapeless(<ExtraTrees:machine:6>.withTag({"power-system": 1 as byte}), [<ExtraTrees:machine:6>.withTag({"power-system": 2 as byte})]);

// Electrical Stimulator
recipes.addShaped(<ExtraBees:alveary:4>.withTag({"power-system": 1 as byte}), [[<Forestry:thermionicTubes:4>, gear, <Forestry:thermionicTubes:4>], [gear, <Forestry:alveary:*>, gear], [<Forestry:thermionicTubes:4>, gear, <Forestry:thermionicTubes:4>]]);
recipes.addShapeless(<ExtraBees:alveary:4>.withTag({"power-system": 2 as byte}), [<IC2:itemToolWrench:*>.transformDamage(1), <ExtraBees:alveary:4>.withTag({"power-system": 1 as byte})]);
recipes.addShapeless(<ExtraBees:alveary:4>.withTag({"power-system": 1 as byte}), [<ExtraBees:alveary:4>.withTag({"power-system": 2 as byte})]);

WTx1JCS.png ahilSev.png

Comments (5)

  1. Alex Binnie repo owner

    As the MJ version has been removed, the default is now the RF version with a gear. The reason the recipes are different is in my mind the 'item' required to actually use energy is different for RF (coils or gears) and EU (circuitry). When I get around to adding circuit boards to the machines, one of the options will be adding a circuit to allow the machine to accept EU power in addition to RF

  2. B Boldt reporter

    Since forestry itself is RF I agree that you don't need to have any special recipes for any other RF mods, the one with the gear is good enough.

    It would be neat if the machines had some sort of slot in them to allow for an "EU Upgrade" or something. It just seems weird to me to have multiple versions of the same machine in NEI. This could also allow you to offer upgrades for different power systems in the future, should something else come along. (Like Factorization or RotaryCraft, which still have unique power systems.)

  3. Alex Binnie repo owner

    For now, there is just one recipe for each machine. Each machine accepts both RF and EU. The idea of an EU upgrade will be implemented when forestry circuit boards are added to machines.

  4. Log in to comment