beasty-visual-novel / reference / assets.md

Referencia de assets

Cada ScriptableObject que creas con Beasty Visual Novel, su ruta exacta en el menú Create y sus campos principales. Usa esta página como consulta. Los conceptos detrás de estos assets se explican en Conceptos fundamentales.

Cuántos de cada uno

La mayoría de los assets son por historia o por personaje. Unos pocos son singletons para todo el juego.

AssetCuántos
VNSettingsExactamente uno, en una carpeta Resources. Creado para ti.
VNContextExactamente uno para todo el juego. Cada historia lo comparte.
LocalizationTableUno para la historia (en el context) más una tabla global de UI (en VN Settings).
CharacterVariableSchemaUno, referenciado por el context.
QuestCatalogUno, referenciado por el context.
VNMusicConfigUno, referenciado por el context.
VNTimeConfigUno, arrastrado al BeastyManager. Opcional.
FreeRoamMapGraphUno por escenario. La mayoría de los juegos tiene uno.
DialogueSceneUno por historia o capítulo. Muchos.
StoryGraphUn grafo raíz por escena, más uno por subgrafo. Muchos.
CharacterDefinitionUno por personaje. Muchos.

El VNContext es el que hay que cuidar. Es el mundo compartido, resuelto en tiempo de ejecución a través de VNSettings.gameContext. Tools > Beasty VN > Content > Create Base Assets (intro + FreeRoam map) nunca lo duplica.

Tabla de consulta

AssetMenú CreateQué es
DialogueSceneCreate > Beasty VN > Visual Novel (Dialogue Scene)El asset raíz de una historia.
VNContextCreate > Beasty VN > Story > VN ContextEl mundo compartido: elenco, variables, objetos, misiones.
StoryGraphCreate > Beasty VN > Story > Story GraphUn lienzo de nodos.
VNSettingsCreate > Beasty VN > Config > VN SettingsConfiguración de todo el proyecto.
VNMusicConfigCreate > Beasty VN > Config > Music ConfigLa cola de música para cada modo de la aplicación.
VNTimeConfigCreate > Beasty VN > Config > Time ConfigDayparts, horas, weekdays, seasons.
CharacterDefinitionCreate > Beasty VN > Characters > Character DefinitionUn personaje.
CharacterVariableSchemaCreate > Beasty VN > Characters > Character Variable SchemaLos campos que tiene cada personaje.
LocalizationTableCreate > Beasty VN > Localization > Localization TableClave por idioma.
FreeRoamMapGraphCreate > Beasty VN > FreeRoam > FreeRoam Map GraphSalas más rutinas de personaje.
QuestCatalogCreate > Beasty VN > Quests > Quest CatalogLas misiones del proyecto.
Los siete tipos de nodoCreate > Beasty VN > Advanced > Nodes > ...Normalmente creados por el grafo, no a mano.

Casi nunca necesitas este menú. Tools > Beasty VN > Setup > Blank Canvas crea el DialogueScene, el VNContext, el LocalizationTable, un StoryGraph raíz y un primer nodo Dialogue en un solo paso. Ver Menús.

DialogueScene

El asset raíz de una historia. Se muestra en el editor como el campo “Visual Novel”.

CampoSignificado
contextEl VNContext compartido. Vacío recurre al context global de VN Settings.
rootGraphEl StoryGraph desde el que arranca la reproducción.
musicOverrideUna cola de música que reemplaza la cola Visual Novel del context para esta historia.
scriptFileEl TextAsset .vnbeasty con el que esta escena se sincroniza.

Ver El grafo de la historia y El script de texto.

VNContext

El único mundo compartido. El elenco, las variables, el diccionario, los objetos, las misiones, las pantallas y la localización viven todos aquí, no en las historias individuales, así que varias DialogueScenes pueden compartirlos.

CampoSignificado
charactersEl elenco: una lista de CharacterDefinition.
variablesTus definiciones de variables (en línea, ver abajo).
characterSchemaEl CharacterVariableSchema que hereda cada personaje.
musicConfigEl VNMusicConfig.
dictionaryEntradas del diccionario (en línea).
localizationLa LocalizationTable de la historia.
languagesLos códigos de idioma que este juego incluye. El índice 0 es el idioma origen.
screensDefiniciones de pantallas de HUD y overlay.
itemsDefiniciones de objetos (en línea).
questCatalogEl QuestCatalog.

StoryGraph

Un lienzo de nodos: un grafo por escena, más uno por subgrafo.

CampoSignificado
nodesLos nodos en el lienzo.
entryNodeIdDónde arranca la reproducción.
exitOutcomesLas claves de resultado que este grafo puede devolver cuando se usa como subgrafo.

Ver Subgrafos.

VNSettings

Configuración de todo el proyecto: el context global, la tabla de localización de UI, el idioma por defecto, el autoguardado, las ranuras de guardado, la profundidad de rollback, y las carpetas usadas para resolver nombres de asset en el script de texto. Vive en una carpeta Resources y se lee en tiempo de ejecución.

Ábrelo con Tools > Beasty VN > Settings > Global Settings o Edit > Project Settings > Beasty VN. Cada campo está documentado en VN Settings.

VNMusicConfig

La cola de música para cada modo de la aplicación: mainMenu, visualNovel, freeRoam y custom. Cada cola tiene clips, un mode, un volume y un crossfadeSeconds.

Ver Audio y música.

VNTimeConfig

Tiempo del juego. Arrástralo al campo Time Config del BeastyManager.

