"> Foro - [Aportación] Todo sobre el comando /testfor (1.12) en Bloques de comandos - Page 1 of 2
Marzo 29, 2024, 11:55:46 am
Visitante


Autor Tema:  [Aportación] Todo sobre el comando /testfor (1.12)  (Leído 19700 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Febrero 14, 2017, 06:55:53 pm

sircripers




  • Desconectado

  • *

    • *
    • *
    • *
  • Mensaje personal
    ñeñeñe? ⎝(。◁゚)⎠
  • Actividad

  • 0%
  • Logros

Más información

IMPORTANTE
\/ Información sobre la 1.13 y el comando /testfor \/
Spoiler para ocultar:
Es posible que debido a las nuevas funciones del comando /execute en la futura 1.13 el /testfor sea eliminado a partir de esa versión, por lo que, los comandos que enseño en este post serán solo funcionales desde la 1.8-1.12 (tened en cuenta que los comandos han tenido cambios entre esas versiones y puede que algo que enseñe en el post, que está centrado en la 1.12, no funcione en alguna versión anterior).
En caso de que finalmente en la 1.13 se elimine el /testfor (y si no se me adelanta alguien e,e) haré un post explicando brevemente como sería el equivalente en execute al testfor, o incluso quizás un post mas completo explicando todas sus nuevas funciones.


En esta aportación intentare aclarar las dudas que podáis tener con el comando /testfor usando varios ejemplos (Al menos sobre lo que sé) Dividiré el post en: Entidades, Jugadores y Varios. Todos ellos con pequeños apartados que trataran cosas concretas.
(Me limitaré solo a dar ejemplos del /testfor y no a hablar sobre el /testforblocks)

Antes que nada una pequeña explicación de que es el comando /testfor y cuales son sus utilidades.
Código: [Seleccionar]
/testfor @pSiendo esta su sintaxis más básica sirve para detectar, en este caso al jugador más cercano a quien ejecute el comando, es decir, si un jugador utiliza este comando este se detectara a si mismo al ser el jugador más cercano, si el comando se ejecuta en un command block, entonces detectará al jugador que este más cerca de él.

Este comando tal cual podría servir para saber cual es el jugador más cercano por ejemplo a un lugar concreto.

Por si andaís un poco perdidos con los selectores de objetivos en la gamepedia se explican perfectamente: http://minecraft.gamepedia.com/Commands#Target_selectors

Entidades
Spoiler para ocultar:
Cómo detectar entidades con un nombre específico o items.

¿Quieres probar estos comandos? Puedes utilizar esta página para generar comandos, después de varios años de intentonas de hacer mapas puedo decir que es sin duda la mejor para generar mobs.
   


-------------------- Detectar un Mob -------------------


-Comando básico:
Código: [Seleccionar]
/testfor @eDetectar una entidad puede ser útil para saber si hay un mob en el mundo, si esta en un lugar en específico, si esta a x distancia del jugador etc...
La manera más simple de saber si un jugador ha eliminado todos los zombies de una zona por ejemplo, sería colocando el siguiente comando debajo de esa zona:
Código: [Seleccionar]
/testfor @e[type=Zombie,r=20]o también detectar a un mob en un radio de unas coordenadas específicas.
Código: [Seleccionar]
/testfor @e[type=Zombie,x=333,y=50,z=474,r=5]
Con un comparador dando señal a un bloque con una antorcha de redstone si el bloque de comandos deja de detectar que hay zombies en la zona apagara la señal del comparador encendiendo así la antorcha y a los comandos que tenga a su lado.

-Detectar a un mob con nombre específico:
Código: [Seleccionar]
/testfor @e[type=Zombie,name=Guardian]
-Detectar cuando un mob esta a x distancia de un jugador:
Código: [Seleccionar]
/execute @a ~ ~ ~ /testfor @e[type=Zombie,name=Guardian,r=5]
-Detectar un mob con un item en la mano:
Código: [Seleccionar]
/testfor @e[type=Zombie,name=guardian] {HandItems:[0:{id:"minecraft:stone_sword"}]}

-------------------- Detectar un item --------------------


Detectar items en el suelo utilizando /testfor no siempre tiene utilidades, ya que la mayoría de sistemas que usan la detección de items en el suelo lo hacen con el comando execute (recordemos que el comando testfor es limitado y solo nos sirve como mecanismo para detectar algo y en base a eso mediante otro bloque de comandos realizar una acción) Pero si es cierto que el execute no permite el uso de nbt tags.

-Detectar item en el suelo:
Código: [Seleccionar]
/testfor @e[type=Item]
-Detectar un item en concreto:
Código: [Seleccionar]
/testfor @e[type=Item] {Item:{id:"minecraft:torch"}}
-Detectar item renombrado:
Código: [Seleccionar]
testfor @e[type=Item] {Item:{id:"minecraft:torch",tag:{display:{Name:"antorcha cálida"}}}}

------------------ Detectar items en item frame ------------------


-Detectar un item en un item frame:
Código: [Seleccionar]
/testfor @e[type=item_frame] {Item:{id:"minecraft:torch",Damage:0s,Count:1b},ItemRotation:0b}
Jugadores
Spoiler para ocultar:
Detectar a un jugador con items, en coordenadas o cerca de otras entidades
Las utilidades del testfor en jugadores son básicamente saber cuando un jugador sostiene un item, lo tiene en el inventario, si esta en un lugar en específico etc...
Aunque solo detectar a un jugador o un mob no sirve mucho mas que para saber algo sobre estos. Para abrir una puerta o hacer tp a un jugador por ejemplo, cuando estos tienen un item en la mano hay que utilizar un bloque de comandos en modo cadena o utilizar un comparador que active el siguiente comando.


------------------ Detectar items en el inventario ------------------


Detectar items en el inventario del jugador es una de las cosas más útiles para el mapmaking, desde abrir una puerta al tener una llave en el inventario o detectar que el jugador ha recogido un item específico y muchísimas más cosas.

Si queréis probar estos comandos aquí tenéis uno para conseguir la antorcha:
Código: [Seleccionar]
/give @p minecraft:torch 1 0 {display:{Name:"antorcha cálida",Lore:["Emite una cálida luz que que protege de las más bajas temperaturas."]}}También os recomiendo este give generator, es bastante útil y ahorra mucho tiempo: https://ezekielelin.com/give/


-Detectar item en el inventario:
Código: [Seleccionar]
/testfor @a {Inventory:[{id:"minecraft:torch"}]}
-Detectar item seleccionado en cualquier slot:
Código: [Seleccionar]
/testfor @a {SelectedItem:{id:"minecraft:torch"}}
-Detectar un item seleccionado en el primer slot de la hotbar:
Código: [Seleccionar]
/testfor @a {SelectedItemSlot:0,Inventory:[{Slot:0b,id:"minecraft:torch"}]}
-Detectar item renombrado seleccionado en primer slot:
Código: [Seleccionar]
/testfor @a {SelectedItemSlot:0,Inventory:[{Slot:0b,id:"minecraft:torch"},{tag:{display:{Name:"antorcha cálida"}}}]}
-Detectar item renombrado y con lore seleccionado
Código: [Seleccionar]
/testfor @a {SelectedItem:{id:"minecraft:torch",tag:{display:{Name:"antorcha cálida",Lore:["Emite una cálida luz que que protege de las más bajas temperaturas."]}}}}

---- Detectar jugadores (coordenadas, cercanía, etc...) ----


Detectar jugador en un radio respecto a un bloque de comandos
Código: [Seleccionar]
/testfor @a[r=5]
-Detectar jugador en un radio respecto a otra entidad
Código: [Seleccionar]
/execute @e[type=Zombie] ~ ~ ~ /testfor @p[r=5]
-Detectar a un jugador en un radio respecto a unas coordenadas
Código: [Seleccionar]
/testfor @a[x=0,y=50,z=0,r=3]

-------- Detectar jugadores con efectos de poción --------


Detectar efectos de poción de jugadores puede ser muy útil, tanto como detectar items en el inventario, siempre que la situación requiera usarlo claro.


Aquí tienéis una lista con todas las id de los efectos de poción:
http://minecraft.gamepedia.com/Status_effect#Summary_of_effects

-Detectar efecto de poción (Comando básico)
Código: [Seleccionar]
/testfor @a {ActiveEffects:[{Id:1b}]}
-Detectar efecto de poción (nivel)
Código: [Seleccionar]
/testfor @a {ActiveEffects:[{Id:1b,Amplifier:0b}]}
 
Varios
Spoiler para ocultar:

---- Detectar jugadores en un team o con un scoreboard. ----


Aunque útil para saber por ejemplo si hay un jugador con cierto score o si esta en un team, debo decir que en este caso el testfor sería un comando transitorio, que serviría para dar señal al siguiente comando. La mayoría de veces en mapas o minijuegos se utiliza el /execute aplicando los mismos selectores de objetivo que utilizare en los siguientes comandos:

-Detectar jugador en un team:
Código: [Seleccionar]
/testfor @p[team=Red]Tanto en este comando como en los demás utilizaré como ejemplo el team "Red"
y el scoreboard: "Muertes"

-Detectar jugador de un team en ciertas coordenadas:
Código: [Seleccionar]
/testfor @a[team=Red,x=0,y=50,z=0,r=3]
-Detectar un jugador de un team con score mínimo:
Código: [Seleccionar]
/testfor @a[team=Red,score_Muertes_min=3]
-Detectar un jugador de un team con puntuación exacta:
Código: [Seleccionar]
/testfor @a[team=Red,score_Muertes=3,score_Muertes_min=3]

-Si dais ideas de ejemplos con /testfor que no encajen en ningún otro apartado los añadiré aquí  ;)


