KubeJS + Tinkers' Construct: Custom Casting via Scripts

Why KubeJS and Tinkers’ Construct Belong Together If you run a modded Minecraft server or you are building a custom modpack, you already know how powerful Tinkers’ Construct feels: smeltery flows, tool parts, and casting mechanics that turn ore into gear with personality. When you want that same ...

Download kubejs tinkers for Minecraft 1.18.2

Original name: kubejs tinkers

Minecraft: 1.18.2

Loaders: Forge

FileMCLoaderSize
kubejs-tinkers-1802.1.0-build.1.jar1.18.2Forge8 КБDownload

Why KubeJS and Tinkers’ Construct Belong Together

If you run a modded Minecraft server or you are building a custom modpack, you already know how powerful Tinkers’ Construct feels: smeltery flows, tool parts, and casting mechanics that turn ore into gear with personality. When you want that same flexibility in your recipes and progression, pairing Tinkers’ with KubeJS is one of the cleanest approaches. The bridge mod lets you script casting and fluid behavior without digging through dozens of datapack JSON files, so you can iterate quickly across versions and updates.

Minecraft modded smeltery casting setup with KubeJS Tinkers Construct fluid recipes and tool parts on a server world

What This Integration Actually Does

KubeJS for Tinkers’ Construct exposes Tinkers’ recipe types to your server scripts. Instead of manually syncing complicated files, you declare outputs, fluids, casts, and timing in one place. That matters for pack makers who want consistent balance: you can gate materials behind biomes, quests, or economy systems while keeping the smeltery fantasy intact.

Casting table recipes

The casting table is where many players first learn fluid discipline in Tinkers’: you pour molten metal (or other fluids) into a mold and wait for cooling. In KubeJS, you can register casting table recipes with either two arguments or three:

  • Two-argument form: specify the output item and the fluid id. Fluid amounts use sensible defaults for common workflows.
  • Three-argument form: specify output, fluid id, and the fluid amount in millibuckets, so you can tune costs for rare metals or custom alloys.

Cooling time defaults exist for a reason (they keep pacing familiar), but you can override them when you want slower “industrial” progression or faster early-game convenience.

Casting basin recipes

The casting basin handles bigger pours and block-scale outputs. Like the table, it supports two or three arguments, with a different default fluid volume for basin-sized jobs. Basins are perfect when you want chunky blocks, bulk storage conversions, or thematic crafting that feels heavier than a single ingot pour.

Large Minecraft casting basin pour with molten fluid cooling into blocks using Tinkers Construct and KubeJS scripted recipes

Methods That Shape the Casting Experience

Fluids and outputs are only half the story. The real craft is controlling casts, slots, and consumption. Supported methods include:

  • Cast control: .cast(castIngredient) for a specific cast ingredient, with a sensible default tied to multi-use ingot casts when you do not specify one.
  • No cast: .noCast() when the recipe should not require a cast item.
  • Cast types: .multiUseCast(castType) and .singleUseCast(castType) to align with how players expect disposable versus reusable molds.
  • Consumption: .consumeCast() when you want a cast to be eaten by the process for balance or story reasons.
  • Layout: .switchSlots() when you need the recipe to behave differently in the casting UI.
  • Timing: .coolingTime(ticks) to tune how long the pour takes before the output appears.

Basin recipes can use the same cast-related methods as the table, which keeps your scripting consistent across both blocks. If you are iterating on a modpack and want to test a new metal line, you can tune basin cooling separately from table cooling so large pours feel weightier without making every ingot painfully slow.

A Practical Script Shape (Without Getting Lost in Syntax)

A typical pattern is to listen for the recipes event, pull casting_table and casting_basin off event.recipes.tconstruct, and then register a few focused examples: a quirky early-game pour, a basin conversion, and a cast-specific refinement. Even a short tinkers_construct.js under your server scripts folder can unify oddball ideas—like turning a fluid into a food item for a themed pack route, or converting dust back into gems with a cast that matches your progression gating.

Pack maintenance gets easier when your Tinkers’ edits live next to other KubeJS systems: you can reference tags, fluids, and items consistently, which reduces mismatch bugs when Minecraft updates shuffle ids or when you move between supported versions. If you prefer a smoother workflow for grabbing and organizing add-ons, this mod can be easily installed via the foxygame.net launcher—a convenient, flexible, and modern Minecraft launcher where you can download mods right from the menu—so you spend less time juggling folders and more time tuning smeltery balance.

Servers, Stability, and Player-Facing Design

On multiplayer servers, predictable casting rules prevent confusion. Document any custom pours that change defaults (fluid amounts, cooling ticks, cast consumption) so players understand why a recipe behaves differently from vanilla Tinkers’ expectations. If you combine this with questlines or shop economies, casting becomes a visible “manufacturing” layer rather than a hidden spreadsheet tweak.

Conclusion

KubeJS integration for Tinkers’ Construct is less about replacing Tinkers’ and more about bending its fluid fantasy to your pack’s rules: casting tables for precision, basins for scale, and a full toolkit of cast methods for balance. Keep recipes readable, test cooling times on a real server tick environment, and treat fluids as part of your progression—not an afterthought. Done well, players get the same satisfying smeltery rhythm, but your modpack’s identity stays unmistakably yours.