Saltar al contenido
Another Indie Studio

Guardar estadísticas del personaje, decisiones, etc en Unreal Engine 4 (Game Instance)

game instance español ue4

Todo videojuego, a no ser que sea muy corto, debe guardar una serie de variables que permitan al jugador continuar su partida desde donde la dejó guardada. Esas variables pueden ser el nivel en el que nos encontramos, los objetos del inventario, si tomamos la decisión A o B, etc.

Así, en este artículo, vamos a ver cómo podemos lograrlo usando Unreal Engine 4. Debo aclarar que existe un vídeo en donde lo explico en tan solo 5 minutos.

UE4 | Guardar estadísticas del personaje, decisiones, etc (Game Instance)

Creando el Game Instance

Una vez estamos en Unreal Engine 4, nos situamos en la ventana ‘Buscador de Contenido’, hacemos clic derecho, ponemos el cursor sobre el apartado ‘Blueprints’, y seleccionamos ‘Blueprint Class’.

variables ue4

ue4 gameinstance

Acto seguido, escribimos en la casilla que pone ‘Buscar’ lo siguiente: “Game Instance”.

Clicamos en ‘GameInstance’ y le damos al botón verde ‘Seleccionar’.

gi ue4

Debemos ponerle un nombre y ya hemos creado un Game Instance.

Creando las variables a guardar

Como en cualquier BP, podremos crear diferentes variables. Es en el Game Instance donde deberemos crear las variables a guardar. Más tarde aprenderemos como acceder a ellas, modificarlas, y guardarlas.

Para crear una variable nos dirigimos a la parte izquierda, y clicamos en el ‘+’ a la derecha de ‘Variables’.

create variable unreal engine

Para editar esa variable (nombre, tipo, valor inicial, privacidad, etc) basta con seleccionarla, en el apartado ‘Variables’, y a la derecha aparecerán las opciones.

clase variable

Reitero que es aquí donde deberéis crear todas las variables que queráis guardar y acceder a ellas desde cualquier Blueprint o nivel. Siempre podéis ir añadiendo variables conforme el desarrollo de vuestro juego al Game Instance.

Dentro del Game Instance simplemente creamos las variables.

Definiendo nuestro GI.

Ahora tenemos que decirle a Unreal Engine cuál es el Game Instance en el que estamos almacenando las variables. Para ello nos dirigimos a la parte superior, ‘Editar’ -> ‘Ajustes del proyecto’.

proyect settings

En la ventana emergente, nos dirigimos, en la izquierda, a ‘Mapas y modos’. Dentro de ‘Mapas y modos’ hacemos scroll hasta llegar a ‘Game Instance’ y seleccionamos el Game Instance que hemos creado.

Finalmente cerramos la ventana emergente. Se guarda solo.

Cómo acceder a las variables

Por último vamos a ver cómo acceder desde cualquier BP al Game Instance y rescatar esas variables para trabajar con ellas.

Siempre que queramos acceder a una variable, sacamos el bloque ‘Proyectar a [el nombre de vuestro GI]’. En mi caso es ‘Proyectar a Levels_GameInstance’.

cast ue4

En ‘objeto’, ponemos el bloque ‘Obtener instancia del juego’.

Finalmente, escribimos el nombre de la variable que queremos traer, desde el nodo ‘as [el nombre de vuestro GI]’.

Para rescatar y sobrescribir un valor de la variable, escribimos ‘get’ y ‘set’ delante del nombre de la variable, respectivamente.

set and get

Y con esto, ya podemos acceder y modificar las variables desde cualquier Blueprint.

Si algo no ha quedado claro en este artículo, te invito a pasarte por el vídeo de YouTube, con el fin de solucionar tu duda.

game instance español ue4