Si tenéis alguna duda, sobre un comando en concreto relacionado con el /testfor, podéis preguntarlo en este mismo post :)
En cambio si tenéis algún consejo, para mejorarlo o añadir algo, prefiero que me lo digáis directamente por mensaje privado, para dejar los comentarios exclusivamente para dudas u otras cosas.

Espero sinceramente que os haya servido de ayuda este post si teníais alguna duda y que os haya gustado  :D :D ya que ha sido bastante tedioso de hacer <3


Linkback: https://minecraftmin.net/index.php?topic=14382.0
« Última modificación: Noviembre 10, 2017, 10:45:06 am por sircripers »
(∩ ͡° ͜ʖ ͡°)⊃━☆゚.*・。゚copy pastus magicae



https://myanimelist.net/animelist/Sircriperss?status=2&order=4&order2=0


Respuesta #1 Febrero 14, 2017, 07:02:49 pm

PabloAN




  • Desconectado

  • *

    • *
    • *
    • *
  • Mensaje personal
    2045-2017
  • Actividad

  • 0%
  • Logros

Más información

Gran aportación sir, la verdad ayudaras a mucha gente (incluyéndome :v) que no tenga tanta experiencia con estos comandos
Dejo Mi Wendingo!




Respuesta #2 Febrero 25, 2017, 05:24:07 pm

