This translation is community contributed and may not be up to date. We only maintain the English version of the documentation. Read this manual in English
Este manual ofrece una descripción general y enlaces a los manuales específicos de cada tema.
Defold permite automatizar tareas en varios niveles. Elegir una interfaz adecuada para la tarea es uno de los aspectos más importantes de una automatización eficaz. La siguiente tabla puede ayudarte a elegir la interfaz más sencilla para una acción determinada:
| Capa | Propósito |
|---|---|
| Scripts del editor | Comandos personalizados y flujos de trabajo o integraciones del editor que agilizan las pruebas y el desarrollo, por ejemplo, la creación de niveles y assets |
| Scripts de interfaz del editor | Herramientas visuales, popups, configuradores o interfaces de usuario personalizados mediante scripts del editor |
| API HTTP del editor | Controlar el proyecto abierto en el editor Defold mediante operaciones OpenAPI, recursos del proyecto, builds, comandos del editor, vistas previas, preferencias, salida de la consola o scripts del editor para operaciones personalizadas, herramientas externas, integraciones con IDE y controladores de pruebas |
| CLI de Bob | Crear una build del proyecto, archivos de datos o bundles independientes desde la línea de comandos, informes y CI |
| Hooks del ciclo de vida | Validación o generación antes y después de las builds o la creación de bundles en el editor |
| Servicio HTTP del motor | Inspección del motor de videojuegos Defold (dmengine) en ejecución, servicios de desarrollo, profiling, mensajes de runtime o API de automatización de runtime definidas por extensiones; consultas de herramientas externas y envío de comandos a una build de depuración en ejecución |
| Automation Bridge | Extensión oficial de Defold que proporciona endpoints adicionales de automatización del runtime del motor |
| Pruebas automatizadas | Probar la lógica del juego, mensajes, componentes, input, físicas y el comportamiento del motor; inspeccionar escenas y obtener información visual, por ejemplo, mediante una vista previa del editor, input inyectado, el estado activo de la aplicación y colecciones de pruebas en ejecución |
| Scripts de shell o ejecutores de tareas | Generación, formato, validación y tareas repetibles; operaciones habituales con archivos |
| Herramientas externas de automatización específicas de la plataforma y del navegador web | Herramientas de pruebas de escritorio, pruebas de interacción con HTML5, capturas de pantalla e integraciones web |
| Agentes de programación con IA y modelos multimodales | Tareas para las que resulta difícil o imposible implementar un método determinista, análisis semántico de escenas, layouts de GUI o capturas de pantalla del runtime |
La distinción más importante es la que existe entre el editor Defold y un juego en ejecución. Son procesos independientes con servidores HTTP distintos.
Prefiere una solución determinista cuando la secuencia de operaciones ya se conozca, por ejemplo, en un validador de niveles, un formateador, una tarea de build o una prueba de regresión. Normalmente, estas soluciones deben tener entradas, salidas, tiempos de espera y códigos de salida estables. Esto resulta apropiado para hooks y pruebas automatizados que puedan ejecutarse de forma fiable en CI. También es preferible una solución determinista para la creación procedimental de recursos de tus proyectos; por ejemplo, una herramienta que convierta objetos glTF en modelos con un material determinado, rellene un nivel con árboles, etc. Estos procedimientos pueden crearse fácilmente para cada proyecto con scripts del editor y de interfaz. Consulta más información en el manual.
Un agente puede ser útil cuando una tarea requiere investigación o análisis multimodal (por ejemplo, visual): localizar los recursos relevantes, seleccionar una implementación, modificar varios archivos, interpretar errores e iterar hasta cumplir unos criterios de aceptación definidos. Aun así, el agente debe llamar a interfaces deterministas y consumir las mismas evidencias que un script local o un ejecutor de CI. Consulta el manual sobre cómo usar agentes de programación con IA en Defold.
Un proceso de automatización fiable forma un ciclo cerrado:

La verificación debe aportar evidencias del entorno real. Entre las evidencias adecuadas se incluyen:
Define el resultado esperado antes de realizar cambios. Define también un tiempo de espera y un número máximo de intentos de reparación. Un proceso desatendido no debe continuar indefinidamente si no puede satisfacer los criterios de aceptación.
Encontrarás más detalles sobre temas específicos relacionados con los flujos de trabajo de automatización en los siguientes manuales: