beasty-console / guides / beasty-integration.md

Trabajar con los demás paquetes Beasty

Cómo usan este logger Beasty Visual Novel y Beasty Save System. Lee esto si tienes más de uno de ellos; si solo tienes el logger, puedes saltártelo.

Cada paquete se vende y se importa por separado, y cada uno funciona por sí solo. Nada aquí es una dependencia que tengas que satisfacer.

Beasty Visual Novel

Beasty Visual Novel loguea a través de su propia fachada, VNLog — una clase envoltorio fina que reenvía cada mensaje al logger que encuentre. VNLog busca este logger por reflexión — por nombre de clase en tiempo de ejecución, sin referenciar el assembly — igual que hace el save system, y cae a UnityEngine.Debug cuando la consola no está en el proyecto. La fachada suma tres cosas por encima de la API:

La consola con logs de Beasty VN, etiquetados por categoría

  • una etiqueta [BeastyVN] en cada mensaje, para que puedas encontrarlos con el campo de búsqueda de la consola;
  • canales por sistema — data, director, stage, streaming, save y verbose — cada uno con su propio interruptor, para que puedas silenciar un área ruidosa sin tocar los sitios de llamada;
  • su propio interruptor maestro, que está activo en el editor y en una development build, y desactivado en una build de lanzamiento por defecto. Una novela lanzada no escribe una línea por cada línea de diálogo que el jugador avanza.

VNLog se apoya en BeastyConsole, así que IsEnabled sigue aplicando: apagar el logger también silencia la VN.

El paquete de la VN no incluye este — la consola es un asset propio. Con los dos en el proyecto, los logs de la VN aterrizan aquí solos, sin cablear nada; sin la consola, la VN sigue compilando y funcionando — sus logs se van a la Consola de Unity y ya está.

Beasty Save System

Beasty Save System tampoco referencia este logger. Lo busca por reflexión la primera vez que loguea algo:

  • si el logger está en tu proyecto, el save system enruta sus mensajes a través de él, y llegan a la Beasty Console clasificados y coloreados;
  • si no está, el save system loguea a través de UnityEngine.Debug.

Por eso ambos assets se distribuyen de forma independiente: nunca necesitas instalar uno para usar el otro.

Advertencia Una consecuencia que conviene conocer. Con el logger presente, las advertencias del save system se enrutan a LogCaution — que es una alerta suave y, para Unity, un log normal. Así que las advertencias del save system dejan de aparecer como advertencias en la propia Consola de Unity, y no disparan Error Pause. Siguen estando ahí, bajo el filtro Caution en la Beasty Console. Los errores no se ven afectados: siguen siendo errores de Unity.

Si prefieres mantener las advertencias del save system como advertencias de Unity, asigna tu propio log sink: implementa IBeastySaveLogSink y asigna BeastySaveLog.Sink, un campo estático de la fachada de logging del save system. Asígnalo en tiempo de ejecución — el campo se resetea en cada Play.

Ver también