Das offizielle Minecraft Wiki twittert hier: Wiki-Twitter  –  Chatte im Wiki-Discord  –  Noch keinen Server gefunden? Es gibt einen Wiki-Server

Diskussion:Befehl/testfor

Aus Minecraft Wiki
Wechseln zu: Navigation, Suche

/testfor frage[Bearbeiten]

Hallo,ich hab mir ein Trampolin aus Schleim und Redstone Blöcken gebaut ,jedoch habe ich ein Problem : da ein Spieler nach drei-vier sprüngen auf meinem Teampolin stirbt ,wollte ich das jeder Spieler im Umkreis von 9 Blöcken ,der im Spielmodus Survival ist den Effekt Sprunkraft bekommt,leider funktioniert das mit folgendem Befehl nicht : /testfor @p[r=9] {playerGameType=0} ,leider kommt dann nur kann string playerGameType=0 nicht analysieren wie muss ich das mit den {} und [] angeben?--77.8.49.41 12:00, 20. Sep. 2014 (UTC)

Versuchs mal mit dem Befehl /effect @a[r=5,m=0] jump_boost 10 1 (Gibt jedem Spieler im Survivalmodus, der in höchstens 5m Abstand zum Befehlsblock steht, den Effekt "Sprungkraft I" für 10 Sekunden) | violine1101(Diskussion) 12:13, 20. Sep. 2014 (UTC) Buch und Feder.png
klappt leider immer noch nicht ,es erscheint bei den befehlsblöcken nur: The Entity UUID provided is in an invalid format--77.8.128.208 13:37, 20. Sep. 2014 (UTC)
Bei mir funktioniert es ohne Probleme. Versichere dich, dass du den Befehl korrekt abgeschrieben oder kopiert hast. | violine1101(Diskussion) 14:01, 20. Sep. 2014 (UTC)
Die Meldung The Entity UUID provided is in an invalid format kommt immer dann, wenn niemand gefunden wird. Das kannst du testen, indem du die Einschränkungen r=5 und/oder m=0 mal weglässt. -- Sumpfhütte 14:05, 20. Sep. 2014 (UTC)
Funktioniert jetzt ,danke :)--77.8.128.208 14:23, 20. Sep. 2014 (UTC)

Minecraft Version abfragen[Bearbeiten]

Ich hab mitbekommen, dass man abfragen kann welche Minecraft Version man gerade spielt. Aber weiss jemand wie das geht ? Nethonos (Diskussion) 11:43, 24. Sep. 2015 (UTC)

Man kann es so regeln, dass ein Befehlsblock testet, ob ein zuvor platzierter Block (z.B. ein Endsteinziegel) Luft ist. In diesem Fall ist die Version auf jeden Fall niedriger als 1.9 und man kann eine Warnung ausgeben. | violine1101 (Diskussion) 14:59, 24. Sep. 2015 (UTC)
@Violine1101: Danke für die Idee. Ich hab jetzt heraus gefunden wie man es direkt abfragt: Befehl /testfor @p {DataVersion:132} für Version 15w39c. Ich hab die Lösung auf dieser Seite gefunden. Nethonos (Diskussion) 17:34, 24. Sep. 2015 (UTC)

Bogenschuss-Abfrage[Bearbeiten]

Hallo,
ich weiß nicht in welcher Diskussion ich das hier fragen soll. Ich mach es mal hier (direkter Weg!?)... Gibt es eine Abfrage mit NBT-Data, ob ein Spieler den Bogen spannt?

Ich weiß (steht zwar in den Beispielen, aber... hehe), dass man abfragen kann, ob ein Spieler etwas Bestimmtes im Inventar hat, aber bis jetzt (noch) nicht, ob ein Spieler den Bogen spannt (Ich bräuchte diese Info, dass zu gegebenem Anlass ein Pfeil ins Inventar des Spielers gegeben wird, und wenn dies dann nicht mehr der Fall ist, dass die Munition wieder entfernt wird → Komplizierte Schaltung, beschreibe ich evtl. noch in einer Unterseite meines UserWikis und gebe diese dann nach Genehmigung auch frei). DeBedenHasenD ~ UW 15:23, 22. Nov. 2015 (UTC)

Ich fürchte, dass das Spannen alleine nicht abgefragt werden kann. Aber es gibt ja auch die Verzauberung "Unendlichkeit" die einen mit nur einen Pfeil, endlos viele Pfeile schießen lässt. Zudem, selbst wenn es gemessen werden könnte, kann man einen Bogen nur spannen, wenn man mindestens einen Pfeil im Inventar besitzt. Nethonos (Diskussion) 15:09, 4. Dez. 2015 (UTC)

Koordinaten abfragen[Bearbeiten]

Könnte mir jemand den Befehl nennen, mit dem man testen kann, ob der Spieler auf einer bestimmten Koordinate (welche man dann in den Befehlsblock eingaben muss) ist? Ich habe es mit {Pos:[x.x,y.y,z.z]} versucht, aber es hat nicht funktioniert. Am besten wäre es, wenn nur die ungefähre Position des Spielers abgefragt würde :-) -- BlazeFace.png Yaouoay (Diskussion) 10:14, 1. Feb. 2016 (UTC)

