Ignitor Docs ← getignitor.com
🇺🇸 EN 🇪🇸 ES

Doctor del Proyecto#

El Doctor del Proyecto mira tu proyecto entero de una pasada y contesta dos preguntas: cuánto pesa y qué parte de eso es desperdicio. Todos los demás chequeos de Ignitor son por dominio — una sala, un puzzle, un árbol de diálogo. Este es el que ve todo junto, así que encuentra lo que sólo se nota desde arriba: el fondo que reemplazaste y nunca borraste, la pista de música que viaja en cada build y no suena nunca, la traducción de un botón que ya no existe.

Entras desde el Hub (con el servidor de desarrollo corriendo). El Distribution Manager además te muestra un resumen de una línea antes de que aprietes Start, así te enteras antes de compilar, no después.

La pantalla del Doctor del Proyecto — un veredicto de peso arriba y secciones plegables de hallazgos abajo.
Doctor del Proyecto — el veredicto y, debajo, una sección plegable por tipo de hallazgo.

La línea del veredicto#

La línea de arriba es el resumen honesto: cuánto pesa el proyecto y cuánto puedes recuperar sin tocar el juego. Esa cifra en megabytes cuenta sólo archivos que se pueden borrar tranquilo — assets sin usar y la mitad muerta de un par duplicado. Los fondos sobredimensionados se reportan aparte, como cantidad, y nunca se suman a ese número: su ahorro real no se puede saber hasta que vuelvas a codificar el arte. Un reporte que promete megabytes que no puede entregar es uno que dejarías de creer a la tercera vez.

Si el archivo de una sala no lo autoró el Editor de Salas y no se puede parsear, la línea del veredicto lo dice por nombre: todo lo direccionado hacia esa sala queda invisible para los chequeos de lids de abajo, no porque esté limpio sino porque el Doctor no lo puede ver — una sala escrita a mano te cuesta ese punto ciego en vez de un hallazgo adivinado y posiblemente equivocado.

Qué busca#

Cada tipo de hallazgo tiene su sección plegable, con la cantidad y —cuando tiene sentido— el peso en disco.

Sección Qué significa
Referencias rotas Un archivo que el juego va a pedir no está en disco. Es el único hallazgo que significa un juego roto y no espacio desperdiciado: todo lo demás es peso. Casi siempre lo nombra tu proyecto; a veces lo nombra el motor, y la fila te dice cuál de los dos.
Sin usar Archivos que nada del proyecto referencia, más la mitad que sobra de un par fuente/procesado (cuando conviertes una pista, sólo una de las dos sigue sonando).
Traducciones huérfanas Filas de tu tabla de traducción que ya nada puede mostrar.
Lids colgados / vacíos La imagen espejo: contenido que nombra una fila de traducción que no existe, o que existe sin texto en ningún idioma.
Fondos de sala Arte de fondo que carga más píxeles de los que la sala realmente dibuja, así que el sobrante se decodifica y se tira en cada frame.
Animaciones Animaciones lo bastante pesadas como para tensar el presupuesto de bitmaps, y ritmos de frame que no caen en un refresco y por eso se entrecortan.
Audio Archivos WAV lo bastante grandes como para que convenga pasarlos a OGG.

Cada fila enlaza directo al editor que la gobierna, así que un hallazgo queda a un click del lugar donde lo arreglarías.

Recuperar espacio#

Sólo se pueden marcar las filas de Sin usar, y no se toca nada hasta que las marcas — no hay botón de "limpiar todo", a propósito. Marca las que quieras y mándalas a la papelera.

Lee el aviso que está arriba del botón antes de confirmar. En algunas configuraciones el borrado es definitivo en vez de recuperable, y el Doctor te dice cuál de las dos te toca antes de que confirmes, no después. Si dice que es definitivo, se arregla con una instalación de una línea (pip install send2trash) — hazla primero si quieres la red de seguridad.

Devolver los cursores a su lugar#

Casi todas las referencias rotas las tienes que arreglar tú: el fondo de sala o la toma de voz que falta la tienes únicamente tú. Los cursores son la excepción. Todo proyecto usa un juego de cursores de mouse y, salvo que hayas dibujado los tuyos, ese juego es el que trae el motor — así que cuando esos PNG no están en tu proyecto, el editor ya tiene el arte para reponerlos.

Cuando el Doctor lo detecta, aparece Restaurar los cursores de fábrica abajo de la sección de referencias rotas. Copia sólo lo que falta y nunca pisa un cursor que ya esté: si dibujaste tu propio hand.png, se queda tal cual lo dejaste. No hay paso de confirmación, porque no hay nada que perder — la acción sólo agrega archivos.

Tampoco se inventa ninguno. Si tu proyecto pide un cursor del que el motor no tiene arte — uno propio, con el nombre que le pusiste — se omite y sigue apareciendo en el informe, que es la verdad: ése sí lo tienes que poner tú.

Una fila de cursor puede decir que lo pide el motor y no tu proyecto. Eso no es un error de tu proyecto: significa que nunca personalizaste los cursores, así que el motor está usando los suyos por defecto, y ésos esperan que su arte viva adentro de tu proyecto. Es el motivo habitual de que un proyecto hecho con una versión vieja del editor muestre cinco de golpe.

