Repository navigation
Coal and Metallurgy
Note
Design stage. This page describes planned mechanics from the design document. Not implemented yet — see Roadmap (milestone M2 for coal and the mine, M3 for steel, air separation and water treatment).
Coal and steel are the first two eras of the industrial complex: I0 "Coal and Steam" and I1 "Steel and Power". You dig coal out of a gassy mine, wash it, burn it under a boiler, coke it, smelt iron, make steel and pipe, refine aluminium and copper, separate air into oxygen, nitrogen and argon, and treat water for every boiler and cooling tower in the complex. Almost every later industry needs something from here: pipe for wells, steel for reactor vessels, coke-oven pitch for reactor graphite, cobalt and iridium for isotope targets.
The design covers these simulation packages:
| Package | Domain types |
|---|---|
sim.mining |
MineVentilation, MethaneField, Hoist
|
sim.metallurgy |
BlastFurnace, Converter, RollingMill, CokeBattery
|
sim.utilities |
AirSeparationUnit, WaterTreatmentTrain
|
Server budget for the whole section: 0.10 ms/tick. Every furnace and boiler burns fuel through the shared combustion model (see Energy Grid); electricity comes from grid buses; explosions and collapses go through DamageBudget (Multiplayer).
The design document currently specifies ore generation and coal seams in full detail; the mine, coke plant, iron and steel, non-ferrous, pipe, air separation and water treatment chapters are scoped (milestones, hazards, products, scaling rules) but their detailed formulas are still being written. This page lists what is already fixed.