Lies dir doch mal Befehl#Ziel-Auswahl durch, da steht einiges drin, was dich interessieren könnte. | violine1101 (Diskussion) 11:07, 1. Feb. 2016 (UTC)
VIELEN DANK; ich glaube, das hat mir sehr weitergeholfen! :-) -- BlazeFace.png Yaouoay (Diskussion) 11:17, 1. Feb. 2016 (UTC)
Es hat geholfen, Danke! :-) -- BlazeFace.png Yaouoay (Diskussion) 15:44, 1. Feb. 2016 (UTC)

Meta-Data abfragen?[Bearbeiten]

Hallo, ich würde gerne mit einem testfor-Befehl abfragen ob ein Spieler in seinem Inventar einen Stein hat, der beispielsweise die Meta-Data 1 hat. Weiß jemand wie das geht, denn mit dem Befehl /testfor @p {Inventory:[{id:"minecraft:stone",Damage:1}]} will es nicht funktionieren. Auf den Seiten Gegenstandsdaten sowie Gegenstandsensor sind keine Beispiele mit solchen Vorhaben beschrieben, aber seht selbst. Nethonos (Diskussion) 16:14, 1. Feb. 2016 (UTC)

Ich habs endlich herausgefunden: Befehl /testfor @p {Inventory:[{id:"minecraft:stone",Damage:1s}]} Es muss ein s (für String) dahinter. Nethonos (Diskussion) 16:29, 1. Feb. 2016 (UTC)
's' steht für 'short', nicht für 'string', wenn ich mich richtig erinnere. Die 'Damage' ist ja eine Zahl, kein Wort. | violine1101 (Diskussion) 19:56, 1. Feb. 2016 (UTC)
Achso, dann hab ich das verwechselt. Jetzt habe ich aber ein Problem mit dem Spawnei von Pferden: Befehl /testfor @p {Inventory:[{id:"minecraft:spawn_egg",Damage:100s}]}. Weist du vielleicht was daran falsch ist? Ich halte ein Pferde-Spawnei in der Hand und der Befehlsblock löst nicht durch einen Komparator aus. Nethonos (Diskussion) 20:13, 1. Feb. 2016 (UTC)
In der 1.8 funktioniert es so wie von dir beschrieben. In der 1.9 wird "Damage" nicht mehr verwendet, stattdessen sehe ich im NBT-Editor ein "EntityTag". Ob das bis zur Veröffentlichung so bleibt, ist ungewiss: Befehl /testfor @p {Inventory:[{id:"minecraft:spawn_egg",tag:{EntityTag:{id:EntityHorse} } }]}. -- Sumpfhütte 15:05, 2. Feb. 2016 (UTC)

Gegenstand in der Hand abfragen[Bearbeiten]

Wie lautet der Befehl, um zu prüfen, ob der Spieler eine Goldhacke in der Hand hält? Der geht nicht: /testfor @p {SelectedItem:[{id:"minecraft:golden_hoe"}]} Was ist falsch? Ich bin der Bedeutung des Compound wohl überdrüssig... Ich finde kein Beispiel dafür. Danke im Voraus! Gruß, 2ndpopcornxD (Diskussion) 20:14, 23. Mär. 2016 (UTC)

Siehe Diskussion:Anleitungen/Befehle mit NBT#Abfragen, was der Spieler in der Hand hält. Du warst schon ziemlich nah dran, du hast nur eine Liste (die eckigen Klammern) zu viel drin. So funktionierts: Befehl /testfor @p {SelectedItem:{id:"minecraft:golden_hoe"} }. | violine1101 (Diskussion) 20:41, 23. Mär. 2016 (UTC)
Vielen Dank! Schon doof, wenn ich die Variationen mit den Klammern probiere, bevor ich die minecraft:-Präfix setze... Gruß, 2ndpopcornxD (Diskussion) 20:55, 23. Mär. 2016 (UTC)

Slotbezeichnung für die Zweit-/Nebenhand?[Bearbeiten]

Hallo liebe deutsche MC-Community!

Ich habe heute ein Problem: Ich weiß nicht, wie der Offhand-Slot bezeichnet ist. Ich frage das extra hier, denn wie man ihn beim Befehl /replaceitem bezeichnet, weiß ich ja ("slot.weapon.offhand"). Aber beim Befehl /testfor ist ja der Slot "6b" der Fünfte. Aber dieses slot.weapon.offhand kann man ja bei /testfor nicht nutzen, oder doch?

Für alle, die wissen wollen, warum ich das brauche: Ich möchte testen, ob sich in meiner Zweit-/Nebenhand noch eine bestimmte Anzahl eines Items befindet. Wenn dann dieser Wert erreicht wird (was ich zu testen versuche), wird die Itemanzahl wieder auf 64 aufgestockt.

DeBedenHasenD ~ UW 14:58, 23. Apr. 2016 (UTC)

