Vintage KubeJS


The example scripts are only here to demonstrate the recipes. They are not meant to be used with the items shown.

#Centrifugation

Syntax: centrifugation(output[], input[], processing_time, minimal_rpm_requirements)
Centrifugation uses the Centrifuge with installed Basins.
Features:
  • supports multiple chance-based outputs
  • supports fluid inputs and outputs
  • supports .processingTime() and .minimalRPM()
ServerEvents.recipes(event => {
  event.recipes.vintageimprovements.centrifugation(Fluid.of('create:honey', 1000), 'minecraft:honey_block', 100, 64)
  event.recipes.vintageimprovements.centrifugation(Fluid.of('create:honey', 1000), 'minecraft:honey_block').processingTime(100).minimalRPM(64)
  event.recipes.vintageimprovements.centrifugation([Item.of('minecraft:stick').withChance(0.5), 'minecraft:dead_bush'], '#minecraft:saplings').minimalRPM(128)
})

#Coiling

Syntax: coiling(output[], input, processing_time, spring_color)
Coiling uses the Spring Coiling Machine
Features:
  • supports multiple chance-based outputs
  • supports .processingTime() and .springColor()
ServerEvents.recipes(event => {
  event.recipes.vintageimprovements.coiling('vintageimprovements:iron_spring', 'minecraft:iron_ingot')
  event.recipes.vintageimprovements.coiling('vintageimprovements:steel_spring', 'vintageimprovements:steel_rod').springColor("5D595E")
})

#Curving

Syntax: curving(output[], input)
Curving uses the Curving Press with Curving Heads
Features:
  • supports multiple chance-based outputs
  • supports .mode(), .head() and .headDamage()
ServerEvents.recipes(event => {
  event.recipes.vintageimprovements.curving('vintageimprovements:vanadium_rod', 'vintageimprovements:vanadium_sheet').mode(3)
  event.recipes.vintageimprovements.curving('minecraft:prismarine_crystals', 'minecraft:lapis_lazuli').head("minecraft:heart_of_the_sea")
  event.recipes.vintageimprovements.curving('vintageimprovements:vanadium_rod', 'vintageimprovements:vanadium_sheet').mode(3).headDamage(50)
})
Item used in .head() must be tagged with vintageimprovements:curving_heads

#Hammering

Syntax: hammering(output[], input[], hammer_blows)
Hammering uses the Helve Hammer with Anvil
Features:
  • supports multiple chance-based outputs
  • supports .hammerBlows() and .anvilBlock()
ServerEvents.recipes(event => {
  event.recipes.vintageimprovementsHammering(Item.of('create:iron_sheet', 9), 'minecraft:iron_block', 5)
  event.recipes.vintageimprovementsHammering(Item.of('create:iron_sheet', 9), 'minecraft:iron_block').hammerBlows(5)
  event.recipes.vintageimprovementsHammering(Item.of('create:iron_sheet', 9), 'minecraft:iron_block').hammerBlows(5).anvilBlock('minecraft:iron_block')
})
Item used in .anvilBlock() must be tagged with vintageimprovements:custom_hammering_blocks

#Laser Cutting

Syntax: laser_cutting(output[], input)
Laser Cutting uses the Laser
Features:
  • supports multiple chance-based outputs
  • supports .energyCost() and .maxChargeRate()
ServerEvents.recipes(event => {
  event.recipes.vintageimprovements.laser_cutting(Item.of('minecraft:iron_bars', 24), 'minecraft:iron_block').energyCost(5000).maxChargeRate(500)
})

#Grinder Polishing

Syntax: polishing(output[], input)
Grinder Polishing uses the Belt Grinder
Features:
  • supports multiple chance-based outputs
  • supports .processingTime(), .fragile() and .speedLimits()
ServerEvents.recipes(event => {
  event.recipes.vintageimprovements.polishing('minecraft:diamond', 'minecraft:coal_block').speedLimits(1).fragile()
  event.recipes.vintageimprovements.polishing('minecraft:diamond', 'minecraft:coal_block').processingTime(500)
  event.recipes.vintageimprovements.polishing(['minecraft:diamond', Item.of('minecraft:diamond').withChance(0.5)], 'minecraft:coal_block')
})

#Pressurizing

Syntax: pressurizing(output[], input[])
Pressurizing uses the Compressor, Basin, and optionally a Blaze Burner
Features:
  • supports multiple chance-based outputs
  • supports fluid inputs and outputs
  • supports .heated() and .superheated()
  • supports .processingTime(), .secondaryFluidInput() and .secondaryFluidOutput()
ServerEvents.recipes(event => {
  event.recipes.vintageimprovements.pressurizing(Fluid.of('vintageimprovements:sulfur_dioxide', 1000), '#forge:gems/sulfur').heated().secondaryFluidOutput(0)
  event.recipes.vintageimprovements.pressurizing(Fluid.of('vintageimprovements:sulfuric_acid', 1000), [Fluid.of('vintageimprovements:sulfur_trioxide', 1000), Fluid.of('minecraft:water', 1000)]).secondaryFluidInput(1)
})

#Turning

Syntax: turning(output[], input)
Turning uses the Lathe
Features:
  • supports multiple chance-based outputs
  • supports .processingTime()
ServerEvents.recipes(event => {
  event.recipes.vintageimprovements.turning(Item.of('create:fluid_pipe', 12), 'minecraft:copper_block').processingTime(300)
})

#Vacuumizing

Syntax: vacuumizing(output[], input)
Vacuumizing uses the Compressor, Basin, and optionally a Blaze Burner
Features:
  • supports multiple chance-based outputs
  • supports fluid inputs and outputs
  • supports .heated() and .superheated()
  • supports .processingTime(), .secondaryFluidInput() and .secondaryFluidOutput()
ServerEvents.recipes(event => {
  event.recipes.vintageimprovements.vacuumizing('minecraft:powder_snow_bucket', ['minecraft:bucket', 'minecraft:snow_block']).processingTime(500)
})

#Vibrating

Syntax: vibrating(output[], input)
Vibrating uses the Vibrating Table
Features:
  • supports multiple chance-based outputs
  • supports .processingTime()
ServerEvents.recipes(event => {
  event.recipes.vintageimprovements.vibrating('minecraft:flint', 'minecraft:gravel')
  event.recipes.vintageimprovements.vibrating(['minecraft:flint', Item.of('minecraft:gravel').withChance(0.1)], 'minecraft:gravel')
})

#Spring Item

Item type: 'vintageimprovements:spring'
Features:
  • supports .setStiffness()
ServerEvents.recipes(event => {
  event.create("small_spring", 'vintageimprovements:spring').texture("example:item/small_spring").tag("vintageimprovements:small_springs")
  event.create("spring", 'vintageimprovements:spring').texture("example:item/spring").tag("vintageimprovements:springs").setStiffness(150)
})