Was Items sind
Wir schauen uns an, was im Inventar liegen kann und wie Stapel funktionieren.
Ein bunter Pixel-Einstieg für Kinder von 10 bis 12 Jahren
Wer kennt Minecraft, Minetest oder Luanti schon ein bisschen?
Vier große Schritte für den Einstieg in Luanti mit Lua.
Wir schauen uns an, was im Inventar liegen kann und wie Stapel funktionieren.
Wir unterscheiden Block, Werkzeug und normales Inventar-Item.
Wir lesen kleine Codebeispiele und sehen, was das Spiel daraus macht.
Wir vergleichen Form-Rezepte, Misch-Rezepte und den Ofen.
Eine offene Blockwelt-Plattform, in der man spielen, bauen und eigene Ideen programmieren kann.
Luanti hieß früher Minetest. Heute ist es mehr als nur ein Spiel: eher ein Baukasten für Spiele.
Lua ist die Sprache, mit der Luanti-Mods arbeiten und dem Spiel neue Regeln geben.
-- Ein kurzer Zauberspruch fürs Spiel minetest.register_craftitem("mod:ding", { description = "Mein erstes Ding", inventory_image = "ding.png" })
Lua ist wie ein Zauberbuch fürs Spiel: Du schreibst hinein, was passieren soll.
Items kann man tragen, speichern und fallen lassen. Oft liegen sie als Stapel in einem Slot.
Ein Slot kann ein einzelnes Ding zeigen oder viele gleiche Dinge zusammen.
Node, Tool und Craftitem sehen ähnlich aus, haben aber verschiedene Aufgaben.
Kann platziert werden und baut die Spielwelt mit auf.
Hilft beim Abbauen, Graben oder Kämpfen und nutzt sich ab.
Ist meist Material, Zutat oder Sammelobjekt im Inventar.
Merksatz: Node = Welt, Tool = Funktion, Craftitem = normales Ding.
Nodes sind die Bausteine von Landschaften, Häusern und Höhlen.
Craftitems liegen meistens im Inventar und sind oft Material, Zutat oder Schatz.
Tools helfen bei Aufgaben, können Fähigkeiten haben und nutzen sich oft mit der Zeit ab.
Beispiel für Verschleiß: Das Werkzeug wird nach vielen Einsätzen schwächer.
Ein paar Zeilen Lua reichen, damit das Spiel einen neuen Block kennt.
minetest.register_node("zaubermod:glitzerblock", { description = "Glitzerblock", tiles = {"glitzerblock.png"}, groups = {cracky = 2} })
Das ist ein sehr guter erster Code: wenig Text, aber ein sichtbares Ergebnis im Inventar.
minetest.register_craftitem("zaubermod:sternstaub", { description = "Sternstaub", inventory_image = "sternstaub.png" })
Ein Tool hat nicht nur ein Bild, sondern auch Regeln dafür, wie es arbeitet.
minetest.register_tool("zaubermod:kristallpicke", { description = "Kristallpicke", inventory_image = "kristallpicke.png", tool_capabilities = { groupcaps = { cracky = { times = {[1] = 2.5, [2] = 1.2, [3] = 0.6}, uses = 20, maxlevel = 2 } } } })
groupcaps sagt, für welche Gruppen das Werkzeug gut ist.
uses = 20 bedeutet: ungefähr 20 gute Einsätze.
Hier ist die Form im Gitter wichtig. So baut man zum Beispiel eine Pickaxe.
minetest.register_craft({ output = "zaubermod:kristallpicke", recipe = { {"zaubermod:sternstaub", "zaubermod:sternstaub", "zaubermod:sternstaub"}, {"", "default:stick", ""}, {"", "default:stick", ""} } })
Auch kleine Rezepte können shaped sein. Vier gleiche Zutaten ergeben hier einen Block.
minetest.register_craft({ output = "zaubermod:glitzerblock", recipe = { {"zaubermod:sternstaub", "zaubermod:sternstaub"}, {"zaubermod:sternstaub", "zaubermod:sternstaub"} } })
Hier ist die Reihenfolge egal. Wichtig sind nur die Zutaten.
minetest.register_craft({ type = "shapeless", output = "zaubermod:funkelpulver 2", recipe = { "zaubermod:roh_kristall", "zaubermod:sternstaub" } })
cooking verändert etwas im Ofen. fuel liefert Brennzeit.
minetest.register_craft({ type = "cooking", output = "zaubermod:warmer_kristall", recipe = "zaubermod:roh_kristall", cooktime = 4 })
minetest.register_craft({ type = "fuel", recipe = "zaubermod:zauberholz", burntime = 8 })
Gruppen sind Kategorien für Nodes, Items und Tools. Sie helfen dem Spiel beim Sortieren und Entscheiden.
Holz-Sachen gehören zusammen und können in Rezepten gemeinsam benutzt werden.
Steinige Blöcke, für die gute Spitzhacken gedacht sind.
Holz und Bäume, die eher mit einer Axt bearbeitet werden.
Erde oder Sand, die leicht zerbröseln.
Sternstaub wird zum Glitzerblock und daraus am Ende eine Kristallpicke.
Craftitemregister_craftitem
Noderegister_node
Toolregister_tool
Beim Programmieren passieren Fehler ganz normal. Wichtig ist, sie ruhig nacheinander zu prüfen.
Dann sieht man oft kein richtiges Bild im Inventar oder auf dem Block.
Schon ein kleines Zeichen kann den ganzen Code stoppen.
Immer prüfen: Stimmt modname:itemname wirklich genau?
Vielleicht ist das Rezept falsch gebaut oder das Ergebnis heißt anders.
Immer nur eine Sache ändern und dann testen.
Wer kann die wichtigsten Begriffe schon erklären?
Ein Begriff aus der Welt der Blöcke.
Ein normales Inventar-Item oder doch ein Block?
Ist die Reihenfolge wichtig oder egal?
Was hilft dem Spiel beim Sortieren von Blöcken und Werkzeugen?
Mit welcher Sprache schreiben wir Luanti-Mods?
Ein Vorschlag für eine kindgerechte Stunde mit viel Gespräch, wenig Druck und sichtbaren Beispielen.
Fragen: Wer kennt Blockspiele? Was ist ein Inventar? Was ist ein Rezept?
Begriffe ruhig aufbauen und Unterschiede gemeinsam sammeln.
Node, Craftitem und Tool nebeneinander anschauen.
Shaped, shapeless, cooking und fuel anschaulich trennen.
Vom Sternstaub zur Kristallpicke als roter Faden.
Mit einfachen Fragen den Wortschatz festigen.