Du kannst durch den Befehl /testfor @p {Inventory:[{Count:42b,Slot:-106b}]} abfragen, ob der Spieler genau 42 Gegenstände in der Zweithand hat. Wichtig: Das b sowohl bei Count als auch bei Slot nicht vergessen! Siehe Spielerdaten, Gegenstandsdaten und Datenwert#Inventarslot-IDs. | violine1101 (Diskussion) 12:46, 24. Apr. 2016 (UTC)
Das hört sich ja auch schon ganz nett an, aber kann ich auch irgendwie etwas hinzufügen, um zu testen, was gehalten wird (wenn nicht auch nicht schlimm, dann darf ich halt nicht vergessen, nichts anderes in die Zweithand zu nehmen. DeBedenHasenD ~ UW 17:23, 25. Apr. 2016 (UTC)
[EDIT]: Ich nehm's zurück...

Ich habe Besuch![Bearbeiten]

Und damit ersuche ich ein weiteres Mal Hilfe! Ich habe letztens im Netz gelesen, dass man abfragen kann, ob sich bestimmte Wesen in der Nähe eines Spielers befinden, aber eine Anleitung war natürlich nicht dabei. Weiß das hier jemand? DeBedenHasenD ~ UW 15:37, 25. Mai 2016 (UTC)

Ja klar, ist nicht schwer. Dazu einfach den execute verknüpfen: Der Befehl /execute @p ~ ~ ~ /testfor @a[rm=2] erkennt alle Spieler um einen bestimmten Spieler. Dazu einfach @p durch deinen Minecraft-Namen ändern. Nethonos (Diskussion) 15:39, 25. Mai 2016 (UTC)
Na gut, damit kann ich Spieler um Spieler abfragen, und das mit /execute. Das Problem dabei ist, dass meine Maschinerie dadurch nicht funktionieren würde, da zur falschen Zeit das falsche Signal ausgegeben werden würde. Gibt es auch eine Methode, die das ganze mit einem /testfor-Befehl und mit 5 Blöcken Umkreis löst? DeBedenHasenD ~ UW 16:05, 25. Mai 2016 (UTC)
Ja das ginge auch und auch sehr ähnlich. Dazu einfach den Befehl /execute @p ~ ~ ~ /testfor @e[type=Zombie,r=5] nutzen. Ich hab jetzt hierbei Zombies genommen, du kannst aber auch jede andere Art von Kreatur wählen. Auf jeden Fall erkennt dieser Befehl ein Zombie um den Spieler herum. Möchtest du dagegen nach allen Kreaturen suchen nur nicht nach Spielern kannst du auch den Befehl /execute @p ~ ~ ~ /testfor @e[type=!Player,r=5] nehmen. Nethonos (Diskussion) 16:19, 25. Mai 2016 (UTC)
Stimmt, sorry! Ich denke an die Einfachheit von sowas immer nicht, obwohl ich diese Parameter bei 80% meiner ausgeführten Befehle nutze... Und nochmal Entschuldigung von vorhin... DeBedenHasenD ~ UW 16:22, 25. Mai 2016 (UTC)
Ich hab dazu schon in der entsprechenden Diskussion reagiert :-). Dein Beitrag ist auf jeden Fall pfiffig, an solch eine testfor-Konstruktion hab ich bisher noch nicht gedacht gehabt. Vielleicht kommt noch eine Standortsensor-Variante hinzu, die genau diesen Umstand abfragen kann. Nethonos (Diskussion) 16:28, 25. Mai 2016 (UTC)
Ja, mach ruhig ;) Ich benutze das Konstrukt für eine Teleportation zu meinem Haus, genaugenommen soll dieser Teil den Teleport unterbinden, damit ich mich nicht au unnötigen Gefahren rette... Das funktioniert bei mir mit einem Punktestand und den entsprechenden Zurücksetzungs- und Teleportationsbefehlen. Es waren mal nur 3 Befehlsblöcke, mittlerweile sind es acht, auch durch diesen Teil...
Du bist also dran einen Teleporter zu bauen? Dann kann ich dir folgende Seite empfehlen: Teleporter. Nethonos (Diskussion) 16:37, 25. Mai 2016 (UTC)
Den Teleporter selbst habe ich ja schon, nur diese Einschränkung mit den Monstern hat gefehlt, jetzt funktioniert alles. Aber ich schaue mir das trotzdem mal an! DeBedenHasenD ~ UW 16:51, 25. Mai 2016 (UTC)

Erfolg abfragen[Bearbeiten]

Hallo an alle, Ich wollte mal wissen, ob es mit dem testfor-Befehl möglich ist, einen Erfolg abzufragen. Wenn ja, bitte nennt ein Beispiel für den allerersten Erfolg der PC-Version. KannEsVercraften (Diskussion) 21:48, 27. Jun. 2016 (UTC)KannEsVercraften KannEsVercraften (Diskussion) 21:48, 27. Jun. 2016 (UTC)

Das geht mit einer Kombination von /scoreboard-Befehlen, siehe dazu Anzeigetafel und Befehl /scoreboard. Du erstellst z.B. ein Ziel "Schmiedekunst" des Typs "achievement.acquireIron" (Befehl /scoreboard objectives add Schmiedekunst achievement.acquireIron). Dann kannst du mit dem Befehl /scoreboard players test @a Schmiedekunst 1 in einem Befehlsblock durch einen Redstone-Komparator abfragen, ob ein Spieler den Befehl hat. | violine1101 (Diskussion) 11:53, 2. Jul. 2016 (UTC)

Anzahl Gegenstände abfragen[Bearbeiten]

