Loading...
Beta Modpages Unclaimed

Create Mechanical Extruder

A mechanical extruder block. Can be used to generate any block or item from adjacent blocks/fluids.

0 Likes
637919 Downloads
Created by oierbravo_mc

Description

Create Mechanical Extruder

A mechanical extruder block. Can be used to generate any block or item from adjacent blocks/fluids. This mod it's meant to be used in modpacks.

Heavily inspired on Thermal Expansions Igneous Extruder.

Dedicated wiki

1.21.1-2.x Version Requires Mechanicals Lib

Version support & documentation

  • 1.21.1: Supported. Documentation refers to this version.
  • 1.20.1: Only critical issues
  • 1.19.x: Unsupported: Documentation
  • 1.18.x: Unsupported: Documentation

Andesite Extruder

  • Kinetic block.
  • Filter functionality for selecting output when recipe collides.
  • Shift+right click with empty hand to extract content.
  • Extraction via automation.

Brass Extruder

  • Can consume source blocks.

Extruding recipes

  • JEI integration.
  • Per recipe custom requirements.

BlockState

Block

{
        "blocks": "minecraft:water"
},

Block with State

{
  "blocks": "minecraft:furnace",
  "state": {
    "lit": "true"
  }
}

Input BlockStates

"blockIngredients": {
    "first": {
        "blocks": "minecraft:water"
    },
    "second": {
        "blocks": "minecraft:lava"
    }
}

Catalyst BlockStates

"catalyst": {
  "blocks": "minecraft:obsidian"
}

Required bonks (optional)

  • "requiredBonks": 10
  • Defines how many times must hit.

Advanced extruder (brass) per recipe (optional)

  • "advanced":"true"
  • Recipes requires brass extruder.

Consume blocks (advanced recipe)

  • Advanced extruder can consume blocks.
"consumeBlocks": {
    "first": false,
    "second": true
},

Recipe Requirements

  • MinY/MaxY
"requirements": [
    {
        "type": "mechanicals:min_y",
        "value": 0
    },
    {
        "type": "mechanicals:max_y",
        "value": 60
    }
],
  • MinSpeed/MaxSpeed
"requirements": [
    {
        "type": "mechanicals:max_speed",
        "value": 4.0
    }
],
  • Biome
"requirements": [
    {
        "type": "mechanicals:biome",
        "value": "minecraft:plains"
    }
],
  • BiomeTag
"requirements": [
    {
        "type": "mechanicals:biome_tag",
        "value": "minecraft:is_nether"
    }
],

KubeJS

  • Remove al Extruding recipes.
ServerEvents.recipes(event => {
  event.remove({ type: 'create_mechanical_extruder:extruding' })
})
  • Chanced output (binding)
Output.of('minecraft:clay', 0.5)
Output.of('4xminecraft:clay', 0.5)
  • BlockPredicate (binding)
BlockPredicate.of('minecraft:sand')
  • RecipeRequirement (binding)
RecipeRequirement.minY(int) //ex: RecipeRequirement.minY(-10)
RecipeRequirement.maxY(int) //ex: RecipeRequirement.maxY(20)
RecipeRequirement.minSpeed(float) //ex: RecipeRequirement.minSpeed(2.0)
RecipeRequirement.maxSpeed(float) //ex: RecipeRequirement.maxSpeed(160)
RecipeRequirement.biome(string) //ex: RecipeRequirement.biome("minecraft:plains")
RecipeRequirement.maxSpeed(string)  //ex: RecipeRequirement.biome("minecraft:plains")
  • Add recipes
ServerEvents.recipes(event => {
  /** 
    create_mechanical_extruder.extruding(Output result, BlockPredicate[] inputs)
    .catalys(BlockPredicate catalyst) // optional, default: empty
    .advanced(true) //optional, default: false
    .consumeBlock(Couple consume) //optional, default: empty
  **/

    event.recipes.create_mechanical_extruder.extruding(Item.of('minecraft:dirt'),[BlockPredicate.of('minecraft:lava'),BlockPredicate.of('minecraft:stone')])
            .catalyst('minecraft:clay')})
  • Some examples:
