Przejdź do głównej zawartości

Referencja craftingu

Każdy przepis zarejestrowany w crafting.rs, z dokładnymi wzorami z kodu źródłowego. Silnik wspiera przepisy kształtowe (stałe wzory z dopasowaniem offsetu) i przepisy bezkształtowe (dopasowanie multizbioru).

Legenda: P = Deski · S = Patyk · L = pień (wczesne drewno) · ST = Kamień · I = Sztabka żelaza · F = Krzemień

Powierzchnie

PowierzchniaSiatkaUwagi
Crafting gracza2×2Zawsze dostępny przez E
NVCrafter3×3Stacja stawiana w świecie; stan trwa w zapisach

Przepisy bezkształtowe

WynikIlośćWejście
Deski×41 pień (dowolne drewno EARLY_GAME_LOGS)
Krzemienny kilof×1Krzemień + Patyk

Przepisy kształtowe

Obróbka drewna

Patyki ×4 — siatka 1×2

[P]
[P]

NVCrafter ×1 — siatka 3×3 (pierścień desek, pień w środku)

[P][P][P]
[P][L][P]
[P][P][P]

Drewniane narzędzia (×1 każde)

Drewniany kilof — 3×3

[P][P][P]
[ ][S][ ]
[ ][S][ ]

Drewniana siekiera — 2×3

[P][P]
[P][S]
[ ][S]

Drewniana łopata — 1×3

[P]
[S]
[S]

Drewniana motyka — 2×3

[P][P]
[ ][S]
[ ][S]

Pochodnie ×4 — siatka 1×2 (patyk nad pniem)

[S]
[L]

Przechowywanie i meble

Skrzynia ×1 — 3×3 (pierścień desek, pusty środek)

[P][P][P]
[P][ ][P]
[P][P][P]

Drzwi ×3 — 2×3 (6 desek)

[P][P]
[P][P]
[P][P]

Zapadnia ×2 — 3×2 (6 desek)

[P][P][P]
[P][P][P]

Drabina ×3 — 3×3 (kolumny patyk/deska)

[S][P][S]
[S][P][S]
[S][P][S]

Płot ×3 — 3×2

[S][P][S]
[S][P][S]

Furtka ×1 — 3×2

[P][S][P]
[P][S][P]

Ulepszenie stołu warsztatowego ×1 — 3×3 (krzyż z pni, deski w rogach)

[P][L][P]
[L][L][L]
[P][L][P]

Progresja kilofów

Kamienny kilof ×1 — 3×3

[ST][ST][ST]
[ ][S][ ]
[ ][S][ ]

Żelazny kilof ×1 — 3×3

[I][I][I]
[ ][S][ ]
[ ][S][ ]

Kilofy diamentowe i z netherite istnieją jako typy bloków; ich przepisy ulepszeń to kolejny poziom tego samego kształtu głowy.

Logika dopasowania

  • Kształtowe: shaped_recipe_matches(grid, recipe) — wzorzec dopasowywany z obsługą offsetu względem siatki.
  • Bezkształtowe: shapeless_recipe_matches(grid, recipe) — dopasowanie multizbioru (kolejność nie ma znaczenia).
  • RecipeRegistry::match_grid() zwraca pierwszy pasujący przepis kształtowy, potem wraca do bezkształtowych.
  • Wynik to ItemStack (stack_of(block, count)).

Stan NVCrafter

NVCrafterState jest przechowywany per blok w świecie (world/mod.rs) i trwa w zapisach. Gdy GUI się zamyka, wejścia wracają do inventory gracza (lub spadają do świata, gdy brak miejsca). Rozbicie NVCrafter wypłukuje jego zawartość do zrzutów świata.

Przepisy JSON

assets.rs wczytuje i waliduje również przepisy z JSON, z narzędziami do parsowania przepisów kształtowych/bezkształtowych obok ładowania modeli bloków.