Monster89




  • Desconectado

  • *

    • *
    • *
    • *
  • Mensaje personal
    Me Cago En Chavez
  • Actividad

  • 0%
  • Logros

Más información

Soy nuevo en los comandos, me sirvió  mucho gracias por la ayuda por ahora el mapa necesita estos comando...


Respuesta #3 Mayo 26, 2017, 06:53:24 pm

Kevin190




  • Desconectado

  • *

    • *
    • *
    • *
  • Mensaje personal
    MinecraftMin, soy el mejor toro Español!
  • Actividad

  • 0%
  • Logros

Más información

¡Wow, muy currado!
Me encantaría que pusieras para qué versión son estos comandos.  :D




Respuesta #4 Mayo 27, 2017, 04:10:03 pm

sircripers




  • Desconectado

  • *

    • *
    • *
    • *
  • Mensaje personal
    ñeñeñe? ⎝(。◁゚)⎠
  • Actividad

  • 0%
  • Logros

Más información

¡Wow, muy currado!
Me encantaría que pusieras para qué versión son estos comandos.  :D
Menos uno o dos todos deberían poder usarse a partir de la 1.8, por ejemplo:

Detectar coordenadas en la 1.11
Código: [Seleccionar]
/testfor @a[x=0,y=50,z=0,r=3]en la 1.8 - 1.10 era así:
Código: [Seleccionar]
/testfor @a[0,50,0,r=3]
« Última modificación: Mayo 27, 2017, 04:15:58 pm por sircripers »


Respuesta #5 Septiembre 18, 2017, 10:37:14 pm

na_na_na_banana




  • Desconectado

  • *

    • *
    • *
    • *
  • Mensaje personal
    ola k ase
  • Actividad

  • 0%
  • Logros

Más información

esto sirve en la version 1.12.2  ??
ola k ase




Respuesta #6 Septiembre 18, 2017, 11:25:41 pm

sircripers




  • Desconectado

  • *

    • *
    • *
    • *
  • Mensaje personal
    ñeñeñe? ⎝(。◁゚)⎠
  • Actividad

  • 0%
  • Logros

Más información



Respuesta #7 Diciembre 14, 2017, 11:15:52 pm

Marlon240


  • *

  • Desconectado

  • *

    • *
    • *
    • *
  • Mensaje personal
    MinecraftMin, el mejor foro Español!
  • Actividad

  • 0%
  • Logros

Más información

