Nostalgic Crucibles
Crucibles by default generate lava and water with required items. Fill a wooden crucible with leaves and jump in it to crush them into water, or melt cobblestone into lava in a fired crucible over a heat source.
You can expand and create your own recipes or generate other fluids if you like. See below for examples on how to add more options.
Automation
- Hoppers (and item pipes) can feed leaves or cobblestone in from any side.
- Pipes can pull the water or lava out from any side. Nothing can pour fluid in.
- Comparators read how full of water it is.
- Mobs that land inside it crush too, as long as they're small enough to fit (slimes, for example). Turn this off in the config if you want it to be player-only.
Mod Support
- JEI: shows every crushing and melting recipe (with jumps per item for crushing) and every heat source, grouped by heat.
- Jade: look at a crucible to see what's in it, what's left to crush or melt, and how many jumps or seconds are left.
- KubeJS: add, change and remove crushing recipes, melting recipes and heat sources from scripts (see below).
None of these are required.
Config
saves/<world>/serverconfig/nostalgiccrucibles-server.toml
| Option | Default | What it does |
|---|---|---|
capacity |
1000 | Total mB the crucible holds (1000 = one bucket) |
mb_per_jump |
20 | mB crushed per landing |
min_fall_distance |
0.5 | How far something has to fall for a landing to count (a jump is about 1.25) |
mobs_can_crush |
true | Whether mobs landing on it crush, or only players |
Fired crucible ([fired_crucible]):
| Option | Default | What it does |
|---|---|---|
capacity |
1000 | Total mB the fired crucible holds |
seconds_per_bucket_at_heat_1 |
180 | Seconds to melt a bucket with a torch under it. Heat divides this. |
For Modpack Makers
Everything can be changed with KubeJS (server scripts). KubeJS isn't required to play.
KubeJS: recipes
ServerEvents.recipes(event => {
// Wooden crucible: crushing (jump to crush). Output first, then input (item or #tag).
event.recipes.nostalgiccrucibles.crushing(Fluid.of('minecraft:water', 40), '#minecraft:saplings')
// Fired crucible: melting (needs heat underneath)
event.recipes.nostalgiccrucibles.melting(Fluid.of('minecraft:lava', 1000), 'minecraft:netherrack')
// Remove the defaults if you want
event.remove({ id: 'nostalgiccrucibles:leaves_to_water' })
event.remove({ id: 'nostalgiccrucibles:stone_to_lava' })
})
Any fluid works as the output. A crucible only holds one fluid at a time, so items that make a different fluid are refused until it's emptied.
KubeJS: heat sources
NostalgicCruciblesEvents.heatSources(event => {
event.add('minecraft:glowstone', 2) // add a block
event.remove('minecraft:torch') // remove one
// event.removeAll() // clear the defaults and only use what you add here
})
Heat can be any whole number: each step is faster (heat 4 is 45 s per bucket, heat 6 is 30 s). New heat levels show up in JEI automatically. Changes apply on /reload. Blocks with a "lit" state (campfires, furnaces) only give heat while lit.

