{}const=>[]async()letfn</>var
Lua

Escribe tu primer juego en Lua, incluso si nunca has programado

Creamos nuestro primer juego «Adivina el número» en Lua: paso a paso, claro y con un resultado divertido.

К

Kodik

Autor

4 min de lectura

Lua es un lenguaje de programación fácil y rápido que se utiliza a menudo en juegos, aplicaciones e incluso microcontroladores. Su sintaxis es muy simple, por lo que es ideal para principiantes. Lua se utiliza en proyectos conocidos: por ejemplo, en Roblox, Angry Birds, World of Warcraft y muchos otros juegos.

🎮 Qué vamos a hacer en este artículo

Juntos crearemos una sencilla pero fascinante juego "Adivina el número". Este es un juego de texto en el que el ordenador piensa un número aleatorio, y tú (o el jugador) intentarás adivinarlo. Todo esto se hace con la ayuda de comandos básicos en Lua. Este juego te ayudará a entender cómo funcionan variables, condiciones, ciclos y entrada de datos del usuario.

El programa será completamente funcional, y no solo podrás ejecutarlo, sino también modificarlo o complementarlo. ¿Listo? ¡Vamos! 🚀

🧩 Por qué Lua es ideal para principiantes y desarrolladores de juegos

  • Sintaxis simple — se lee casi como un texto normal

  • Mínimo de exceso — escribes la lógica de inmediato, sin «vinculaciones» innecesarias

  • Inicio instantáneo — copia, pega y ejecuta en línea

  • Realmente se utiliza en los juegos — por ejemplo, en Roblox y Defold

🔥 100.000+ estudiantes ya están con nosotros

¿Cansado de leer teoría?
¡Hora de programar!

Kodik — una app donde aprendes a programar con práctica. Mentor IA, lecciones interactivas, proyectos reales.

🤖 IA 24/7
🎓 Certificados
💰 Gratis
🚀 Empezar
Se unieron hoy

🛠️ Cómo construir un juego simple paso a paso

Te proponemos empezar con los clásicos: los juegos "Adivina el número".

Lo que hace el juego:

  1. El ordenador piensa en un número del 1 al 10

  2. El jugador intenta adivinar en 3 intentos

  3. El juego dice si has ganado o no

Código listo (se puede insertar en Replit):

math.randomseed(os.time())

local secret = math.random(1, 10)
local attempts = 3

print("Hi! I thought of a number from 1 to 10.")
print("You have " .. attempts .. " attempts to guess!")

while attempts > 0 do
  io.write("Enter number: ")
  local guess = tonumber(io.read())

  if guess == secret then
    print("🎉 Hurray! You guessed it!")
    break
  else
    attempts = attempts - 1
    if attempts > 0 then
      print("❌ Incorrect. Attempts left: " .. attempts)
    else
      print("😢 Alas, you lost. The number was: " .. secret)
    end
  end
end

🔍 Analizamos en detalle el código del juego «Adivina el número»

math.randomseed(os.time())

⏱️ Esta línea «siembra» el generador de números aleatorios con la hora actual. Esto es necesario para que el juego adivine un nuevo número cada vez. Sin ella, el programa elegirá el mismo número cada vez que se ejecute.

local secret = math.random(1, 10)

🎯 Con la ayuda de math.random elegimos un número aleatorio del 1 al 10. Este es el número que el jugador debe adivinar.

local attempts = 3

📉 Establecemos el número de intentos, en nuestro caso tres.

print("Hi! I thought of a number from 1 to 10.")
print("You have " .. attempts .. " attempts to guess!")

💬 Mostramos el saludo y las instrucciones. El operador .. combina cadenas y variables.

while attempts > 0 do

🔁 Ejecutamos un ciclo que se ejecutará mientras el jugador tenga al menos un intento.

  io.write("Enter number: ")
  local guess = tonumber(io.read())

⌨️ Solicitamos la entrada. io.read() lee la línea y tonumber() la convierte en un número.

  if guess == secret then
    print("🎉 Hurray! You guessed it!")
    break

✅ Si el usuario adivinó el número, felicítalo y sal del ciclo con break.

  else
    attempts = attempts - 1

❌ Si no lo adivinaste, reduce el número de intentos restantes.

    if attempts > 0 then
      print("❌ Incorrect. Attempts left: " .. attempts)

📢 Te informamos de cuántos intentos quedan.

    else
      print("😢 Alas, you lost. The number was: " .. secret)
    end
  end
end

🏁 Si los intentos han terminado, muestra un mensaje de pérdida y muestra el número correcto.

💡 Lo que aprendes mientras escribes este juego:

  • Trabajar con variables: secret, attempts, guess

  • Utilizar entrada/salida: io.read(), print()

  • Escribir condiciones: if / else, ==

  • Trabajar con ciclos: while

  • Usar números aleatorios: math.random

🎮 Todo esto en el formato de un juego real que puedes ejecutar, modificar y mejorar.

Si quieres aprender a programar de forma humana, sin estrés, con tareas claras y apoyo, ven a Kodik.

  • 📚 Cursos paso a paso de Lua, Python y JavaScript

  • 🤖 Asistencia de IA si algo no está claro

  • 💬 Canal de Telegram, donde los principiantes y los experimentados se ayudan mutuamente

🎯Deja de postergar

¿Te gustó el artículo?
¡Hora de practicar!

En Kodik no solo lees — escribes código de inmediato. Teoría + práctica = habilidades reales.

Práctica instantánea
🧠IA explica código
🏆Certificado

Sin registro • Sin tarjeta