Customization

Ex Compressum recipes can be changed or added with data packs. Recipe files go in data/<namespace>/recipe/... and use the normal data pack loading rules.

Ex Compressum recipes can be changed or added with data packs. Recipe files go in data/<namespace>/recipe/... and use the normal data pack loading rules.

For information on creating a data pack, see the Minecraft wiki tutorial. After adding the data pack to your world, enable it with /datapack enable <datapack name>.

Recipe Types

Ex Compressum adds these recipe types:

TypeUsed for
excompressum:hammerDrops from normal Ex Nihilo hammers.
excompressum:compressed_hammerDrops from Ex Compressum compressed hammers.
excompressum:chicken_stickDrops from the Chicken Stick.
excompressum:generated_heavy_sieveHeavy Sieve recipes generated from another sieve source.
excompressum:heavy_sieveFull custom Heavy Sieve recipes.
excompressum:wooden_crucibleWooden Crucible fluid extraction recipes.

Hammer Recipes

excompressum:hammer, excompressum:compressed_hammer, and excompressum:chicken_stick use the same shape:

  • input: an item ID or item tag.
  • lootTable: an inline loot table describing the drops.
data/example/recipe/hammer/my_logs.json
{
  "type": "excompressum:hammer",
  "input": "#minecraft:logs",
  "lootTable": {
    "type": "minecraft:block",
    "pools": [
      {
        "rolls": 1,
        "entries": [
          {
            "type": "minecraft:item",
            "name": "excompressum:wood_chippings",
            "functions": [
              {
                "function": "minecraft:set_count",
                "count": {
                  "type": "minecraft:uniform",
                  "min": 2,
                  "max": 4
                }
              }
            ]
          }
        ]
      }
    ]
  }
}

For compressed hammers, use excompressum:compressed_hammer:

data/example/recipe/compressed_hammer/my_compressed_block.json
{
  "type": "excompressum:compressed_hammer",
  "input": "example:compressed_source_block",
  "lootTable": {
    "type": "minecraft:block",
    "pools": [
      {
        "rolls": 1,
        "entries": [
          {
            "type": "minecraft:item",
            "name": "example:crushed_result",
            "functions": [
              {
                "function": "minecraft:set_count",
                "count": 9
              }
            ]
          }
        ]
      }
    ]
  }
}

For Chicken Stick drops, use excompressum:chicken_stick with the same input and lootTable fields.

Generated Heavy Sieve Recipes

Use excompressum:generated_heavy_sieve when your compressed block should reuse the normal sieve drops of another block or item.

  • input: the compressed block to put into the Heavy Sieve.
  • source: the normal sieve source whose drops should be reused.
  • rolls: optional roll count. If omitted, Ex Compressum uses heavySieveDefaultRolls.
data/example/recipe/heavy_sieve/compressed_gravel.json
{
  "type": "excompressum:generated_heavy_sieve",
  "input": "example:compressed_gravel",
  "source": "minecraft:gravel",
  "rolls": 7
}

Custom Heavy Sieve Recipes

Use excompressum:heavy_sieve when you want to define the Heavy Sieve drops directly.

  • input: the block or item to sift.
  • lootTable: an inline loot table describing the drops.
  • waterlogged: whether the Heavy Sieve must be waterlogged.
  • meshes: the mesh tiers that can use the recipe.

Mesh values are string, flint, copper, iron, gold, diamond, emerald, and netherite.

data/example/recipe/heavy_sieve/custom_dust.json
{
  "type": "excompressum:heavy_sieve",
  "input": "example:compressed_dust",
  "waterlogged": false,
  "meshes": [
    "iron",
    "diamond"
  ],
  "lootTable": {
    "type": "minecraft:block",
    "pools": [
      {
        "rolls": 1,
        "entries": [
          {
            "type": "minecraft:item",
            "name": "minecraft:redstone",
            "functions": [
              {
                "function": "minecraft:set_count",
                "count": 7
              }
            ]
          }
        ]
      }
    ]
  }
}

Wooden Crucible Recipes

Use excompressum:wooden_crucible to define which items or tags can be converted into fluid.

  • input: an item ID or item tag.
  • fluid: the fluid ID to produce.
  • amount: the amount of fluid produced in millibuckets.
data/example/recipe/wooden_crucible/melon_slice.json
{
  "type": "excompressum:wooden_crucible",
  "input": "minecraft:melon_slice",
  "fluid": "minecraft:water",
  "amount": 50
}