Funktionieren Befehlsblöcke in einer bestimmten Entfernung nicht mehr?

Jan 11 2021

Dies betrifft die Minecraft Bedrock Edition. Ich versuche, die Spieler beim Betreten einer Stadt automatisch in den Abenteuermodus und beim Verlassen wieder in den Überlebensmodus zu versetzen. Ich habe eine Funktion erstellt, die in einem sich wiederholenden Befehlsblock ausgeführt wird. Die folgenden Befehle erstellen grundsätzlich 2 Städte. Wenn Spieler 1 in die Stadt von Spieler 2 geht, werden sie in den Abenteuermodus versetzt. Wenn Spieler 1 seine eigene Stadt betritt, werden sie in den kreativen Modus versetzt. Wenn Sie beide Städte verlassen, werden sie in den Überlebensmodus versetzt.

#run this one time to create a townMode variable
#scoreboard objectives add townMode dummy 

scoreboard players set @a[scores={townMode=!0}] townMode 0

#town for player 1
scoreboard players set @a[name=player1name, scores={townMode=!1}, x=501, y=62, z=151, dx=49, dy=49, dz=49] townMode 1
scoreboard players set @a[name=!player1name, scores={townMode=!2}, x=501, y=62, z=151, dx=49, dy=49, dz=49] townMode 2

#town for player 2
scoreboard players set @a[name=player2name, scores={townMode=!1}, x=501, y=62, z=93, dx=49, dy=49, dz=49] townMode 1
scoreboard players set @a[name=!player2name, scores={townMode=!2}, x=501, y=62, z=93, dx=49, dy=49, dz=49] townMode 2

gamemode 0 @a[scores={townMode=0},m=!0]
gamemode 1 @a[scores={townMode=1},m=!1]
gamemode 2 @a[scores={townMode=2},m=!2]

Es funktioniert im Grunde, ABER ich habe bemerkt, dass der Befehlsblock die Ausführung der Befehle beendet, wenn ich zu weit weg bin. Wenn ich den Befehlsblock in die Mitte der Stadt stelle, funktioniert er, aber wenn ich ihn wirklich weit weg platziere, scheint er nicht konsistent auszulösen. Ich bemerkte dies nach ein paar Stunden, als ich meinen Kopf gegen den Tisch schlug. Ich habe über commandblockoutput gesehen, dass die Befehle nicht mehr ausgeführt werden, wenn ich zu weit vom Befehlsblock entfernt bin. Gibt es eine Problemumgehung, bei der ich den Befehlsblock weit entfernt von den Dörfern haben kann, aber trotzdem arbeite?

Antworten

3 Sciborg Jan 12 2021 at 00:55

Befehlsblöcke folgen denselben Regeln wie andere Blöcke, da sie nicht mehr ausgeführt werden, wenn der Block, in dem sie sich befinden, entladen wird.

Diese Frage stellte etwas Ähnliches. Eine Lösung, die dort von @MBraedley vorgeschlagen wurde:

Die Chunks, die den Welt-Spawn umgeben, werden immer geladen, daher ist dies der beste Ort, um Befehlsblöcke zu platzieren, die Sie immer ausführen möchten. Mit dem /setworldspawnBefehl können Sie ändern, wo der Welt-Spawn ist .

2 George Jan 12 2021 at 10:02

Leider bleiben Befehlsblöcke im Grundgestein nicht geladen, wenn Sie zu weit weg sind, selbst wenn Sie sich im Spawn-Bereich der Welt befinden. Ich habe es experimentell versucht und die Befehle werden nicht mehr ausgeführt, wenn ich zu weit weg bin. Ich habe jedoch diesen Beitrag gefunden, der besagt, dass Sie bis zu 10 "Ticking-Bereiche" hinzufügen können. Dies funktioniert wie ein Zauber im Grundgestein! Ich werde die Antworten positiv bewerten, da sie so aussehen, als würden sie in der Java-Edition funktionieren, und Sie haben mich in die richtige Richtung geführt.

/ tickingarea x1 y1 z1 x2 y2 z2 chunkName