Skip to content

CraftTweaker Integration

Mike edited this page May 14, 2019 · 7 revisions

CraftTweaker Integration

Charger Recipes

Add Recipe

mods.wirelessutils.charger.addRecipe(input, output, energy, ticks);

Name Type Default Examples
input IItemStack <minecraft:coal>
output IItemStack <minecraft:diamond>
energy Integer (Optional) 8000 50000
ticks Integer (Optional) 200 1000

Adds a new item charging recipe for chargers with Inventory Augments. The ticks given are not game ticks. Each machine adds multiple crafting ticks per tick, based on its level. This allows machines to easily recipes faster at a fractional rate rather than just doubling.

Remove Recipe

mods.wirelessutils.charger.removeRecipe(input);

Name Type Default Examples
input IItemStack <minecraft:coal>

Removes the recipe with the given input.

Block Recipe

mods.wirelessutils.charger.blockRecipe(input);

Name Type Default Examples
input IItemStack <minecraft:coal>

Prevents the recipe with the given input from working. This is useful in case something else might try registering recipes after CraftTweaker changes have run.

Unblock Recipe

mods.wirelessutils.charger.unblockRecipe(input);

Name Type Default Examples
input IItemStack <minecraft:coal>

Unblock the recipe with the given input.

Condenser Recipes

Add Recipe

mods.wirelessutils.condenser.addRecipe(fluid, input, output, energy, ticks);

Name Type Default Examples
fluid ILiquidStack <liquid:lava> * 1000
input IItemStack <minecraft:coal>
output IItemStack <minecraft:diamond>
energy Integer (Optional) 8000 50000
ticks Integer (Optional) 200 1000

Adds a new recipe for condensers with Inventory Augments. The ticks given are not game ticks. Each machine adds multiple crafting ticks per tick, based on its level. This allows machines to easily recipes faster at a fractional rate rather than just doubling.

Remove Recipe

mods.wirelessutils.condenser.removeRecipe(fluid, input);

Name Type Default Examples
fluid ILiquidStack <liquid:lava> * 1000
input IItemStack <minecraft:coal>

Removes the recipe with the given input.

Block Recipe

mods.wirelessutils.condenser.blockRecipe(fluid, input);

Name Type Default Examples
fluid ILiquidStack <liquid:lava> * 1000
input IItemStack <minecraft:coal>

Prevents the recipe with the given input from working. This is useful in case something else might try registering recipes after CraftTweaker changes have run.

Unblock Recipe

mods.wirelessutils.condenser.unblockRecipe(fluid, input);

Name Type Default Examples
fluid ILiquidStack <liquid:lava> * 1000
input IItemStack <minecraft:coal>

Unblock the recipe with the given input.

Levels

Clear Levels

mods.wirelessutils.levels.clear();

Remove all existing levels from Wireless Utilities. Note: You MUST add new levels, otherwise the mod will not work correctly.

Size

val count = mods.wirelessutils.levels.size();

Get the current number of levels.

Get Level

val level = mods.wirelessutils.levels.get(index);

Name Type Default Examples
index Integer 0

Get a Level object to modify.

Remove Level

mods.wirelessutils.levels.remove(index);

Name Type Default Examples
index Integer 0

Remove the level at the given index.

Add Level

val level = mods.wirelessutils.levels.add(name, augmentSlots, rarity, color, maxChargerTransfer, maxChargerCapacity, craftingTPT, baseEnergyPerOperation, maxEnergyCapacity, maxCondenserTransfer, maxCondenserCapacity, budgetPerTick, maxBudget, costPerItem, worldTickRate);

Name Type Default Examples
name String (Optional) null "Resonant"
augmentSlots Integer (Optional) 0 9
rarity Integer (Optional) 0 0, 1, 2, or 3
color Integer (Optional) 0 0x00FFFF
maxChargerTransfer Long (Optional) 0 1000000
maxChargerCapacity Long (Optional) 0 20000000
craftingTPT Integer (Optional) 0 20
baseEnergyPerOperation Integer (Optional) 0 250
maxEnergyCapacity Long (Optional) 0 10000
maxCondenserTransfer Integer (Optional) 0 250
maxCondenserCapacity Integer (Optional) 0 16000
budgetPerTick Integer (Optional) 1 20
maxBudget Integer (Optional) 1 40
costPerItem Integer (Optional) 1 5
worldTickRate Integer (Optional) 0 20

Create a new Level and return it.

Level Objects

