Etapas, Modos y Transiciones No Lineales
Los procesos de CraftingEngine avanzan a través de una secuencia de etapas (stages). Las etapas transforman los crafteos pasivos en máquinas de estado dinámicas con interacciones manuales, minijuegos, ramificaciones aleatorias ponderadas y rutas de recuperación.
1. Modos de Ejecución de Etapas
CraftingEngine cuenta con 5 modos configurables mediante la clave mode::
+-----------------------------------------------------------------------------+| MODOS DE EJECUCIÓN DE ETAPA |+-----------------------------------------------------------------------------+| || 1. PASSIVE || Avanza automáticamente en función del tiempo (duración: "5s", "1m"). || || 2. MANUAL_ACTION || Requiere golpes físicos del jugador (clic izquierdo/derecho con tool). || || 3. WAITING_FOR_CONDITION || Pausa el avance hasta alcanzar un estado ambiental o de capacidad || (ej. el caldero alcanza 100°C o empieza a llover). || || 4. MINIGAME || Minijuego arcade interactivo en la barra de acción (Action Bar). || || 5. ITEM_INSERTION || Requiere que el jugador lance o inserte componentes específicos. || |+-----------------------------------------------------------------------------+Sintaxis YAML por Modo
Etapa Pasiva
- id: "tempering" mode: "PASSIVE" duration: "4s" on_tick: - action: "spawn_particle(SMOKE, 2, 0.1, 0.2, 0.1)"Etapa de Acción Manual
- id: "hammering" mode: "MANUAL_ACTION" action_type: "LEFT_CLICK_BLOCK" # LEFT_CLICK_BLOCK | RIGHT_CLICK_BLOCK required_strikes: 5 cooldown_ticks: 10 # Retardo rítmico entre golpes permitidos on_action: - action: "play_sound(block.anvil.use)" - action: "damage_tool(1)"Espera de Condición
- id: "boiling" mode: "WAITING_FOR_CONDITION" timeout: "30s" condition: "capability.temperature >= 100" failure_transition: "cool_down_failure"2. Transiciones No Lineales (v2.6.0+)
La versión v2.6.0 incorporó soporte completo para transiciones tipo statechart, eliminando la linealidad forzada y permitiendo bifurcaciones y recuperación ante fallos:
+-------------------+ | Etapa Inicial | +---------+---------+ | (Evaluación de Transición) | +---------------------+---------------------+ | (Peso: 70%) | (Peso: 30%) v v+---------------------+ +---------------------+| Rama Obra Maestra | | Rama Defectuosa |+----------+----------+ +----------+----------+ | | +---------------------+---------------------+ | v +-------------------+ | Pulido Final | +-------------------+A. Ramificación Probabilística Ponderada
Las transiciones admiten ruleta ponderada normalizada mediante weight:. Si se definen varios destinos, CraftingEngine normaliza las probabilidades y escoge un camino aleatorio:
stages: - id: "enchanting_infusion" duration: "5s" transitions: - target_stage: "legendary_outcome" weight: 0.15 # 15% de probabilidad - target_stage: "standard_outcome" weight: 0.85 # 85% de probabilidadB. Saltos Explícitos por Acción
Durante etapas manuales, la acción concreta del jugador puede desencadenar un salto directo a otra etapa:
stages: - id: "forging_choice" mode: "MANUAL_ACTION" transitions: - target_stage: "folded_steel" action: "RIGHT_CLICK_BLOCK" - target_stage: "standard_edge" action: "LEFT_CLICK_BLOCK"C. Recuperación ante Fallos (failure_transition)
Si se agota el tiempo de una etapa o falla un minijuego, puedes redirigir el proceso a una etapa de salvamento en lugar de destruirlo:
stages: - id: "delicate_shaping" mode: "MINIGAME" minigame: type: "TIMING_SWEET_SPOT" failure_transition: "salvage_scrap" transitions: - target_stage: "perfect_polish"
- id: "salvage_scrap" mode: "PASSIVE" duration: "2s" on_complete: - action: "produce_output(minecraft:iron_nugget, 3)"3. Puntuación y Escala de Calidad
Los procesos calculan una Puntuación de Calidad (Quality Score) del 0% al 100% evaluando la precisión y sincronización del jugador:
- Nivel 1 (Normal): 0% - 49%
- Nivel 2 (Superior): 50% - 84%
- Nivel 3 (Obra Maestra): 85% - 100%
El nivel alcanzado puede añadir lore exclusivo, atributos aumentados (+15% Daño de Ataque) o modificadores NBT.
Siguientes Pasos
- Minijuegos y Crafteo Manual - Diseña barras de sincronización y medidores de impulso.
- Grabador de Vuelo - Depura y rastrea los saltos de transición mediante telemetría.