Also, ich weiß jetzt soweit, dass es möglich ist, einen Gegenstandstyp abzufragen. Ich weiß auch, wie man mehrere Gegenstandstypen abfragen kann, sodass nur ein Signal ausgegeben wird, wenn alle diese Gegenstände im Inventar ist.
Und jetzt zu meiner Frage: Kann man einzelne Gegenstände mit einer bestimmten Anzahl abfragen (sodass also nur ein Signal ausgegeben wird, wenn z. B. neun Eisenbarren statt nur einer im Inventar sind)? --DeBedenHasen | D ~ UW ~ Mail 17:46, 30. Jun. 2016 (UTC)

Für solche Fälle siehe am besten unter Gegenstandsdaten nach. Da müsste alles erklärt sein. Nethonos (Diskussion) 13:53, 2. Jul. 2016 (UTC)
Danke, aber dieser Artikel erklärt nur, wie man sozusagen über ein Third Party-Tool die Count-Tags manipulieren und einsehen kann. Aber ich möchte durch den Befehl /testfor abfragen können, ob z. B. 5 Eisenblöcke im Inventar sind, und nicht nur einer. Und sodass nur ein Signal ausgegeben wird, wenn eben diese 5 Eisenblöcke im Inventar vorhanden sind.
Ich habe allerdings schon ein paar Tests ausgeführt. Ich hatte folgende Versuche:
  • /testfor @a {Inventory:[{id:"minecraft:iron_block",Count:5}]}
  • /testfor @a {Inventory:[{id:"minecraft:iron_block",tag:{Count:5}}]}
... und alles hat nicht funktioniert! --DeBedenHasen | D ~ UW ~ Mail 19:25, 2. Jul. 2016 (UTC)
Bei deinem ersten Beispiel fehlt ein b bei der Anzahl: /testfor @a {Inventory:[{id:"minecraft:iron_block",Count:5b}]} Nethonos (Diskussion) 09:22, 3. Jul. 2016 (UTC)
Ich bin so dumm... Daran lag es... Oh mein Gott, bin ich blöd... --DeBedenHasen | D ~ UW ~ Mail 10:27, 3. Jul. 2016 (UTC)TOPIC CLOSED

Gedrückten Knopf abfragen?[Bearbeiten]

Ist es möglich, aus der Entfernung einen bestimmten Knopf abzufragen, ob dieser gedrückt wurde, per Befehlsblock und Komparator? KannEsVercraften (Diskussion) 18:14, 9. Aug. 2016 (UTC)KannEsVercraften KannEsVercraften (Diskussion) 18:14, 9. Aug. 2016 (UTC)

Das Abfragen ist durch den Befehl /testforblock <x y z> <Block-ID> [Metadaten-ID] möglich. Hier findest du die Metadaten für Knöpfe. Die Metadaten über 8 sind der gedrückte Knopf, die richtige Ausrichtung musst du testen.
Du brauchst übrigens keinen Komparator, sondern kannst auch einfach einen weiteren Befehlsblock an den Ersten setzen. Dieser muss dann nur bedingt sein und schon wird er erst ausgelöst, wenn der Knopf gedrückt wurde. MarkusRost (Diskussion) 18:56, 9. Aug. 2016 (UTC)

"Leere" Hand überprüfen[Bearbeiten]

Wie kann ich überprüfen, ob der Spieler nichts in der Hand hält? Mit dem Command /testfor @p {SelectedItem:{}} kann ich überprüfen, ob der Spieler etwas in der Hand hält. Der Command /testfor @p {SelectedItem:{id:minecraft:air}} funktioniert jedoch nicht! –- (Nicht signierter Beitrag von 79.224.134.36 (Diskussion|Beiträge) 29. Sep. 2016, 21:08:44. Bitte signiere deine Beiträge zukünftig mit -- ~~~~ )

Soweit ich weiss geht das auch garnicht. Man muss dies indirekt machen. Einfach einen Wiederhol-Befehlsblock mit dem Befehl /testfor @p {SelectedItem:{} } aufstellen und anschließend einen zweiten Ketten-Befehlsblock darüber aufstellen, der prüft ob der Wiederhol-Befehlsblock fehl schlägt. Das prüft er in dem man den Befehl /testforblock ~ ~-1 ~ repeating_command_block * {SuccessCount:0} dort eintippt. Nethonos (Diskussion) 19:55, 29. Sep. 2016 (UTC)
Die Lösung funktioniert aber leider nur im Singleplayer. Gibt es keine Lösung für Multiplayer? -- captnkuck 01.08.2018
@Captnkuck: Gibt es schon, ist nur aufwändiger:
/scoreboard players tag @r add ausgewaehlt
/testfor @p[tag=ausgewaehlt] {SelectedItem:{} }
/testforblock ~ ~-1 ~ repeating_command_block * {SuccessCount:0}
#<--Hier Befehl mit @a[tag=ausgewaehlt] um Spieler auszuwählen
/scoreboard players tag @a[tag=ausgewaehlt] remove ausgewaehlt
-- Nethonos 14:02, 1. Aug. 2018 (UTC)
Dankeschön, damit lässt sich auf jedenfall etwas anfangen! -- captnkuck 16:32 01.08.2018
@Captnkuck: falls dir die Performanz nicht so wichtig ist, könntest du auch folgendes verwenden:
/scoreboard players tag @a add volleHand {SelectedItem:{} }
#<--Hier Befehl mit @a[tag=!volleHand] um Spieler auszuwählen
/scoreboard players tag @a[tag=volleHand] remove volleHand
Hierbei bekommen alle passenden Spieler im gleichen Tick ein Tag/Etikett "volleHand" und die jenigen die dieses Etikett nicht besitzen haben folgedessen eine "leere Hand". -- Nethonos 14:42, 1. Aug. 2018 (UTC)