Property Type Allows Description
name String nullable The name of the level. Can be a translation key.
augmentSlots Integer 0 to 9 The number of augment slots machines of this level have.
rarity Integer 0 to 3 The item rarity value. 0=Common, 1=Uncommon, 2=Rare, 3=Epic
creative Boolean Whether or not the level is considered creative. Creative blocks always have unlimited energy, fluids, items, etc.
color Integer The accent color for items of this level.
maxChargerCapacity Long MAX_LONG The amount of energy a charger of this level can store.
maxChargerTransfer Long MAX_LONG The amount of energy a charger of this level can transfer in one tick.
craftingTPT Integer Machines will add this number of crafting ticks per tick, to determine how long it takes before allowing an item to craft.
baseEnergyPerOperation Integer MAX_INT The base amount of energy consumed in a machine's work operation. Does not apply to Chargers. Does not include extra energy consumed by distance or augmented operations.
maxEnergyCapacity Long MAX_LONG The maximum amount of energy a machine of this level can store in its buffer. Does not apply to Chargers.
maxCondenserTransfer Integer MAX_INT The maximum amount of fluid, in millibuckets, that a condenser of this level should be able to transfer in one tick.
maxCondenserCapacity Integer MAX_INT The maximum amount of fluid, in millibuckets, that a condenser of this level should be able to store in its internal tank.
maxItemsPerTick Integer MAX_INT The maximum number of items that a desublimator of this level should be able to transfer in one tick. Deprecated.
budgetPerTick Integer MAX_INT The amount of budget each desublimator of this level should accumulate per tick.
maxBudget Integer MAX_INT The maximum amount of budget a desublimator should be able to have stored at once.
costPerItem Integer MAX_INT The amount of budget it costs a desublimator to transfer a single item.
index Integer Read Only. The current index of this level.

Pearl Reactions

Allows custom behaviors when bouncing a Fluxed Pearl or Charged Pearl off of a block.

Clear

mods.wirelessutils.pearl_reactions.clear();

Clear all existing reactions from the list.

Add Reaction

mods.wirelessutils.pearl_reactions.add(input, type, scale);

Name Type Default Examples
input IItemStack <minecraft:iron_ore>
type String ("IGNORE", "BOUNCE", "SPEED") "BOUNCE"
scale double 1.0 0.8

Add a reaction for a given block. The input item stack MUST have an associated block.

IGNORE will make the pearl pass through blocks without interacting with them. BOUNCE will make the pearl bounce off of a block with speed multiplied by the provided scale. SPEED will make the pearl pass through blocks, with speed multiplied by the provided scale.

Remove Reaction

mods.wirelessutils.pearl_reactions.remove(input);

Name Type Default Examples
input IItemStack <minecraft:iron_ore>

Remove a reaction for a given block. The input item stack MUST have an associated block.

Fluid Colors

Fluid colors are used for rendering the fluid in the bucket of an Auxiliary Condenser Augment as well as the grate on the front of a Condenser block.

Clear Colors

mods.wirelessutils.fluid_colors.clear();

Clear the fluid color map.

Add Color

mods.wirelessutils.fluid_colors.add(fluid, color);

Name Type Allows Examples
fluid ILiquidStack <liquid:xpjuice>
color Integer 0 to 0xFFFFFF 0x00FF00

Adds a color override for the given fluid.

Remove Color

mods.wirelessutils.fluid_colors.remove(fluid);

Name Type Allows Examples
fluid ILiquidStack <liquid:xpjuice>

Remove a color override for the given fluid.

Crop Behaviors

Crop behaviors help add behaviors to Crop Augmented Desublimators, since they don't always get it right.

Add Simple Break

mods.wirelessutils.crop_behaviors.addBreak(priority, blocks);

Name Type Default Examples
priority Integer 0
blocks IItemStack[] [<minecraft:dirt>, <minecraft:stone>]

Add a simple behavior that breaks matching blocks, ignoring metadata.

Add Meta-Aware Break

mods.wirelessutils.crop_behaviors.addMetaBreak(priority, blocks);

Name Type Default Examples
priority Integer 0
blocks IItemStack[] [<minecraft:dirt:1>, <minecraft:wool:3>]

Add a simple behavior that breaks matching blocks, matching metadata.

Add Tall

mods.wirelessutils.crop_behaviors.addTall(priority, blocks, breakBottom);

Name Type Default Examples
priority Integer 0
blocks IItemStack[] [<minecraft:dirt>, <minecraft:stone>]
breakBottom Boolean false true

Add a behavior that breaks a stack of matching blocks, ignoring metadata. If breakBottom is true, it will also break the block at the bottom of the stack, otherwise it leaves a single block.

Add Meta-Aware Tall

mods.wirelessutils.crop_behaviors.addMetaTall(priority, blocks, breakBottom);

Name Type Default Examples
priority Integer 0
blocks IItemStack[] [<minecraft:dirt:1>, <minecraft:wool:3>]
breakBottom Boolean false true

Add a behavior that breaks a stack of matching blocks, matching metadata. If breakBottom is true, it will also break the block at the bottom of the stack, otherwise it leaves a single block.

Add Crop

mods.wirelessutils.crop_behaviors.addCrop(priority, blocks);

Name Type Default Examples
priority Integer 0
blocks IItemStack[] [<minecraft:dirt>, <minecraft:stone>]

Only works on crops that implement BlockCrop, and used by default on all such crops. This is only necessary to override a different crop behavior with the default.

Add Tall Crop

mods.wirelessutils.crop_behaviors.addTallCrop(priority, blocks, silkAll);

Name Type Default Examples
priority Integer 0
blocks IItemStack[] [<minecraft:dirt>, <minecraft:stone>]
silkAll Boolean false true

This is similar to the default handling of BlockCrop. However, this behavior checks the block above the crop. If it is another valid crop, then it will only harvest when that block is also fully mature.

It checks up to 255 blocks up to make sure they are all fully mature, and when they are it harvests from the top down.

If using silk-touch, and silk-touch interaction is enabled, only the bottom block will be interacted with unless silkAll is set to true.