RangedJS: KubeJS Addon

RangedJS: KubeJS Addon

780 Downloads

A KubeJS addon for pack dev to easily create custom bows and modify existing bows/crossbows. Please feel free to request modded ranged weapon support in comments.

Update August 6th 2025 - Add compat with Archery Expansion.

Example codes can be found on the wiki page.

You can also create vanilla-like bow model with client script:

ClientEvents.highPriorityAssets(event => {
    event.easyBowModel("kubejs:bow_golden")
})

You just need to put texture pictures in kuebjs/assets/kubejs/textures/item/ The texture file names should be bow_golden.png, bow_golden_pulling_0.png, bow_golden_pulling_1.png, bow_golden_pulling_2.png

You can also modify existing bows with ItemEvents.modification like this:

ItemEvents.modification(event => {
    const $BowItem = Java.loadClass("net.minecraft.world.item.BowItem")
    event.modify("minecraft:bow", item => {if(item instanceof $BowItem){
        item.bow(bow => {
            bow
            .onArrowHit(arrow => {arrow.hitBlock(event => {
                event.arrow.block.createEntity("lightning_bolt").spawn()
            })})
            .modifyBow(attributes => {
                attributes.fullChargeTick(15).baseDamage(6)
            })
        })
    }})
})