Anmerkung: "SelectedItem" gibt es nicht mehr in 1.13. Ob man in 1.13 mit SelectedSlot auch weiterkommt? -- Sumpfhütte 14:52, 1. Aug. 2018 (UTC)

Also wenn ich in 1.13 /data get entity @p SelectedItem eintippe funktioniert es. -- Nethonos 15:19, 1. Aug. 2018 (UTC)
Faszinierend! Weil es die Eigenschaft nicht in den NBT-Daten gibt. Das Programm muss die Daten aus SelectedItemSlot und Inventory zusammengesucht haben. Wenn das stimmt, gibt es vielleicht noch mehr Pseudo-Eigenschaften? -- Sumpfhütte 16:43, 1. Aug. 2018 (UTC)
Ich hab mal zur Sicherheit nur /data get entity @p getestet und bei mir wird es auch aufgelistet (1.13 und 18w31a). Ich hab dazu mir einen markanten Gegenstand gegeben, den man schnell in diesem Sammelsurium finden kann. -- Nethonos 16:48, 1. Aug. 2018 (UTC)
Ja, das hatte ich auch gesehen. Aber in der NBT-Datei gibt es die Eigenschaft nicht mehr (NBT-Explorer). Das ist ein sehr ungewöhnliches Phänomen. -- Sumpfhütte 17:09, 1. Aug. 2018 (UTC)

Koordinaten prüfen[Bearbeiten]

Ich spiele in der Version 1.11.2 und versuche zu testen ob sich ein Spieler an den angegebenen Koordinaten befindet ich habe bereits versucht: /testfor @a[-161,95,173] ,dann stand unten:"Invalid selector argument: '-161'. Dann habe ich versucht: /testfor @a[x=-161,y=95,z=173] Da hat der Komperator dauerhaft geleuchtet, obwohl sich niemand an den angegebenen Koordinaten befand. Das einzige was funktionierte war: /testfor @a[r=1] aber das ist an dieser Stelle extrem ungünstig. Ich hoffe jemand kann mir helfen, schonmal Danke im Voraus :) Hari03 (Diskussion) 13:28, 31. Dez. 2016 (UTC)

Es gibt keine Möglichkeit, ein Objekt oder einen Spieler auf einer bestimmten Koordinate mit der Zielauswahl zu finden (s. auch Diskussion:Befehl/kill#Befehlshilfe). Du könntest dir aber mal die Zielfilter angucken. Ich kann dir da allerdings nicht weiterhelfen, weil ich da nicht ganz durchblicke (auch in verlinkter Diskussion habe ich schon angefragt, ob das jemand mal umfangreicher erklären könnte). :-) ~ EndermanFace.png ouoɑY 14:50, 31. Dez. 2016 (UTC)
Der Unterschied zwischen @a[5,5,5] und @a[x=5,y=5,z=5] ist, dass es beim ersten relative Koordinaten von der Befehlsquelle (Befehlsblock) und beim zweiten absolute Koordinaten sind. Daher war dein Befehl /testfor @a[x=-161,y=95,z=173] eigentlich richtig. Befand sich der Befehl in einem immer aktiven Wiederholbefehlsblock? Wenn nicht, bleibt das letzte Ergebnis gespeichert. Testen kann ich das ganze gerade leider nicht... Für weitere Erklärungen siehe Befehle mit Zielauswahl oder frag einfach mal auf meiner Diskussionsseite.   HorseHead.png MarkusRost (Diskussion) 08:05, 1. Jan. 2017 (UTC)
@MarkusRost: Wie kommst du darauf, dass @a[5,5,5] relative Koordinaten angibt? Bei mir steht Ungültige Auswahl: '5', wenn ich das versuche. Bist du dir sicher, dass dies auch in der aktuellen Version klappt? :-) ~ EndermanFace.png ouoɑY 09:56, 1. Jan. 2017 (UTC)
Ok, hab was verwechselt... @a[5,5,5] sind keine relativen Koordinaten, sondern auch absolute. Allerdings fehlt da etwas: Das Abkürzen funktioniert nur, wenn auch ein Radius dabei ist. @a[5,5,5] -> @a[5,5,5,0] (@a[x,y,z,r]) Funktionieren müssten somit /testfor @a[x=-161,y=95,z=173] und /testfor @a[-161,95,173,0]   HorseHead.png MarkusRost (Diskussion) 12:15, 1. Jan. 2017 (UTC)
Das Kürzen der Ziel-Auswahl funktioniert seit Vollversion 1.11 nicht mehr. x=, y=, z= und r= müssen immer angegeben werden. | violine1101 (Diskussion) 12:42, 1. Jan. 2017 (UTC)

/testfor -- minecraft:paper 1 0 {display:{Name:"Key",Lore:[123]}}[Bearbeiten]

