Iniciar juego de arqueros en el bosque

Arqueros en el bosque con C – Programación de juego

Hoy te mostraré la solución a un ejercicio propuesto en C que trata sobre hacer el juego de Arqueros en el bosque.

El juego consiste de un bosque representado mediante una cuadrícula, como el que se presenta a continuación (la vista es aérea):

Cuadrícula de bosque para arqueros - Juego programado en C

Cuadrícula de bosque para arqueros – Juego programado en C

Donde X representa un árbol. El objetivo del juego consiste en que 2 jugadores (arqueros) ingresan al bosque por extremos opuestos (J1 en 9-A y J2 en 1-I) y cada uno debe de intentar eliminar al otro.

Para ello en cada turno un arquero podrá elegir entre moverse un lugar o disparar un flechazo. Los flechazos se mueven en línea recta, una distancia máxima de 5 metros (asuma cada celda 1 metro).

Por otro lado un jugador no puede moverse a una celda donde hay un árbol y las flechas no pueden traspasarlos. Al recibir un flechazo el jugador pierde el round, las partidas se componen de 3 round y las gana el que gane 2 de ellos.

Veamos entonces cómo hacer este juego en ANSI C, C, C 99 o como le quieras llamar. Obviamente es compatible con C++.

(más…)

Jugando Gato (tres en línea) programado con Java

Tres en línea en Java – Programación de juego

Hoy veremos cómo programar el juego de 3 en línea en Java. Este juego también es conocido como Tres en raya, ceros y cruces, triqui, gato, juego del gato, Gatos o gatitos, dependiendo del país.

Jugando Gato (tres en línea) programado con Java

Jugando Gato (tres en línea) programado con Java

El juego consiste en un tablero de 3 x 3 en donde se coloca un círculo o una cruz. El juego se desarrolla por turnos y cada jugador elige ser Cruz o Círculo. Gana el jugador que pueda conectar 3 símbolos formando una línea recta.

En el juego que vamos a programar en Java vamos a tener la opción de jugar contra un amigo (otro ser humano), contra el CPU (con una pequeña inteligencia artificial)  o enfrentar al CPU contra sí mismo.

(más…)

Invocar caballo en Horizon Zero Dawn

Invocar montura en Horizon Zero Dawn de PC

En cierto momento de la historia del juego Horizon Zero Dawn vamos a poder montar a las máquinas denominadas Galopadores, que básicamente son una montura o un caballo con el que podemos viajar más rápido.

Si desmontamos al mismo y nos alejamos un poco, existe una forma de llamarlo para que venga corriendo hacia nosotros (así como en Zelda BOTW, aunque no creo que sea el único que lo hace).

En este corto post te mostraré cómo invocar a la montura si juegas en PC, y estoy seguro de que más de uno llegará aquí buscando:

  1. Cómo invocar montura
  2. Llamar a caballo
  3. Invocar a galopador

(más…)

Abrir las repeticiones

Extraer repeticiones de Smash Bros Ultimate en Switch

En este post te enseñaré cómo copiar, compartir o publicar las repeticiones que se guardan al jugar Super Smash Bros. Ultimate.

Como bien sabes, al final de cada encuentro se da la opción de guardar la repetición. Luego podemos ir al baúl y crear un vídeo a partir de esa repetición.

El problema está en que el vídeo no aparecerá en la galería ni podremos subirlo a una red social como se puede hacer con las imágenes y vídeos capturados.

Justamente el propósito de este post es mostrarte cómo ubicar esos vídeos y copiarlos a tu computadora para que puedas subirlos a YouTube, tus redes sociales, etcétera.

(más…)

Tres en línea (tic tac toe) programado en C - Desarrollo del juego

Tres en línea en C – Programación de juego

En este post de programación en C te mostraré el código fuente para el juego conocido como tres en línea, tres en raya, tic tac toe, gatitos, etcétera.

Tres en línea (tic tac toe) programado en C - Desarrollo del juego

Tres en línea (tic tac toe) programado en C – Desarrollo del juego

He programado el juego en C estándar así que se puede compilar en varios sistemas operativos, y también se puede compilar con un compilador de C++.

El juego de tres en línea que he desarrollado en C soporta el modo jugador contra jugador, jugador contra CPU (con una pequeña inteligencia artificial) y CPU contra CPU. A lo largo del post te explicaré el código y cómo es que funciona cada parte del programa.

Por cierto, en este caso el juego se desarrolla en la consola pero se le puede agregar una interfaz usando alguna librería como Allegro.

(más…)

Compilando primer programa de Allegro 5 en Windows

Compilando Allegro 5 con GCC en Windows

En este post te mostraré cómo compilar programas con Allegro (librería para desarrollo de videojuegos en C y C++) desde Windows usando el compilador gcc y obviamente Allegro en su versión 5.

Compilando primer programa de Allegro 5 en Windows

Compilando primer programa de Allegro 5 en Windows

A lo largo del tutorial te enseñaré cómo instalar el compilador, agregarlo a la PATH, incluir los headers y cosas necesarias de allegro para finalmente compilar nuestro hola mundo con Allegro 5 .

(más…)

