🎯 Objetivo Claro
Recoger tantas estrellas como sea posible para obtener puntos altos.
¡Bienvenido al emocionante mundo del desarrollo de juegos! En esta guía, crearás tu primer juego interactivo usando Scratch 3.0 y Vibelf. No necesitas experiencia previa en programación - te guiaremos paso a paso desde la idea inicial hasta un juego completamente funcional.
Crearemos “Atrapa las Estrellas” - un juego donde el jugador controla un personaje que debe recoger estrellas que caen del cielo mientras evita obstáculos. Es simple pero incluye todos los elementos fundamentales de un buen juego:
🎯 Objetivo Claro
Recoger tantas estrellas como sea posible para obtener puntos altos.
🕹️ Controles Intuitivos
Usa las flechas del teclado para mover tu personaje por la pantalla.
⚡ Desafío Progresivo
El juego se vuelve más difícil a medida que avanzas, con más obstáculos.
🏆 Sistema de Puntuación
Gana puntos por cada estrella recogida y compite por el puntaje más alto.
Al completar este proyecto, habrás dominado:
Antes de empezar a programar, planifiquemos todos los elementos que necesitaremos:
Jugador (Nave Espacial):
Estrellas (Objetos a Recoger):
Obstáculos (Meteoritos):
Movimiento:
Colisiones:
Progresión:
Información en Pantalla:
Pantallas del Juego:
Antes de empezar, asegurémonos de entender los conceptos fundamentales:
Sistema de Coordenadas de Scratch:
Movimiento Básico:
// Mover hacia la derechacambiar x por (5)
// Mover hacia la izquierdacambiar x por (-5)
// Mover hacia arribacambiar y por (5)
// Mover hacia abajocambiar y por (-5)Variables que Necesitaremos:
Puntos: Para llevar la cuenta de la puntuaciónVidas: Número de vidas restantes del jugadorVelocidad: Qué tan rápido caen los objetosNivel: Nivel actual del juegoEventos de Teclado:
al presionar tecla [flecha derecha]al presionar tecla [flecha izquierda]al presionar tecla [espacio]Eventos de Colisión:
si <tocando [Estrella]?> entoncessi <tocando [Obstáculo]?> entoncesCrear Nuevo Proyecto
Añadir Sprite de Nave
Posicionar la Nave
al presionar ⚑ir a x: (0) y: (-150)apuntar en dirección (90)Configurar Tamaño
fijar tamaño a (60) %Movimiento Horizontal:
al presionar ⚑por siempre si <tecla [flecha derecha] presionada?> entonces si <(posición x) < [220]> entonces cambiar x por (8) fin fin
si <tecla [flecha izquierda] presionada?> entonces si <(posición x) > [-220]> entonces cambiar x por (-8) fin finfinAnimación de Movimiento:
// Añadir a los bloques de movimientosi <tecla [flecha derecha] presionada?> entonces cambiar a disfraz [nave-derecha]si no si <tecla [flecha izquierda] presionada?> entonces cambiar a disfraz [nave-izquierda] si no cambiar a disfraz [nave-normal] finfinAñadir Sprite de Estrella
Configurar Tamaño y Posición Inicial
al presionar ⚑esconderfijar tamaño a (40) %Crear Sistema de Clones
al presionar ⚑por siempre esperar (número al azar entre (1) y (3)) segundos crear clon de [mí mismo]finMovimiento de Caída:
al empezar como clonir a x: (número al azar entre (-220) y (220)) y: (180)mostrarpor siempre cambiar y por (-3) si <(posición y) < [-200]> entonces borrar este clon fin
si <tocando [Jugador]?> entonces cambiar [Puntos] por (10) tocar sonido [recoger] borrar este clon finfinEfectos Visuales:
// Añadir al script del clonfijar efecto [brillo] a (número al azar entre (0) y (50))girar ↻ (número al azar entre (1) y (5)) gradosAñadir Sprite de Meteorito
Configurar Propiedades
al presionar ⚑esconderfijar tamaño a (50) %Sistema de Generación
al presionar ⚑esperar (5) segundos // Dar tiempo al jugadorpor siempre esperar (número al azar entre (2) y (4)) segundos crear clon de [mí mismo]finMovimiento y Colisión:
al empezar como clonir a x: (número al azar entre (-220) y (220)) y: (180)mostrarfijar efecto [color] a (número al azar entre (-50) y (50))por siempre cambiar y por (-4) // Más rápido que las estrellas girar ↻ (3) grados // Rotación para efecto visual
si <(posición y) < [-200]> entonces borrar este clon fin
si <tocando [Jugador]?> entonces cambiar [Vidas] por (-1) tocar sonido [explosión] fijar efecto [fantasma] a (50) esperar (0.1) segundos fijar efecto [fantasma] a (0) borrar este clon finfinCrear Variables Necesarias
Puntos, Vidas, Nivel, VelocidadInicializar Variables
// En el sprite del Jugadoral presionar ⚑fijar [Puntos] a (0)fijar [Vidas] a (3)fijar [Nivel] a (1)fijar [Velocidad] a (3)Progresión Automática:
// En el sprite del Jugadoral presionar ⚑por siempre si <(Puntos) > ((Nivel) * (100))> entonces cambiar [Nivel] por (1) cambiar [Velocidad] por (0.5) tocar sonido [nivel-up] decir (unir [¡Nivel ] (Nivel)) por (2) segundos finfinAjustar Velocidad de Objetos:
// En los clones de Estrella y Obstáculo// Reemplazar "cambiar y por (-3)" con:cambiar y por (0 - (Velocidad))Detectar Fin del Juego:
// En el sprite del Jugadoral presionar ⚑por siempre si <(Vidas) < [1]> entonces enviar [Game Over] parar [otros programas en el objeto] finfin
// Manejar Game Overal recibir [Game Over]tocar sonido [game-over]decir (unir [Game Over! Puntos: ] (Puntos)) por (5) segundosparar [todo]Seleccionar Fondo
Fondo Animado (Opcional)
// En el escenarioal presionar ⚑por siempre cambiar efecto [color] por (1) esperar (0.1) segundosfinCrear Sprite de Partícula:
// Nuevo sprite "Partícula"al recibir [crear-explosión]repetir (10) veces crear clon de [mí mismo]fin
al empezar como clonir a x: (posición x de [Jugador]) y: (posición y de [Jugador])mostrarfijar tamaño a (número al azar entre (20) y (40)) %apuntar en dirección (número al azar entre (1) y (360))repetir (20) veces mover (número al azar entre (2) y (8)) pasos cambiar efecto [fantasma] por (5)finborrar este clonPosicionar Variables:
// Hacer clic derecho en las variables en pantalla// Arrastrarlas a posiciones apropiadas:// Puntos: Esquina superior izquierda// Vidas: Esquina superior derecha// Nivel: Centro superiorIndicador Visual de Vidas:
// Crear sprite "Corazón"al presionar ⚑esconderrepetir (Vidas) veces crear clon de [mí mismo]fin
al empezar como clonir a x: (200 + (número de clon * 30)) y: (160)mostrar
// Actualizar cuando cambien las vidasal recibir [actualizar-vidas]borrar este clonAñadir Sonidos
Música de Fondo
// En el escenarioal presionar ⚑por siempre tocar sonido [música-espacial] hasta que terminefinShake de Pantalla al Recibir Daño:
// En el sprite del Jugadoral recibir [daño]repetir (5) veces cambiar x por (número al azar entre (-5) y (5)) cambiar y por (número al azar entre (-5) y (5)) esperar (0.05) segundosfinir a x: (0) y: (-150) // Volver a posiciónEfecto de Slow Motion:
// Al recoger power-up especialal recibir [slow-motion]fijar [Velocidad] a ((Velocidad) / (2))esperar (5) segundosfijar [Velocidad] a ((Velocidad) * (2))Crear Sprite de Power-Up:
// Sprite "PowerUp"al presionar ⚑esconderpor siempre esperar (número al azar entre (15) y (30)) segundos crear clon de [mí mismo]fin
al empezar como clonir a x: (número al azar entre (-220) y (220)) y: (180)mostrarfijar efecto [brillo] a (50)repetir hasta que <(posición y) < [-200]> cambiar y por (-2) girar ↻ (5) grados
si <tocando [Jugador]?> entonces // Efecto aleatorio fijar [efecto] a (número al azar entre (1) y (3))
si <(efecto) = [1]> entonces cambiar [Vidas] por (1) // Vida extra fin
si <(efecto) = [2]> entonces cambiar [Puntos] por (50) // Puntos bonus fin
si <(efecto) = [3]> entonces enviar [slow-motion] // Ralentizar tiempo fin
tocar sonido [power-up] borrar este clon finfinborrar este clonGuardar Mejor Puntuación:
// Crear variable "HighScore"al recibir [Game Over]si <(Puntos) > (HighScore)> entonces fijar [HighScore] a (Puntos) decir [¡Nuevo récord!] por (3) segundosfinCrear Pantalla de Inicio:
// Sprite "Menú"al presionar ⚑ir al frentemostrardecir [Presiona ESPACIO para jugar]esperar hasta que <tecla [espacio] presionada?>esconderenviar [iniciar-juego]
// En todos los otros spritesal recibir [iniciar-juego]// Aquí va el código que antes estaba en "al presionar ⚑"Limitar Número de Clones:
// Crear variable "NumEstrellas"al presionar ⚑fijar [NumEstrellas] a (0)por siempre si <(NumEstrellas) < [10]> entonces esperar (número al azar entre (1) y (3)) segundos crear clon de [mí mismo] cambiar [NumEstrellas] por (1) finfin
// En cada clon al borrarsecambiar [NumEstrellas] por (-1)Sprites que Desaparecen:
Colisiones que No Funcionan:
Juego Muy Lento:
Gameplay:
Visual:
Audio:
Añadir Información del Proyecto
Crear Instrucciones
// Sprite "Instrucciones"al presionar tecla [i]decir [Flechas: Mover | Objetivo: Recoger estrellas, evitar meteoritos] por (5) segundosTesting Final
Crear un Portfolio:
🌈 Múltiples Mundos
Crear diferentes ambientes (océano, bosque, ciudad) con mecánicas únicas para cada uno.
🛸 Naves Personalizables
Permitir al jugador elegir y mejorar diferentes tipos de naves con habilidades especiales.
👥 Modo Multijugador
Añadir un segundo jugador o modo cooperativo donde ambos jugadores trabajan juntos.
📱 Controles Móviles
Adaptar el juego para funcionar con controles táctiles en tablets y teléfonos.
🎯 Misiones Especiales
Crear objetivos específicos como “recoger 10 estrellas azules” o “sobrevivir 2 minutos”.
🏪 Tienda de Mejoras
Sistema donde los puntos se pueden gastar en mejoras permanentes para la nave.
Inteligencia Artificial:
Física Avanzada:
Narrativa:
Al completar este proyecto, has:
Los conceptos que has aprendido se aplican a:
Otros Lenguajes de Programación:
Desarrollo de Juegos Profesional:
Pensamiento Computacional:
Tutoriales Avanzados:
Comunidades:
Herramientas Complementarias:
¡Felicitaciones! Has creado tu primer juego interactivo completo. Este es solo el comienzo de tu viaje en el desarrollo de juegos y la programación. Cada proyecto que completes te dará más confianza y habilidades para crear experiencias aún más increíbles.
Recuerda que los mejores desarrolladores de juegos empezaron exactamente donde estás ahora - con curiosidad, creatividad y la determinación de convertir sus ideas en realidad. ¡Sigue experimentando, aprendiendo y, sobre todo, divirtiéndote creando!
¿Listo para tu próximo desafío? ¡El mundo del desarrollo de juegos te espera! 🚀🎮