Ich weis, dass man Metadaten bei Stein mit z.B. 1s... schreibt. Wie kann man aber nun Metadaten wie display und Name, Lore... angeben ? Möchte abfragen ob der Spieler einen bestimmten Schlüssel in der Hand hat. Der Schlüssel lautet über den /give Befehl: /give @p minecraft:paper 1 0 {display:{Name:"Key",Lore:[123]}}. Hat jemand eine Idee, wie man diesen abfragen lässt ? --DeaIer (Diskussion) 15:48, 12. Jan. 2017 (UTC)

/testfor @p {Inventory:[{id:"minecraft:paper",tag:{display:{Name:"Key",Lore:["123"]}}}]} macht das.   HorseHead.png MarkusRost (Diskussion) 16:51, 11. Jan. 2017 (UTC)
Übrigends funktioniert deine Lore:[123] nicht, da fehlen ein paar Anführungszeichen: Lore:["123"]   HorseHead.png MarkusRost (Diskussion) 16:56, 11. Jan. 2017 (UTC)
Um genau zu sein, ist der Befehl von MarkusRost erfolgreich, wenn man den Schlüssel irgendwo im Inventar hat, folgender Befehl prüft, ob man den Schlüssel tatsächlich in der Hand hält: /testfor @p {SelectedItem:{id:"minecraft:paper",tag:{display:{Name:"Key",Lore:["123"]}}}}. -- Sumpfhütte 10:03, 13. Feb. 2017 (UTC)
Hallo. Was muss man reinschreiben, wenn den Namen und die Lore farbig macht: {Name:"&6Key",Lore:["&4123"]} geht nämlich nicht. –- (Nicht signierter Beitrag von Tugrisu (Diskussion|Beiträge) 16:55, 6. Apr. 2017 (CEST). Bitte signiere deine Beiträge zukünftig mit -- ~~~~ )
Dafür bräuchtest du das Dollarzeichen $, nicht das kaufmännische Undzeichen &, im Gegensatz zu bspw. Bukkit-Servern. Diese lassen sich allerdings nur in externen Programmen eingeben, also mit Befehlen geht das nicht. In Zukunft soll das aber über JSON-Texte gehen und die Dollarzeichen sollen dadurch ersetzt werden. Ich bin mir noch nicht sicher ob das schon geht, probier das doch mal aus: Befehl /give @p paper 1 0 {display:{Name:'{"text":"Key","color":"gold"}',Lore:['{"text":"123","color":"dark_red"}']} }. Das dürfte soweit ich weiß noch nicht funktionieren, sollte es aber in Zukunft. (Kann das leider aber gerade nicht ausprobieren.) | violine1101 (Diskussion) 15:34, 6. Apr. 2017 (UTC)
Ich habs mal grad für dich getestet, es funktioniert leider (noch) nicht. -- Nethonos 15:40, 6. Apr. 2017 (UTC)
Das Zeichen für Farbcodes ist nicht das $-Zeichen, sondern das §-Zeichen. Hier siehst du, wie du es einbinden kannst: Anleitungen/Befehle_mit_NBT#Schwebende_Schrift (zweiter Befehl) --  HorseHead.png MarkusRost (Diskussion) 16:33, 6. Apr. 2017 (UTC)
Strg+C Strg+V, und schon ist es drin. Oder gibt es da irgendwelche Probleme? Iwer Sonsch (Diskussion) 16:48, 6. Apr. 2017 (UTC)
Das §-Zeichen ist im Minecraft nicht möglich. Auch nicht durch kopieren (außer in Buch und Feder). Daher muss man dieses Problem mithilfe von Schildern lösen, die den Unicode umwandeln können. --  HorseHead.png MarkusRost (Diskussion) 16:54, 6. Apr. 2017 (UTC)

/testfor Item dass der Spieler NICHT im Inventar hat?[Bearbeiten]

Hallo, ich brauche ein Befehl, der testet ob ein Spieler TNT im Inventar hat. Ist dies nicht der Fall, so soll der nächste Commandblock dem Spieler ein TNT geben. Ich hatte gedacht ich mache das mit einem Chain Commandblock und dem /teastfor Befehl.. allerdings hab ich nichts gefunden wie ich abfragen kann ob der Spieler das Item NICHT im Inventar hat, sonder nur ob ers im Inventar hat.. habt ihr eine Lösung oder kann man das gar nicht? lg Yoqora (Diskussion) 16:13, 11. Feb. 2017 (UTC)