Advertencia Deja ese campo vacío y el sistema de tiempo queda apagado. No se escribe ninguna variable de tiempo y toda condición de tiempo evalúa a false.

CampoSignificado
modeSlotsOnly (dayparts con nombre, sin hora) o Clock (un contador de horas).
daypartsLas bandas con nombre. Cada una tiene un name y, en modo Clock, un startHour.
hoursPerDaySolo en modo Clock.
weekdaysNombres de weekday opcionales. Déjalo vacío para desactivar.
seasons, daysPerSeasonOpcional.
startDay, startDaypartIndex, startHourEl momento inicial de una partida nueva.

Ver Tiempo de juego.

CharacterDefinition

Un personaje: su nombre, su aspecto en el escenario y en la UI, sus estadísticas, y su menú de conversación.

CampoSignificado
idEl id estable usado en condiciones, scripts y código.
displayName, nameColor, textColorCómo se dibujan el nombre y la línea.
allowPlayerRenameDeja que el jugador ponga el nombre de este personaje.
categoryMain o Secondary.
tags, aliasesEtiquetas libres; nombres de display alternativos que una línea puede usar.
expressionsLos sprites de escenario. La clave por defecto es base.
portraitsLos íconos de UI.
deliveryStylesFuente, color y efecto de texto por estado de entrega.
variablesLos campos propios de este personaje, sobre el esquema.
talkMenuLas entradas del centro de conversación.
freeRoamSpriteEl sprite usado en una sala.
listed, listVisibleWhenSi el personaje aparece en la lista de elenco del juego.
showCurrentLocation, showRoutineQué revela la pantalla de perfil.

Ver Personajes y El menú de conversación.

CharacterVariableSchema

Los campos que tiene TODO personaje. Una lista fields de CharacterVariableField (ver abajo). Un personaje puede sobrescribir el valor por defecto y la visibilidad de un campo del esquema sin cambiar el esquema.

Ver Personajes.

LocalizationTable

Una grilla de claves por idioma.

CampoSignificado
languagesCódigos de idioma. El índice 0 es el idioma origen.
entriesUna fila por clave, con una celda por idioma y su estado de traducción.

Hay dos tablas: la tabla de la historia en el VNContext, y la tabla global de UI en VN Settings. Ver Localización.

FreeRoamMapGraph

Las salas por las que camina el jugador, y las rutinas que deciden quién está parado en ellas.

CampoSignificado
entryRoomIdLa sala en la que empieza una partida nueva.
roomsLos nodos de sala: fondo, fondos condicionales, prefab de sala, botones.
routinesUn CharacterRoutine por personaje.

Asigna el grafo al componente FreeRoamScenario en el Stage. Ver Salas de free roam y Rutinas de personaje.

QuestCatalog

Las misiones del proyecto, en una lista quests. Cada misión tiene un id, un título, un dueño, una categoría, un modo de orden, una recurrencia, condiciones de inicio y fallo, efectos de recompensa y penalización, y sus objetivos.

Ver Misiones.

Los siete tipos de nodo

Todo tipo de nodo tiene una entrada Create bajo Create > Beasty VN > Advanced > Nodes >:

Dialogue Node, Choice Node, Decision Node, Flow Node, SubGraph Node, Return Node, Talk Menu Node.

Normalmente nunca los usas. Hacer clic derecho en el lienzo del grafo crea el nodo, lo nombra, lo añade al grafo y lo archiva como sub-asset por ti. Las entradas Advanced existen para el caso raro en que necesites un asset de nodo fuera de un grafo. Ver El grafo de la historia.

Datos en línea: lo que NO es un asset

Cuatro tipos de datos viven dentro del VNContext en vez de ser assets separados. Los editas en la ventana Beasty VN, no en la ventana Project, y nunca creas un archivo para ellos.

Definiciones de variables

Editadas en la pestaña Variables. Una VariableDefinition por variable.

CampoSignificado
keyLa clave en el almacén. Sin prefijo.
kindPlayerInput, Fixed, Enum o Computed.
valueTypeString, Int, Float o Bool.
defaultValueEl valor al inicio de una partida nueva.
promptAtRuntimePreguntarle al jugador por ella cuando empieza el juego.
allowedValuesEl dominio de una variable Enum.

Ver Variables y condiciones y Claves de variables.

Entradas de diccionario

Editadas en la pestaña Dictionary. Una DictionaryEntry por token: key, defaultValue, playerEditable.

Ver El diccionario.

Definiciones de objetos

Editadas en la pestaña Items.

CampoSignificado
idEl id del objeto. También la clave de inventario item.<id>.
iconEl sprite de inventario.
kindKey o Consumable.
maxQuantityEl tope. Give y Take limitan a él y a 0.
nameKey, descriptionKeyClaves de localización.
onUseuseCondition, cannotUseMessageKey, effects, jumpToScene, jumpToNodeId, consumeAmount.

Ver Objetos e inventario.

Campos de variable de personaje

Un CharacterVariableField aparece ya sea en el CharacterVariableSchema (todo personaje lo tiene) o en una CharacterDefinition (solo ese personaje lo tiene).

CampoSignificado
keyEl nombre del campo. La clave en el almacén es @char:<id>:<key>.
typeString, Int, Float o Bool.
defaultValueEl valor inicial.
showOnStatsMostrarlo en la pantalla de estadísticas del personaje.
editableDejar que el jugador lo cambie ahí.
clamp, min, max, stepLímites opcionales.

Ver también