diff --git a/.gitignore b/.gitignore index 24860be..0f019b3 100644 --- a/.gitignore +++ b/.gitignore @@ -28,6 +28,8 @@ # except changed config files (add manually) !config +!config/AppliedEnergistics2 +!config/AppliedEnergistics2/AppliedEnergistics2.cfg !config/blur.cfg !config/hwell.cfg #!config/splash.properties diff --git a/config/AppliedEnergistics2/AppliedEnergistics2.cfg b/config/AppliedEnergistics2/AppliedEnergistics2.cfg new file mode 100644 index 0000000..f21dadf --- /dev/null +++ b/config/AppliedEnergistics2/AppliedEnergistics2.cfg @@ -0,0 +1,456 @@ +# Configuration file + +automation { + I:formationPlaneEntityLimit=128 +} + + +battery { + I:chargedStaff=8000 + I:colorApplicator=20000 + I:entropyManipulator=200000 + I:matterCannon=200000 + I:portableCell=20000 + I:wirelessTerminal=1600000 +} + + +client { + # Possible Values: AE, EU, RF + S:PowerUnit=AE + + # Possible Values: AUTOSEARCH, AUTOSEARCH_KEEP, MANUAL_SEARCH, MANUAL_SEARCH_KEEP, JEI_AUTOSEARCH, JEI_AUTOSEARCH_KEEP, JEI_MANUAL_SEARCH, JEI_MANUAL_SEARCH_KEEP + S:SEARCH_MODE=AUTOSEARCH + + # Possible Values: YES, NO, UNDECIDED + S:SEARCH_TOOLTIPS=YES + + # Possible Values: TALL, FULL, SMALL + S:TERMINAL_STYLE=TALL + + # Controls buttons on Crafting Screen : Capped at 9 + I:craftAmtButton1=1 + + # Controls buttons on Crafting Screen : Capped at 99 + I:craftAmtButton2=10 + + # Controls buttons on Crafting Screen : Capped at 999 + I:craftAmtButton3=100 + + # Controls buttons on Crafting Screen : Capped at 9999 + I:craftAmtButton4=1000 + B:disableColoredCableRecipesInJEI=true + B:enableEffects=true + + # Controls buttons on Level Emitter Screen : Capped at 9 + I:levelAmtButton1=1 + + # Controls buttons on Level Emitter Screen : Capped at 99 + I:levelAmtButton2=10 + + # Controls buttons on Level Emitter Screen : Capped at 999 + I:levelAmtButton3=100 + + # Controls buttons on Level Emitter Screen : Capped at 9999 + I:levelAmtButton4=1000 + + # Controls buttons on Priority Screen : Capped at 9 + I:priorityAmtButton1=1 + + # Controls buttons on Priority Screen : Capped at 99 + I:priorityAmtButton2=10 + + # Controls buttons on Priority Screen : Capped at 999 + I:priorityAmtButton3=100 + + # Controls buttons on Priority Screen : Capped at 9999 + I:priorityAmtButton4=1000 + B:useColoredCraftingStatus=true + B:useTerminalUseLargeFont=false +} + + +condenser { + I:MatterBalls=256 + I:Singularity=256000 +} + + +craftingcpu { + I:craftingCalculationTimePerTick=5 +} + + +########################################################################################################## +# features +#--------------------------------------------------------------------------------------------------------# +# Warning: Disabling a feature may disable other features depending on it. +########################################################################################################## + +features { + + world { + B:CertusOre=true + B:CertusQuartzWorldGen=true + B:ChargedCertusOre=true + B:ChestLoot=true + + # Blocks that are not used in any essential recipes, also slabs and stairs. + B:DecorativeBlocks=true + B:DecorativeLights=true + B:Flour=false + B:MeteoriteWorldGen=false + B:SkyStoneChests=true + B:SpawnPressesInMeteorites=false + B:TinyTNT=true + B:VillagerTrading=false + } + + machines { + B:Charger=false + B:CrystalGrowthAccelerator=false + B:GrindStone=false + B:Inscriber=true + B:VibrationChamber=false + } + + toolsclassifications { + B:CertusQuartzTools=true + B:NetherQuartzTools=true + B:PoweredTools=true + } + + tools { + B:ChargedStaff=true + B:ColorApplicator=true + B:EntropyManipulator=false + B:MatterCannon=true + B:MeteoriteCompass=false + B:PaintBalls=true + B:QuartzAxe=false + B:QuartzHoe=false + B:QuartzKnife=true + B:QuartzPickaxe=false + B:QuartzSpade=false + B:QuartzSword=false + B:QuartzWrench=true + B:WirelessAccessTerminal=true + } + + networkfeatures { + B:Channels=true + B:QuantumNetworkBridge=true + B:Security=true + B:SpatialIO=true + } + + networkbuses { + B:AnnihilationPlane=true + B:CableAnchor=true + B:CraftingTerminal=true + B:ExportBus=true + B:FluidAnnihilationPlane=true + B:FluidExportBus=true + B:FluidFormationPlane=true + B:FluidImportBus=true + B:FluidInterface=true + B:FluidLevelEmitter=true + B:FluidStorageBus=true + B:FluidTerminal=true + B:FormationPlane=true + B:IdentityAnnihilationPlane=true + B:ImportBus=true + B:Interface=true + B:LevelEmitter=true + B:P2PTunnel=true + B:Panels=true + B:PartConversionMonitor=true + B:QuartzFiber=true + B:StorageBus=true + B:StorageMonitor=true + B:Terminal=true + B:ToggleBus=true + } + + portablecell { + B:PortableCell=true + } + + storage { + B:Condenser=true + B:IOPort=true + B:MEChest=true + B:MEDrive=true + B:StorageCells=true + } + + networktool { + B:MemoryCard=true + B:NetworkTool=true + } + + cables { + B:CoveredCables=true + B:DenseCables=true + B:GlassCables=true + B:SmartCables=true + } + + energy { + B:DenseEnergyCells=true + B:EnergyAcceptor=true + B:EnergyCells=true + } + + p2ptunnels { + B:P2PTunnelEU=true + B:P2PTunnelFE=true + B:P2PTunnelFluids=true + B:P2PTunnelItems=true + B:P2PTunnelLight=true + B:P2PTunnelME=true + B:P2PTunnelOpenComputers=true + B:P2PTunnelPressure=true + B:P2PTunnelRedstone=true + } + + blockfeatures { + B:MassCannonBlockDamage=true + B:TinyTNTBlockDamage=false + } + + facades { + B:Facades=true + } + + misc { + B:Achievements=true + B:CraftingLog=false + B:Creative=true + B:DebugLogging=false + B:GrinderLogging=false + B:IntegrationLogging=false + B:LightDetector=true + B:LogSecurityAudits=false + B:Logging=true + B:PacketLogging=false + B:UnsupportedDeveloperTools=false + B:UpdateLogging=false + B:WebsiteRecipes=false + } + + crafting { + B:EnableDisassemblyCrafting=true + B:EnableFacadeCrafting=true + B:InWorldFluix=false + B:InWorldPurification=false + B:InWorldSingularity=true + B:InterfaceTerminal=true + } + + rendering { + B:AlphaPass=true + } + + craftingfeatures { + B:CraftingCPU=true + + # Use CraftingManager to find an alternative recipe, after a pattern rejected an ingredient. Should be enabled to avoid issues, but can have a minor performance impact. + B:CraftingManagerFallback=true + B:MolecularAssembler=true + B:Patterns=true + } + + upgrades { + B:AdvancedCards=true + B:BasicCards=true + B:ViewCell=true + } + + materials { + B:Certus=true + B:CrystalSeeds=false + B:Dusts=false + B:Fluix=true + B:Nuggets=true + B:PureCrystals=true + B:QuartzGlass=true + B:Silicon=false + B:SkyStone=true + } + + craftingcomponents { + B:Cores=true + B:MatterBall=true + B:Presses=false + B:PrintedCircuits=false + B:Processors=true + } + + commands { + B:ChunkLoggerTrace=false + } + +} + + +general { + # Will auto-remove items that crash when being loaded from storage. This will destroy those items instead of crashing the game! + B:removeCrashingItemsOnLoad=false +} + + +########################################################################################################## +# grindstone +#--------------------------------------------------------------------------------------------------------# +# Creates recipe of the following pattern automatically: '1 oreTYPE => 2 dustTYPE' and '(1 ingotTYPE or 1 crystalTYPE or 1 gemTYPE) => 1 dustTYPE' +########################################################################################################## + +grindstone { + # Blacklists the exact oredict name from being handled by any recipe. + S:blacklist < + > + + # The list of types to handle. Specify without a prefix like ore or dust. + S:grinderOres < + Obsidian + Ender + EnderPearl + Coal + Iron + Gold + Charcoal + NetherQuartz + CertusQuartz + Wheat + Fluix + Copper + Tin + Silver + Lead + Bronze + Brass + Platinum + Nickel + Invar + Aluminium + Electrum + Osmium + Zinc + > + + # Chance to actually get an output with stacksize > 1. + D:oreDoublePercentage=90.0 +} + + +########################################################################################################## +# modintegration +#--------------------------------------------------------------------------------------------------------# +# Valid Values are 'AUTO', 'ON', or 'OFF' - defaults to 'AUTO' ; Suggested that you leave this alone unless your experiencing an issue, or wish to disable the integration for a reason. +########################################################################################################## + +modintegration { + S:CraftTweaker=AUTO + S:IndustrialCraft2=AUTO + S:InventoryTweaks=AUTO + S:JustEnoughItems=AUTO + S:Mekanism=AUTO + S:MineFactoryReloaded=AUTO + S:OpenComputers=AUTO + S:Railcraft=AUTO + S:Tesla=AUTO + S:TheOneProbe=AUTO + S:Waila=AUTO +} + + +powerratios { + D:ForgeEnergy=0.5 + D:IC2=2.0 + D:UsageMultiplier=1.0 +} + + +spatialio { + D:spatialPowerExponent=1.35 + D:spatialPowerMultiplier=1250.0 + I:storageDimensionID=2 + I:storageProviderID=-11 +} + + +########################################################################################################## +# tickrates +#--------------------------------------------------------------------------------------------------------# +# Min / Max Tickrates for dynamic ticking, most of these components also use sleeping, to prevent constant ticking, adjust with care, non standard rates are not supported or tested. +########################################################################################################## + +tickrates { + I:AnnihilationPlane.max=120 + I:AnnihilationPlane.min=2 + I:Charger.max=120 + I:Charger.min=10 + I:ExportBus.max=60 + I:ExportBus.min=5 + I:FluidExportBus.max=60 + I:FluidExportBus.min=5 + I:FluidImportBus.max=40 + I:FluidImportBus.min=5 + I:FluidStorageBus.max=60 + I:FluidStorageBus.min=5 + I:IOPort.max=5 + I:IOPort.min=1 + I:ImportBus.max=40 + I:ImportBus.min=5 + I:Inscriber.max=1 + I:Inscriber.min=1 + I:Interface.max=120 + I:Interface.min=5 + I:ItemTunnel.max=60 + I:ItemTunnel.min=5 + I:LightTunnel.max=60 + I:LightTunnel.min=5 + I:METunnel.max=20 + I:METunnel.min=5 + I:OpenComputersTunnel.max=5 + I:OpenComputersTunnel.min=1 + I:PressureTunnel.max=120 + I:PressureTunnel.min=1 + I:StorageBus.max=60 + I:StorageBus.min=5 + I:VibrationChamber.max=40 + I:VibrationChamber.min=10 +} + + +########################################################################################################## +# wireless +#--------------------------------------------------------------------------------------------------------# +# Range= wirelessBaseRange + wirelessBoosterRangeMultiplier * Math.pow( boosters, wirelessBoosterExp ) +# PowerDrain= wirelessBaseCost + wirelessCostMultiplier * Math.pow( boosters, 1 + boosters / wirelessHighWirelessCount ) +########################################################################################################## + +wireless { + D:wirelessBaseCost=8.0 + D:wirelessBaseRange=16.0 + D:wirelessBoosterExp=1.5 + D:wirelessBoosterRangeMultiplier=1.0 + D:wirelessCostMultiplier=1.0 + D:wirelessTerminalDrainMultiplier=1.0 +} + + +worldgen { + D:meteoriteClusterChance=0.1 + I:meteoriteDimensionWhitelist < + 0 + > + I:meteoriteMaximumSpawnHeight=180 + I:minMeteoriteDistance=707 + I:quartzOresClusterAmount=15 + I:quartzOresPerCluster=4 + D:spawnChargedChance=0.07999998331069946 +} + + diff --git a/scripts/applied.zs b/scripts/applied.zs new file mode 100644 index 0000000..283e0d7 --- /dev/null +++ b/scripts/applied.zs @@ -0,0 +1,311 @@ +import scripts._base.disable; +import crafttweaker.item.IItemStack; +import crafttweaker.item.IIngredient; + + +# Base blocks + +// Disable conflicting items +disable(); +disable(); +mods.immersiveengineering.Crusher.removeRecipe(); + +// Remove charged certus ore from orechid spawns +mods.botania.Orechid.removeOre(); + +// Charged certus blocks now need 4 crystals instead of 9 +recipes.remove(); +recipes.removeByRecipeName("jaopca:material_x9s1r6"); +recipes.addShapeless( * 4, []); +recipes.addShapedMirrored(, [ + [, ], + [, ] +]); + +// New charged certus recipe with hourglass +mods.uniquecrops.HourglassConversion.addRecipe(, ); + +// New fluix recipe +mods.botania.RuneAltar.addRecipe(, [, , , , ], 20000); + +// Very annoying quartz glass recipe +recipes.remove(); +recipes.addShaped( * 4, [ + [, , ], + [, , ], + [, , ] +]); + +// Vibrant quartz glass +recipes.remove(); +mods.botania.ElvenTrade.addRecipe([], [, ]); + +// Remove invalid descriptions for in-world crafting +val pureCrystals = [ + , + , + , + +] as IItemStack[]; + +for item in pureCrystals { + moretweaker.jei.MoreJei.removeDescription(item); +} + + +# Storage components + +// Nerf storage components +recipes.remove(); +recipes.addShaped(, [ + [, , ], + [, , ], + [, , ] +]); + +recipes.remove(); +recipes.addShaped(, [ + [, , ], + [, , ], + [, , ] +]); + +recipes.remove(); +recipes.addShaped(, [ + [, , ], + [, , ], + [, , ] +]); + +recipes.remove(); +recipes.addShaped(, [ + [, , ], + [, , ], + [, , ] +]); + +// Nerf fluid storage components +recipes.remove(); +mods.botania.ManaInfusion.addAlchemy(, , 69420); + +recipes.remove(); +recipes.addShaped(, [ + [, , ], + [, , ], + [, , ] +]); + +recipes.remove(); +recipes.addShaped(, [ + [, , ], + [, , ], + [, , ] +]); + +recipes.remove(); +recipes.addShaped(, [ + [, , ], + [, , ], + [, , ] +]); + + +# Base parts + +// Formation core +recipes.addShaped( * 2, [ + [null, , null], + [, , ], + [null, , null] +]); + +// Annihilation core +recipes.addShaped( * 2, [ + [null, , null], + [, , ], + [null, , null] +]); + +// Dumb inscriber recipe +recipes.remove(); +recipes.addShaped(, [ + [, , ], + [, , ], + [, , ] +]); + +// New processor recipes +mods.appliedenergistics2.Inscriber.addRecipe(, , false, , ); +mods.appliedenergistics2.Inscriber.addRecipe(, , false, , ); +mods.appliedenergistics2.Inscriber.addRecipe(, , false, , ); + + +# Energy / controller blocks + +// Energy cell +recipes.addShaped( * 2, [ + [, , ], + [, , ], + [, , ] +]); + +// Dense energy cell +recipes.remove(); +recipes.addShaped(, [ + [, , ], + [, , ], + [, , ] +]); + +// Vewy hawd energy acceptor recipe +recipes.remove(); +mods.extendedcrafting.TableCrafting.addShaped(0, , [ + [, , null, null, null, , ], + [, , , , , , ], + [null, , , , , , null], + [null, , , , , , null], + [null, , , , , , null], + [, , , , , , ], + [, , null, null, null, , ] +]); + +// Even harder controller recipe +recipes.remove(); +mods.extendedcrafting.TableCrafting.addShaped(0, , [ + [, , , , , , ], + [, , , , , , ], + [, , , , , , ], + [, , , , , , ], + [, , , , , , ], + [, , , , , , ], + [, , , , , , ] +]); + + +# Autocrafting :) + +// Nerf interface +recipes.remove(); +recipes.addShaped(, [ + [, , ], + [, , ], + [, , ] +]); + +// Fluid interface as well +recipes.remove(); +recipes.addShaped(, [ + [, , ], + [, , ], + [, , ] +]); + +// Molecular assembler +recipes.remove(); +recipes.addShaped( * 2, [ + [, , ], + [, , ], + [, , ] +]); + +// Crafting unit +recipes.remove(); +recipes.addShaped(, [ + [, , ], + [, , ], + [, , ] +]); + + +# Wireless stuff + +// Fluix pearl +recipes.addShaped(, [ + [, , ], + [, , ], + [, , ] +]); + +// Wireless receiver +recipes.remove(); +recipes.addShaped(, [ + [null, , null], + [, , ], + [null, , null] +]); + +// Wireless booster +recipes.addShaped( * 2, [ + [, , ], + [, , ], + [, , ] +]); + +// Wireless endgame terminal +recipes.remove(); +mods.extendedcrafting.TableCrafting.addShaped(0, , [ + [null, null, null, null, null, null, null], + [null, , null, null, null, null, null], + [null, , null, null, null, null, null], + [, , , , , , ], + [, , , , , , ], + [, , , , , , ], + [, , , , , , ] +]); + + +# Random stuff + +// Pure crystals +mods.astralsorcery.StarlightInfusion.addInfusion(, , false, 0.1, 100); +mods.astralsorcery.StarlightInfusion.addInfusion(, , false, 0.1, 100); +mods.astralsorcery.StarlightInfusion.addInfusion(, , false, 0.1, 100); + +// "Slightly" nerfed matter condenser +mods.extendedcrafting.TableCrafting.addShaped(0, , [ + [, , null, null, null, , ], + [, , , , , , ], + [null, , , , , , null], + [null, , , , , , null], + [null, , , , , , null], + [, , , , , , ], + [, , null, null, null, , ] +]); + +// Change fluid level emitter to depend on level emitter +recipes.remove(); +recipes.addShapeless(, []); +recipes.addShapeless(, []); + +// Glass cables +recipes.removeByRecipeName("appliedenergistics2:network/cables/glass_fluix"); +recipes.addShaped( * 8, [ + [, , ], + [, , ], + [, , ] +]); + +// Dense cables +recipes.removeByRecipeName("appliedenergistics2:network/cables/dense_covered_fluix"); +recipes.addShaped(, [ + [null, , null], + [, , ], + [null, , null] +]); + +// Add skystone recipe +recipes.addShaped( * 8, [ + [, , ], + [, , ], + [, , ] +]); + +// Ender dust +mods.immersiveengineering.Crusher.addRecipe(, , 6000); + +// Spatial pylon +recipes.addShaped( * 4, [ + [, , ], + [, , ], + [, , ] +]); diff --git a/scripts/embers.zs b/scripts/embers.zs index e11b430..5d3e599 100644 --- a/scripts/embers.zs +++ b/scripts/embers.zs @@ -168,3 +168,8 @@ for metal in metals { ingot, ingot, hammer ]); } + +// Require IE mixer for dwarven oil +mods.embers.Mixer.remove( * 10); +mods.embers.Mixer.remove( * 30); +mods.immersiveengineering.Refinery.addRecipe( * 8, * 16, * 8, 16000); diff --git a/scripts/hearthwell.zs b/scripts/hearthwell.zs index cedef48..6357347 100644 --- a/scripts/hearthwell.zs +++ b/scripts/hearthwell.zs @@ -232,3 +232,20 @@ mods.extendedcrafting.TableCrafting.addShaped(0, [, , , , ], [, , , , ] ]); + +// Scorched grit now requires red sand +recipes.remove(); +recipes.addShaped( * 4, [ + [, , ], + [, , ], + [, , ] +]); + +// New gaseous sand recipe +recipes.remove(); +mods.embers.Stamper.add(, * 250, , ); + +// Nerfed gaseous glass recipe +furnace.remove(); +mods.immersiveengineering.Crusher.removeRecipesForInput(); +mods.immersiveengineering.ArcFurnace.addRecipe( * 2, , , 600, 512, [ * 8, * 2]); diff --git a/scripts/immersive.zs b/scripts/immersive.zs index 8952035..24b8bf1 100644 --- a/scripts/immersive.zs +++ b/scripts/immersive.zs @@ -130,3 +130,18 @@ recipes.addShaped("connector_probe", , [ [, , ], [null, , null] ]); + +// Remove way too easy concrete recipes +recipes.removeByRecipeName("immersiveengineering:stone_decoration/concrete"); +recipes.removeByRecipeName("immersiveengineering:stone_decoration/concrete2"); +recipes.removeByRecipeName("immersiveengineering:stone_decoration/concrete_leaded"); + +// Obtainment description for concrete +moretweaker.jei.MoreJei.addDescription(, ["Let Liquid Concrete chill on the floor for a bit."]); + +// Harder concrete recipe in the mixer +mods.immersiveengineering.Mixer.removeRecipe(); +mods.immersiveengineering.Mixer.addRecipe( * 500, * 500, [, , , ], 16000); + +// Make leaded concrete require casting +mods.tconstruct.Casting.addBasinRecipe(, , , 576, true);