🎯 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]?> entonces
Crear 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 finfin
Animació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] finfin
Añ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]fin
Movimiento 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 finfin
Efectos 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)) grados
Añ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]fin
Movimiento 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 finfin
Crear Variables Necesarias
Puntos
, Vidas
, Nivel
, Velocidad
Inicializar 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 finfin
Ajustar 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) segundosfin
Crear 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 clon
Posicionar Variables:
// Hacer clic derecho en las variables en pantalla// Arrastrarlas a posiciones apropiadas:// Puntos: Esquina superior izquierda// Vidas: Esquina superior derecha// Nivel: Centro superior
Indicador 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 clon
Añadir Sonidos
Música de Fondo
// En el escenarioal presionar ⚑por siempre tocar sonido [música-espacial] hasta que terminefin
Shake 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ón
Efecto 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 clon
Guardar Mejor Puntuación:
// Crear variable "HighScore"al recibir [Game Over]si <(Puntos) > (HighScore)> entonces fijar [HighScore] a (Puntos) decir [¡Nuevo récord!] por (3) segundosfin
Crear 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) segundos
Testing 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! 🚀🎮