On this page
  1. Across games
  2. Quirks
  3. History and lineage
  4. Related
  5. Games
  6. References
  7. Sources

A production chain turns raw materials into finished goods in stages. Each station makes an intermediate that a later station uses, and the player decides where the stations stand and how the parts get from one to the next. It differs from crafting, one recipe made at once, by having stages, and from a conveyor belt, which is one way of moving parts between them. The games here differ most in who does the moving: the player in Minecraft, who loads furnaces and crafts by hand, though 1.5’s hoppers added automatic smelting1,2, the dwarves in Dwarf Fortress3, and machines in BuildCraft and Factorio4,5.

  • Hand-run Minecraft. The player loads furnaces and crafts by hand, laying out each recipe on a crafting grid; 1.5’s hoppers added automatic smelting1,2.
  • Worker-run Dwarf Fortress (53.16). The player orders jobs at workshops, and dwarves fetch the inputs and make the item; hauling it to a stockpile is a later job3,6.
  • Automated Factorio. The Factorio Wiki says belts and inserters bring ingredients to machines and inserters take the products away, and that a machine set to a recipe should craft once its ingredients are in5.

#Across games

GameStationsWho moves the partsAutomation
Minecraftfurnace, crafting table7,2the player; 1.5’s hoppers added automatic smelting, and the wiki also describes hoppers extracting smelted items1partial: hoppers allow automatic smelting from 1.5, and the crafter, added in snapshot 23w42a (1.21), crafts on a redstone signal and can be fed by hoppers1,8
Dwarf Fortress (53.16)31 workshops9 workshops in three tiers9,10dwarves, as fetching and hauling jobs3standing orders, repeated jobs, and work orders; “no process can be truly automated”6
BuildCraft (2.2.4)inventories such as furnaces, the Automatic Crafting Table, the refinery4,11,12pipes; an engine-powered wooden pipe pulls items out of an inventory into them4,13items pick their own way through pipes; iron pipes send them out of one side, and diamond pipes sort them by filter13,14
Factorioin 2.1.23, furnaces, assembling machines, oil refineries, chemical plants15,16,17,18the Factorio Wiki says belts and inserters5; in 2.1.23 inserters reach one tile, or two when long-handed, and robots fill requester chests19,20the Factorio Wiki says a machine set to a recipe should craft once its ingredients are in, and that each step needs a machine of its own5

Minecraft’s pickaxe chain smelts ore in a furnace and crafts the ingots into a pickaxe, which mines the next tier’s ore21,7. Dwarf Fortress’s metal chain burns wood into charcoal at a wood furnace, smelts ore with that fuel into bars, and forges the bars into weapons, armor, and furniture10. Factorio smelts ore into plates, and its assembling machines turn plates into gears, cables, and circuits for later recipes22,23.

#Quirks

  • Factorio’s player chain-crafts: asking for an item whose parts are missing queues those parts first, which assembling machines don’t do24,5.
  • In Factorio 2.1.23 an inserter stops filling a machine once it holds the ingredients for as many crafts as the machine finishes in 1.16625 seconds, plus one, so the rest stays on the belt for the next machine25.
  • In Dwarf Fortress (53.16) a dwarf fetches the material nearest to the dwarf, not to the workshop, unless stockpiles are linked to the workshop. The finished item stays in the workshop until a separate hauling job takes it away, and items piling up slow the workshop’s work3.
  • BuildCraft 2.2.4’s Automatic Crafting Table crafts only when a pipe pulls from it, and it keeps the last item in each slot as its pattern, drawing that ingredient from an adjacent chest instead11.
  • IndustrialCraft’s Macerator adds a stage for a reward: it grinds an ore into 226 dusts that each smelt into an ingot, doubling the metal from each ore26,27.
  • BuildCraft 2.2.4’s oil chain has three steps, a pump, a refinery with one recipe, and an engine, where Factorio’s advanced recipe splits crude oil into three products and chemical plants crack the heavier ones into lighter28.

#History and lineage

Dwarf Fortress has the earliest dated build here: the earliest build on Bay 12’s version list is dated 8 August 200629. Its 2006 features page already listed crafting treasures and furniture and improving them with precious metals and jewels30, but the workshop tiers described above are version 53.16’s.

Minecraft’s stations have dates. Crafting arrived in Indev on 29 January 201031, and from 1 February harder materials needed a higher-tier pickaxe32. The furnace followed on 19 February; before it, the only way to smelt ore was to drop it and set it alight with flint and steel33. 1.5, released on 13 March 2013, let hoppers work with furnaces for automatic smelting1, and the crafter made automated crafting possible from snapshot 23w42a (1.21)8.

IndustrialCraft, begun in February 2011, set out to “advance the industrial aspect of Minecraft” with better furnaces, new fuels, and electric energy34,35, and its Macerator page of March 2011 already advertised doubled ore27. BuildCraft’s first release, in April 2011, had pipes but no automatic crafting36; by Adrian Siekierka’s account, Automatic Crafting Tables came in 1.5_01.337.

Michal Kovařík (kovarex), Factorio’s founder, named modded Minecraft, “mainly buildcraft/industrialcraft”, as a huge inspiration38, and Friday Facts #50 says “Factorio was inspired by Buildcraft”39. The one chain-specific step in these sources is a 2013 proposal to process oil into fuel or other products “as in build craft”, which doesn’t say what shipped40. An early pitch described Factorio as a game in which the player mines resources, builds machines, and automates production41.

Dwarf Fortress and Factorio are compared here, not traced: in 2014 kovarex listed Dwarf Fortress among games people compare Factorio with that the team had never played42. Minecraft’s prototype, RubyDung, was a base-building game inspired by Dwarf Fortress43, but the source names no production system as carried over.

Games

GameYearHowNote
Minecraft2009Hand-runthe player loads furnaces and crafts by hand, laying out each recipe on a crafting grid, from ore to ingot to the next tier's pickaxe; 1.5's hoppers added automatic smelting
Dwarf Fortress2006Worker-runthe player orders jobs at workshops in three tiers, and dwarves fetch the inputs, make the item, and haul it to a stockpile; no process can be truly automated
Minecraft2009Automatedpartly automated: 1.5's hoppers (2013) added automatic smelting, and since snapshot 23w42a (1.21) the crafter crafts any crafting-table recipe on a redstone signal, fed by hoppers
BuildCraft2011Automatedin 2.2.4 engine-powered wooden pipes pull items out of inventories such as furnaces into the pipes, which route them on to machines and inventories; the Automatic Crafting Table crafts its pattern each time a pipe pulls from it, and the quarry puts what it digs into an adjacent chest or pipe
Factorio2016Automatedthe Factorio Wiki says belts and inserters keep furnaces and assembling machines supplied and take their products away, and that a machine set to a recipe should craft once its ingredients are in, each step on a machine of its own; in 2.1.23 inserters fill a machine only a few crafts ahead
Every claim about this mechanic, by game (2)

