O que o /execute faz?
O comando /execute executa outro comando, alterando quem o executa, onde e como ele é executado, e opcionalmente adicionando condições. Este construtor encadeia subcomandos na ordem correta para que você nunca mais confunda a sintaxe.
Como montar uma cadeia /execute
- Adicione subcomandos na ordem que precisar. Cada um modifica o contexto de execução para tudo que vier a seguir.
- Configure cada subcomando: seletores de entidades, coordenadas, condições e comparações de score.
- Defina o comando run: o comando final que executa com o contexto modificado, no final da cadeia.
- Copie a cadeia montada e cole-a no chat ou em um command block.
A parte difícil é a sintaxe. Uma cadeia pode facilmente exceder 200 caracteres, e uma única palavra-chave fora do lugar quebra o comando inteiro. Este construtor remove esse risco com menus suspensos, campos e uma prévia ao vivo.
Subcomandos /execute explicados
| Subcommand | What it changes |
|---|---|
| as | Entidade executora (quem) |
| at | Posição, rotação e dimensão |
| positioned | Apenas posição |
| rotated | Apenas rotação |
| facing | Rotação para encarar um ponto ou entidade |
| align | Ajustar posição à grade de blocos |
| anchored | Ponto de ancoragem (olhos ou pés) |
| in | Dimensão |
| on | Escolha uma relação de entidade |
| if / unless | Execução condicional |
| store | Salva result ou success em dados |
| run | Comando final a ser executado |
Subcomandos modificadores
as muda o executor para as entidades selecionadas, at move a posição de execução para elas, positioned e rotated definem a posição e rotação diretamente, facing mira em um ponto ou entity, align alinha à grade de block, anchored escolhe eyes ou feet, in muda a dimensão, e on escolhe uma relação de entity.
Subcomandos de condição
if e unless testam uma condição e só continuam a cadeia quando ela é aprovada. Testes disponíveis incluem entity, block, blocks, data, score, loaded, predicate, biome e function no Java, e entity, block, blocks e score no Bedrock.
Store (Somente na Edição Java)
store result e store success salvam a saída do comando final em um score, block entity, entity NBT, command storage ou bossbar. O Bedrock não possui subcomandos store.
A ordem importa
Os subcomandos são executados da esquerda para a direita. Quando as ou at seleciona muitas entidades, o restante da cadeia se ramifica uma vez por entidade, como execute as @a run say Hi, executando para cada jogador de uma vez.
Exemplos comuns
Dizer olá como cada jogador: execute as @a run say Hello
Invocar raio em zumbis na grama: execute as @e[type=zombie] at @s if block ~ ~-1 ~ minecraft:grass_block run summon lightning_bolt
Armazenar a vida de um jogador como um score: execute store result score @s health run data get entity @s Health
Perguntas comuns
Por que meu comando execute não está funcionando?
A cadeia deve terminar com um subcomando run ou uma condição, run só pode aparecer uma vez no final, e a sintaxe mudou entre as versões. Se um bloco de comando disser 'unparseable', compare sua cadeia com os exemplos da wiki para sua versão.
O Bedrock pode usar store?
Não. store, on, summon, data, biome, predicate, function e loaded são apenas para Java. Este construtor os oculta quando o Bedrock é selecionado.
Como executo um comando para cada jogador?
Use execute as @a run <command>. O subcomando as seleciona cada jogador e a cadeia é executada uma vez por entidade selecionada.
Qual é a diferença entre as e at?
as muda quem executa (o executor), at muda onde executa (a posição). Use as para agir sobre entidades e at para agir na localização delas, ou combine ambos: execute as @e at @s run summon lightning_bolt.
Preciso de permissões de operador?
O Java requer nível de permissão 2 (um bloco de comando ou um op). O Bedrock requer cheats ativados nas configurações do mundo.
Qual é o maxCommandForkCount no Minecraft?
A gamerule max_command_forks tem como padrão 65,536 e limita quantos contextos de execução um único comando /execute pode criar. Se as @e selecionar mais entidades do que o limite, o comando falha. max_command_sequence_length, também 65,536 por padrão, limita o total de comandos em uma cadeia ou função.