Adding a tier
Where a tier's files go, every field in a tier file, and the laser head's model and texture.
Directory layout
<namespace>/data/<namespace>/drill_tiers/t10.jsonTierDef (data-driven)
recipes/drill_core/t10_ores.jsonDrillCore recipe(s)
assets/<namespace>/models/block/laser_head_t10.jsonHead model (inherits from base)
textures/block/laser_head_t10.pngHead texture (same UV layout as base)
Add a new Tier (data-driven)
A tier defines: which core item activates it, its RPM gate, its stress at 128 RPM, and which laser head model to render.
Create a file at:
data/<namespace>/drill_tiers/<tier_id>.jsonTier JSON schema
{
// (optional) if omitted, the id is inferred from the filename
"id": "<namespace>:t10",
// sort order in JEI/tooltips (lower = earlier)
"order": 10,
// the item that must be inserted into the controller to activate this tier
"core_item": "<namespace>:drill_core_t10",
// base stress draw at min_rpm (scaled by the config suScale)
// e.g. 32.0 with suScale=1000 => 32,000 SU shown/consumed at min_rpm
"stress_at_minRPM": 32.0,
// RPM gate for this tier; the drill does nothing below this
"min_rpm": 128,
// (optional) used only to clamp the x2 speed bonus in code; UI pitch/volume scales up to this
"max_rpm": 256,
// the partial model to render as the head (block model ResourceLocation, without "models/")
// this file will be under assets/create_mininglaser/models/block/...
"head_partial": "<namespace>:block/laser_head_t10"
}Notes
stress_at_minRPMis interpreted at the tier'smin_rpm(default 128). The config multipliersuScaleis applied on top (see Config).core_itemcan be any existing item (from your mod or others). You do not need a special item class—just reference it here.head_partialmust point to a block model (see next section).
Laser head model & texture
Every tier points to a partial block model via head_partial. New heads should inherit from the base head so you only swap textures.
Place files here:
- Model:
assets/<namespace>/models/block/laser_head_t10.json - Texture:
assets/<namespace>/textures/block/laser_head_t10.png
Keep your texture's resolution and UV layout compatible with the base (the base uses a 64×64 sheet). If you change UVs, you'll need a full model edit.
Base model to inherit from
The mod ships a base head model (e.g. laser_head_t1.json). Your custom models should inherit from it.
Minimal inheriting model
{
"parent": "create_mininglaser:block/laser_head_t1",
"textures": {
"1": "<namespace>:block/laser_head_t10r",
"particle": "create_mininglaser:block/drill_casing"
}
}If you exported a full model from Blockbench, you can still simplify it to a
parent+texturesoverride as above—this keeps everything consistent with Create's partials.