Dafür würde ich nicht den Befehl /testfor verwenden, sondern den Befehl /scoreboard. Ganz unten einen Wiederhol-Befehlsblock mit dem Befehl /scoreboard players tag @a add TNT {Inventory:[{id:"minecraft:tnt"}]}. Darüber kommt ein Ketten-Befehlsblock mit dem Befehl /give @a[tag=!TNT] tnt und darüber noch einen Ketten-Befehlsblock mit dem Befehl /scoreboard players tag @a remove TNT.
Erst erhalten alle Spieler mit TNT im Inventar die Etikette "TNT", danach erhalten alle Spieler ohne diese Etikette ein TNT und anschließend wird allen Spielern die Etikette wieder entfernt.   HorseHead.png MarkusRost (Diskussion) 16:52, 11. Feb. 2017 (UTC)
@MarkusRost: da warst du wohl schneller, egal hier auch meine Lösung:
Dies geht allein mit dem /testfor nicht. Nur in Kombination mit weiteren Befehlen: Den Befehl /testfor @p {Inventory:[{id:"minecraft:tnt"}]} in einen nach oben gerichteten Wiederhol-Befehlsblock, dann stellst du darauf einen immer aktiven Ketten-Befehlsblock mit dem Befehl /testforblock ~ ~-1 ~ repeating_command_block -1 {SuccessCount:0}. Und nun stellst du wiederum auf diesen noch ein Ketten-Befehlsblock mit dem Befehl /give @p tnt, der immer aktiv und bedingt ist. Ich hab es ausprobiert, es funktioniert. -- Nethonos 16:54, 11. Feb. 2017 (UTC)
@Nethonos: Deine Lösung gibt aber allen Spielern ein TNT, auch wenn nur ein Einziger keins hat und die anderen schon.   HorseHead.png MarkusRost (Diskussion) 17:00, 11. Feb. 2017 (UTC)
Wenn der Spieler jedesmal ein TNT hat, wird jedesmal eine Redstone-Fackel deaktiviert, bis erneut abgefragt wurde. Ist es einmal nicht so, geht sie an.
Finde den Fehler (Ich meine, so einfach kann es doch nicht sein). Iwer Sonsch (Diskussion) 17:02, 11. Feb. 2017 (UTC)
@MarkusRost: Nur der nächstgelegene Spieler. Mein Ziel war es das es leicht und verständlich ist. Deine Variante kann man direkt danach sich aneignen. -- Nethonos 18:15, 11. Feb. 2017 (UTC)
Okay, vielen Dank euch beiden! Yoqora (Diskussion) 23:10, 11. Feb. 2017 (UTC)

kein Spieler mehr im Raum[Bearbeiten]

Hallo zusammen.

Ich soll für einen Server ein Vanilla-Teleporter-System mit Commandblocks entwickeln. Dabei soll beachtet werden, dass die Teleporter nur aktiviert werden (Partikeleffekte erzeugen), wenn die Spieler im Teleporterraum sind. Dafür habe ich einen Befehl /testfor @e[x=126,y=57,z=151,dx=8,dy=5,dz=10,type=Player] benutzt, der so auch funktioniert. Der erfolgreiche Test sorgt dann dafür, dass Redstoneblöcke an bestimmte Stellen Kohleblöcke ersetzen. Die einzelnen Teleporter sind nämlich Redstone abhängige Repeating-Commandblocks, welche die entsprechenden Partikel erzeugen, gefolgt von Chain-Commandblocks, welche die Aktionen ausführen (dazu habe ich auch eine Frage, aber die stelle ich lieber auf der entsprechenden Seite im Diskussionsbereich: Teleporter).

Mein Problem liegt aber in dem Gegenteil dieser Mechanik. Will heißen: Wie frage ich ab, ob sich kein Spieler in dem Raum befindet? Wenn eine solche Abfrage gelingt, dann kann ich wieder Kohleblöcke die Redstoneblöcke ersetzten lassen und damit die Partikel abschalten. Ich habe es mal versucht, indem ich einzelne Parameter mit =! ungleich setze (wie bspw. Befehl /testfor @e[x!=126,y!=57,z!=151,dx=8,dy=5,dz=10,type=Player] -> leichtgläubiger erster Einfall, führte zu "ungültige Koordinate") oder auf Befehl /testfor @e[x=126,y=57,z=151,dx=8,dy=5,dz=10,type=!Player] abfragte. Letzteres führt aber leider nur dazu, dass alle Entities bis auf Spieler den Raum aktivieren können.

Gibt es dafür einen Befehl?

Mit freundlichen Grüßen Beirom (Diskussion) 11:50, 25. Mär. 2017 (UTC)

