From ecf00146836a3cdc5c24f435e393a714d3aafbb4 Mon Sep 17 00:00:00 2001 From: agp8x Date: Sun, 22 Sep 2024 22:55:27 +0200 Subject: [PATCH] update 1.0 until early p3, add more alts --- src/main/java/satisfactory/Database.java | 321 +++++++++++++++++++---- src/main/java/satisfactory/Test.java | 16 +- 2 files changed, 290 insertions(+), 47 deletions(-) diff --git a/src/main/java/satisfactory/Database.java b/src/main/java/satisfactory/Database.java index 55e5ee9..a91d581 100644 --- a/src/main/java/satisfactory/Database.java +++ b/src/main/java/satisfactory/Database.java @@ -422,7 +422,7 @@ public class Database { public static final Item AlcladAluminumSheet = new Part("Alclad Aluminum Sheet", -1); public static final Item AluminumCasing = new Part("Aluminum Casing", -1); public static final Item RawQuartz = new Ore("Raw Quartz", -1); - public static final Item QuartzCristal = new Part("Quartz Cristal", -1); + public static final Item QuartzCristal = new Part("Quartz Cristal", -1); // TODO: rename to Quartz Crystal public static final Item CrystalOscillator = new Part("Crystal Oscillator", -1); public static final Item RadioControlUnit = new Part("Radio Control Unit", -1); public static final Item AluminumScrap = new Part("Aluminum Scrap", -1); @@ -499,13 +499,12 @@ public class Database { { // raw resources // ores - Set ores = new HashSet<>(Arrays.asList(IronOre, Coal, Limestone, CopperOre, CateriumOre, Sulfur, Uranium)); - ores.addAll(Arrays.asList(Bauxite, RawQuartz));// TODO: rly? + Set ores = new HashSet<>(Arrays.asList(IronOre, Coal, Limestone, CopperOre, CateriumOre, Sulfur, Uranium, Bauxite, RawQuartz)); for (Item ore : ores) { - new RecipeBuilder().setDuration(1).setName("Miner Mk1").setIsHandCraftable(false).setBuilding(Buildings.MINER_MK1).addOutput(ore, 1).createRecipe(); - new RecipeBuilder().setDuration(1).setName("Miner Mk2").setIsHandCraftable(false).setBuilding(Buildings.MINER_MK2).addOutput(ore, 2).createRecipe(); + Recipe mk1 = new RecipeBuilder().setDuration(1).setName("Miner Mk1").setIsHandCraftable(false).setBuilding(Buildings.MINER_MK1).addOutput(ore, 1).createRecipe(); + Recipe mk2 = new RecipeBuilder().setDuration(1).setName("Miner Mk2").setIsHandCraftable(false).setBuilding(Buildings.MINER_MK2).addOutput(ore, 2).createRecipe(); Recipe mk3 = new RecipeBuilder().setDuration(1).setName("Miner Mk3").setIsHandCraftable(false).setBuilding(Buildings.MINER_MK3).addOutput(ore, 4).createRecipe(); - ore.setPreference(mk3); + ore.setPreference(mk2); } // fluids @@ -513,6 +512,46 @@ public class Database { //CrudeOil.setPreference(); Recipe water = new RecipeBuilder().setDuration(1).setName("water pump thingy").setIsHandCraftable(false).setBuilding(Buildings.WATER_EXTRACTOR).addOutput(Water, 2).createRecipe(); Water.setPreference(water); + Map fluids = new HashMap<>(); + Map> packagedFluids = new HashMap<>(); + fluids.put(Water, PackagedWater); + packagedFluids.put(Water, Arrays.asList(2, 1)); + fluids.put(CrudeOil, PackagedOil); + packagedFluids.put(CrudeOil, Arrays.asList(4, 2)); + fluids.put(Fuel, PackagedFuel); + packagedFluids.put(Fuel, Arrays.asList(3, 2)); + fluids.put(HeavyOilResidue, PackagedHeavyOilResidue); + packagedFluids.put(HeavyOilResidue, Arrays.asList(4, 6)); + fluids.put(LiquidBiofuel, PackagedLiquidBiofuel); + packagedFluids.put(LiquidBiofuel, Arrays.asList(3, 2)); + fluids.put(Turbofuel, PackagedTurboFuel); + //packagedFluids.put(Turbofuel, Arrays.asList()); + fluids.put(AluminaSolution, PackagedAluminaSolution); + //packagedFluids.put(AluminaSolution, Arrays.asList()); // TODO + fluids.put(SulfuricAcid, PackagedSulfuricAcid); + //packagedFluids.put(SulfuricAcid, Arrays.asList()); // TODO + packagedFluids.forEach((fluid, durations) -> { + int packaged = durations.get(0); + int unpackaged = durations.get(1); + Item packagedFluid = fluids.get(fluid); + new RecipeBuilder() + .setBuilding(Buildings.PACKAGER) + .setDuration(packaged) + .addInput(fluid, 2) + .addInput(EmptyCanister, 2) + .addOutput(packagedFluid, 2) + .createRecipe(); + + new RecipeBuilder() + .setName("Upackage Liquid " + fluid.getName()) + .setBuilding(Buildings.PACKAGER) + .setDuration(unpackaged) + .addInput(packagedFluid, 2) + .addOutput(fluid, 2) + .addOutput(EmptyCanister, 2, true) + .createRecipe(); + + }); // gases new RecipeBuilder().setDuration(1).setName("pressure thingy").setIsHandCraftable(false).setBuilding(Buildings.RESOURCE_WELL_EXTRACTOR).addOutput(NitrogenGas, 1).createRecipe(); @@ -526,19 +565,51 @@ public class Database { .addInput(Water, 4) .addOutput(IronIngot, 13).createRecipe(); IronIngot.add(alt); + new RecipeBuilder() + .setName("Basic Iron Ingot") + .setBuilding(Buildings.FOUNDRY) + .setDuration(12) + .addInput(IronOre, 5) + .addInput(Limestone, 8) + .addOutput(IronIngot, 10) + .createRecipe(); } { // Copper Ingot new RecipeBuilder().setDuration(2).addInput(CopperOre, 1).addOutput(CopperIngot, 1).setBuilding(Buildings.SMELTER).createRecipe(); - new RecipeBuilder().setName("Coper Alloy Ingot").setDuration(12).setBuilding(Buildings.FOUNDRY) - .addInput(CopperOre, 10) + new RecipeBuilder().setName("Copper Alloy Ingot").setDuration(6).setBuilding(Buildings.FOUNDRY) + .addInput(CopperOre, 5) .addInput(IronOre, 5) - .addOutput(CopperIngot, 20) + .addOutput(CopperIngot, 10) + .createRecipe(); + new RecipeBuilder() + .setName("Pure Copper Ingot") + .setBuilding(Buildings.REFINERY) + .setDuration(24) + .addInput(CopperOre, 6) + .addInput(Water, 4) + .addOutput(CopperIngot, 15) .createRecipe(); } { // Caterium Ingot new RecipeBuilder().setDuration(4).addInput(CateriumOre, 3).addOutput(CateriumIngot, 1).setBuilding(Buildings.SMELTER).createRecipe(); + new RecipeBuilder() + .setName("Tempered Caterium Ingot") + .setBuilding(Buildings.FOUNDRY) + .setDuration(8) + .addInput(CateriumOre, 6) + .addInput(PetroleumCoke, 2) + .addOutput(CateriumIngot, 3) + .createRecipe(); + new RecipeBuilder() + .setName("Pure Caterium Ingot") + .setBuilding(Buildings.REFINERY) + .setDuration(5) + .addInput(CateriumOre, 2) + .addInput(Water, 2) + .addOutput(CateriumIngot, 1) + .createRecipe(); } { // Steel Ingot @@ -554,6 +625,14 @@ public class Database { .addOutput(SteelIngot, 20) .setDuration(12) .createRecipe(); + new RecipeBuilder() + .setName("Solid Steel Ingot") + .setBuilding(Buildings.FOUNDRY) + .addInput(IronIngot, 2) + .addInput(Coal, 2) + .addOutput(SteelIngot, 3) + .setDuration(3) + .createRecipe(); } { // Concrete @@ -570,7 +649,7 @@ public class Database { .addInput(Silica, 3) .addInput(Limestone, 12) .addOutput(Concrete, 10) - .setDuration(24) + .setDuration(12) .createRecipe(); } { @@ -581,18 +660,37 @@ public class Database { .addInput(Plastic, 2) .addOutput(IronPlate, 18) .createRecipe(); + new RecipeBuilder() + .setDuration(4) + .setBuilding(Buildings.FOUNDRY) + .addInput(IronIngot, 1) + .addInput(SteelIngot, 1) + .addOutput(IronPlate, 3) + .setName("Steel Cast Plate") + .createRecipe(); } { // Iron Rod new RecipeBuilder().setDuration(4).addInput(IronIngot, 1).addOutput(IronRod, 1).setBuilding(Buildings.CONSTRUCTOR).createRecipe(); + new RecipeBuilder().setDuration(5).addInput(SteelIngot,1).addOutput(IronRod, 4).setBuilding(Buildings.CONSTRUCTOR).setName("Steel Rod").createRecipe(); } { // Screw new RecipeBuilder().setDuration(6).addInput(IronRod, 1).addOutput(Screw, 4).setBuilding(Buildings.CONSTRUCTOR).createRecipe(); + new RecipeBuilder().setDuration(24).addInput(IronIngot,5).addOutput(Screw,20).setBuilding(Buildings.CONSTRUCTOR).setName("Cast Screw").createRecipe(); + new RecipeBuilder().setDuration(12).addInput(SteelBeam,1).addOutput(Screw,52).setBuilding(Buildings.CONSTRUCTOR).setName("Steel Screw").createRecipe(); } { // Steel Beam new RecipeBuilder().setDuration(4).addInput(SteelIngot, 4).addOutput(SteelBeam, 1).setBuilding(Buildings.CONSTRUCTOR).createRecipe(); + new RecipeBuilder() + .setName("Molded Beam") + .setBuilding(Buildings.FOUNDRY) + .setDuration(12) + .addInput(SteelIngot, 24) + .addInput(Concrete, 16) + .addOutput(SteelBeam, 9) + .createRecipe(); } { // Reinforced Iron Plate @@ -600,7 +698,7 @@ public class Database { .addInput(IronPlate, 6) .addInput(Screw, 12).addOutput(ReinforcedIronPlate, 1) .createRecipe(); - new RecipeBuilder().setDuration(4).setName("Bolted Iron Plate").setIsHandCraftable(false).setBuilding(Buildings.ASSEMBLER).addOutput(ReinforcedIronPlate, 3) + new RecipeBuilder().setDuration(12).setName("Bolted Iron Plate").setIsHandCraftable(false).setBuilding(Buildings.ASSEMBLER).addOutput(ReinforcedIronPlate, 3) .addInput(IronPlate, 18) .addInput(Screw, 50).createRecipe(); new RecipeBuilder().setDuration(32).setBuilding(Buildings.ASSEMBLER) @@ -616,32 +714,67 @@ public class Database { new RecipeBuilder().setDuration(60).setBuilding(Buildings.ASSEMBLER).addOutput(ModularFrame, 2) .addInput(ReinforcedIronPlate, 3) .addInput(IronRod, 12).createRecipe(); + new RecipeBuilder() + .setName("Steeled Frame") + .setBuilding(Buildings.ASSEMBLER) + .setDuration(60) + .addInput(ReinforcedIronPlate, 2) + .addInput(SteelPipe, 10) + .addOutput(ModularFrame, 3) + .createRecipe(); } { // Steel Pipe new RecipeBuilder().setDuration(6).setBuilding(Buildings.CONSTRUCTOR).addOutput(SteelPipe, 2) .addInput(SteelIngot, 3).createRecipe(); + new RecipeBuilder() + .setName("Molded Steel Pipe") + .setBuilding(Buildings.FOUNDRY) + .setDuration(6) + .addInput(SteelIngot, 5) + .addInput(Concrete, 3) + .addOutput(SteelPipe, 5) + .createRecipe(); } { // Encased Industrial Beam - new RecipeBuilder().setDuration(10).setBuilding(Buildings.ASSEMBLER) - .addInput(SteelBeam, 4) - .addInput(Concrete, 5).addOutput(EncasedIndustrialBeam, 1).createRecipe(); + new RecipeBuilder() + .setDuration(10) + .setBuilding(Buildings.ASSEMBLER) + .addInput(SteelBeam, 3) + .addInput(Concrete, 6) + .addOutput(EncasedIndustrialBeam, 1) + .createRecipe(); } { // Heavy Modular Frame - Recipe recipe = new RecipeBuilder().setDuration(30).setBuilding(Buildings.MANUFACTURER) + + Recipe recipe = new RecipeBuilder() + .setDuration(30) + .setBuilding(Buildings.MANUFACTURER) .addInput(ModularFrame, 5) - .addInput(SteelPipe, 15) + .addInput(SteelPipe, 20) .addInput(EncasedIndustrialBeam, 5) - .addInput(Screw, 100).addOutput(HeavyModularFrame, 1).createRecipe(); + .addInput(Screw, 120) + .addOutput(HeavyModularFrame, 1).createRecipe(); HeavyModularFrame.setPreference(recipe); + /* TODO Name new RecipeBuilder().setDuration(64).setBuilding(Buildings.MANUFACTURER) .addInput(ModularFrame, 8) .addInput(EncasedIndustrialBeam, 10) .addInput(SteelPipe, 36) .addInput(Concrete, 22) - .addOutput(HeavyModularFrame, 3).createRecipe(); + .addOutput(HeavyModularFrame, 3).createRecipe();*/ + new RecipeBuilder() + .setName("Heavy Flexible Frame") + .setBuilding(Buildings.MANUFACTURER) + .setDuration(16) + .addInput(ModularFrame, 5) + .addInput(EncasedIndustrialBeam, 3) + .addInput(Rubber, 20) + .addInput(Screw, 104) + .addOutput(HeavyModularFrame, 1) + .createRecipe(); } { // Wire @@ -657,12 +790,11 @@ public class Database { { // Cable new RecipeBuilder().setDuration(2).addInput(Wire, 2).addOutput(Cable, 1).setBuilding(Buildings.CONSTRUCTOR).createRecipe(); - new RecipeBuilder().setDuration(2).setBuilding(Buildings.ASSEMBLER) - .setName("--unkown-cable-recipe-maybe-quickwire-cable--") + new RecipeBuilder().setDuration(24).setBuilding(Buildings.ASSEMBLER) + .setName("Quickwire Cable") .addInput(Quickwire, 3) .addInput(Rubber, 2) .addOutput(Cable, 11).createRecipe(); - // TODO 60/27,5 new RecipeBuilder().setName("Coated Cable") .addInput(Wire, 5) .addInput(HeavyOilResidue, 2) @@ -670,6 +802,14 @@ public class Database { .setBuilding(Buildings.REFINERY) .setDuration(8) .createRecipe(); + new RecipeBuilder() + .setName("Insulated Cable") + .setBuilding(Buildings.ASSEMBLER) + .setDuration(12) + .addInput(Wire, 9) + .addInput(Rubber, 6) + .addOutput(Cable, 20) + .createRecipe(); } { // Copper Sheet @@ -704,6 +844,14 @@ public class Database { new RecipeBuilder().setDuration(12).setBuilding(Buildings.ASSEMBLER) .addInput(CopperSheet, 5) .addInput(Quickwire, 20).addOutput(AILimiter, 1).createRecipe(); + new RecipeBuilder() + .setName("Plastic AI Limiter") + .setBuilding(Buildings.ASSEMBLER) + .setDuration(15) + .addInput(Quickwire, 30) + .addInput(Plastic, 7) + .addOutput(AILimiter, 2) + .createRecipe(); } { // High Speed Connector @@ -711,6 +859,15 @@ public class Database { .addInput(Quickwire, 56) .addInput(Cable, 10) .addInput(CircuitBoard, 1).addOutput(HighSpeedConnector, 1).createRecipe(); + new RecipeBuilder() + .setName("Silicon High-Speed Connector") + .setBuilding(Buildings.MANUFACTURER) + .setDuration(40) + .addInput(Quickwire, 60) + .addInput(Silica, 25) + .addInput(CircuitBoard, 2) + .addOutput(HighSpeedConnector, 2) + .createRecipe(); } { // Biomass @@ -746,6 +903,22 @@ public class Database { new RecipeBuilder().setDuration(15).setBuilding(Buildings.ASSEMBLER) .addInput(IronRod, 5) .addInput(Screw, 25).addOutput(Rotor, 1).createRecipe(); + new RecipeBuilder() + .setName("Copper Rotor") + .setBuilding(Buildings.ASSEMBLER) + .setDuration(16) + .addInput(CopperSheet, 6) + .addInput(Screw, 52) + .addOutput(Rotor, 3) + .createRecipe(); + new RecipeBuilder() + .setName("Steel Rotor") + .setBuilding(Buildings.ASSEMBLER) + .setDuration(12) + .addInput(SteelPipe, 2) + .addInput(Wire, 6) + .addOutput(Rotor, 1) + .createRecipe(); } { // Stator @@ -764,6 +937,15 @@ public class Database { new RecipeBuilder().setDuration(12).setBuilding(Buildings.ASSEMBLER) .addInput(Rotor, 2) .addInput(Stator, 2).addOutput(Motor, 1).createRecipe(); + new RecipeBuilder() + .setName("Rigor Motor") + .setBuilding(Buildings.MANUFACTURER) + .setDuration(48) + .addInput(Rotor, 3) + .addInput(Stator, 3) + .addInput(CrystalOscillator, 1) + .addOutput(Motor, 6) + .createRecipe(); } { // Power Shard @@ -776,10 +958,10 @@ public class Database { new RecipeBuilder().setDuration(8).setBuilding(Buildings.ASSEMBLER) .addInput(Coal, 1) .addInput(Sulfur, 2).addOutput(BlackPowder, 1).createRecipe(); - new RecipeBuilder().setName("Fine Black Powder").setDuration(16).setBuilding(Buildings.ASSEMBLER) - .addInput(Sulfur, 2) - .addInput(CompactedCoal, 1) - .addOutput(BlackPowder, 4) + new RecipeBuilder().setName("Fine Black Powder").setDuration(8).setBuilding(Buildings.ASSEMBLER) + .addInput(Sulfur, 1) + .addInput(CompactedCoal, 2) + .addOutput(BlackPowder, 6) .createRecipe(); } { @@ -795,6 +977,7 @@ public class Database { } { // Computer + /* TODO 1.0 Recipe recipe = new RecipeBuilder().setDuration(24).setBuilding(Buildings.MANUFACTURER) .addInput(CircuitBoard, 10) .addInput(Cable, 9) @@ -810,7 +993,7 @@ public class Database { .addOutput(Computer, 3) .createRecipe(); - Computer.setPreference(recipe); + Computer.setPreference(recipe);*/ } { // Super Computer @@ -914,14 +1097,14 @@ public class Database { .addOutput(Fuel, 10) .createRecipe(); Fuel.setPreference(recipe); - } - { + // Packaged Fuel - new RecipeBuilder().setBuilding(Buildings.PACKAGER) - .addInput(Turbofuel, 2) - .addInput(EmptyCanister, 2) - .addOutput(PackagedTurboFuel, 2) - .setDuration(6) + new RecipeBuilder().setBuilding(Buildings.REFINERY) + .setName("Diluted Packaged Fuel") + .addInput(HeavyOilResidue, 1) + .addInput(PackagedWater, 2) + .addOutput(PackagedFuel, 2) + .setDuration(2) .createRecipe(); } { @@ -939,10 +1122,18 @@ public class Database { .addInput(SolidBiofuel, 6) .addInput(Water, 3).addOutput(LiquidBiofuel, 1).createRecipe(); - new RecipeBuilder().setDuration(2).setBuilding(Buildings.PACKAGER) + new RecipeBuilder().setDuration(3).setBuilding(Buildings.PACKAGER) .addInput(PackagedLiquidBiofuel, 2) .addOutput(LiquidBiofuel, 2) .addOutput(EmptyCanister, 2, true).createRecipe(); + new RecipeBuilder() + .setName("Unpackaga Liquid Biofuel") + .setBuilding(Buildings.PACKAGER) + .setDuration(2) + .addInput(PackagedLiquidBiofuel, 2) + .addOutput(LiquidBiofuel, 2) + .addOutput(EmptyCanister, 2, true) + .createRecipe(); } { // Plastic @@ -952,6 +1143,14 @@ public class Database { new RecipeBuilder().setDuration(6).setName("Residual Plastic").setIsHandCraftable(false).setBuilding(Buildings.REFINERY).addOutput(Plastic, 2) .addInput(PolymerResin, 6) .addInput(Water, 2).createRecipe(); + new RecipeBuilder() + .setName("REcycled Plastic") + .setBuilding(Buildings.REFINERY) + .setDuration(12) + .addInput(Rubber, 6) + .addInput(Fuel, 6) + .addOutput(Plastic, 12) + .createRecipe(); } { // Rubber @@ -961,6 +1160,14 @@ public class Database { new RecipeBuilder().setDuration(6).setName("Residual Rubber").setIsHandCraftable(false).setBuilding(Buildings.REFINERY).addOutput(Rubber, 2) .addInput(PolymerResin, 6) .addInput(Water, 4).createRecipe(); + new RecipeBuilder() + .setName("Recycled Rubber") + .setBuilding(Buildings.REFINERY) + .setDuration(12) + .addInput(Plastic, 6) + .addInput(Fuel, 6) + .addOutput(Rubber, 12) + .createRecipe(); } { // Heavy Oil Residue @@ -983,6 +1190,15 @@ public class Database { new RecipeBuilder().setDuration(120).addInput(QuartzCristal, 36).addOutput(CrystalOscillator, 2).setBuilding(Buildings.MANUFACTURER) .addInput(Cable, 28) .addInput(ReinforcedIronPlate, 5).createRecipe(); + new RecipeBuilder() + .setName("Insulated Crystal Oscillator") + .setBuilding(Buildings.MANUFACTURER) + .setDuration(32) + .addInput(QuartzCristal, 10) + .addInput(Rubber, 7) + .addInput(AILimiter, 1) + .addOutput(CrystalOscillator, 1) + .createRecipe(); } { new RecipeBuilder().setDuration(48).addInput(AluminumCasing, 32).addOutput(RadioControlUnit, 2).setBuilding(Buildings.MANUFACTURER) @@ -994,6 +1210,22 @@ public class Database { } { new RecipeBuilder().setDuration(8).addInput(RawQuartz, 5).addOutput(QuartzCristal, 3).setBuilding(Buildings.CONSTRUCTOR).createRecipe(); + new RecipeBuilder() + .setName("Fused Quartz Crystal") + .setBuilding(Buildings.FOUNDRY) + .setDuration(20) + .addInput(RawQuartz, 25) + .addInput(Coal, 12) + .addOutput(QuartzCristal, 18) + .createRecipe(); + new RecipeBuilder() + .setName("Pure Quartz Crystal") + .setBuilding(Buildings.REFINERY) + .setDuration(8) + .addInput(RawQuartz, 9) + .addInput(Water, 5) + .addOutput(QuartzCristal, 7) + .createRecipe(); } { new RecipeBuilder().setDuration(8).addInput(RawQuartz, 3).addOutput(Silica, 5).setBuilding(Buildings.CONSTRUCTOR).createRecipe(); @@ -1062,11 +1294,12 @@ public class Database { .createRecipe(); } { + /* TODO 1.0 new RecipeBuilder().setDuration(120).setBuilding(Buildings.MANUFACTURER) .addInput(VersatileFrameWork, 5) .addInput(ElectromagneticControlRod, 5) .addInput(Battery, 10) - .addOutput(MagneticFieldGenerator, 2).createRecipe(); + .addOutput(MagneticFieldGenerator, 2).createRecipe();*/ } { new RecipeBuilder().setDuration(3).setBuilding(Buildings.BLENDER) @@ -1130,6 +1363,14 @@ public class Database { .addInput(IronPlate, 2) .addInput(IronRod, 2) .addOutput(PortableMiner, 1).createRecipe(); + new RecipeBuilder() + .setName("Automated Miner") + .setBuilding(Buildings.ASSEMBLER) + .setDuration(60) + .addInput(SteelPipe, 4) + .addInput(IronPlate, 4) + .addOutput(PortableMiner, 1) + .createRecipe(); } { //Turbofuel @@ -1165,16 +1406,6 @@ public class Database { .createRecipe(); } - { - // Packaged Turbofuel - new RecipeBuilder() - .setDuration(3) - .setBuilding(Buildings.PACKAGER) - .addInput(Turbofuel, 2) - .addInput(EmptyCanister, 2) - .addOutput(PackagedTurboFuel, 2) - .createRecipe(); - } { // Compacted Coal new RecipeBuilder() diff --git a/src/main/java/satisfactory/Test.java b/src/main/java/satisfactory/Test.java index 7f5c7c2..bf622e7 100644 --- a/src/main/java/satisfactory/Test.java +++ b/src/main/java/satisfactory/Test.java @@ -7,6 +7,7 @@ import satisfactory.items.Recipe; import satisfactory.items.SumResult; import java.util.Map; +import java.util.Optional; import java.util.Set; import static satisfactory.Utils.*; @@ -137,7 +138,7 @@ public class Test { */ //planFor("aluminumIngot", new Production(Database.AluminumIngot, 240)); //planFor("fusedFrame", new Production(Database.FusedModularFrame, 1.5)); - planFor( + /*planFor( "p4", new Production(Database.AssemblyDirectorSystem,4), new Production(Database.MagneticFieldGenerator, 4), @@ -152,7 +153,18 @@ public class Test { "p4_nuclearPasta_200copperpowder", new Production(Database.CopperPowder, 200) ); - planFor("turboFuel", new Production(Database.Turbofuel, 1)); + planFor("turboFuel", new Production(Database.Turbofuel, 1));*/ + + // 1.0 + + //planFor("p1_1.0", new Production(Database.SmartPlating, 4)); + //planFor("2xmk2impure_mod_frame", new Production(Database.ModularFrame, 5)); + Optional castScrewOpt = Database.Screw.getRecipes().stream().filter(recipe -> "Cast Screw".equals(recipe.getName())).findFirst(); + Recipe castScrew = castScrewOpt.get(); + Database.Screw.setPreference(castScrew); + //planFor("2xmk2impure_mod_frame_cast", new Production(Database.ModularFrame, 5)); + //planFor("p2_1.0_cast", new Production(Database.SmartPlating, 4), new Production(Database.VersatileFrameWork, 4), new Production(Database.AutomatedWiring, 0.25)); + planFor("p2_1.0_cast", new Production(Database.SmartPlating, 8), new Production(Database.VersatileFrameWork, 8), new Production(Database.AutomatedWiring, 0.5)); } private static void planFor(Item item, int amount, String name) {