Craftomation 101 Programación visual para CraftoMates
Conecta bloques, cierra bucles, añade condiciones y depura robots que terminan el trabajo de verdad.
Craftomation 101 es un juego de programación visual primero y de crafteo después. Ganas enseñando a los CraftoMates rutinas fiables: encontrar recursos, recogerlos, combinarlos, entregar productos, repetir y recuperarse cuando falla la energía o el inventario. Esta guía explica el vocabulario de bloques, cómo encajan bucles y condiciones, cuándo extraer funciones, cómo especializar robots y cómo depurar con hábitos de paso a paso en lugar de adivinar.
Si no has terminado el tutorial de aterrizaje, ojea primero Primeros pasos. Combina esta página con Automatizar Fire y Alimentar robots cuando quieras endurecer los bucles de producción. Para qué automatizar después, usa Prioridad de automatización.
Cómo está organizado el editor
Cada CraftoMate tiene un editor de programas con un punto de entrada Idle. Los bloques se encadenan desde Idle en un grafo de acciones. Cuando el grafo vuelve a Idle (o hace un bucle explícito), el robot repite. Si el grafo termina en callejón sin salida, el bot se para — a menudo sosteniendo media receta.
Piensa en tres capas:
- Comandos principales — ir a un punto, find and pick, pick from, drop to, combine, eat, wait, pause, uncombine y más adelante variantes inteligentes de find/drop.
- Comprobaciones y ramas — comparar objetos, comparar energía, is empty, comprobaciones de plantas y otras herramientas de condición desbloqueadas por investigación.
- Funciones y variables — subrutinas reutilizables más ayudas numéricas/de coordenadas para lógica más limpia.
No necesitas cada desbloqueo de investigación el día uno. Necesitas un bucle cerrado, una rama de energía y la disciplina de nombrar robots según su trabajo.
Bloques de acción esenciales
Buscar, recoger y entregar
- Find and pick — localiza el objeto más cercano del tipo elegido y lo agarra. Ideal para Stone y Coal dispersos; peligroso si el ítem más cercano está al otro lado del mapa y la batería está baja.
- Pick from — toma de una baldosa o almacén concreto. Prefiere esto cuando centralices reservas.
- Drop to — coloca un ítem sostenido en una coordenada (pozo de hoguera, almacén, entrada de brewery). Verifica siempre que el resaltado coincida con la baldosa que querías.
- Go to point — camina sin interactuar; útil para posicionarse antes de un drop.
Los CraftoMates sostienen dos ítems. Muchas recetas asumen un ítem por mano antes de Combine. Diseñar programas que dejen una mano vacía cuando Combine espera dos es el bug típico de principiantes.
Combine y lógica de crafteo
Combine intenta fusionar los dos objetos sostenidos usando recetas descubiertas (Spark, Fire, Water, Steel, bricks, etc.). Si el par no es válido, el bot se atasca o falla según la lógica alrededor — rodea Combine con precondiciones claras cuando desbloquees herramientas de comparación.
Eat consume un ítem de combustible sostenido para recargar. Empareja Eat con un Find/Pick de combustible y una comparación de energía para que el robot solo meriende cuando haga falta. Ve Alimentar robots para la estrategia de bricks y ales.
Idle es tu bucle
Volver a Idle es cómo la mayoría de programas tempranos se repiten. Trata Idle como un while true de toda la rutina. Grafos avanzados pueden usar conectores explícitos y fusiones de ramas, pero olvidar Idle sigue siendo el clásico fallo de «funcionó una vez».
Condiciones: enseña a los robots a decidir
Los bucles incondicionales funcionan hasta que el mundo cambia — el carbón se agota localmente, una hoguera se mueve, el almacén se llena, la batería llega a cero. Las condiciones convierten una demo en infraestructura.
Ramas prácticas tempranas:
- Compare energy — si la batería está por debajo de un umbral (a menudo en la baja decena), rama a una subrutina de combustible; si no, sigue la producción.
- Compare / object checks — verifica que el bot sostiene el ítem esperado antes de Combine o Drop.
- Is empty — decide si recoger más o entregar lo que ya sostiene.
Pon la comprobación de energía cerca del inicio del bucle o al final antes de Idle. Cualquier patrón vale; la consistencia en toda la tripulación importa más que la perfección.
Funciones: deja de copiar-pegar la misma receta de Fire
Cuando reconstruyes «hacer Fire» en cada robot, extrae una función de usuario. Primeras funciones clásicas:
MakeSpark— pick Stone, pick Stone, CombineMakeFire— MakeSpark, pick Coal, CombineEatBricks— energy check, find Coal Brick (o craftear uno), EatFeedBonfire— MakeFire, Drop to pit
Las funciones mantienen los grafos legibles y te dejan parchear una definición en lugar de seis clones. Cuando la investigación desbloquea ayudas de control de mates dentro de funciones (alimentar a otro mate, fijar velocidad, pause/start), puedes construir robots «enfermeros» dedicados — aun así, mantén un dueño claro por responsabilidad.
Variables y arrays llegan con mejoras posteriores. Úsalas cuando necesites contadores, coordenadas dinámicas o lógica de almacén más inteligente. No bloquees tu primera hoguera automatizada esperando un diseño elegante de variables.
Especializa robots en lugar de un mega-cerebro
Un solo CraftoMate que mina, craftea Fire, hace bricks, riega árboles y transporta almacenes se peleará consigo mismo. Especializa:
- Técnico de calor — solo FeedBonfire (+ comprobación local de energía)
- Técnico de combustible — solo producción de Coal Brick hacia una reserva marcada
- Mensajero — pick from almacén A, drop to B (el Cargo Mate brilla aquí más tarde)
- Cultivador — water/seed/plant checks cuando los orgánicos importen
Nombra robots por roles (Heat1, Bricks, FuelNurse). Cuando algo se rompa, abres el grafo correcto en segundos. Prioridad de automatización ayuda a secuenciar qué especialistas contratar primero.
Depuración: paso a paso antes de escalar
Cuando un programa se porta mal:
- Pausa el mundo y abre el bot que falla.
- Lee los ítems en las manos — contenidos incorrectos explican la mayoría de fallos de Combine.
- Traza los resaltados de Drop to / Pick from — las coordenadas se desvían cuando reconstruyes bases.
- Mira un ciclo completo a velocidad reducida si está disponible; confirma que se alcanza Idle.
- Reinicia y vuelve a ejecutar tras ediciones estructurales para que el bot no quede atrapado a mitad de un grafo viejo.
- Comprueba la batería — un «bug de lógica» a menudo es un bug de hambruna (otra vez: Alimentar robots).
Pensar paso a paso gana a añadir más bloques. Si un grafo cuesta narrarlo en una frase, divide una función.
Biblioteca de patrones: bucles mínimos viables
Alimentador de Fire
Find Stone → Find Stone → Combine → Find Coal → Combine → Drop to Bonfire → ¿Energy check? → EatBricks → Idle.
Colocación detallada y acoplamiento de bricks: Automatizar Fire.
Crafteador autoalimentado
Función de producción → Compare energy → (bajo: craftear o buscar Coal Brick → Eat) → Idle.
Mensajero de reservas
Pick from almacén de entrada → Drop to almacén de salida → Idle, con comprobaciones empty/full cuando se desbloqueen.
Mentalidad de investigación
Desbloquea herramientas que reduzcan la vigilancia: compare energy, find/drop más inteligentes, funciones y luego packs orgánicos y de variables. Cada desbloqueo debería eliminar clics manuales de tu hora, no añadir bots novedosos que no puedas alimentar.
Lista de enlaces cruzados
- ¿Nuevo en el planeta? Primeros pasos
- ¿Se apaga el calor? Automatizar Fire
- ¿Bots desmayados? Alimentar robots
- ¿Demasiadas tareas y poca foco? Prioridad de automatización
La programación visual en Craftomation 101 premia la propiedad clara, los bucles cerrados y las primeras funciones humildes. Haz fiable el camino aburrido; lo ingenioso puede esperar hasta que la hoguera nunca se apague.
Preguntas frecuentes
Respuestas rápidas a las dudas más comunes.
¿Por qué mi CraftoMate solo ejecuta su programa una vez?
El grafo probablemente nunca vuelve a Idle ni a otra ruta de repetición. Cierra el bucle tras Drop/Combine. Ve la sección de Idle arriba y Primeros pasos.
¿Qué bloques debería aprender primero?
Find and pick, Combine, Drop to, Idle, Eat y Compare energy. Pasa a funciones cuando eso sea estable (Automatizar Fire).
¿Cuándo debería usar funciones?
En cuanto copies la misma secuencia Spark/Fire o EatBricks a un segundo robot. Una función compartida evita bugs divergentes.
¿Cómo evito que los robots mueran a mitad de tarea?
Añade una rama de compare energy que busque o craftee Coal Bricks y haga Eat antes de continuar. Tácticas completas de combustible: Alimentar robots.
¿Debería un solo robot hacerlo todo?
No. Especializa calor, combustible y logística. Prioriza roles con Prioridad de automatización.