| Milestone | What arrives |
|---|---|
| M2 I0 coal and steam | mixed veins (all worldgen), coal mine: roof supports, ventilation, methane, canary → lamp → methanometer, coal dust and rock dusting, hoisting, mine dewatering; coal washing; coal_assay; cupola and casting iron in sand |
| M3 I1 steel and power | coke plant with by-product recovery, pitch and electrodes; sinter, blast furnace, converter, electric arc furnace, continuous caster, rolling, pipe, heat treatment; aluminium, copper, copper_wire; air separation unit; water treatment; machine shop |
| M8 oil and gas | OCTG (drill_pipe, casing_pipe, tubing_pipe), sour-service pipe, platinum-group metals from slimes (refinery catalysts) |
| M9 chemistry | benzene, phenol and naphthalene from the coke plant feed chemistry; early-path bakelite |
| M10 accidents and operations | spare parts for the maintenance panel, refractory wear, breakouts, air separation unit explosions |
| M12 isotopes |
cobalt_ingot and iridium_ingot at target purity, Ir-192 weld radiography |
| M13 ecology and economy | spoil heap self-ignition, red mud and acid mine water, aluminium anode-effect PFCs |
| M15 post-release | titanium (Kroll), underground coal gasification, pellets, vacuum degassing |
| Level | What | Model | Time domain |
|---|---|---|---|
| Geology | mixed veins, coal seams, block composition | deterministic composition field from the world seed (VeinField) |
chunk generation |
| Mine atmosphere | airflow through workings, CH₄, CO, O₂, dust | branch network (Hardy Cross), gas balances per node | SLOW (1 Hz) |
| Mining mechanics | roof support, roof falls, hoisting, dewatering | span rules, lumped machines on Create shafts | event-driven + FAST (hoist) |
| Metallurgical furnaces | coking, blast furnace, converter, roasting | lumped zones with heat and mass balance | SLOW |
| Electro-technology | arc furnace, Al and Cu electrolysis, air separation |
power-limited: ṁ = P / E_spec
|
electrical FAST |
| Mechanical working | rolling, continuous casting, piercing, machine tools | force/torque → Create stress | FAST |
| Water treatment | hardness, O₂, Cl⁻, SiO₂, conductivity | passive scalars on thermal-hydraulic nodes | SLOW |
- Thermochemical (time-limited) — coking, blast furnace, roasting, converter, air separation cooldown, water treatment. State is integrated in the SLOW domain. These units burn their own fuel (coke, gas), so the time acceleration shows up as fuel use per real second, not as grid load.
-
Electro-technological (power-limited) — arc furnace, aluminium and copper electrolysis, air separation compressors, Acheson furnace. Throughput is limited by the electrical power the grid actually delivers:
P [MW] = E_spec [kWh/kg] × ṁ [t/h]. Electrolysis uses the real DC current of the busbar in real time, so Faraday's law gives physical specific energy automatically.
A 54 m³ blast furnace (3×3×6 inside) with a 5 MW blower makes 1.76 t/min of hot metal (real time). A battery of 6 ovens of 6 t wet charge, 16 h physical coking time = 13.3 real minutes, gives 2.7 t/min coal → 1.9 t/min coke, enough at 0.55 t coke per tonne of iron. A 10 t converter heat takes 40 physical minutes = 33 real seconds; its oxygen (50 Nm³/t) needs about 2.1 MW of air separation. The site totals about 8–10 MW without electrolysis and arc furnace. 20–30 items per minute on a Create belt: a large Create factory, but not an overload.
Mined blocks have physical mass: m = ρ_ore × 1 m³, dropped as round(m / 100 kg) items in one stack (coal 1.3 t/m³ → 13 items; magnetite quartzite 3.4 t/m³ → 34). The ore yield multiplier used for uranium does not apply here — metallurgy needs tonnes, and physical mass already provides them.
| Carrier | Mass per item | Key |
|---|---|---|
Bulk (raw_coal, washed_coal, coke, sinter, raw_magnetite …) |
100 kg | metallurgy.bulk_item_mass_kg |
Ingots and rolled products (steel_ingot, steel_plate, steel_rod, steel_beam, steel_billet, pig_iron, aluminium_ingot, copper_cathode, nickel_ingot) |
100 kg | metallurgy.ingot_mass_kg |
seamless_pipe, welded_pipe
|
1 m of pipe, mass from pipe_spec
|
— |
drill_pipe, casing_pipe, tubing_pipe
|
one 20 m wellbore block (5″ drill pipe = 580 kg) | geology.depth_scale_m_per_block |
wire_rope |
10 m | mining.rope_item_length_m |
copper_wire |
10 kg coil | metallurgy.wire_item_mass_kg |
cobalt_ingot |
1 kg | metallurgy.cobalt_item_mass_kg |
platinum_ingot |
100 g | metallurgy.pgm_item_mass_kg |
iridium_ingot |
10 g | metallurgy.iridium_item_mass_kg |
| Melts, solutions, water | 1 mB = 1 L | — |
Gases (coke_oven_gas, oxygen, argon …) |
mass in vessels, metered in Nm³ | — |
A stack of 64 bulk items is 6.4 t — one mine car. One steel_plate is a 2×1 m sheet, 6.4 mm thick. Melts are stored as volume at melt temperature: liquid steel 7000 kg/m³, slag 2800, liquid aluminium 2375, liquid copper 8020. A 10 t steel ladle holds 1.43 m³.
Everything else is physics with a source.
| Key | Default | Meaning |
|---|---|---|
metallurgy.bulk_item_mass_kg |
100 | bulk item mass (matches boiler fuel item mass) |
metallurgy.ingot_mass_kg |
100 | an ingot is a billet, not a vanilla ingot |
metallurgy.coke_chamber_width_m |
0.45 | effective width of a 1-block coking chamber (coking time ∝ width²; at 1 m it would take 80 physical hours) |
aluminium.pot_heat_capacity_scale |
0.05 | pots freeze in minutes, not hours |
mining.methane_emission_scale |
1.0 | seam gas emission multiplier; 0.3 for light servers |
An ore body is a mixed vein: one geological body with a primary, secondary, in-between and sporadic ore (the GregTech: New Horizons scheme mapped onto real deposit zoning). Find one ore block and you have found the whole body; mining it you always get by-product metals and have to do something with them. Uranium bodies are a special case with one ore and a halo.
- The world is split into 3×3-chunk cells (48×48 blocks). Each cell has a 0.45 chance of one body (
worldgen.veins.fill_probability). - A body is a lens with horizontal semi-axes 12–20 blocks, vertical 3–6, tilted up to 30°.
- Ore density falls off toward the edge with simplex noise.
- Each ore block gets a role by height within the lens:
| Zone | Primary / secondary / in-between / sporadic |
|---|---|
| Top | 0.10 / 0.70 / 0.15 / 0.05 |
| Middle | 0.25 / 0.15 / 0.55 / 0.05 |
| Bottom | 0.75 / 0.05 / 0.15 / 0.05 |
This mimics supergene enrichment on top and primary sulfides below: open the top of a body and you mostly see secondary ore — dig deeper.
| Vein | Prototype | Primary | Secondary | In-between | Sporadic | Y range (peak) | Weight |
|---|---|---|---|---|---|---|---|
banded_iron |
Kursk, Kryvbas |
magnetite_ore (30–40 % Fe) |
hematite_ore (50–65 % Fe) |
vein_quartz |
pyrolusite_ore |
−32…64 (16) | 30 |
coal_seam |
Donbas, Kuzbass | coal seam by depth | pyrite_ore |
fireclay |
sphalerite_ore |
−40…72 (24) | 25 |
cu_ni_sulfide |
Norilsk, Sudbury |
pentlandite_ore (1–3 % Ni, Co) |
chalcopyrite_ore (2–4 % Cu) |
pyrrhotite_ore |
sperrylite_ore (PGM 5–50 g/t) |
−64…16 (−32) | 8 |
porphyry_copper |
Chuquicamata |
chalcopyrite_ore (0.5–1 % Cu) |
molybdenite_ore |
pyrite_ore |
vein_quartz |
0…80 (40) | 10 |
polymetallic |
Rudny Altai, Broken Hill | galena_ore |
sphalerite_ore |
pyrite_ore |
chalcopyrite_ore |
−16…48 (16) | 12 |
bauxite |
Guinea laterites |
bauxite_ore (40–60 % Al₂O₃) |
hematite_ore |
fireclay |
— | 56…80 (66) | 8, jungle/savanna only |
quartz_greisen |
Transbaikalia, Cornwall |
vein_quartz (> 99 % SiO₂) |
cassiterite_ore (Sn) |
fluorite_ore |
molybdenite_ore |
−32…64 (24) | 7 |
chromite_ultramafic |
Bushveld, Kempirsai | chromite_ore |
magnetite_ore (titanomagnetite) |
pyrrhotite_ore |
sperrylite_ore |
−64…0 (−40) | 5 |
ilmenite_placer (backlog) |
Kerala sands | ilmenite_sand |
zircon_sand |
monazite_sand |
— | 55…66 | 5 |
Vanilla ores stay for vanilla crafting and early Create (can be disabled with worldgen.vanilla_ores.<ore>.enabled). minecraft:coal is accepted by boilers as a default long-flame coal; minecraft:raw_iron is accepted by the blast furnace as 60 % Fe hematite. Host rock is a block property host=stone|deepslate|tuff instead of separate deepslate IDs.
| Visible at once | Visible after assay |
|---|---|
| block type by texture: magnetite black metallic, chalcopyrite brass-yellow with tarnish, pentlandite bronze, sperrylite tin-white grains, chromite pitch-black | grade class G0–G5, by-product Co, Mo, PGM (g/t), sulfur, moisture |
| vein type — only from the combination of blocks you have found | composition of the whole body — from a geological_map or a series of cores |
Raw items carry an ore_assay component quantized into six grade classes, so items of the same class stack. Prospecting uses the same tools as uranium: core_drill and core_sample (now also recording vein ID and block role), assay_station (ore chemistry, proximate coal analysis, coal plastometry), and the geological_map. A magnetometer for iron anomalies is backlog.
Coal is not a lens but a seam: a horizontal layer 1–4 blocks thick and 48–160 blocks long, dipping up to 10°, sometimes stacked 6–20 blocks apart. The roof is stone with a mudstone overlay; the floor is fireclay (real seam-floor refractory clay, raw material for firebrick).
Rank increases with depth (Hilt's law). Volatile matter on a dry ash-free basis: V_daf(y) = clamp(45 − 0.32·(72 − y) + 3·noise, 3, 48) %. Above 42 % → lignite_seam, 8–42 % → coal_seam (bituminous grades), below 8 % → anthracite_seam. At y = 0, V_daf ≈ 22 % — coking coal lies deeper than steam coal, as in the Donbas.
| Grade (GOST 25543) | V_daf, % | Plastic layer, mm | Use in game |
|---|---|---|---|
| B (lignite) | > 42 | — | I0 boilers (30–40 % moisture), gasification (backlog) |
| D (long-flame) | 37–42 | < 6 | boilers, same as vanilla coal |
| G (gas coal) | 33–40 | 6–16 | boilers, blend component |
| Zh (fat coal) | 28–36 | 16–26 | base of coking blend |
| K (coking coal) | 18–28 | 12–18 | base of coking blend |
| OS (lean caking) | 14–22 | 6–12 | leaning additive |
| T (lean) | 8–17 | < 6 | boilers, power |
| A (anthracite) | < 8 | — | smokeless fuel, electrode paste |
Grade is a consequence of depth and noise, not a separate tag. The coal's properties travel with it in the coal_assay component and are used by boilers (calorific value, grindability for the coal mill).
Milestone M2 delivers the mine with its hazards:
- Roof support — timber support that rots in abandoned mines; roof falls by span rules.
- Ventilation — main mine fan, airflow through the workings computed as a branch network; tracked gases CH₄, CO, O₂ and dust.
-
Methane — seam gas emission (
mining.methane_emission_scale); 5–15 % CH₄ in a working is an explosive mix. Methane drainage producesmine_methane, a boiler and gas-engine fuel. -
Detection ladder —
canary_cagewith a livecanary(statesalive,fainted,empty) → safety lamp → methanometer. - Coal dust and rock dusting — dust above the lower explosive limit is explosive.
-
Hoisting on
wire_rope, mine dewatering pumps. -
Coal washing to
washed_coal, and a cupola for casting iron in sand.
Mine automation is exposed through the pc_mine peripheral (ventilation, dewatering, hoist). Advancements include placing a canary cage and "The bird lives" (the canary survived a methane outburst because you got out in time). Abandoned old_coal_mine structures contain methane pockets that explode from a torch. The handbook Ponder scene mine_ventilation teaches ventilation, methane and the canary.
| Tag | Where | Consequence |
|---|---|---|
EXPLOSIVE_MIX |
5–15 % CH₄ in a working; coal dust above LEL; coke oven gas + air | explosion through DamageBudget
|
TOXIC_CO |
blast furnace gas (22 % CO), converter gas (60–70 % CO), coke oven gas (6 % CO), mine air after an explosion | CO poisoning; the canary reacts first |
ASPHYXIANT |
N₂ and Ar from air separation, workings with O₂ < 19 %, CO₂ in old workings | promptcritical:asphyxiation |
CRYOGENIC |
liquid_nitrogen, liquid_oxygen, the cold box |
frostbite, brittle fracture of carbon steel below −20 °C |
OXIDIZER |
O₂, liquid_oxygen
|
oil and clothing ignite above 23.5 % O₂ |
MOLTEN |
iron, steel, slag, Al, Cu, matte | melt + water = steam explosion |
HIGH_VOLTAGE |
arc furnace transformer, potline busbars | electric shock |
CHEMICAL_CORROSIVE |
acid mine water pH 2–4, Bayer caustic, regeneration acids | vessel damage |
CHEMICAL_TOXIC |
benzene, phenol, coke-plant ammonia, HF and fluorides from Al smelting | toxic cloud, chronic exposure |
FLAMMABLE |
tar, crude benzene, mine_methane
|
fire |
coke_oven becomes an oven of a coke battery. Coking a blend of fat and coking coal gives coke and by-products: coke_oven_gas (fuel for boilers and furnaces), coal_tar → coal_tar_pitch → graphite_electrode, and aromatics (benzene, toluene, xylenes, phenol, naphthalene) for chemistry. Coke quenching is part of the cycle (Ponder scene coke_battery_cycle); dry quenching gas at 750–800 °C feeds a heat-recovery boiler (hrsg).
Pitch → reactor graphite. Electricity from the generator powers the Acheson furnace, and coke-oven pitch plus petroleum or needle coke become reactor graphite. This is why graphite-moderated reactors (tier T0) need era I1.
-
Sinter plant →
sinter. -
Blast furnace (Ponder
blast_furnace_tap): burden, hot blast, tapping. Productsmolten_iron/pig_iron,molten_slag(→ portland cement),blast_furnace_gas. Hot-blast stove switching ("on gas" / "on blast") is an automation task for an A1 cam controller or A3 sequential function chart. Advancement: first tap of pig iron. -
Converter (oxygen from air separation) →
molten_steel,converter_gas. - Electric arc furnace — power-limited; arc resistance fluctuates during meltdown and causes voltage flicker on the shared bus (see Energy Grid).
-
Continuous caster, rolling mill, heat treatment →
steel_ingot,steel_plate,steel_rod,steel_beam,steel_billetwith asteel_gradecomponent. -
Pipe →
seamless_pipe,welded_pipewith apipe_speccomponent (grade, diameter, wall, inspection). Boiler water walls and superheaters need heat-resistant grades; uninspected welds rupture. - Casting — melts are poured into Create molds for valve and pump bodies, with casting defects.
- Machine shop — machine tools produce spare parts consumed by the maintenance panel; the spare parts store is part of planned maintenance (Operations and Safety).
- Peripherals:
pc_furnace(blast furnace, converter, furnaces),pc_rolling_mill.
-
Aluminium from
bauxite_ore(Bayer process, red mud) and electrolysis on a DC busbar fromrectifier_unit. Pots freeze within minutes if power is lost. -
Copper —
copper_cathode,copper_wirefor windings and lines. Anode slimes yieldplatinum_ingot(PGM for refinery catalysts andpt_rh_gauze). -
Nickel —
nickel_ingot; cobalt recovered as a by-product →cobalt_ingot(Co-60 targets). Iridium →iridium_ingot(Ir-192 sources). See Isotopes and RTG. - Titanium (Kroll) is post-release.
air_separator is a cryogenic air separation unit producing oxygen, nitrogen, argon, liquid_nitrogen and liquid_oxygen. Oxygen goes to the converter; argon to zirconium welding; nitrogen to cold traps and nitrogen purging in oil and gas. Cooldown is a time-limited SLOW process; the compressors are a power-limited grid load. Air separation explosions arrive with milestone M10. Peripheral: pc_utility.
A WaterTreatmentTrain turns raw_water into demineralized_water, boiler_feedwater and cooling_water. Tracked water chemistry: hardness, dissolved O₂, Cl⁻, SiO₂, conductivity. Without it, boiler tubes scale and rupture, and cooling towers are limited in cycles of concentration. pH dosing against a highly non-linear titration curve is a reference control task for the automation platform. Peripheral: pc_utility.
| Product | Goes to |
|---|---|
raw_coal, washed_coal
|
boilers (Energy Grid) |
coke_oven_gas, blast_furnace_gas, mine_methane
|
boilers, gas engines; otherwise flared |
coke |
blast furnace, carbochlorination in the fuel cycle |
coal_tar_pitch, graphite_electrode
|
Acheson furnace → reactor graphite |
benzene, toluene, xylenes, coal_tar
|
Petrochemistry |
steel_* products |
every industry: towers, tanks, vessels |
seamless_pipe, welded_pipe
|
plant piping, pipelines |
drill_pipe, casing_pipe, tubing_pipe
|
drilling and wells (Oil and Gas) |
wire_rope |
mine hoist, cranes |
aluminium_ingot, copper_wire
|
conductors, windings, transformers |
platinum_ingot |
catalysts, pt_rh_gauze
|
cobalt_ingot, iridium_ingot
|
isotope targets |
oxygen, nitrogen, argon, liquid gases |
converter, Zr welding, cold traps, N₂ purging |
| water by treatment stage | reactor, boilers, oil and gas |
molten_slag, fly ash |
portland cement, concrete |
Inputs from other industries: electricity and DC from the grid, petroleum and needle coke from refinery coking for electrodes, bitumen for cable insulation.
Peripherals pc_mine, pc_furnace, pc_rolling_mill, pc_utility (see CC: Tweaked API). Reference control tasks on the Automation Platform include blast furnace stove switching and water-treatment pH dosing.
- Energy Grid — boilers, combustion, grid supply for electro-technology
- Nuclear Fuel Cycle — uranium ore bodies, Acheson graphite
- Oil and Gas — OCTG pipe, refinery coke
- Petrochemistry — coke-plant aromatics
- Player Content — handbook, advancements, old coal mines
- Operations and Safety — confined spaces, gas testing, spare parts
- Environment and Economy — spoil heaps, mine water, red mud
Prompt Critical · © 2026 denfry · Repository · Report an issue
Start here
Design
Nuclear
Industries
Control and automation
World and server
Development