//Minimal
        event.recipes.create_mechanical_extruder.extruding(Item.of('minecraft:redstone_block'),[BlockPredicate.of('minecraft:lava'),BlockPredicate.of('minecraft:stone')])

        //Catalyst
        event.recipes.create_mechanical_extruder.extruding(Item.of('minecraft:dirt'),[BlockPredicate.of('minecraft:lava'),BlockPredicate.of('minecraft:stone')])
            .catalyst('minecraft:clay')

        //Bonks
        event.recipes.create_mechanical_extruder.extruding(Item.of('minecraft:sand'),[BlockPredicate.of('minecraft:lava'),BlockPredicate.of('minecraft:stone')])
            .requiredBonks(10)

        //Chanced output
        event.recipes.create_mechanical_extruder.extruding(Output.of('minecraft:red_sand',0.5),[BlockPredicate.of('minecraft:lava'),BlockPredicate.of('minecraft:stone')])

        //Chanced output & bonks
        event.recipes.create_mechanical_extruder.extruding(Output.of('minecraft:birch_planks',0.5),[BlockPredicate.of('minecraft:lava'),BlockPredicate.of('minecraft:stone')])
            .requiredBonks(5)

        //Advanced extruder
        event.recipes.create_mechanical_extruder.extruding(Item.of('minecraft:obsidian'),[BlockPredicate.of('minecraft:sand'),BlockPredicate.of('minecraft:gravel')])
            .catalyst(BlockPredicate.of("minecraft:dirt"))
            .advanced(true)

        //Advanced extruder + consume blocks
        event.recipes.create_mechanical_extruder.extruding(Item.of('minecraft:birch_planks'),[BlockPredicate.of('minecraft:sand'),BlockPredicate.of('minecraft:gravel')])
            .catalyst(BlockPredicate.of("minecraft:dirt"))
            .consumeBlocks(true)
            .advanced(true)

        //Advanced extruder + consume different blocks
        event.recipes.create_mechanical_extruder.extruding(Item.of('minecraft:obsidian'),[BlockPredicate.of('minecraft:sand'),BlockPredicate.of('minecraft:gravel')])
            .catalyst(BlockPredicate.of("minecraft:dirt"))
            .consumeBlocks([true,false])
            .advanced(true)

        //Biome requirement
        event.recipes.create_mechanical_extruder.extruding(Item.of('minecraft:iron_block'),[BlockPredicate.of('minecraft:sand'),BlockPredicate.of('minecraft:gravel')]).catalyst(BlockPredicate.of("minecraft:dirt"))
            .requirements(
                [
                    RecipeRequirement.biome("minecraft:plains")
                ]
            );

        //Biome Tag requirement
        event.recipes.create_mechanical_extruder.extruding(Item.of('minecraft:gold_block'),[BlockPredicate.of('minecraft:sand'),BlockPredicate.of('minecraft:gravel')]).catalyst(BlockPredicate.of("minecraft:dirt"))
            .requirements(
                [
                    RecipeRequirement.biomeTag("minecraft:is_nether")
                ]
            );

        //MinY & MaxY requirement
        event.recipes.create_mechanical_extruder.extruding(Item.of('minecraft:coal_block'),[BlockPredicate.of('minecraft:sand'),BlockPredicate.of('minecraft:gravel')]).catalyst(BlockPredicate.of("minecraft:dirt"))
            .requirements(
                [
                    RecipeRequirement.minY(-10),
                    RecipeRequirement.maxY(12),
                ]
            );
        //MinSpeed & MaxSpeed requirement
        event.recipes.create_mechanical_extruder.extruding(Item.of('minecraft:dirt'),[BlockPredicate.of('minecraft:sand'),BlockPredicate.of('minecraft:gravel')]).catalyst(BlockPredicate.of("minecraft:dirt"))
            .requirements(
                [
                    RecipeRequirement.minSpeed(1.0),
                    RecipeRequirement.maxSpeed(16.0),
                ]
            );

        //All requirements together
        event.recipes.create_mechanical_extruder.extruding(Item.of('minecraft:emerald_block'),[BlockPredicate.of('minecraft:sand'),BlockPredicate.of('minecraft:gravel')]).catalyst(BlockPredicate.of("minecraft:dirt"))
        .requirements(
            [
                RecipeRequirement.minSpeed(6.0),
                RecipeRequirement.maxSpeed(16.0),
                RecipeRequirement.minY(10),
                RecipeRequirement.maxY(12),
                RecipeRequirement.biomeTag("minecraft:is_nether")

            ]
        );

        //Everything together
        event.recipes.create_mechanical_extruder.extruding(Item.of('minecraft:emerald_block'),[BlockPredicate.of('minecraft:sand'),BlockPredicate.of('minecraft:gravel')])
        .catalyst(BlockPredicate.of("minecraft:dirt"))
        .advanced(true)
        .consumeBlocks(true)
        .requirements(
            [
                RecipeRequirement.minSpeed(16.0),
                RecipeRequirement.minY(10),
                RecipeRequirement.maxY(12),
                RecipeRequirement.biomeTag("minecraft:is_nether")

            ]
        );

        // Funny things
        // Flower pots
        event.recipes.create_mechanical_extruder.extruding(Item.of('minecraft:glowstone'),[BlockPredicate.of('minecraft:potted_dandelion'),BlockPredicate.of('minecraft:potted_poppy')])

Thanks to the Creators of Create.

Code inspiration from the Create mod itself.


AD Become Premium to remove Ads!

What means Verified?

  • Compatibility: The mod should be compatible with the latest version of Minecraft and be clearly labeled with its supported versions.
  • Functionality: The mod should work as advertised and not cause any game-breaking bugs or crashes.
  • Security: The mod should not contain any malicious code or attempts to steal personal information.
  • Performance: The mod should not cause a significant decrease in the game's performance, such as by causing lag or reducing frame rates.
  • Originality: The mod should be original and not a copy of someone else's work.
  • Up-to-date: The mod should be regularly updated to fix bugs, improve performance, and maintain compatibility with the latest version of Minecraft.
  • Support: The mod should have an active developer who provides support and troubleshooting assistance to users.
  • License: The mod should be released under a clear and open source license that allows others to use, modify, and redistribute the code.
  • Documentation: The mod should come with clear and detailed documentation on how to install and use it.

AD Become Premium to remove Ads!

How to Install

1

Download Forge & Java

Download Forge from the offical Site or here. If you dont have Java installed then install it now from here. After Downloading Forge you can run the file with Java.

2

Prepare

Lounch Minecraft and select your Forge istallation as Version this will create a Folder called Mods.

3

Add Mods

Type Win+R and type %appdata% and open the .minecraft Folder. There will you find your Folder called Mods. Place all Mods you want to play in this Folder

4

Enjoy

You are now Ready. Re-start your Game and start Playing.

More Mods like this

Botania

An innovative natural magic themed tech mod

Thermal Expansion

Expanding Minecraft Thermally! A server-friendly and content-rich blend of magic and technology!

Mekanism

High-tech machinery, powerful energy generation, fancy gadgets and more. Now on Curse!

Industrial Foregoing

A collection of machines to make your minecraft builds easier to automate

Flux Networks

Wireless Energy Networks, compatible with FE/EU/RF/TESLA/AE

Create

Aesthetic Technology that empowers the Player