Compact Machines führt seine eigene Kombination aus Multiblöcken und der in der Welt bekannten Handwerksmechanik ein, die als Miniaturisierungs-Handwerk bekannt ist. Weitere Informationen zur Verwendung im Spiel siehe Miniaturisierungsfeldprojektor und einzelne Rezepte für Gegenstände. Dieser Artikel ist nicht als Tutorial für den Einstieg in die Verwendung von Compact Machines gedacht, sondern als Referenz für die Erstellung neuer Rezepte und die Bearbeitung vorhandener Rezepte unter Verwendung der Miniaturisierungs-Herstelltechnik. Jedes Rezept wird in einer eigenen Datei im JSON-Format mit der Erweiterung .json
im Ordner /config/compactmachines3/recipes
unter deinem modpack-Instanzordner gespeichert.
Grundlegender Datenformat
Objekt
Die gesamte Rezept-Struktur in jede Datei beginnt mit {
und endet mit }
, welches einen Paar von Trennzeichen-Behälter vervollständigt. Leerzeichen und Zeilenumbrüche, die außerhalb der String-Werte sind, werden ignoriert.
Schlüsselwert
Die primären Datenelemente in den Rezepten sind eine Reihe von Schlüsselwertpaaren mit fünf grundlegenden Subtypen. Alle Schlüsselnamen müssen Zeichenketten sein, die in doppelte Anführungszeichen "Key"
eingeschlossen sind, gefolgt von einem Doppelpunkt :
. Das Komma ,
wird als Trennzeichen zwischen Einträgen in Listen von Schlüsselwerten und Arrayelementen verwendet.
Der entsprechende Wert des Schlüssels folgt dem Doppelpunkt und kann einer der folgenden Typen sein:
- Zeichenfolge:
"value"
wobeivalue
Sonderzeichen enthalten kann, indem vor dem Zeichen ein Backslash (\
) eingefügt wird (einschließlich eines Backslash oder doppelten Anführungszeichens). - boolean: einer von:
true
false
- number: "Dezimalwert"
- object: (siehe voherige Sektion)
- array:
[Wert]
wobeivalue
von jedem anderen Typ sein kann, aber in den häufigsten Fällen entweder ein anderes Array (für mehrdimensionale Arrays) oder eine Liste von einem oder mehreren Strings, die durch Kommata getrennt sind.
Schlüssel-Daten
Name | Typ/Untertyp | Standartwert (leer, falls erforderlich) |
Beschreibung | beispielrezepte |
---|---|---|---|---|
name | string | Rezept-Identifizierer | "name": "compactmachines3:zombieegg" | |
target-item | string | Ergebnis Element-ID. Manchmal als "target-block" angegeben. | "target-item": "minecraft:spawn_egg" | |
target-count | nummer | 1 | Anzahl der produzierten Gegenstände/Blöcke | "target-count": 1 |
target-meta | number | 0 | Metadatenwert für das Rezepturergebnis (manchmal auch als Schadenswert bezeichnet), der zur Unterscheidung zwischen diskreten Elementen mit demselben Identifikator verwendet wird. | "target-meta": 0 |
target-nbt | string | "" | NBT-Tags, die auf das Ergebnis des Herstellungsrezepts anzuwenden sind.
| |
symmetrical | boolean | false | Gibt an, ob Rezepte beim Konstruieren in horizontaler Richtung gespiegelt werden dürfen. | "symmetrical": true |
catalyst | string | Der zu Beginn des Herstellungsprozesses in das Miniaturisierungsfeld eingeworfene Gegenstand. Zusätzliche Felder, die die Details des Gegenstandes näher spezifizieren, können verwendet werden. | "catalyst": "minecraft:spider_eye" | |
catalyst-meta | number | 0 | Metadatenwert für das in das Miniaturisierungsfeld zu werfende Katalysatorelement (manchmal auch als Schadenswert bezeichnet), der häufig zur Unterscheidung zwischen diskreten Elementen mit derselben Kennung verwendet wird. | "catalyst-meta": 0 |
catalyst-nbt | string | "" | NBT-Tags, die für den Katalysatorgegenstand erforderlich sind. Wenn nicht angegeben, werden alle auf dem Element angebrachten Tags ignoriert. Übliche Verwendungen hierfür wären die Anforderung, dass das Element einen bestimmten benutzerdefinierten Namen, Verzauberungs- oder Entitäts-Tag haben muss. | "catalyst-nbt": "{EntityTag:{id:\"minecraft:zombie\"}}" |
duration | number | unbekannter Standardwert | Anzahl der Ticks für die Miniaturisierungsanimation und den Herstellungsprozess, die ausgeführt werden müssen, bevor die Animation abgeschlossen ist. | "duration": 300 |
Spezielle Formatobjekte
Spezial-Schlüssel | Unterschlüssel | Typ | Beschreibung | Beispiel |
---|---|---|---|---|
input-types | Zusammengesetztes Objekt | Reihe von Objektschlüsseln, die die im Multiblock-Teil des Rezeptes verwendeten Blöcke identifizieren. | "input-types": { "a": { "id": "thermaldynamics:duct_0", "meta": 0 }, "b": { "id": "minecraft:chest", "meta": 0, "ignore-meta": true } } | |
input-types | id | string | Block Id | "a": { "id": "thermaldynamics:duct_0" } |
input-types | meta | Number standart: 0 |
Metadaten/Schadenswert zur Identifizierung des Blockuntertyps. | "meta": 0 |
input-types | ignore-meta | Boolean standart: false |
Legt fest, ob Metadaten/Schadenswert in diesem Block ignoriert werden sollen. | "ignore-meta": true |
input-types | ignore-nbt | Boolean standart: false |
Legt fest, ob NBT-Tags in diesem Block ignoriert werden sollen. | "ignore-nbt": true |
input-nbt | Zusammengesetztes Objekt | Liste der NBT-Tags (als Subtyp verwendet), die für Blöcke in der Rezeptur erforderlich sind. Wird normalerweise mit einem Buchstaben, Doppelpunkt oder einer Buchstabenfolge für den Schlüsselnamen angegeben, wenn er für das Rezept verwendet wird. Die Schlüsselnamen werden im Wert shape verwendet, um die Kombination von input-types und input-nbt darzustellen. |
"input-nbt": { "a:A": { "nbt": "{\"cm3_extra:ThermalDynamicsGrid\":{Connections:[2,0,0,2,0,2]},id:\"thermaldynamics:duct_energy_basic\"}" }, "a:B": { "nbt": "{\"cm3_extra:ThermalDynamicsGrid\":{Connections:[0,0,2,2,0,0]},id:\"thermaldynamics:duct_energy_basic\"}" }, "a:C": { "nbt": "{\"cm3_extra:ThermalDynamicsGrid\":{Connections:[2,0,2,0,0,2]},id:\"thermaldynamics:duct_energy_basic\"}" }, "a:D": { "nbt": "{\"cm3_extra:ThermalDynamicsGrid\":{Connections:[2,2,0,0,0,0]},id:\"thermaldynamics:duct_energy_basic\"}" }, "a:E": { "nbt": "{\"cm3_extra:ThermalDynamicsGrid\":{Connections:[0,2,0,2,0,2]},id:\"thermaldynamics:duct_energy_basic\"}" }, "a:F": { "nbt": "{\"cm3_extra:ThermalDynamicsGrid\":{Connections:[0,2,2,0,0,2]},id:\"thermaldynamics:duct_energy_basic\"}" }, "a:G": { "nbt": "{\"cm3_extra:ThermalDynamicsGrid\":{Connections:[0,0,0,0,2,2]},id:\"thermaldynamics:duct_energy_basic\"}" }, "b:A": { "nbt": "{Items:[],id:\"minecraft:chest\",Lock:\"\"}" }, "a:H": { "nbt": "{\"cm3_extra:ThermalDynamicsGrid\":{Connections:[2,0,0,2,2,0]},id:\"thermaldynamics:duct_energy_basic\"}" }, "a:I": { "nbt": "{\"cm3_extra:ThermalDynamicsGrid\":{Connections:[2,0,2,0,2,0]},id:\"thermaldynamics:duct_energy_basic\"}" }, "a:J": { "nbt": "{\"cm3_extra:ThermalDynamicsGrid\":{Connections:[0,2,0,2,2,0]},id:\"thermaldynamics:duct_energy_basic\"}" }, "a:K": { "nbt": "{\"cm3_extra:ThermalDynamicsGrid\":{Connections:[0,2,2,0,2,0]},id:\"thermaldynamics:duct_energy_basic\"}" } } | |
shape | Array-String Dimension 3 | Array-Struktur:
Array-Elementwerte:
|
"shape": [ [ [ "a:A", "a:G", "a:H" ], [ "a:B", "_", "a:B" ], [ "a:C", "a:G", "a:I" ] ], [ [ "a:D", "_", "a:D" ], [ "_", "b:A", "_" ], [ "a:D", "_", "a:D" ] ], [ [ "a:E", "a:G", "a:J" ], [ "a:B", "_", "a:B" ], [ "a:F", "a:G", "a:K" ] ] ] |
|