Traducciones huérfanas, y por qué hay dos listas#

Cuando renombras un botón, borras un hotspot o eliminas una opción de diálogo, sus traducciones no se van con él. Se quedan en la tabla para siempre: ocupando una fila, apareciendo en el Editor de Traducción y sin volver a mostrarse jamás. El Doctor las encuentra — pero las parte en dos listas, porque no está igual de seguro de ambas.

Traducciones huérfanas es la lista con certeza. Esas filas están dirigidas a algo concreto —este widget, este hotspot, este ítem, esta opción de diálogo— y el Doctor revisó el proyecto entero y no encontró tal cosa. Cada fila te dice qué desapareció, te muestra el texto que perderías y lista en qué idiomas lo tienes.

Traducciones huérfanas — revisar a mano es la lista prudente. Las líneas habladas no tienen dirección fija: se referencian escribiendo su ID dentro de tu contenido, donde quieras que se digan. El Doctor busca cada una en tu proyecto, pero "no encontré una referencia" no es lo mismo que "no existe ninguna" — así que estas se reportan para que las confirmes, nunca como algo ya resuelto.

Las dos listas se pueden barrer: marca las filas que quieres sacar y aprieta el botón de borrado al pie de esa lista. Cada lista tiene el suyo y actúa sólo sobre sus filas, así que un "marcar todo" en la lista con certeza nunca se puede llevar una fila de la prudente. Nunca viene nada premarcado.

Lee el texto antes de marcar. Cada fila muestra el texto que tiene y en qué idiomas lo tiene, porque eso es lo que estás por perder — se va el registro entero, con todos sus idiomas. Antes de escribir, el Doctor deja una copia de tu tabla de traducción completa en .tmp/bak/, y esa copia es la única forma de volver. Si la fila todavía guarda trabajo que quieres, no la barras: abre el Editor de Traducción desde la fila y mueve el texto adonde corresponde.

La lista prudente es prudente por algo, y el barrido lo respeta: el servidor revisa cada fila de nuevo antes de borrarla y rechaza cualquiera cuyo ID todavía encuentre escrito en algún lado de tu proyecto — aunque la hayas marcado. Esas vuelven en el resultado como conservadas, no como borradas. Lo que no puede revisar es una referencia que viva fuera de la carpeta de tu proyecto, que es justamente de lo que avisa esa lista.

Lids colgados y filas vacías#

Traducciones huérfanas encuentra una fila que ya nada apunta; esta es la dirección opuesta — contenido que apunta a una fila que no está. Líneas que apuntan a la nada lista un #lid que tu contenido referencia y que no tiene fila correspondiente en la tabla de traducción. Este se reporta como error, no como sugerencia de limpieza, por lo que cuesta en el juego: un SAY/NPCSAY de sala que referencia un lid faltante no falla ni avisa — el personaje dice el #lid en crudo y se come la pausa entera como si hubiera dicho una línea de verdad. Al menos se ve; antes era un globo vacío, que era el mismo beat roto pero sin nada en pantalla con qué diagnosticarlo. Suele venir de un guardado interrumpido a medio camino, donde el editor acuña el lid antes de que se escriba el texto que le corresponde.

Filas de traducción sin texto es el caso hermano: la fila existe, pero ningún idioma configurado tiene nada adentro, así que en pantalla rinde lo mismo que una referencia colgada. Ojo con la tentación de barrerlas: no se puede, y a propósito. Una fila vacía significa que la referencia existe y falta el texto — borrarla no limpia nada, la asciende a colgada.

Los dos chequeos sólo miran nombres construidos desde una dirección de sala, hotspot, ítem, diálogo o GUI — la familia acuñada tipo #ref — nunca un literal autorado libremente, porque un overlay que escribiste directo en tu contenido ya tiene el literal mismo como fallback y nunca iba a renderizar vacío.

De qué se calla a propósito#

Un chequeo que grita lobo se termina ignorando, así que varias cosas están en silencio a propósito:

  • Una sala que es grande porque desplaza. Los fondos se juzgan contra el tamaño que la sala declara, nunca contra la resolución de tu juego — así que una calle larga con scroll cuyo arte coincide con lo declarado está bien, y no dice nada.
  • Un WAV que quizás necesitas como WAV. Uno con marcadores de loop, o referenciado de una forma que se rompería al renombrarlo, nunca se sugiere para convertir.
  • Una animación de un solo frame. Eso es una pose fija, no un ciclo, así que no puede entrecortarse y no se reporta como si pudiera.
  • Salas que no puede leer. Una sala escrita a mano, en vez de guardada desde el Editor de Salas, puede no parsear. Antes que adivinar, el Doctor se calla sobre todo lo que apunte a esa sala — prefiere perderse un hallazgo a inventarlo.

El mismo principio recorre todo el reporte: perderse un hallazgo te cuesta algo de disco, pero uno falso te manda a borrar algo que tu juego todavía necesita.

Volver a correrlo#

Re-escanear vuelve a leer el proyecto desde disco. El escaneo es rápido incluso en un proyecto grande, y el resultado se cachea sólo unos segundos, así que un reporte nunca te dice que borres archivos que ya borraste.