Oye como se detecta un mensaje de chat, por ejemplo mando holaaaaa, y quiero que eso mande señal desde un Commadn_block




Respuesta #8 Diciembre 16, 2017, 04:40:40 am

SoulAlex




  • Desconectado

  • *

    • *
    • *
    • *
  • Mensaje personal
    MapMaker y Avanzado En Comandos
  • Actividad

  • 0%
  • Logros

Más información

Hola MinForeros!
Oye como se detecta un mensaje de chat, por ejemplo mando holaaaaa, y quiero que eso mande señal desde un Commadn_block
En respuesta a tu pregunta, no es posible detectar un mensaje del chat, de ninguna manera. (O hasta donde yo sé)

ebueh ro decir que me gusto tu post, y esta bien para Novatos en comandos, ya que para mí, este comando "era" el mas básico y el mas importante de todos. Además del scoreboard por supuesto...

Además el paso de las versiones, el /execute ha reemplazado casi por completo el /testfor. Ya que este puede "usar la funcion del testfor y además, hacer ejecutar un comando de una determinada entidad!". Esto simplificaba un sistema de un testfor, un comparador de redstone y otro comando. Todo esto en un solo comando.

He estado desconectado del MC y desconozco totalmente las nuevas características de la 1.13, inclusive de la 1.12, 1.11 y además de la 1.10 :'v asi que diré lo mismo en una respuesta a otro post:
"Estoy tan oxidado en MC que necesitaré un disolvente muy fuerte..."

Saludos, El Alesi :3
Las personas con ideas son mas valoradas que los trabajadores de ideas. las ganas vuelven, pero las grandes ideas nunca son reemplazadas


Respuesta #9 Enero 13, 2018, 06:40:00 pm

sircripers




  • Desconectado

  • *

    • *
    • *
    • *
  • Mensaje personal
    ñeñeñe? ⎝(。◁゚)⎠
  • Actividad

  • 0%
  • Logros

Más información

Hola MinForeros!
Oye como se detecta un mensaje de chat, por ejemplo mando holaaaaa, y quiero que eso mande señal desde un Commadn_block
En respuesta a tu pregunta, no es posible detectar un mensaje del chat, de ninguna manera. (O hasta donde yo sé)

ebueh ro decir que me gusto tu post, y esta bien para Novatos en comandos, ya que para mí, este comando "era" el mas básico y el mas importante de todos. Además del scoreboard por supuesto...

Además el paso de las versiones, el /execute ha reemplazado casi por completo el /testfor. Ya que este puede "usar la funcion del testfor y además, hacer ejecutar un comando de una determinada entidad!". Esto simplificaba un sistema de un testfor, un comparador de redstone y otro comando. Todo esto en un solo comando.

He estado desconectado del MC y desconozco totalmente las nuevas características de la 1.13, inclusive de la 1.12, 1.11 y además de la 1.10 :'v asi que diré lo mismo en una respuesta a otro post:
"Estoy tan oxidado en MC que necesitaré un disolvente muy fuerte..."

Saludos, El Alesi :3


En la 1.13 el comando testfor es completamente eliminado, dejando este post como guia para versiones desde la 1.8 a la 1.12 (practicamente todos los comandos que he puesto de ejemplo se pueden usar en versiones anteriores a la 1.12 ya que solo usan selectores de objetivos, que poco han cambiado entre versiones)



Respuesta #10 Marzo 16, 2018, 07:54:23 pm

NickSplat


  • *

  • Desconectado

  • *

    • *
    • *
    • *
  • Mensaje personal
    Me gustan los comandos :)
  • Actividad

  • 0%
  • Logros

Más información

no me funciona el detectar un objeto en la mano pero con un nombre en especifico (me funciona pero sin nombre modificado, con el que viene por defecto) este es el comando que no me funciona /testfor @a {SelectedItem:{id:"minecraft:stick",tag:{display:{name:"Bomba"}}}} estoy en la 1.12.2 Me ayudan? (me sale este error [15:52:41] (aqui va mi nick) no coincide con la estructura de datos necesaria X-p
Espero que hayas entendido lo que dijo, sino hasmelo saber :)


Respuesta #11 Marzo 16, 2018, 11:44:33 pm

Darien000




  • Desconectado

  • *

    • *
    • *
    • *
  • Mensaje personal
    Mapmaker Principiante
  • Actividad

  • 0%
  • Logros

Más información