Wenn sich ein Spieler im Raum befindet, passiert etwas nicht. Dieses Etwas wird ständig versucht und immer dann blockiert, wenn sich ein Spieler im Raum befindet. Iwer Sonsch (Diskussion) 12:23, 25. Mär. 2017 (UTC)
Grundsätzlich könntest du an dem Wiederhol-Befehlsblock, der prüft, ob sich Spieler in der Nähe des Teleporters aufhalten, einen Komparator anschließen. Dieser geht aus, wenn keine Spieler anwesend sind. Somit einfach diesen mit einem soliden Block ausstatten und an diesen eine Redstone-Fackel setzen die dann die Redstone-Blöcke wieder in Kohleblöcke umwandelt. Oder wolltest du auf Redstone möglichst verzichten ? -- Nethonos 13:13, 25. Mär. 2017 (UTC)
Mit dem Befehl /testforblock ~ ~ ~ repeating_command_block -1 {SuccessCount:0} Kannst du auch abfragen, ob dein /testfor Befehl niemanden gefunden hat. --  HorseHead.png MarkusRost (Diskussion) 13:35, 25. Mär. 2017 (UTC)
@Nethonos: Deine Idee ist gut. Aber du hast mit deiner Vermutung recht, dass ich es ohne Redstone versuchen möchte. Vllt. hätte ich dies noch erwähnen sollen. Entschuldigung. Es ist platzsparender und faszinierend, was trotzdem noch alles möglich ist. Und seit der 1.9 kam ich noch nie dazu, das richtig auszuprobieren.
@MarkusRost: Danke für den Command, das klappt hervorragend. Ein Einfall meinerseits wäre noch die Implementierung des Ettikett-Systems, welches bei den Teleportern beschrieben wird. Nun nur noch den Befehl /gamerule commandBlockOutput false, damit der Spam der Repeating-Commandblocks aufhört. -- Beirom (Diskussion) 15:26, 25. Mär. 2017 (UTC)
@Beirom: Du meinst, das man das Etiketten-System zusätzlich als eigene Technik beschreiben sollte ? -- Nethonos 15:38, 25. Mär. 2017 (UTC)
@Nethonos:Ich kann dabei jetzt nur von mir sprechen. Es geht neben den Scoreboards etwas unter, auch wenn es durch dessen Befehl erstellt wird. Schließlich sind es "nur" 3 Befehle auf der Seite, der Rest sind normale Abfragen, ob jmd. / etwas einen Tag besitzt. Und weil die Mapmaker-YouTuber nur von "tag" sprechen, ist mir nie in den Sinn gekommen, wie es auf Deutsch heißt. ^_^" Ich meinte damit eigentlich, dass das System, welches bei den Teleportern mit den ArmorStands beschrieben ist, vielleicht auch direkt auf Spieler anwendbar ist. Da ich es allerdings einfach halten wollte, kommt mir der Command zur Simulation einer if-else-Bedingung mehr gelegen.-- Beirom (Diskussion) 20:21, 25. Mär. 2017 (UTC)
@Beirom: Die Etiketten werden von der Position der Rüstungsständer aus den Spielern deshalb gegeben, damit man die Teleporter überall hinstellen kann. Wenn du auf der Welt genau weist, wo der Teleporter sein soll und es auch immer bleiben wird, kannst du auch direkt die Koordinaten abfragen. Das hab ich bei den Teleportern sowie bei den anderen Techniken nur wegen der Verschiebung auf andere Positionen so gemacht. Grundsätzlich lassen sich aber alle relativen Örtlichkeiten auf absolute umstellen. -- Nethonos 20:29, 25. Mär. 2017 (UTC)
@Nethonos: Und somit hat sich die Frage, die ich bei den Teleportern stellen wollte (in kurz: Warum ArmorStands?), gerade geklärt. Danke auch für diese Information. :-) -- Beirom (Diskussion) 23:17, 25. Mär. 2017 (UTC)
Prima. -- Nethonos 10:24, 26. Mär. 2017 (UTC)

Name von minecart abfragen[Bearbeiten]

Ich arbeite an einem automatischen Transportsystem für Personen. Ich möchte nun Weichen bauen, welche sich anhand der Erkennung von verschieden benannten Loren selbst stellen. So habe ich Loren mittels Befehl eingefügt /give theused88 minecart 20 0 {display:{Name:"TestRot"}} und will die den Namen nun mittels Befehlsblock /testfor @e[type=minecart,r=1] {Minecart:{tag:{display:{Name:"testRot"}}}} abfragen. Ich erhalte dann aber die Fehlermeldung "TestRot entspricht nicht der erforderlichen Datenstruktur".Kann mir da jemand weiterhelfen? TheUsed1988 17.10.2017 14:30

Dein testfor Befehl ist falsch. Allgemein ist Minecart: keine gültige Eigenschaft. Der Befehl /testfor fragt das Objekt ab, daher ist auch der weite Befehl so nicht richtig. Namen von Objekten kann man auch in der Zielerfassung direkt anfragen, du benötigst also den Befehl /testfor @e[type=minecart,r=1,name=testRot].   HorseHead.png MarkusRost (Diskussion) 12:57, 17. Okt. 2017 (UTC)

Chat-Abfrage[Bearbeiten]

Ich habe eine Frage ich möchte per command-block anfragen ob jemand etwas bestimmtes in den Chat geschrieben hat z.b Hey -- (Nicht signierter Beitrag von 188.101.145.66 (Diskussion|Beiträge) 01:48, 27. Jan. 2019‎. Bitte signiere deine Beiträge zukünftig mit -- ~~~~ )

Das ist leider nicht möglich, weder in 1.12 noch in 1.13 mit dem Befehl /execute if entity der den Befehl testfor ersetzt. Dinnerbone, ein Entwickler von Mojang sagte zu diesem Thema das es nicht geplant sei überhaupt solch eine Abfrage einzufügen, leider. -- Nethonos 07:23, 27. Jan. 2019 (UTC)


Spielmodus abfragen[Bearbeiten]

Ist es möglich abzufragen in welchem Gamemode jemand ist und wenn das so ist der Command-block einen Impuls (mit einem Vergleicher) abgibt??? -- (Nicht signierter Beitrag von 188.101.145.66 (Diskussion|Beiträge) 23:15, 31. Jan. 2019‎. Bitte signiere deine Beiträge zukünftig mit -- ~~~~ )

Ja, mit dem Befehl /execute if entity @p[gamemode=creative]. Einfach den Befehl in einen Befehlsblock speichern und an diesem einen Komparator anschließen, dann wird es funktionieren. Alternativ kannst du auch einfach run hinter dem Befehl setzen um den gewünschten Befehl ausführen zu können.
Und wenn du Diskussionen starten möchte, schau mal oben in der Leiste, dort steht "Neue Frage". Wenn du das anklickst wird auch direkt ein Abschnittstitel erzeugt, sodass deine Frage nicht so verloren ganz oben erscheint. -- Nethonos 22:27, 31. Jan. 2019 (UTC)