References

  1. ^ abcdeIn Minecraft the player loads a furnace through its interface, fuel in the bottom slot and the items to smelt in the top one. Snapshot 13w02a, part of 1.5 (full release 13 March 2013), let hoppers work with furnaces, which the Minecraft Wiki says allows automatic smelting. The wiki also describes hoppers extracting smelted items.WikiMinecraft Wiki: Furnace · Minecraft Wiki: Java Edition version historyrevised
    How we know
    Its interface can be opened by pressing the use item button on it. A fuel source (up to one stack of fuel items) is placed in the bottom slot, and the items to be processed (up to one stack) goes in the upper slot.
    Usage · archived copy ↗
    Hoppers can now be used in conjunction with furnaces, allowing for automatic smelting.
    History, Java Edition, 1.5, 13w02a · archived copy ↗
    Furnaces drop their contents when broken, including XP from processed items that were extracted by hoppers.
    Obtaining, Breaking · archived copy ↗
    1.5 January 3, 2013 March 13, 2013
    1.5, block and item additions table: development release, full release · archived copy ↗

    Checked against the evidence by its author, an AI model, 2026-10-26.

    Revised after a check by a second AI model, 2026-10-26.

    In the claim ledger

  2. ^ abcThe player crafts by laying items out on a grid to match a recipe: a 2×2 grid in the inventory for small recipes such as planks, sticks, torches, and the crafting table, and a 3×3 grid at a placed crafting table, made from four planks, for every recipe. Most recipes are shaped: the ingredients must sit in the right places relative to each other, though the pattern may slide and be flipped left to right. Some are shapeless and take their ingredients anywhere on the grid.WikiMinecraft Wiki: Crafting
    How we know
    Players craft by arranging items in the crafting grid to match a given recipe. Small crafting recipes that are at most 2×2 can be made there, including wooden planks, sticks, crafting tables, and torches. … The crafting table can be made by filling the 2×2 grid with any type of wooden planks. This brings up an interface with a larger 3×3 crafting grid in which the player can use to craft any crafting recipe in the game. … Most recipes must have their ingredients placed in the correct relative positions on the crafting grid. These are commonly known as "shaped" recipes. Ingredients in shaped recipes can be moved up, down, left, or right. They can also be flipped horizontally, but not vertically. … Some recipes don't require their ingredients to be arranged in a specific way on the crafting grid. These are commonly known as "shapeless" recipes.
    Crafting system, Manual crafting · archived copy ↗

    Checked against the evidence by its author, an AI model, 2026-10-26.

    Checked by a second AI model, 2026-10-26.

    In the claim ledger

  3. ^ abcdIn version 53.16, as the wiki describes it, an order at a workshop becomes a job that waits for a dwarf with the right labor. That dwarf fetches the nearest suitable material, nearest to the dwarf and not the workshop, or only from linked stockpiles if any are set, carries each ingredient to the workshop, makes the item, and leaves it there. Taking it to a stockpile is a separate hauling job, queued later, and items piling up in a workshop slow its work.WikiDwarf Fortress Wiki, "Workshop"
    How we know
    When there are items ordered at a workshop, the workshop will generate item creation jobs until it finds a suitable dwarf with appropriate labors … The dwarf finds the nearest, most suitable base raw material. This is nearest to their current location, not the workshop. If any stockpiles are set to give to the workshop, only linked stockpiles will be looked in. … The dwarf gets that material and hauls it to the workshop. The dwarf repeats that until all the necessary ingredients are in the workshop. The dwarf labors in the workshop for a while and creates the item. The dwarf leaves the finished item in the workshop. … A new hauling job is (eventually) queued to take the finished item to the nearest suitable stockpile. … If you have no stockpiles to put finished objects in, workshops will become cluttered. … The more items there are, the longer tasks will take.
    Operation · archived copy ↗

    Checked against the evidence by its author, an AI model, 2026-10-26.

    Checked by a second AI model, 2026-10-26.

    In the claim ledger

  4. ^ abcIn 2.2.4 the wooden transport pipe is the one that takes items out: powered by an engine, it pulls from one slot of the inventory it faces as many items as it holds energy, one item per unit and at most a stack, and puts them into the pipe. Blocks named in the config's woodenPipe.exclusion list, empty by default, aren't pulled from. It stores at most 64, and energy it hasn't spent drains, 64 a tick. A two-slot inventory gives from its first slot to a pipe above or below and its second to the sides; a furnace's top, bottom and sides give its three slots.CodeBuildCraft 2.2.4revised
    How we know
    42		powerProvider.configure(50, 1, 64, 1, 64);
    43		powerProvider.configurePowerPerdition(64, 1);
    
    buildcraft/common/net/minecraft/src/buildcraft/transport/pipes/PipeItemsWood.java lines 41–43 at 0a20887 · upstream ↗
    79		if (powerProvider.energyStored <= 0) {
    80			return;
    ⋮
    88			return;
    ⋮
    102			return;
    ⋮
    108			ItemStack stack = checkExtract(inventory, true,
    109					pos.orientation.reverse());
    ⋮
    113				return;
    ⋮
    118					pos.orientation.reverse());
    ⋮
    125			((PipeTransportItems) transport).entityEntering(entity,
    126					entityPos.orientation);
    
    buildcraft/common/net/minecraft/src/buildcraft/transport/pipes/PipeItemsWood.java lines 78–127 at 0a20887 · upstream ↗
    91				.getOrCreateProperty("woodenPipe.exclusion",
    92						Configuration.BLOCK_PROPERTY, "");
    ⋮
    94		PipeLogicWood.excludedBlocks = exclusionList.value.split(",");
    
    buildcraft/common/net/minecraft/src/BuildCraftTransport.java lines 90–94 at 0a20887 · upstream ↗
    69		for (String excluded : excludedBlocks) {			
    70			if (excluded.equals (block.getBlockName())
    71					|| excluded.equals (Integer.toString(block.blockID))) {
    
    buildcraft/common/net/minecraft/src/buildcraft/transport/PipeLogicWood.java lines 64–76 at 0a20887 · upstream ↗
    156		} else if (inventory.getSizeInventory() == 2) {
    157			// This is an input-output inventory
    ⋮
    161			if (from == Orientations.YNeg || from == Orientations.YPos) {
    162				slotIndex = 0;
    163			} else {
    164				slotIndex = 1;
    ⋮
    173				} else {
    ⋮
    177		} else if (inventory.getSizeInventory() == 3) {
    178			// This is a furnace-like inventory
    ⋮
    183				slotIndex = 0;
    ⋮
    185				slotIndex = 1;
    186			} else {
    ⋮
    
    buildcraft/common/net/minecraft/src/buildcraft/transport/pipes/PipeItemsWood.java lines 156–199 at 0a20887 · upstream ↗
    225						return inventory.decrStackSize(k, powerProvider
    226								.useEnergy(1, slot.stackSize, true));
    
    buildcraft/common/net/minecraft/src/buildcraft/transport/pipes/PipeItemsWood.java lines 215–235 at 0a20887 · upstream ↗
    68			energyStored -= powerLoss;
    ⋮
    81	public int useEnergy (int min, int max, boolean doUse) {
    
    buildcraft/common/net/minecraft/src/buildcraft/api/PowerProvider.java lines 64–99 at 0a20887 · upstream ↗

    Checked against the evidence by its author, an AI model, 2026-10-26.

    Revised after a check by a second AI model, 2026-10-26.

    In the claim ledger

  5. ^ abcdeThe Factorio Wiki's Crafting page (October 2026 capture) says an assembling machine set to a recipe should craft the item once all the requested ingredients are in its input slots; that, unlike the player, it doesn't chain-craft, so each step of a recipe needs a machine of its own; and that continuous production takes ingredients brought by belts and inserters, with inserters taking the products out for use elsewhere in the factory.WikiFactorio Wiki: Craftingrevised
    How we know
    To automatically craft items, place a Assembling machine, and select the recipe. … Then, place all requested ingredients into the input slots, and the assembling machine should craft the item. Note that unlike manual crafting, each step of the craft requires another assembly machine. … Assembly machines cannot automatically chain-craft like the player. … To keep up continuous production ingredients must be provided via belts and Inserters. The manufactured items can also be extracted by Inserters and are then available for further usage elsewhere in the factory.
    Automated crafting · archived copy ↗

    Checked against the evidence by its author, an AI model, 2026-10-26.

    Revised after a check by a second AI model, 2026-10-26.

    In the claim ledger

  6. ^ abThe wiki, describing version 53.16, says no process can be truly automated, and lists the game's partial tools: standing orders, which queue some single-use refining jobs whenever their inputs exist; jobs set to repeat; and, once a manager is appointed, work orders for an exact number of items, which the manager must approve and which re-queue until their inputs are in place.WikiDwarf Fortress Wiki, "Workshop"
    How we know
    Though no process can be truly automated, there are a few tricks to keeping your workshops productive.
    Management · archived copy ↗
    Thus, standing orders automate certain tasks, queuing them up whenever input materials are available
    Management, Standing orders · archived copy ↗
    Appointing a manager noble allows you to queue work orders using the job manager interface, though your manager will need time to approve work orders before production begins. … Firstly, it allows you to produce an exact number of items as opposed to putting a workshop on repeat, and secondly, it allows easier management of complex tasks … the tasks will simply re-queue, to be fulfilled as soon as the prerequisites are in order.
    Management, Manager · archived copy ↗

    Checked against the evidence by its author, an AI model, 2026-10-26.

    Checked by a second AI model, 2026-10-26.

    In the claim ledger

  7. ^ abToday a furnace takes fuel in its bottom slot and the items to smelt in the top one, and in the Java Edition smelts one item every 200 game ticks (10 seconds). A piece of coal burns for 80 seconds, enough for eight items, and keeps burning to the end once lit, even if nothing is left to smelt.WikiMinecraft Wiki: Furnacerevised
    How we know
    A fuel source (up to one stack of fuel items) is placed in the bottom slot, and the items to be processed (up to one stack) goes in the upper slot. A furnace runs at a speed of one item every 200 game ticks (10 seconds) or six items per minute. … For example, a piece of coal burns for 80 seconds and can process eight items, but if only one item is processed (or if the item is pulled out before the process is complete), the coal still continues burning for the full 80 seconds
    Usage · archived copy ↗

    Checked against the evidence by its author, an AI model, 2026-10-26.

    Revised after a check by a second AI model, 2026-10-26.

    In the claim ledger

  8. ^ abThe crafter, a block that crafts any crafting-table recipe when it gets a redstone signal and can be fed by hoppers, made automated crafting possible in the base game. It was added in snapshot 23w42a, which the wiki files under 1.21.WikiMinecraft Wiki: Craftingrevised
    How we know
    Added the crafter, making automated crafting possible.
    History, 1.20.3 Experiment, Update 1.21, 23w42a · archived copy ↗
    The crafter can craft anything that a normal crafting table can. Crafters require a redstone signal to activate. … The simplest way to do this is for the player to add the items for the crafting into the crafter manually, however this process can itself be automated using hoppers.
    Crafting system, Automated crafting · archived copy ↗

    Checked against the evidence by its author, an AI model, 2026-10-26.

    Revised after a check by a second AI model, 2026-10-26.

    In the claim ledger

  9. ^ abIn version 53.16, as the wiki describes it, anything produced is made at a workshop, a building, nearly always 3×3 tiles, where dwarves process materials into more valuable or useful items. The wiki counts 31 workshops: 14 in its first tier, 11 in the second and 6 in the third. Each needs dwarves with its labors, and more skilled dwarves tend to make better or faster work.WikiDwarf Fortress Wiki, "Workshop"revised
    How we know
    Workshops are buildings where materials are processed by dwarves into more valuable or useful items. There are a total of 31 workshops: 14 first tier, 11 second tier and 6 third tier across the game's various industries.
    opening paragraph · archived copy ↗
    Anything that is created, refined, cooked, altered, decorated, or generally "produced" is processed at a workshop. … they have specific labors that are required by dwarves to build them or to work there, and dwarves with more of the appropriate skill tend to produce higher quality objects*, and/or produce them faster. … Almost all workshops measure 3 tiles square, 3×3, but a few are 5×5, or even a single tile.
    Description · archived copy ↗

    Checked against the evidence by its author, an AI model, 2026-10-26.

    Revised after a check by a second AI model, 2026-10-26.

    In the claim ledger

  10. ^ abThe wiki, describing version 53.16, ranks workshops by how far they are from raw materials: a tier 1 workshop processes raw materials, tier 2 the output of tier 1, tier 3 the output of tier 2, each possibly with lower-tier inputs as well. In the metal chain a wood furnace (tier 1) burns wood into charcoal, a smelter (tier 2) turns ore, with charcoal or coke for fuel, into metal bars, and a metalsmith's forge (tier 3) turns bars, with fuel, into weapons, armor, furniture and more.WikiDwarf Fortress Wiki, "Workshop" · Dwarf Fortress Wiki, "Industry"
    How we know
    A Tier-1 workshop processes raw materials directly; a Tier-2 workshop processes the output of a Tier-1 workshop (but may also include new raw materials); and a Tier-3 workshop processes the output of a Tier-2 workshop (but may also include inputs from lower levels)
    Tier system · archived copy ↗
    Wood furnace b-o-u-f Uses Tier 0 Item: Wood Produces: Fuel (Charcoal), Ash
    Tier 1 workshops, Wood furnace · archived copy ↗
    Smelter b-o-u-l Uses Tier 1 Items: Fuel (Charcoal, Coke) Uses Tier 0 Items: Coal, Ore, Flux … Produces: Coke, Metal bars
    Tier 2 workshops, Smelter · archived copy ↗
    Metalsmith's forge b-o-i Uses Tier 1 Item: Fuel (Charcoal, Coke) Uses Tier 2 Item: Metal bars Produces: weapons, trap components, bolts, ballista arrowheads, armor, chains, crafts, coins, goblets, studding, anvils, blocks, furniture, animal traps and mechanisms.
    Tier 3 workshops, Metalsmith's forge · archived copy ↗
    Metal industry: Raw ore is refined into metal bars, which may be used for weapons, armor, furniture, and crafts.
    Primary industries, Metal industry · archived copy ↗

    Checked against the evidence by its author, an AI model, 2026-10-26.

    Checked by a second AI model, 2026-10-26.

    In the claim ledger

  11. ^ abThe 2.2.4 Automatic Crafting Table holds a 3 × 3 pattern and crafts one result each time a pipe pulls from it. A slot with more than one item gives one; a slot down to its last item keeps it and takes one from an adjacent chest or other plain inventory instead, and if none has it the table crafts nothing. Items piped in go only to slots already holding that item, the emptiest first. It needs no power of its own; the wooden pipe pulling from it does.CodeBuildCraft 2.2.4
    How we know
    102		autoWorkbenchBlock = new BlockAutoWorkbench(
    103				Integer.parseInt(autoWorkbenchId.value));
    ⋮
    111				"Automatic Crafting Table");
    
    buildcraft/common/net/minecraft/src/BuildCraftFactory.java lines 102–111 at 0a20887 · upstream ↗
    185				if (stack.stackSize <= 1) {
    186					StackPointer pointer = getNearbyItem(stack.itemID,
    187							stack.getItemDamage());
    ⋮
    189					if (pointer == null) {
    190						resetPointers(pointerList);
    ⋮
    192						return null;
    ⋮
    199					pointer.item = this.decrStackSize(i, 1);
    ⋮
    209		ItemStack resultStack = CraftingManager.getInstance().findMatchingRecipe(
    210				craftMatrix);
    ⋮
    213			resetPointers(pointerList);
    
    buildcraft/common/net/minecraft/src/buildcraft/factory/TileAutoWorkbench.java lines 165–228 at 0a20887 · upstream ↗
    277		if (tile instanceof ISpecialInventory) {
    278			// Don't get stuff out of ISpecialInventory for now / we wouldn't
    ⋮
    281		} else if (tile instanceof IInventory) {
    
    buildcraft/common/net/minecraft/src/buildcraft/factory/TileAutoWorkbench.java lines 270–281 at 0a20887 · upstream ↗
    136					&& stackInInventory.itemID == stack.itemID
    137					&& stackInInventory.getItemDamage() == stack.getItemDamage()
    138					&& stackInInventory.stackSize < minSimilar) {
    
    buildcraft/common/net/minecraft/src/buildcraft/factory/TileAutoWorkbench.java lines 125–157 at 0a20887 · upstream ↗
    137		if (inventory instanceof ISpecialInventory) {
    138			// TAKE INTO ACCOUNT SPECIAL INVENTORIES!!!
    139			return ((ISpecialInventory) inventory).extractItem(doRemove, from);
    
    buildcraft/common/net/minecraft/src/buildcraft/transport/pipes/PipeItemsWood.java lines 137–140 at 0a20887 · upstream ↗

    Checked against the evidence by its author, an AI model, 2026-10-26.

    Checked by a second AI model, 2026-10-26.

    In the claim ledger

  12. ^The 2.2.4 refinery has one recipe: one unit of oil into one unit of fuel for 10 energy, at most one unit a tick, so a bucket of fuel costs 10,000 energy and at least 1,000 ticks. Its two input tanks and its output tank hold four buckets each.CodeBuildCraft 2.2.4
    How we know
    141		TileRefinery.addRecipe(new RefineryRecipe(oilStill.blockID, 1, 0, 0,
    142				10, fuel.shiftedIndex, 1, 1));
    
    buildcraft/common/net/minecraft/src/BuildCraftEnergy.java lines 141–142 at 0a20887 · upstream ↗
    22	public RefineryRecipe(int sourceId1, int sourceQty1, int sourceId2,
    23			int sourceQty2, int energy, int resultId, int resultQty, int delay) {
    
    buildcraft/common/net/minecraft/src/buildcraft/factory/RefineryRecipe.java lines 22–23 at 0a20887 · upstream ↗
    33	public static int LIQUID_PER_SLOT = API.BUCKET_VOLUME * 4;	
    
    buildcraft/common/net/minecraft/src/buildcraft/factory/TileRefinery.java line 33 at 0a20887 · upstream ↗
    262		if (!time.markTimeIfDelay(worldObj, currentRecipe.delay)) {
    263			return;
    ⋮
    266		int energyUsed = powerProvider.useEnergy(currentRecipe.energy,
    267				currentRecipe.energy, true);
    ⋮
    269		if (energyUsed != 0) {
    270			result.liquidId = currentRecipe.resultId;
    271			result.quantity += currentRecipe.resultQty;
    272			src1.quantity -= currentRecipe.sourceQty1;
    
    buildcraft/common/net/minecraft/src/buildcraft/factory/TileRefinery.java lines 256–277 at 0a20887 · upstream ↗

    Checked against the evidence by its author, an AI model, 2026-10-26.

    Checked by a second AI model, 2026-10-26.

    In the claim ledger

  13. ^ abIn 2.2.4 an item in a transport pipe travels to the pipe's center and there picks an exit: any side but the one it came in by that leads to a pipe carrying items, a machine that accepts them, or an inventory with room for it. With several, it takes one at random (single-player) or by a fixed hash of the item's id and the pipe's position (multiplayer). With none, the item drops out of the pipe into the world, and an item that reaches a full inventory drops what doesn't fit.CodeBuildCraft 2.2.4
    How we know
    119			if (Orientations.values()[o] != pos.orientation.reverse()
    120					&& container.pipe.outputOpen(Orientations.values()[o])) {
    ⋮
    159		if (entity instanceof IPipeEntry) {
    160			return true;
    161		} else if (entity instanceof TileGenericPipe) {
    ⋮
    164			return pipe.pipe.transport instanceof PipeTransportItems;
    165		} else if (entity instanceof IInventory) {					
    166			if (new StackUtil(item.item).checkAvailableSlot((IInventory) entity,
    ⋮
    168				return true;
    
    buildcraft/common/net/minecraft/src/buildcraft/transport/PipeTransportItems.java lines 114–173 at 0a20887 · upstream ↗
    225				Orientations nextOrientation = resolveDestination (data);
    ⋮
    227				if (nextOrientation == Orientations.Unknown) {
    228					scheduleRemoval(data.item);
    ⋮
    230					EntityItem dropped = data.item.toEntityItem(data.orientation);
    
    buildcraft/common/net/minecraft/src/buildcraft/transport/PipeTransportItems.java lines 225–237 at 0a20887 · upstream ↗
    263				} else if (tile instanceof IInventory) {
    ⋮
    271							data.item.remove();						
    272						} else {
    273							data.item.item = utils.items;
    274							EntityItem dropped = data.item.toEntityItem(data.orientation);
    
    buildcraft/common/net/minecraft/src/buildcraft/transport/PipeTransportItems.java lines 263–282 at 0a20887 · upstream ↗
    377		if (listOfPossibleMovements.size() == 0) {					
    378			return Orientations.Unknown;													
    379		} else {
    ⋮
    382			if (APIProxy.isClient(worldObj) || APIProxy.isServerSide()) {
    383				i = Math.abs(data.item.entityId + xCoord + yCoord + zCoord
    384						+ data.item.deterministicRandomization)
    385						% listOfPossibleMovements.size();
    386			} else {
    387				i = worldObj.rand.nextInt(listOfPossibleMovements.size());
    
    buildcraft/common/net/minecraft/src/buildcraft/transport/PipeTransportItems.java lines 373–393 at 0a20887 · upstream ↗

    Checked against the evidence by its author, an AI model, 2026-10-26.

    Checked by a second AI model, 2026-10-26.

    In the claim ledger

  14. ^In 2.2.4 an iron pipe lets items out by one side only; each change in the redstone signal it gets turns that side to the next one that faces a pipe, machine or inventory, skipping wooden pipes. A diamond pipe has nine filter slots for each of its six sides: an item goes to a side whose filter holds its kind (ignoring wear on tools), and only when none does to a side with an empty filter.CodeBuildCraft 2.2.4
    How we know
    28		if (currentPower != lastPower) {
    29			switchPosition();
    ⋮
    55				if (((TileGenericPipe) tile).pipe.logic instanceof PipeLogicWood) {
    56					continue;
    ⋮
    60			if (tile instanceof IPipeEntry 
    61					|| tile instanceof IInventory
    62					|| tile instanceof ILiquidContainer
    63					|| tile instanceof TileGenericPipe) {
    
    buildcraft/common/net/minecraft/src/buildcraft/transport/PipeLogicIron.java lines 24–69 at 0a20887 · upstream ↗
    112	public boolean outputOpen(Orientations to) {
    113		return to.ordinal() == worldObj
    114				.getBlockMetadata(xCoord, yCoord, zCoord);
    
    buildcraft/common/net/minecraft/src/buildcraft/transport/PipeLogicIron.java lines 112–115 at 0a20887 · upstream ↗
    58			for (int slot = 0; slot < 9; ++slot) {
    59				ItemStack stack = logic.getStackInSlot(dir.ordinal() * 9 + slot);
    ⋮
    67					if ((Item.itemsList[item.item.itemID].isDamageable())) {
    68						filteredOrientations.add(dir);
    ⋮
    71						filteredOrientations.add(dir);
    ⋮
    75			if (!foundFilter) {				
    76				defaultOrientations.add(dir);
    ⋮
    79		if(filteredOrientations.size() != 0) {
    80			return filteredOrientations;
    81		} else {
    82			return defaultOrientations;
    
    buildcraft/common/net/minecraft/src/buildcraft/transport/pipes/PipeItemsDiamond.java lines 46–84 at 0a20887 · upstream ↗

    Checked against the evidence by its author, an AI model, 2026-10-26.

    Checked by a second AI model, 2026-10-26.

    In the claim ledger

  15. ^Three furnaces smelt: the stone furnace at crafting speed 1, and the steel and electric furnaces at 2. The stone and steel furnaces burn chemical fuel at 90 kW; the electric furnace draws 180 kW and has 2 module slots. An iron or copper plate (3.2 s) takes 3.2 s in a stone furnace and 1.6 s in the other two.Codefactorio-data 2.1.23
    How we know
    1073    crafting_categories = {"smelting"},
    ⋮
    1075    energy_usage = "90kW",
    1076    crafting_speed = 1,
    ⋮
    1080      type = "burner",
    1081      fuel_categories = {"chemical"},
    
    base/prototypes/entity/entities.lua lines 1073–1081 at 39dbd0f · upstream ↗
    4858    crafting_categories = {"smelting"},
    ⋮
    4860    energy_usage = "90kW",
    4861    crafting_speed = 2,
    ⋮
    4865      type = "burner",
    4866      fuel_categories = {"chemical"},
    
    base/prototypes/entity/entities.lua lines 4858–4866 at 39dbd0f · upstream ↗
    4399    module_slots = 2,
    ⋮
    4406    crafting_categories = {"smelting"},
    ⋮
    4408    crafting_speed = 2,
    4409    energy_usage = "180kW",
    ⋮
    4413      type = "electric",
    
    base/prototypes/entity/entities.lua lines 4399–4413 at 39dbd0f · upstream ↗

    Checked against the evidence by its author, an AI model, 2026-10-26.

    Checked by a second AI model, 2026-10-26.

    In the claim ledger

  16. ^Assembling machines 1, 2 and 3 craft at speeds 0.5, 0.75 and 1.25, drawing 75, 150 and 375 kW, with 0, 2 and 4 module slots. Machine 1 takes neither module nor beacon effects and can't craft recipes with fluids; machines 2 and 3 add the fluid category.Codefactorio-data 2.1.23
    How we know
    3189    crafting_categories = {"crafting", "advanced-crafting"},
    3190    crafting_speed = 0.5,
    ⋮
    3197    energy_usage = "75kW",
    ⋮
    3201    effect_receiver = {uses_module_effects = false, uses_beacon_effects = false, uses_surface_effects = true},
    
    base/prototypes/entity/entities.lua lines 3189–3201 at 39dbd0f · upstream ↗
    3338    crafting_categories = {"crafting", "advanced-crafting", "crafting-with-fluid"},
    ⋮
    3340    crafting_speed = 0.75,
    ⋮
    3347    energy_usage = "150kW",
    3348    module_slots = 2,
    
    base/prototypes/entity/entities.lua lines 3338–3348 at 39dbd0f · upstream ↗
    5567    crafting_categories = {"crafting", "advanced-crafting", "crafting-with-fluid"},
    5568    crafting_speed = 1.25,
    ⋮
    5575    energy_usage = "375kW",
    5576    module_slots = 4,
    
    base/prototypes/entity/entities.lua lines 5567–5576 at 39dbd0f · upstream ↗

    Checked against the evidence by its author, an AI model, 2026-10-26.

    Checked by a second AI model, 2026-10-26.

    In the claim ledger

  17. ^An oil refinery (crafting speed 1, 420 kW, 3 module slots) runs three 5-second recipes: basic oil processing turns 100 crude oil into 45 petroleum gas; advanced oil processing turns 100 crude oil and 50 water into 25 heavy oil, 45 light oil and 55 petroleum gas; coal liquefaction turns 10 coal, 25 heavy oil and 50 steam into 90 heavy oil, 20 light oil and 10 petroleum gas.Codefactorio-data 2.1.23
    How we know
    8403    module_slots = 3,
    ⋮
    8405    crafting_categories = {"oil-processing"},
    8406    crafting_speed = 1,
    ⋮
    8413    energy_usage = "420kW",
    
    base/prototypes/entity/entities.lua lines 8403–8413 at 39dbd0f · upstream ↗
    153    name = "basic-oil-processing",
    ⋮
    156    energy_required = 5,
    ⋮
    159      {type = "fluid", name = "crude-oil", amount = 100, fluidbox_index = 2}
    ⋮
    163      {type = "fluid", name = "petroleum-gas", amount = 45, fluidbox_index = 3}
    ⋮
    178    name = "advanced-oil-processing",
    ⋮
    181    energy_required = 5,
    ⋮
    184      {type = "fluid", name = "water", amount = 50},
    185      {type = "fluid", name = "crude-oil", amount = 100}
    ⋮
    189      {type = "fluid", name = "heavy-oil", amount = 25},
    190      {type = "fluid", name = "light-oil", amount = 45},
    191      {type = "fluid", name = "petroleum-gas", amount = 55}
    ⋮
    205    name = "coal-liquefaction",
    ⋮
    
    base/prototypes/recipe.lua lines 153–229 at 39dbd0f · upstream ↗

    Checked against the evidence by its author, an AI model, 2026-10-26.

    Checked by a second AI model, 2026-10-26.

    In the claim ledger

  18. ^A chemical plant (crafting speed 1, 210 kW, 3 module slots) cracks oil downward in 2-second recipes: 40 heavy oil and 30 water into 30 light oil, and 30 light oil and 30 water into 20 petroleum gas. Its other base recipes include plastic (20 petroleum gas and 1 coal into 2 bars), sulfur (30 petroleum gas and 30 water into 2), sulfuric acid (5 sulfur, 1 iron plate and 100 water into 50) and lubricant (10 heavy oil into 10), each in 1 second.Codefactorio-data 2.1.23
    How we know
    8849    crafting_speed = 1,
    ⋮
    8856    energy_usage = "210kW",
    8857    crafting_categories = {"chemistry"},
    
    base/prototypes/entity/entities.lua lines 8849–8857 at 39dbd0f · upstream ↗
    234    name = "heavy-oil-cracking",
    ⋮
    238    energy_required = 2,
    ⋮
    241      {type = "fluid", name = "water", amount = 30},
    242      {type = "fluid", name = "heavy-oil", amount = 40}
    ⋮
    246      {type = "fluid", name = "light-oil", amount = 30}
    ⋮
    264    name = "light-oil-cracking",
    ⋮
    268    energy_required = 2,
    ⋮
    271      {type = "fluid", name = "water", amount = 30},
    272      {type = "fluid", name = "light-oil", amount = 30}
    ⋮
    276      {type = "fluid", name = "petroleum-gas", amount = 20}
    ⋮
    294    name = "sulfuric-acid",
    ⋮
    298    energy_required = 1,
    ⋮
    
    base/prototypes/recipe.lua lines 234–344 at 39dbd0f · upstream ↗
    433    name = "sulfur",
    ⋮
    435    energy_required = 1,
    ⋮
    440      {type = "fluid", name = "water", amount = 30},
    441      {type = "fluid", name = "petroleum-gas", amount = 30}
    ⋮
    445      {type = "item", name = "sulfur", amount = 2}
    ⋮
    459    name = "lubricant",
    ⋮
    463    energy_required = 1,
    ⋮
    466      {type = "fluid", name = "heavy-oil", amount = 10}
    ⋮
    470      {type = "fluid", name = "lubricant", amount = 10}
    
    base/prototypes/recipe.lua lines 433–481 at 39dbd0f · upstream ↗

    Checked against the evidence by its author, an AI model, 2026-10-26.

    Checked by a second AI model, 2026-10-26.

    In the claim ledger

  19. ^Ordinary inserters pick up from the tile behind them and drop on the tile in front; the long-handed inserter reaches one tile further at both ends, picking up two tiles away and dropping two tiles away.Codefactorio-data 2.1.23
    How we know
    2387    pickup_position = {0, -1},
    2388    insert_position = {0, 1.2},
    
    base/prototypes/entity/entities.lua lines 2387–2388 at 39dbd0f · upstream ↗
    2528    pickup_position = {0, -2},
    2529    insert_position = {0, 2.2},
    
    base/prototypes/entity/entities.lua lines 2528–2529 at 39dbd0f · upstream ↗

    Checked against the evidence by its author, an AI model, 2026-10-26.

    Checked by a second AI model, 2026-10-26.

    In the claim ledger

  20. ^Each of the five logistic chests holds 48 slots: an active provider pushes its contents into the network, a passive provider offers them on request, a storage chest takes what nobody asked for (and can be filtered to one item), a requester is filled by robots up to the amounts set, and a buffer chest is both a requester and a passive provider.Wikifactorio-data 2.1.23 · Factorio Wiki: Logistic network
    How we know
    5803    inventory_size = 48,
    5804    icon_draw_specification = {scale = 0.7},
    5805    logistic_mode = "passive-provider",
    
    base/prototypes/entity/entities.lua lines 5803–5805 at 39dbd0f · upstream ↗
    5916    max_logistic_slots = 1,
    
    base/prototypes/entity/entities.lua line 5916 at 39dbd0f · upstream ↗
    Pushes stored items into the logistic network. … Places stored items at the logistic network's disposal. … Stores items currently not requested. … Will be filled by logistic robots until the configured amount is reached, or the chest becomes full. … Functions as both a requester chest and passive provider chest.
    Logistic chests · archived copy ↗

    Checked against the evidence by its author, an AI model, 2026-10-26.

    Checked by a second AI model, 2026-10-26.

    In the claim ledger

  21. ^Each pickaxe is crafted from two sticks and three of its tier's material (by the tiers table's repair items: planks, cobblestone, iron ingots, diamonds), and each tier's ore takes a pickaxe of the tier below: any pickaxe for stone, a stone one for iron ore, an iron one for diamond ore.WikiMinecraft Wiki: Pickaxe · Minecraft Wiki: Tiers
    How we know
    Wooden, golden, stone, copper, iron, and diamond pickaxes are crafted using two sticks and three of the tier’s material.
    Obtaining, Crafting · archived copy ↗
    Cobblestone
    Tiers, table, repair item column · archived copy ↗
    Includes diamond ore, emerald ore, gold ore, redstone ore … Includes iron ore, copper ore, lapis lazuli ore
    Notes 1 to 3 · archived copy ↗
    while stone can be mined with any pickaxe
    Usage, Breaking · archived copy ↗

    Checked against the evidence by its author, an AI model, 2026-10-26.

    Checked by a second AI model, 2026-10-26.

    In the claim ledger

  22. ^Smelting turns 1 iron or copper ore into 1 plate in 3.2 seconds, and 5 iron plates into 1 steel plate in 16 seconds. Smelting recipes run only in furnaces.Codefactorio-data 2.1.23
    How we know
    1442    name = "copper-plate",
    1443    categories = {"smelting"},
    ⋮
    1445    energy_required = 3.2,
    1446    ingredients = {{type = "item", name = "copper-ore", amount = 1}},
    1447    results = {{type="item", name="copper-plate", amount=1}},
    ⋮
    1452    name = "iron-plate",
    1453    categories = {"smelting"},
    ⋮
    1455    energy_required = 3.2,
    1456    ingredients = {{type = "item", name = "iron-ore", amount = 1}},
    1457    results = {{type="item", name="iron-plate", amount=1}},
    
    base/prototypes/recipe.lua lines 1442–1458 at 39dbd0f · upstream ↗
    1473    name = "steel-plate",
    1474    categories = {"smelting"},
    ⋮
    1476    enabled = false,
    1477    energy_required = 16,
    1478    ingredients = {{type = "item", name = "iron-plate", amount = 5}},
    1479    results = {{type="item", name="steel-plate", amount=1}},
    
    base/prototypes/recipe.lua lines 1473–1480 at 39dbd0f · upstream ↗

    Checked against the evidence by its author, an AI model, 2026-10-26.

    Checked by a second AI model, 2026-10-26.

    In the claim ledger

  23. ^The core intermediates: a gear is 2 iron plates (0.5 s); copper cable is 1 copper plate for 2 cables (0.5 s); an electronic circuit is 1 iron plate and 3 cables (0.5 s); an advanced circuit is 2 electronic circuits, 2 plastic bars and 4 cables (6 s); a processing unit is 20 electronic circuits, 2 advanced circuits and 5 sulfuric acid (10 s, so only a machine that takes fluids can make it).Codefactorio-data 2.1.23
    How we know
    765    name = "iron-gear-wheel",
    766    ingredients = {{type = "item", name = "iron-plate", amount = 2}},
    767    results = {{type="item", name="iron-gear-wheel", amount=1}},
    ⋮
    772    name = "electronic-circuit",
    773    ingredients =
    ⋮
    775      {type = "item", name = "iron-plate", amount = 1},
    776      {type = "item", name = "copper-cable", amount = 3}
    ⋮
    778    results = {{type="item", name="electronic-circuit", amount=1}},
    
    base/prototypes/recipe.lua lines 765–780 at 39dbd0f · upstream ↗
    883    name = "copper-cable",
    ⋮
    885    ingredients = {{type = "item", name = "copper-plate", amount = 1}},
    886    results = {{type="item", name="copper-cable", amount=2}},
    
    base/prototypes/recipe.lua lines 883–887 at 39dbd0f · upstream ↗
    2094    name = "advanced-circuit",
    ⋮
    2096    energy_required = 6,
    ⋮
    2099      {type = "item", name = "electronic-circuit", amount = 2},
    2100      {type = "item", name = "plastic-bar", amount = 2},
    2101      {type = "item", name = "copper-cable", amount = 4}
    ⋮
    2103    results = {{type="item", name="advanced-circuit", amount=1}},
    ⋮
    2108    name = "processing-unit",
    2109    categories = {"crafting-with-fluid"},
    ⋮
    2111    energy_required = 10,
    ⋮
    2114      {type = "item", name = "electronic-circuit", amount = 20},
    2115      {type = "item", name = "advanced-circuit", amount = 2},
    2116      {type = "fluid", name = "sulfuric-acid", amount = 5}
    ⋮
    
    base/prototypes/recipe.lua lines 2094–2119 at 39dbd0f · upstream ↗

    Checked against the evidence by its author, an AI model, 2026-10-26.

    Checked by a second AI model, 2026-10-26.

    In the claim ledger

  24. ^The player always crafts at speed 1. Asking for an item whose parts are missing but craftable queues those parts first (chain-crafting), which assembling machines don't do.WikiFactorio Wiki: Time · Factorio Wiki: Craftingrevised
    How we know
    The player always crafts at speed 1 while assembling machines have different crafting speeds.
    Crafting time · archived copy ↗
    Materials that you don't have but you can craft will be highlighted in orange text, and will be chain-crafted to reach the product you selected.
    Manual crafting · archived copy ↗
    Assembly machines cannot automatically chain-craft like the player.
    Automated crafting · archived copy ↗

    The quote matches our archived copy.

    Revised after a check by a second AI model, 2026-10-26.

    In the claim ledger

  25. ^ abInserters don't fill a crafting machine's whole input: it takes ingredients for as many crafts as it finishes in 1.166 seconds (the longest swing of a base inserter) plus one, at least 2 and at most 100 crafts' worth. The rest stays on the belt for the next machine.Codefactorio-data 2.1.23revised
    How we know
    409    -- 1.166 is a magic number representing the maximum number of seconds it takes for a base game inserter to do one cycle.
    410    -- the calculated overload multiplier is the number of crafts we can complete during one inserter full swing + 1
    411    dynamic_recipe_overload_factor = 1.166,
    412    minimum_recipe_overload_multiplier = 2,
    413    maximum_recipe_overload_multiplier = 100,
    
    core/prototypes/utility-constants.lua lines 409–413 at 39dbd0f · upstream ↗

    Checked against the evidence by its author, an AI model, 2026-10-26.

    Revised after a check by a second AI model, 2026-10-26.

    In the claim ledger

  26. ^ abIndustrialCraft²'s Macerator grinds one ore block into two dusts, each of which smelts into an ingot, and coal into one coal dust. Its energy box gives an input of 800 EU at 2 EU/t.WikiIndustrial-Craft-Wiki, Macerator (2012)
    How we know
    For example, the Macerator grinds down one Tin Ore into two Tin Dust, each of which can be smelted into a Tin Ingot. Easily doubles mining profits! … Input 800 (2 EU/t)
    opening and Energy box · archived copy ↗
    It reduces ore blocks (and Clay blocks) into 2 Dusts and Coal into 1 Coal Dust.
    infobox · archived copy ↗

    Checked against the evidence by its author, an AI model, 2026-10-26.

    Checked by a second AI model, 2026-10-26.

    In the claim ledger

  27. ^ abIndustrialCraft 1 already had the Macerator, which grinds ore into dust that smelts into ingots, so the same ore gives twice the metal: the March 2011 page, written as a sales pitch, says it doubles your ore production.WikiIndustrial-Craft-Wiki, Macerator (2011)
    How we know
    effectively doubling the efficiency of gaining ore. … As a result, it will return you high-quality ore-dust of whatever material you dropped in there. And, you may guess it, this dust can be smolten into ingots! Isn't that great? You can easyly DOUBLE your entire ore production.
    revision of 28 March 2011 · archived copy ↗

    Checked against the evidence by its author, an AI model, 2026-10-26.

    Checked by a second AI model, 2026-10-26.

    In the claim ledger

  28. ^BuildCraft 2.2.4's oil chain is short: a pump lifts oil block by block out of a deposit it empties, the refinery's one recipe turns oil into the same amount of fuel, and the combustion engine burns the fuel for energy. Factorio 2.1.23's crude oil is an infinite resource a pumpjack draws from a well; the refinery's basic recipe makes petroleum gas alone, its advanced recipe splits crude oil and water into heavy oil, light oil and petroleum gas, and cracking recipes in the chemistry category, which the chemical plant runs, turn heavy oil into light oil and light oil into gas.CodeBuildCraft 2.2.4 · factorio-data 2.1.23revised
    How we know
    84						if (powerProvider.useEnergy(10, 10, true) == 10) {
    85							index = getNextIndexToPump(true);
    86							worldObj.setBlockWithNotify(index.i, index.j, index.k, 0);
    
    buildcraft/common/net/minecraft/src/buildcraft/factory/TilePump.java lines 84–87 at 0a20887 · upstream ↗
    141		TileRefinery.addRecipe(new RefineryRecipe(oilStill.blockID, 1, 0, 0,
    142				10, fuel.shiftedIndex, 1, 1));
    ⋮
    148		API.ironEngineFuel.put(fuel.shiftedIndex, new IronEngineFuel(
    149				fuel.shiftedIndex, 5, 50000));
    
    buildcraft/common/net/minecraft/src/BuildCraftEnergy.java lines 141–149 at 0a20887 · upstream ↗
    220    name = "crude-oil",
    ⋮
    223    category = "basic-fluid",
    ⋮
    226    infinite = true,
    ⋮
    241          name = "crude-oil",
    
    base/prototypes/entity/resources.lua lines 218–242 at 39dbd0f · upstream ↗
    1867    name = "pumpjack",
    ⋮
    1871    resource_categories = {"basic-fluid"},
    
    base/prototypes/entity/mining-drill.lua lines 1867–1871 at 39dbd0f · upstream ↗
    153    name = "basic-oil-processing",
    ⋮
    163      {type = "fluid", name = "petroleum-gas", amount = 45, fluidbox_index = 3}
    ⋮
    178    name = "advanced-oil-processing",
    ⋮
    184      {type = "fluid", name = "water", amount = 50},
    185      {type = "fluid", name = "crude-oil", amount = 100}
    ⋮
    189      {type = "fluid", name = "heavy-oil", amount = 25},
    190      {type = "fluid", name = "light-oil", amount = 45},
    191      {type = "fluid", name = "petroleum-gas", amount = 55}
    
    base/prototypes/recipe.lua lines 153–229 at 39dbd0f · upstream ↗
    234    name = "heavy-oil-cracking",
    235    categories = {"chemistry"},
    ⋮
    264    name = "light-oil-cracking",
    265    categories = {"chemistry"},
    ⋮
    295    categories = {"chemistry"},
    ⋮
    324    categories = {"chemistry"},
    
    base/prototypes/recipe.lua lines 234–344 at 39dbd0f · upstream ↗
    8857    crafting_categories = {"chemistry"},
    
    base/prototypes/entity/entities.lua lines 8849–8857 at 39dbd0f · upstream ↗

    Checked against the evidence by its author, an AI model, 2026-10-26.

    Revised after a check by a second AI model, 2026-10-26.

    In the claim ledger

  29. ^The earliest build on Bay 12 Games' version list is Dwarf Fortress 0.21.93.19a, dated 8 August 2006, both on the download page as captured a week later and in the archive as it stands in 2026. Tarn Adams said in 2008 that he "finally got it out in August 2006".PublisherBay 12, Dwarf Fortress download page, 15 August 2006 · Bay 12, Dwarf Fortress older versions list · Game Developer (Gamasutra), Harris interviews Tarn Adams, 2008revised
    How we know
    DF 0.21.93.19a (August 8, 2006)
    download page, "Older Versions" list (15 August 2006 capture) · archived copy ↗
    DF 0.21.93.19a (August 8, 2006)
    the version list's last entry · archived copy ↗
    It took longer than I thought, but I finally got it out in August 2006.
    answer before "It was our only fantasy project" · archived copy ↗

    Checked against the evidence by its author, an AI model, 2026-10-26.

    Revised after a check by a second AI model, 2026-10-26.

    In the claim ledger

  30. ^Bay 12's 2006 features page lists, for the fortress: commanding dwarves as they search for wealth in the mountain, crafting treasures and furniture from many materials and improving them with precious metals and jewels, defending against hostile civilizations, the wilderness and the depths, keeping the dwarves happy, and building floodgates to divert water for farming or to drown adversaries.PublisherBay 12, Dwarf Fortress features page, October 2006
    How we know
    Command your dwarves as they search for wealth in the mountain. Craft treasures and furniture from many materials and improve these objects with precious metals, jewels and more. Defend yourself against attacks from hostile civilizations, the wilderness and the depths. … Keep your dwarves happy and read their thoughts as they work and relax. Build floodgates to divert water for farming or to drown your adversaries.
    fortress list · archived copy ↗

    Checked against the evidence by its author, an AI model, 2026-10-26.

    Checked by a second AI model, 2026-10-26.

    In the claim ledger

  31. ^Crafting became a proper feature in Indev on 29 January 2010, with recipes for sticks, pickaxes, torches, swords, and axes, and the same day's later build added the inventory's 2×2 grid and the workbench for the 3×3 grid. Shapeless recipes came in Beta 1.2, and 1.12 added a recipe tab that shows how to craft items crafted before. IGN's 2011 review said Minecraft had no documentation at all.WikiMinecraft Wiki: Crafting · IGN, Minecraft review, 24 November 2011revised
    How we know
    Crafting is now implemented as a proper feature. Early recipes include sticks, pickaxes, torches, swords, axes, in addition to diamond, gold and iron blocks.
    History, Java Edition Indev, 20100129-1447 · archived copy ↗
    Added the 2×2 crafting grid to the player’s inventory. Added workbenches, which are now required in order to access the 3×3 crafting grid instead of a keybind.
    History, Java Edition Indev, 20100129-2332 · archived copy ↗
    Added shapeless recipes.
    History, Java Edition Beta 1.2 · archived copy ↗
    The crafting GUI now includes a recipe tab, allowing players to know how to craft previously-crafted items, automatically fill in the recipe and filter out the recipes to what they can make from their inventory.
    History, Java Edition 1.12, 17w13a · archived copy ↗
    Many games have poor documentation, but Minecraft has none at all
    review body · archived copy ↗

    Checked against the evidence by its author, an AI model, 2026-10-26.

    Revised after a check by a second AI model, 2026-10-26.

    In the claim ledger

  32. ^Tool tiers arrived during Indev in 2010. Pickaxes were added on 10 January, mining stone 400% faster than a hand; wooden, stone, and diamond pickaxes joined the existing one, now the iron pickaxe, on 28 January; wooden, iron, and diamond pickaxes could be crafted from build 20100129-1447, and the stone one, because of a bug, only from the next build, 20100129-2332. On 1 February higher-tier pickaxes became required for harder materials, and the tiers page says that before then blocks and ores could be broken by hand.WikiMinecraft Wiki: Pickaxe · Minecraft Wiki: Tiersrevised
    How we know
    Added pickaxes. They are used to gather stone materials 400% faster than by hand.
    History, Java Edition Indev, 20100110 · archived copy ↗
    Tools now have tiers. Wooden, stone, and diamond pickaxes have been added. … The texture of the existing pickaxes, now known as iron pickaxes, has been shifted down slightly.
    History, Java Edition Indev, 20100128-2200 · archived copy ↗
    Wooden, stone, iron, and diamond pickaxes can now be crafted. … Due to a bug, stone pickaxe can be crafted only in next version
    History, Java Edition Indev, 20100129-1447 · archived copy ↗
    Added the golden tier of tools. Golden pickaxes have been added.
    History, Java Edition Indev, 20100129-2332 · archived copy ↗
    Higher tier pickaxes are now required to mine harder materials.
    History, Java Edition Indev, 20100201-2227 · archived copy ↗
    Added mining levels. Before this update, blocks and ores could be broken by hand.
    History, Java Edition Indev, 20100201-2227 · archived copy ↗

    Checked against the evidence by its author, an AI model, 2026-10-26.

    Revised after a check by a second AI model, 2026-10-26.

    In the claim ledger

  33. ^The furnace was added in Indev on 19 February 2010. Before it, the only way to smelt ores was to drop them on the ground and set them alight with flint and steel.WikiMinecraft Wiki: Furnace
    How we know
    Prior to the addition of furnaces, items could be smelted by dropping them on the ground and then burning them with flint and steel. This was the only way to smelt ores.
    History, Java Edition Indev · archived copy ↗
    Added furnaces.
    History, Java Edition Indev, 20100219 · archived copy ↗

    Checked against the evidence by its author, an AI model, 2026-10-26.

    Checked by a second AI model, 2026-10-26.

    In the claim ledger

  34. ^In 2018 the IC2 developer Chocohead called a build of 2 April 2011 the oldest public release of the original IndustrialCraft still available, and wrote that the mod's actual start was some time in February 2011.Dev blogChocohead, IC history and anniversary (2018)
    How we know
    2nd April 2011 is the oldest public release of the original IndustrialCraft, it is still available to download on the wiki. … Whilst the actual date is some time in February
    post · archived copy ↗

    Checked against the evidence by its author, an AI model, 2026-10-26.

    Checked by a second AI model, 2026-10-26.

    In the claim ledger

  35. ^Alblaka described IndustrialCraft as a mod that adds blocks, items and devices "to advance the industrial aspect of Minecraft": better furnaces, new fuels, and electric energy. He wrote that for him the main point of Minecraft was mining and crafting, and that the mod enhances both.Dev blogAlblaka, IndustrialCraft thread (2011)
    How we know
    Which one is the major point is left open for discussion. However, for ME the main point is MINING and CRAFTING. Therefore, i created a mod that enhanches both: Industrial Crafts adds various new blocks, items and devices, supposed to advance the industrial aspect of Minecraft to the next level. You get better Furnances, new fuels, electric energy and some more stuff further explained below.
    opening post, "What's this?" · archived copy ↗

    Checked against the evidence by its author, an AI model, 2026-10-26.

    Checked by a second AI model, 2026-10-26.

    In the claim ledger

  36. ^BuildCraft 1.4.1, the first release (April 2011), adds five pipes (Wooden, Stone, Iron, Golden and Diamond), an Iron Mining Well and the Mining Pipe it lowers. The tag has no engines, oil or automatic crafting.CodeBuildCraft 1.4.1
    How we know
    94		ModLoader.AddName(woodenPipeBlock.setBlockName("woodenPipe"), "Wooden Pipe");
    ⋮
    101		ModLoader.AddName(stonePipeBlock.setBlockName("stonePipe"), "Stone Pipe");
    ⋮
    108		ModLoader.AddName(ironPipeBlock.setBlockName("ironPipe"), "Iron Pipe");
    ⋮
    115		ModLoader.AddName(goldenPipeBlock.setBlockName("goldenPipe"), "Golden Pipe");
    ⋮
    122		ModLoader.AddName(diamondPipeBlock.setBlockName("diamondPipe"), "Diamond Pipe");
    ⋮
    131		ModLoader.AddName(miningWellBlock.setBlockName("miningWellBlock"), "Iron Mining Well");
    ⋮
    140		ModLoader.AddName(plainPipeBlock.setBlockName("plainPipeBlock"), "Mining Pipe");
    
    minecraft/net/minecraft/src/mod_BuildCraft.java lines 94–140 at 1a31ccd · upstream ↗

    Checked against the evidence by its author, an AI model, 2026-10-26.

    Checked by a second AI model, 2026-10-26.

    In the claim ledger

  37. ^By asie's account, the first release had five pipes and no building or crafting; 1.5_01.3 added quarries and automatic crafting tables, which then ran on fast-clocked redstone; 1.6.5.1 added vacuum pipes (later obsidian pipes), land marks and the filler. He also dates mining wells to 1.5_01.1, which the first release's code contradicts.Dev blogasie, "BuildCraft History and Design", 30 January 2015revised
    How we know
    Back then, it actually didn’t have building or crafting - much like the first releases of Minecraft. Instead, it had five pipe types … BuildCraft 1.5_01.1 brought Mining Wells and a port to beta 1.5_01, and 1.5_01.3 added Quarries and Automatic Crafting Tables (now Auto Workbenches). Back then, they still were powered by fast-clocked redstone … BuildCraft 1.6.5.1 added Vacuum Pipes (now Obsidian Transport Pipes), the Land Marks and the Filler
    opening section · archived copy ↗

    Checked against the evidence by its author, an AI model, 2026-10-26.

    Revised after a check by a second AI model, 2026-10-26.

    In the claim ledger

  38. ^Michal Kovařík (kovarex), Factorio's founder, wrote in 2014 that modded Minecraft, "mainly buildcraft/industrialcraft", was a huge inspiration to create Factorio, and that he had made private changes to those mods before he had the idea for a game of his own.Dev blogkovarex, Reddit, 1 August 2014
    How we know
    I never ever tried to hide the fact, that Modded minecraft, mainly buildcraft/industrialcraft, was huge inspiration to create Factorio. In fact, before even the idea to create my own game came to my mind, I started to make my own (private) changes to these minecraft mods.
    kovarex's comment, 1 August 2014 · archived copy ↗

    Checked against the evidence by its author, an AI model, 2026-10-26.

    Checked by a second AI model, 2026-10-26.

    In the claim ledger

  39. ^Friday Facts #50 (2014) says "Factorio was inspired by Buildcraft". In 2013 kovarex wrote that a topic he had started (linked to mod-buildcraft.com's forums) made him start thinking about making his own game.Dev blogFFF-50 · kovarex, "How it all begun" forum post, 6 October 2013revised
    How we know
    Factorio was inspired by Buildcraft, this game might be inspired by Factorio and it is in fact honour for us.
    Automation genre · archived copy ↗
    This topic I started (1 year, 7 months ago) made me start thinking about making my own game.
    first post, kovarex, 6 October 2013 · archived copy ↗

    Checked against the evidence by its author, an AI model, 2026-10-26.

    Revised after a check by a second AI model, 2026-10-26.

    In the claim ledger

  40. ^In a February 2013 plan for Factorio's energy, kovarex proposed oil, saying he didn't want to copy BuildCraft's oil concept completely but liked it a lot, and that processing oil into fuel or other products "as in build craft" would be nice. It is a proposal; the post doesn't say what shipped.Dev blogkovarex, "Electric energy" forum post, 7 February 2013
    How we know
    I don't want to ripoff the buildcraft oil concept completely … but I like it a lot. … Processing oil to fuel or other products as in build craft would be nice
    first post, kovarex, 7 February 2013, under "Oil" · archived copy ↗

    Checked against the evidence by its author, an AI model, 2026-10-26.

    Checked by a second AI model, 2026-10-26.

    In the claim ledger

  41. ^The same post called Factorio a game about building a factory, in which the player mines resources, builds machines, automates production, and fights alien creatures, as a character alone on an alien planet who must clear it for a colonization fleet from Earth.Dev blogHere we are
    How we know
    Factorio is a game about building a factory. You will need to mine resources, build machines, automate production and fight alien creatures. … The main character finds himself alone on the alien planet. His task is to prepare the planet for colonization fleet coming from the Earth.
    second paragraph · archived copy ↗

    Checked against the evidence by its author, an AI model, 2026-10-26.

    Checked by a second AI model, 2026-10-26.

    In the claim ledger

  42. ^In February 2014 kovarex listed Dwarf Fortress, RimWorld, SpaceChem, and Industry Giant as games people compare Factorio with that the team had never played.Dev blogkovarex, "Factorio <> Industry Giant 2", 10 February 2014
    How we know
    These are games people tend to compare us with, that we never played: Dwarf fortress, Rimworld, Spacechem, Industry giant and much more.
    kovarex's reply, February 2014 · archived copy ↗

    Checked against the evidence by its author, an AI model, 2026-10-26.

    Checked by a second AI model, 2026-10-26.

    In the claim ledger

  43. ^Markus Persson wrote in 2009 that RubyDung, the prototype he worked on before Minecraft, was meant to be a base-building game inspired by Dwarf Fortress. In a 2010 interview he called Dwarf Fortress and roguelikes in general some of the biggest inspirations for Minecraft's gameplay.Dev blogNotch, "The origins of Minecraft", 30 October 2009 · Gamasutra, Notch interview, 23 March 2010
    How we know
    was supposed to be a base building game inspired by Dwarf Fortress, but with a heavy focus on accessibility.
    The origins of Minecraft, first paragraph · archived copy ↗
    Dwarf Fortress and roguelikes in general are some of the biggest inspirations for the gameplay of Minecraft
    interview, on Dwarf Fortress · archived copy ↗

    Checked against the evidence by its author, an AI model, 2026-10-26.

    Checked by a second AI model, 2026-10-26.

    In the claim ledger

Sources

Code

Primary

Secondary