Objetos persistentes
Clase 12 de 14 • Curso de Game Maker Studio 2: Interacción y Ataque de los Personajes
Resumen
¿Qué es el scope y cómo afecta nuestras variables en GameMaker Studio?
El desarrollo de videojuegos en GameMaker Studio requiere una comprensión clara de los diferentes tipos de variables y cómo estas interactúan en el contexto del scope. En GameMaker, encontramos variables de instancia, locales y globales, cada una con funciones específicas y vitales en la estructura de nuestro código.
Tipos de variables en GameMaker
-
Variables de instancia: Representadas en azul, son accesibles solo desde la instancia en la que se crean. Para acceder a ellas desde otra instancia, usamos la sintaxis
objeto.instancia
. -
Variables locales: Aparecen en color amarillo. Son útiles porque se autodestruyen después de ser usadas, evitando consumo innecesario de memoria. Se suelen usar en scripts o funciones específicas.
-
Variables globales: Identificadas en color rosado, utilizan la estructura
global.variable
. Son accesibles desde cualquier parte del juego una vez definidas, permitiendo una interacción expansiva en diferentes objetos y scripts.
¿Qué es la persistencia y cómo influye en la lógica de nuestro videojuego?
La persistencia es un concepto clave en el desarrollo de juegos. Se refiere a la habilidad de un objeto para mantener su estado de un room a otro. Esto es crucial para asegurar que ciertos datos, como la salud de un personaje, no se reinicien al cambiar de escenario.
Implementación de objetos persistentes
En este proyecto, se aborda el problema de la salud del jugador reseteándose al cambiar de room. Para ello:
- Crear un GameController persistente: Se crea
objGameController
sin un sprite, solo para manejo de datos. - Definir variables como
playerHP
: Inicializar la salud del jugador enobjGameController
para que almacene la vida a lo largo del juego.
Ajuste del orden de creación de instancias
Se destaca la importancia del orden en que se crean las instancias en un room. Es vital asegurar que objGameController
se instancie antes que el objeto jugador para que la variable playerHP
esté disponible cuando se necesite.
¿Cuáles son los errores comunes y cómo solucionarlos?
Los errores en programación son inevitables, pero el conocimiento de su raíz y la habilidad de solucionar problemas incrementa la eficiencia del desarrollo.
Errores y soluciones prácticas
-
Variables no definidas: Un error común es intentar acceder a variables antes de que sean instanciadas. Solución: Ajustar el orden de las instancias en el diseño del room para asegurar que los objetos críticos como controladores estén instanciados primero.
-
Errores de tipografía: Es fácil introducir errores de dedazo, como llamar una variable incorrectamente. Solución: Revisar y verificar la nomenclatura de las variables.
-
Stacking de instancias: Cuando instancias persistentes crean duplicados innecesarios, es crucial implementar controladores que verifiquen si una instancia ya existe antes de crear una nueva.
Consejos para un desarrollo efectivo
- Probar constantemente: Ejecutar el juego periódicamente para detectar y corregir problemas antes de que se amplifiquen.
- Guardar con frecuencia: GameMaker automáticamente guarda el proyecto al correrlo, pero mantener copias seguras es recomendable.
- Participar en comunidades: Compartir y discutir en foros y comunidades de desarrollo enriquece el aprendizaje y proporciona soluciones colaborativas.
La programación en videojuegos requiere atención al detalle y una mentalidad analítica. Con cada error y ajuste, fortalecemos nuestras habilidades como desarrolladores. ¡Continúa aprendiendo y experimentando con GameMaker Studio para perfeccionar tus proyectos!