no me funciona el detectar un objeto en la mano pero con un nombre en especifico (me funciona pero sin nombre modificado, con el que viene por defecto) este es el comando que no me funciona /testfor @a {SelectedItem:{id:"minecraft:stick",tag:{display:{name:"Bomba"}}}} estoy en la 1.12.2 Me ayudan? (me sale este error [15:52:41] (aqui va mi nick) no coincide con la estructura de datos necesaria X-p

Has hecho mal la NBT tag, ya que tu hiciste /testfor @a {SelectedItem:{id:"minecraft:stick",tag:{display:{name:"Bomba"}}}} y el problema es que has puesto "name" con minúscula cuando tiene que ser "Name", así que la forma correcta de escribir ese comando seria:

Código: [Seleccionar]
/testfor @a {SelectedItem:{id:"minecraft:stick",tag:{display:{Name:"Bomba"}}}}
▒█▀▀▄ █▀▀█ █▀▀█ ░▀░ █▀▀ █▀▀▄ █▀▀█ █▀▀█ █▀▀█
▒█░▒█ █▄▄█ █▄▄▀ ▀█▀ █▀▀ █░░█ █▄▀█ █▄▀█ █▄▀█
▒█▄▄▀ ▀░░▀ ▀░▀▀ ▀▀▀ ▀▀▀ ▀░░▀ █▄▄█ █▄▄█ █▄▄█

Youtube: https://www.youtube.com/channel/UC8SspvFrhSKTK8UhgWvbapQ

Mis Mapas
The Haunted Graveyard: http://minecraftmin.net/index.php?topic=15232.msg72427;topicseen#msg72427




Uno no es perfecto y nunca sera perfecto.


Respuesta #12 Abril 23, 2018, 08:26:16 pm

AgenT_Cer0


  • *

  • Desconectado

  • *

    • *
    • *
    • *
  • Mensaje personal
    MinecraftMin, el mejor foro Español!
  • Actividad

  • 0%
  • Logros

Más información

En la 1.12.2 funciona como
/testfor @p [x=(valor),y=(valor),z=(valor),r=(valor)]
Si usan un command:block no olviden ponerlo en modo de (necesita redstone) y ponerle una linea de redstone desde un reloj
« Última modificación: Abril 23, 2018, 08:29:15 pm por AgenT_Cer0 »


Respuesta #13 Abril 23, 2018, 11:56:10 pm

sircripers




  • Desconectado

  • *

    • *
    • *
    • *
  • Mensaje personal
    ñeñeñe? ⎝(。◁゚)⎠
  • Actividad

  • 0%
  • Logros

Más información

En la 1.12.2 funciona como
/testfor @p [x=(valor),y=(valor),z=(valor),r=(valor)]
Si usan un command:block no olviden ponerlo en modo de (necesita redstone) y ponerle una linea de redstone desde un reloj
o poner el bloque de comandos en repeat y always active..


Respuesta #14 Diciembre 02, 2018, 04:56:46 am

FranklinJSP




  • Desconectado

  • *

    • *
    • *
    • *
  • Mensaje personal
    MapMakers, Y Detallista :D
  • Actividad

  • 0%
  • Logros

Más información

A ok, Entonces si quiero que Un Mod o un dialogo se active en equis Coordenada el testfor sirve para activarlo es decir, coloco un bloque de comando con el testfor y la coordenada donde quiero que se active un ejemplo un dialogo, y alado del bloque de comando puedo colocar un comparador y alado del comparador una bloque de redstone y alado del bloque de redstone puedo colocar un bloque de comando con el comando del dialogo eso puede servir cierto?
Me Gustan Los Comandos, Y Amo La Comida :D





Share via delicious Share via digg Share via facebook Share via furl Share via linkedin Share via myspace Share via reddit Share via stumble Share via technorati Share via twitter

xx
Todo sobre el comando /replaceitem

Iniciado por KaliNuska

5 Respuestas
17670 Vistas
Último mensaje Septiembre 25, 2014, 03:43:42 pm
por Kirby
smiley
[Tutorial] Todo sobre el comando /tellraw

Iniciado por CreepyPandi

0 Respuestas
7962 Vistas
Último mensaje Junio 26, 2016, 02:28:19 pm
por CreepyPandi
question
AYUDA SOBRE TESTFOR U OTROS COMANDOS

Iniciado por Lexiont12

2 Respuestas
2478 Vistas
Último mensaje Junio 28, 2014, 06:34:26 am
por thecalin
xx
Ayuda con el comando Testfor

Iniciado por Davimen

1 Respuestas
2003 Vistas
Último mensaje Mayo 31, 2016, 08:55:39 pm
por MrGat0s