promotional bannermobile promotional banner

TinkerJS Kubestruct

Experimental
Addon for KubeJS that allows you to script custom TinkersConstruct tools!

An addon for KubeJS and Tinkers Construct that allows you to add custom tinkers tools with a script!

This is currently in early alpha, bugs are to be expected. I have done quite a bit of testing but you never know what crazy things people will make.

 

 Custom materials, modifiers and parts coming soon!

Keep up with development here: https://github.com/ChiefArug/tinkerjs_kubestruct

 

 

Full wiki coming soon!

Examples:

onEvent('item.registry', event => {
event.create('shovel', 'tconstruct:modifiable')
.part(Part.handle.setTexture('tool_rod_top'))
.part(Part.handle.setTexture('tool_rod_bottom'))
.part(Part.of('round_plate')
.setTexture('head')
.setBrokenTexture('broken_head')
)
.pickaxeLayout()
.effectiveTagHarvest('minecraft:mineable/shovel')
.veinAoe(0)
.statMultiplier('durability', 0.9)
.statMultiplier('BASE', 'mining_speed', 0.7)
.statMultiplier('attack_damage', 1.2)
.addModifierTextureLocation('tconstruct:item/tool/pickaxe/modifiers/')
.description("Popsicles!")
.action('shovel_dig')
.action('shovel_flatten')
.trait('shovel_flatten')

event.create('frisbee', 'tconstruct:modifiable')
.part(Part.roundPlate.setTexture('tconstruct:item/tool/parts/round_plate')) // You can use any existing part/tool part texture, or make your own
.circleAttack(10) // This is just stupid op
// If you leave out the type for stat multipliers it defaults to 'modifier', which is applied after modifiers
// Base is applied before modifiers
.statMultiplier('attack_speed', 0.1)
.statMultiplier('base', 'attack_damage', 2.0) // Reduce efficiency of attack damage modifiers by quarter, and base by half
.statMultiplier('modifier', 'attack_damage', 0.25)
.statMultiplier('base', 'durability', 1.5)
.statMultiplier('mining_speed', 0) // No mining for you!
.description("Bounces between entities instantly to hurt large groups at once!")

event.create('pickaxe', 'tconstruct:modifiable') // Perfect copy of the pickaxe, only exception is the model layers are in the wrong order.
.description("Totally a pickaxe. It breaks blocks, OK?")
.part(Part.handle)
.part(Part.binding)
.part(Part.pickHead)
.pickaxeLayout()
.addModifierTextureLocation('tconstruct:item/tool/pickaxe/modifiers/')
.statMultiplier('base', 'attack_damage', 0.5)
.statMultiplier('base', 'attack_speed' , 1.2)
.trait('piercing')
.effectiveTagHarvest('minecraft:mineable/pickaxe')
.boxAoe('pitch', 1, 1, 0) // side_hit, pitch or height. See IBoxExpansion
.action('pickaxe_dig')
.attack({}) // This sets attack to true but prevents any json from being added cause its empty. .tag('tconstruct:modifiable/melee') would achieve the same effects.

event.create('bow', 'tconstruct:modifiable')
.description('Totally a bow. Throwable.')
.part(Part.handle.setTexture('tconstruct:item/tool/bow/limb_bottom'))
.part(Part.handle.setTexture('tconstruct:item/tool/bow/limb_top'))
.part(Part.hammerHead.setTexture('tconstruct:item/tool/bow/bowstring').setBrokenTexture('tconstruct:item/tool/bow/bowstring_broken'))
.particleAttack('crit')
.statMultiplier('base', 'attack_damage', 1.5)
.statMultiplier('modifier', 'attack_speed', 0.1)

event.create('two_sticks', 'tconstruct:modifiable')
.description('Rub em!')
.part(Part.blade.setTexture('stick_1').setBrokenTexture('stick_1_broken'))
.part(Part.blade.setTexture('stick_2').setBrokenTexture('stick_2_broken'))
.trait('firestarter')
.statMultiplier('attack_damage', 0.1)
.statMultiplier('attack_speed', 0.1)
.trait('fiery')
.statMultiplier('base', 'durability', 2)
})

The TinkerJS Kubestruct Team

HighCrafter tier frameprofile avatar
  • 15
    Followers
  • 21
    Projects
  • 6.6M
    Downloads

Members

More from ChiefArugView all