Jugando conecta 4 en C sharp (c#)

Conecta 4 en C# con pequeña Inteligencia Artificial

En este post de programación en C# también conocido como C sharp te enseñaré el juego de Conecta 4. He programado este juego para que se pueda jugar en la consola, pero obviamente puedes adaptarlo a una interfaz gráfica.

Jugando conecta 4 en C sharp (c#)

Jugando conecta 4 en C sharp (c#)

El código escrito en C# simula completamente el juego, y permite jugar en modo humano contra humano, humano contra CPU (con una pequeña IA) y también en modo CPU contra CPU.

A lo largo del post te enseñaré los detalles de este juego, mismo que se basa en mi otro programa ya escrito en lenguaje ANSI C.

(más…)

Zelda BotW - Estado de Link

Zelda Breath of the Wild – Mapa con todos los santuarios y semillas Kolog

Desde hace unos días o meses he estado jugando a Zelda BotW. Sé que es un juego que salió por allá por el 2017, pero incluso así me ha gustado bastante.

Bien, dentro del juego hay que visitar santuarios para obtener orbes, recoger semillas Kolog para ampliar la alforja, etcétera. En total son 900 semillas y 120 santuarios.

Muchos santuarios se encuentran a simple vista y solo hay que descubrirlos, aunque para otros hay que hacer una prueba heroica.

En fin, cuando ya llevamos un tiempo considerable de tiempo, buscar los santuarios se hace un poco difícil, así como las semillas Kolog, por eso es que siempre nos viene bien un mapa del juego para que nos muestre todo los santuarios o puntos de interés.

En este post te mostraré dónde encontrar un mapa interactivo de Zelda Breath of the Wild.

(más…)

Mastermind en Java - Ejecución del juego por consola

Mastermind en Java – Programación de juego

El juego Mastermind en Java trata de hacer una implementación, por consola, de un juego del mismo nombre pero con algunas modificaciones. Es algo así:

Realizar el juego en Java por consola en donde el programa piense una contraseña aleatoria (el usuario puede elegir si la misma puede o no contener repetidos, la clave serán dígitos del 0 al 9) y el usuario trate de adivinarla.

Si el usuario no acierta, el programa debe dar pistas por cada dígito de la contraseña:

  • En caso de que el dígito esté en donde debería estar, se coloca un * como pista
  • En caso de que el dígito sea parte de la contraseña, pero no esté en la posición correcta, se va a indicar con un _
  • Finalmente, si el dígito no forma parte de la contraseña entonces se indica con un espacio en blanco

Cuando el usuario acierte la contraseña se debe indicar el número de intentos.

Veamos cómo implementar este juego en Mastermind en Java; será muy fácil y entretenido.

(más…)

Juego de Memorama (memoria) en Python con PyGame

Hoy te mostraré un juego que recién he programado usando el lenguaje de programación Python y la librería PyGame.

Se trata del videojuego Memorama, también conocido como Memoria. Es un juego en donde hay varias tarjetas en donde hay que voltearlas y encontrar el par de cada una. El jugador gana cuando encuentra todos los pares de tarjetas.

El juego que he desarrollado en PyGame cuenta con imágenes, música de fondo y sonidos, además de que este Memorama o juego de memoria es totalmente jugable.

Obviamente el código es open source y gratuito, así que puedes descargarlo, probarlo, usarlo y modificarlo a tu gusto.

(más…)

Juego de El ahorcado en Python

En este post te mostraré el juego del ahorcado programado en Python. Voy a poner la demostración y la explicación de cómo fue programado.

Ahorcado (hangman) en Python

Las características de El ahorcado en Python, también conocido como hangman, son:

  • Juega con 6 intentos
  • Coloca la letra y trata de adivinar la palabra antes de que se acaben los intentos
  • Distintas categorías de palabras
  • Gestión de bancos o grupos de palabras con archivos. Es decir, se tiene una base de datos de las palabras
  • Ajustes del juego, para agregar, eliminar o editar palabras y grupos de palabras
  • Selección del grupo de palabras para jugar. Al iniciar, se selecciona una palabra al azar.
  • Muestra las instrucciones para jugar al ahorcado

Veamos ahora el código, la demostración y explicación de este programa en Python.

(más…)

Tetris en JavaScript – Open source

En este post te mostraré el juego de Tetris programado en JavaScript puro, totalmente gratuito y open source.

Este juego de bloques está programado con JavaScript y utiliza canvas para pintar el juego. También utilizo Bootstrap para el diseño de los botones y la página en general, con un poco de SweetAlert para las ventanas.

Aunque se vea sencillo de hacer, es uno de los trabajos que más me ha costado realizar y del cual me siento más orgulloso. Fue complejo (para mí) comprender toda la lógica para las colisiones, rotaciones, eliminación de filas, movimiento de piezas, límites, etcétera.

Entre las características del juego encontramos:

  1. Sonidos: música de fondo, sonido cuando la pieza no se puede rotar, cuando se hace una fila completa y cuando el tetrominó toca el suelo
  2. Colores: cada pieza tiene un color aleatorio elegido en tiempo de ejecución
  3. Rotaciones: las piezas se pueden rotar para acomodarlas y acumular puntos
  4. Compatible con móviles: debido a que es web, he agregado unos botones para poder jugarlo en móviles, pero también se puede jugar con el teclado
  5. Código abierto: puedes modificar el juego, el tablero, la longitud, velocidad, piezas, rotaciones, etcétera.
  6. Port de tetris: se comporta como cualquier juego de tetris normal
  7. Pausa del juego: el juego se puede pausar o reanudar en cualquier momento

Veamos entonces los detalles de este juego programado en JS. A lo largo del post te mostraré cómo es que este juego está programado, también te dejaré una demostración y el código completo.

Nota: figura, pieza y tetrominó serán usados como sinónimos en este post.

(más…)

Dibujar arreglo en Canvas de JavaScript

En este artículo de programación te mostraré cómo pintar o dibujar un arreglo (array, vector, como lo conozcas) en un canvas de JavaScript, logrando hacer una cuadricula.

Es decir, a partir de una matriz en JavaScript, dibujar una cuadricula en Canvas. Esto es útil por ejemplo al hacer un juego como snake, pues si tratamos todo como un arreglo, podemos desarrollar el juego en el mismo y luego solo pintar la matriz en el canvas.

(más…)