1 -- mods/default/crafting.lua
3 minetest.register_craft({
4 output = 'default:wood 4',
10 minetest.register_craft({
11 output = 'default:junglewood 4',
13 {'default:jungletree'},
17 minetest.register_craft({
18 output = 'default:pine_wood 4',
20 {'default:pine_tree'},
24 minetest.register_craft({
25 output = 'default:acacia_wood 4',
27 {'default:acacia_tree'},
31 minetest.register_craft({
32 output = 'default:aspen_wood 4',
34 {'default:aspen_tree'},
38 minetest.register_craft({
39 output = 'default:wood',
41 {'default:bush_stem'},
45 minetest.register_craft({
46 output = 'default:acacia_wood',
48 {'default:acacia_bush_stem'},
52 minetest.register_craft({
53 output = "default:pine_wood",
55 {"default:pine_bush_stem"},
59 minetest.register_craft({
60 output = 'default:stick 4',
66 minetest.register_craft({
67 output = 'default:sign_wall_steel 3',
69 {'default:steel_ingot', 'default:steel_ingot', 'default:steel_ingot'},
70 {'default:steel_ingot', 'default:steel_ingot', 'default:steel_ingot'},
71 {'', 'group:stick', ''},
75 minetest.register_craft({
76 output = 'default:sign_wall_wood 3',
78 {'group:wood', 'group:wood', 'group:wood'},
79 {'group:wood', 'group:wood', 'group:wood'},
80 {'', 'group:stick', ''},
84 minetest.register_craft({
85 output = 'default:torch 4',
87 {'default:coal_lump'},
92 minetest.register_craft({
93 output = 'default:pick_wood',
95 {'group:wood', 'group:wood', 'group:wood'},
96 {'', 'group:stick', ''},
97 {'', 'group:stick', ''},
101 minetest.register_craft({
102 output = 'default:pick_stone',
104 {'group:stone', 'group:stone', 'group:stone'},
105 {'', 'group:stick', ''},
106 {'', 'group:stick', ''},
110 minetest.register_craft({
111 output = 'default:pick_steel',
113 {'default:steel_ingot', 'default:steel_ingot', 'default:steel_ingot'},
114 {'', 'group:stick', ''},
115 {'', 'group:stick', ''},
119 minetest.register_craft({
120 output = 'default:pick_bronze',
122 {'default:bronze_ingot', 'default:bronze_ingot', 'default:bronze_ingot'},
123 {'', 'group:stick', ''},
124 {'', 'group:stick', ''},
128 minetest.register_craft({
129 output = 'default:pick_mese',
131 {'default:mese_crystal', 'default:mese_crystal', 'default:mese_crystal'},
132 {'', 'group:stick', ''},
133 {'', 'group:stick', ''},
137 minetest.register_craft({
138 output = 'default:pick_diamond',
140 {'default:diamond', 'default:diamond', 'default:diamond'},
141 {'', 'group:stick', ''},
142 {'', 'group:stick', ''},
146 minetest.register_craft({
147 output = 'default:shovel_wood',
155 minetest.register_craft({
156 output = 'default:shovel_stone',
164 minetest.register_craft({
165 output = 'default:shovel_steel',
167 {'default:steel_ingot'},
173 minetest.register_craft({
174 output = 'default:shovel_bronze',
176 {'default:bronze_ingot'},
182 minetest.register_craft({
183 output = 'default:shovel_mese',
185 {'default:mese_crystal'},
191 minetest.register_craft({
192 output = 'default:shovel_diamond',
201 -- Recipes face left to match appearence in textures and inventory
203 minetest.register_craft({
204 output = 'default:axe_wood',
206 {'group:wood', 'group:wood'},
207 {'group:wood', 'group:stick'},
212 minetest.register_craft({
213 output = 'default:axe_stone',
215 {'group:stone', 'group:stone'},
216 {'group:stone', 'group:stick'},
221 minetest.register_craft({
222 output = 'default:axe_steel',
224 {'default:steel_ingot', 'default:steel_ingot'},
225 {'default:steel_ingot', 'group:stick'},
230 minetest.register_craft({
231 output = 'default:axe_bronze',
233 {'default:bronze_ingot', 'default:bronze_ingot'},
234 {'default:bronze_ingot', 'group:stick'},
239 minetest.register_craft({
240 output = 'default:axe_mese',
242 {'default:mese_crystal', 'default:mese_crystal'},
243 {'default:mese_crystal', 'group:stick'},
248 minetest.register_craft({
249 output = 'default:axe_diamond',
251 {'default:diamond', 'default:diamond'},
252 {'default:diamond', 'group:stick'},
257 minetest.register_craft({
258 output = 'default:sword_wood',
266 minetest.register_craft({
267 output = 'default:sword_stone',
275 minetest.register_craft({
276 output = 'default:sword_steel',
278 {'default:steel_ingot'},
279 {'default:steel_ingot'},
284 minetest.register_craft({
285 output = 'default:sword_bronze',
287 {'default:bronze_ingot'},
288 {'default:bronze_ingot'},
293 minetest.register_craft({
294 output = 'default:sword_mese',
296 {'default:mese_crystal'},
297 {'default:mese_crystal'},
302 minetest.register_craft({
303 output = 'default:sword_diamond',
311 minetest.register_craft({
312 output = 'default:skeleton_key',
314 {'default:gold_ingot'},
318 minetest.register_craft({
319 output = 'default:chest',
321 {'group:wood', 'group:wood', 'group:wood'},
322 {'group:wood', '', 'group:wood'},
323 {'group:wood', 'group:wood', 'group:wood'},
327 minetest.register_craft({
328 output = 'default:chest_locked',
330 {'group:wood', 'group:wood', 'group:wood'},
331 {'group:wood', 'default:steel_ingot', 'group:wood'},
332 {'group:wood', 'group:wood', 'group:wood'},
336 minetest.register_craft( {
338 output = "default:chest_locked",
339 recipe = {"default:chest", "default:steel_ingot"},
342 minetest.register_craft({
343 output = 'default:furnace',
345 {'group:stone', 'group:stone', 'group:stone'},
346 {'group:stone', '', 'group:stone'},
347 {'group:stone', 'group:stone', 'group:stone'},
351 minetest.register_craft({
352 output = 'default:coalblock',
354 {'default:coal_lump', 'default:coal_lump', 'default:coal_lump'},
355 {'default:coal_lump', 'default:coal_lump', 'default:coal_lump'},
356 {'default:coal_lump', 'default:coal_lump', 'default:coal_lump'},
360 minetest.register_craft({
361 output = 'default:coal_lump 9',
363 {'default:coalblock'},
367 minetest.register_craft({
368 output = 'default:steelblock',
370 {'default:steel_ingot', 'default:steel_ingot', 'default:steel_ingot'},
371 {'default:steel_ingot', 'default:steel_ingot', 'default:steel_ingot'},
372 {'default:steel_ingot', 'default:steel_ingot', 'default:steel_ingot'},
376 minetest.register_craft({
377 output = 'default:steel_ingot 9',
379 {'default:steelblock'},
383 minetest.register_craft({
384 output = 'default:copperblock',
386 {'default:copper_ingot', 'default:copper_ingot', 'default:copper_ingot'},
387 {'default:copper_ingot', 'default:copper_ingot', 'default:copper_ingot'},
388 {'default:copper_ingot', 'default:copper_ingot', 'default:copper_ingot'},
392 minetest.register_craft({
393 output = 'default:copper_ingot 9',
395 {'default:copperblock'},
399 minetest.register_craft({
400 output = "default:tinblock",
402 {"default:tin_ingot", "default:tin_ingot", "default:tin_ingot"},
403 {"default:tin_ingot", "default:tin_ingot", "default:tin_ingot"},
404 {"default:tin_ingot", "default:tin_ingot", "default:tin_ingot"},
408 minetest.register_craft({
409 output = "default:tin_ingot 9",
411 {"default:tinblock"},
415 minetest.register_craft({
416 output = "default:bronze_ingot 9",
418 {"default:copper_ingot", "default:copper_ingot", "default:copper_ingot"},
419 {"default:copper_ingot", "default:tin_ingot", "default:copper_ingot"},
420 {"default:copper_ingot", "default:copper_ingot", "default:copper_ingot"},
424 minetest.register_craft({
425 output = 'default:bronzeblock',
427 {'default:bronze_ingot', 'default:bronze_ingot', 'default:bronze_ingot'},
428 {'default:bronze_ingot', 'default:bronze_ingot', 'default:bronze_ingot'},
429 {'default:bronze_ingot', 'default:bronze_ingot', 'default:bronze_ingot'},
433 minetest.register_craft({
434 output = 'default:bronze_ingot 9',
436 {'default:bronzeblock'},
440 minetest.register_craft({
441 output = 'default:goldblock',
443 {'default:gold_ingot', 'default:gold_ingot', 'default:gold_ingot'},
444 {'default:gold_ingot', 'default:gold_ingot', 'default:gold_ingot'},
445 {'default:gold_ingot', 'default:gold_ingot', 'default:gold_ingot'},
449 minetest.register_craft({
450 output = 'default:gold_ingot 9',
452 {'default:goldblock'},
456 minetest.register_craft({
457 output = 'default:diamondblock',
459 {'default:diamond', 'default:diamond', 'default:diamond'},
460 {'default:diamond', 'default:diamond', 'default:diamond'},
461 {'default:diamond', 'default:diamond', 'default:diamond'},
465 minetest.register_craft({
466 output = 'default:diamond 9',
468 {'default:diamondblock'},
472 minetest.register_craft({
473 output = "default:sandstone",
475 {"default:sand", "default:sand"},
476 {"default:sand", "default:sand"},
480 minetest.register_craft({
481 output = "default:sand 4",
483 {"default:sandstone"},
487 minetest.register_craft({
488 output = "default:sandstonebrick 4",
490 {"default:sandstone", "default:sandstone"},
491 {"default:sandstone", "default:sandstone"},
495 minetest.register_craft({
496 output = "default:sandstone_block 9",
498 {"default:sandstone", "default:sandstone", "default:sandstone"},
499 {"default:sandstone", "default:sandstone", "default:sandstone"},
500 {"default:sandstone", "default:sandstone", "default:sandstone"},
504 minetest.register_craft({
505 output = "default:desert_sandstone",
507 {"default:desert_sand", "default:desert_sand"},
508 {"default:desert_sand", "default:desert_sand"},
512 minetest.register_craft({
513 output = "default:desert_sand 4",
515 {"default:desert_sandstone"},
519 minetest.register_craft({
520 output = "default:desert_sandstone_brick 4",
522 {"default:desert_sandstone", "default:desert_sandstone"},
523 {"default:desert_sandstone", "default:desert_sandstone"},
527 minetest.register_craft({
528 output = "default:desert_sandstone_block 9",
530 {"default:desert_sandstone", "default:desert_sandstone", "default:desert_sandstone"},
531 {"default:desert_sandstone", "default:desert_sandstone", "default:desert_sandstone"},
532 {"default:desert_sandstone", "default:desert_sandstone", "default:desert_sandstone"},
536 minetest.register_craft({
537 output = "default:silver_sandstone",
539 {"default:silver_sand", "default:silver_sand"},
540 {"default:silver_sand", "default:silver_sand"},
544 minetest.register_craft({
545 output = "default:silver_sand 4",
547 {"default:silver_sandstone"},
551 minetest.register_craft({
552 output = "default:silver_sandstone_brick 4",
554 {"default:silver_sandstone", "default:silver_sandstone"},
555 {"default:silver_sandstone", "default:silver_sandstone"},
559 minetest.register_craft({
560 output = "default:silver_sandstone_block 9",
562 {"default:silver_sandstone", "default:silver_sandstone", "default:silver_sandstone"},
563 {"default:silver_sandstone", "default:silver_sandstone", "default:silver_sandstone"},
564 {"default:silver_sandstone", "default:silver_sandstone", "default:silver_sandstone"},
568 minetest.register_craft({
569 output = 'default:clay',
571 {'default:clay_lump', 'default:clay_lump'},
572 {'default:clay_lump', 'default:clay_lump'},
576 minetest.register_craft({
577 output = 'default:clay_lump 4',
583 minetest.register_craft({
584 output = 'default:brick',
586 {'default:clay_brick', 'default:clay_brick'},
587 {'default:clay_brick', 'default:clay_brick'},
591 minetest.register_craft({
592 output = 'default:clay_brick 4',
598 minetest.register_craft({
599 output = 'default:paper',
601 {'default:papyrus', 'default:papyrus', 'default:papyrus'},
605 minetest.register_craft({
606 output = 'default:book',
614 minetest.register_craft({
615 output = 'default:bookshelf',
617 {'group:wood', 'group:wood', 'group:wood'},
618 {'default:book', 'default:book', 'default:book'},
619 {'group:wood', 'group:wood', 'group:wood'},
623 minetest.register_craft({
624 output = "default:ladder_wood 5",
626 {"group:stick", "", "group:stick"},
627 {"group:stick", "group:stick", "group:stick"},
628 {"group:stick", "", "group:stick"},
632 minetest.register_craft({
633 output = 'default:ladder_steel 15',
635 {'default:steel_ingot', '', 'default:steel_ingot'},
636 {'default:steel_ingot', 'default:steel_ingot', 'default:steel_ingot'},
637 {'default:steel_ingot', '', 'default:steel_ingot'},
641 minetest.register_craft({
642 output = 'default:mese',
644 {'default:mese_crystal', 'default:mese_crystal', 'default:mese_crystal'},
645 {'default:mese_crystal', 'default:mese_crystal', 'default:mese_crystal'},
646 {'default:mese_crystal', 'default:mese_crystal', 'default:mese_crystal'},
650 minetest.register_craft({
651 output = 'default:mese_crystal 9',
657 minetest.register_craft({
658 output = 'default:mese_crystal_fragment 9',
660 {'default:mese_crystal'},
664 minetest.register_craft({
665 output = "default:mese_crystal",
667 {"default:mese_crystal_fragment", "default:mese_crystal_fragment", "default:mese_crystal_fragment"},
668 {"default:mese_crystal_fragment", "default:mese_crystal_fragment", "default:mese_crystal_fragment"},
669 {"default:mese_crystal_fragment", "default:mese_crystal_fragment", "default:mese_crystal_fragment"},
673 minetest.register_craft({
674 output = 'default:meselamp',
677 {'default:mese_crystal'},
681 minetest.register_craft({
682 output = "default:mese_post_light 3",
684 {"", "default:glass", ""},
685 {"default:mese_crystal", "default:mese_crystal", "default:mese_crystal"},
686 {"", "group:wood", ""},
690 minetest.register_craft({
691 output = 'default:obsidian_shard 9',
697 minetest.register_craft({
698 output = 'default:obsidian',
700 {'default:obsidian_shard', 'default:obsidian_shard', 'default:obsidian_shard'},
701 {'default:obsidian_shard', 'default:obsidian_shard', 'default:obsidian_shard'},
702 {'default:obsidian_shard', 'default:obsidian_shard', 'default:obsidian_shard'},
706 minetest.register_craft({
707 output = 'default:obsidianbrick 4',
709 {'default:obsidian', 'default:obsidian'},
710 {'default:obsidian', 'default:obsidian'}
714 minetest.register_craft({
715 output = 'default:obsidian_block 9',
717 {'default:obsidian', 'default:obsidian', 'default:obsidian'},
718 {'default:obsidian', 'default:obsidian', 'default:obsidian'},
719 {'default:obsidian', 'default:obsidian', 'default:obsidian'},
723 minetest.register_craft({
724 output = 'default:stonebrick 4',
726 {'default:stone', 'default:stone'},
727 {'default:stone', 'default:stone'},
731 minetest.register_craft({
732 output = 'default:stone_block 9',
734 {'default:stone', 'default:stone', 'default:stone'},
735 {'default:stone', 'default:stone', 'default:stone'},
736 {'default:stone', 'default:stone', 'default:stone'},
740 minetest.register_craft({
741 output = 'default:desert_stonebrick 4',
743 {'default:desert_stone', 'default:desert_stone'},
744 {'default:desert_stone', 'default:desert_stone'},
748 minetest.register_craft({
749 output = 'default:desert_stone_block 9',
751 {'default:desert_stone', 'default:desert_stone', 'default:desert_stone'},
752 {'default:desert_stone', 'default:desert_stone', 'default:desert_stone'},
753 {'default:desert_stone', 'default:desert_stone', 'default:desert_stone'},
757 minetest.register_craft({
758 output = 'default:snowblock',
760 {'default:snow', 'default:snow', 'default:snow'},
761 {'default:snow', 'default:snow', 'default:snow'},
762 {'default:snow', 'default:snow', 'default:snow'},
766 minetest.register_craft({
767 output = 'default:snow 9',
769 {'default:snowblock'},
773 minetest.register_craft({
774 output = "default:emergent_jungle_sapling",
776 {"default:junglesapling", "default:junglesapling", "default:junglesapling"},
777 {"default:junglesapling", "default:junglesapling", "default:junglesapling"},
778 {"default:junglesapling", "default:junglesapling", "default:junglesapling"},
782 minetest.register_craft({
783 output = "default:large_cactus_seedling",
785 {"", "default:cactus", ""},
786 {"default:cactus", "default:cactus", "default:cactus"},
787 {"", "default:cactus", ""},
793 -- Crafting (tool repair)
796 minetest.register_craft({
798 additional_wear = -0.02,
806 minetest.register_craft({
808 output = "default:glass",
809 recipe = "group:sand",
812 minetest.register_craft({
814 output = "default:obsidian_glass",
815 recipe = "default:obsidian_shard",
818 minetest.register_craft({
820 output = "default:stone",
821 recipe = "default:cobble",
824 minetest.register_craft({
826 output = "default:stone",
827 recipe = "default:mossycobble",
830 minetest.register_craft({
832 output = "default:desert_stone",
833 recipe = "default:desert_cobble",
836 minetest.register_craft({
838 output = "default:steel_ingot",
839 recipe = "default:iron_lump",
842 minetest.register_craft({
844 output = "default:copper_ingot",
845 recipe = "default:copper_lump",
848 minetest.register_craft({
850 output = "default:tin_ingot",
851 recipe = "default:tin_lump",
854 minetest.register_craft({
856 output = "default:gold_ingot",
857 recipe = "default:gold_lump",
860 minetest.register_craft({
862 output = "default:clay_brick",
863 recipe = "default:clay_lump",
866 minetest.register_craft({
868 output = 'default:gold_ingot',
869 recipe = 'default:skeleton_key',
873 minetest.register_craft({
875 output = 'default:gold_ingot',
876 recipe = 'default:key',
885 -- Support use of group:tree, includes default:tree which has the same burn time
886 minetest.register_craft({
888 recipe = "group:tree",
892 -- Burn time for all woods are in order of wood density,
893 -- which is also the order of wood colour darkness:
894 -- aspen, pine, apple, acacia, jungle
896 minetest.register_craft({
898 recipe = "default:aspen_tree",
902 minetest.register_craft({
904 recipe = "default:pine_tree",
908 minetest.register_craft({
910 recipe = "default:acacia_tree",
914 minetest.register_craft({
916 recipe = "default:jungletree",
921 -- Support use of group:wood, includes default:wood which has the same burn time
922 minetest.register_craft({
924 recipe = "group:wood",
928 minetest.register_craft({
930 recipe = "default:aspen_wood",
934 minetest.register_craft({
936 recipe = "default:pine_wood",
940 minetest.register_craft({
942 recipe = "default:acacia_wood",
946 minetest.register_craft({
948 recipe = "default:junglewood",
953 -- Support use of group:sapling, includes default:sapling which has the same burn time
954 minetest.register_craft({
956 recipe = "group:sapling",
960 minetest.register_craft({
962 recipe = "default:bush_sapling",
966 minetest.register_craft({
968 recipe = "default:acacia_bush_sapling",
972 minetest.register_craft({
974 recipe = "default:pine_bush_sapling",
978 minetest.register_craft({
980 recipe = "default:aspen_sapling",
984 minetest.register_craft({
986 recipe = "default:pine_sapling",
990 minetest.register_craft({
992 recipe = "default:acacia_sapling",
996 minetest.register_craft({
998 recipe = "default:junglesapling",
1002 minetest.register_craft({
1004 recipe = "default:emergent_jungle_sapling",
1009 minetest.register_craft({
1011 recipe = "default:fence_aspen_wood",
1015 minetest.register_craft({
1017 recipe = "default:fence_pine_wood",
1021 minetest.register_craft({
1023 recipe = "default:fence_wood",
1027 minetest.register_craft({
1029 recipe = "default:fence_acacia_wood",
1033 minetest.register_craft({
1035 recipe = "default:fence_junglewood",
1040 minetest.register_craft({
1042 recipe = "default:fence_rail_aspen_wood",
1046 minetest.register_craft({
1048 recipe = "default:fence_rail_pine_wood",
1052 minetest.register_craft({
1054 recipe = "default:fence_rail_wood",
1058 minetest.register_craft({
1060 recipe = "default:fence_rail_acacia_wood",
1064 minetest.register_craft({
1066 recipe = "default:fence_rail_junglewood",
1071 minetest.register_craft({
1073 recipe = "default:bush_stem",
1077 minetest.register_craft({
1079 recipe = "default:acacia_bush_stem",
1083 minetest.register_craft({
1085 recipe = "default:pine_bush_stem",
1089 minetest.register_craft({
1091 recipe = "default:junglegrass",
1095 minetest.register_craft({
1097 recipe = "group:leaves",
1101 minetest.register_craft({
1103 recipe = "default:cactus",
1107 minetest.register_craft({
1109 recipe = "default:large_cactus_seedling",
1113 minetest.register_craft({
1115 recipe = "default:papyrus",
1119 minetest.register_craft({
1121 recipe = "default:bookshelf",
1125 minetest.register_craft({
1127 recipe = "default:ladder_wood",
1131 minetest.register_craft({
1133 recipe = "default:lava_source",
1137 minetest.register_craft({
1139 recipe = "default:torch",
1143 minetest.register_craft({
1145 recipe = "default:sign_wall_wood",
1149 minetest.register_craft({
1151 recipe = "default:chest",
1155 minetest.register_craft({
1157 recipe = "default:chest_locked",
1161 minetest.register_craft({
1163 recipe = "default:coal_lump",
1167 minetest.register_craft({
1169 recipe = "default:coalblock",
1173 minetest.register_craft({
1175 recipe = "default:grass_1",
1179 minetest.register_craft({
1181 recipe = "default:dry_grass_1",
1185 minetest.register_craft({
1187 recipe = "default:fern_1",
1191 minetest.register_craft({
1193 recipe = "default:marram_grass_1",
1197 minetest.register_craft({
1199 recipe = "default:paper",
1203 minetest.register_craft({
1205 recipe = "default:book",
1209 minetest.register_craft({
1211 recipe = "default:book_written",
1215 minetest.register_craft({
1217 recipe = "default:dry_shrub",
1221 minetest.register_craft({
1223 recipe = "group:stick",
1228 minetest.register_craft({
1230 recipe = "default:pick_wood",
1234 minetest.register_craft({
1236 recipe = "default:shovel_wood",
1240 minetest.register_craft({
1242 recipe = "default:axe_wood",
1246 minetest.register_craft({
1248 recipe = "default:sword_wood",