LinuxParty
Los juegos casuales son extremadamente populares y muy lucrativos, y es fácil saber por qué. No todas las personas de todos los grupos de edades están interesadas en jugar online videojuegos de disparos en primera persona contra hordas de adolescentes con reflejos tan rápidos como la velocidad de la luz. Algunas veces, es más interesante jugar videojuegos donde tiene tiempo para pensar y realizar una estrategia o donde la meta es cooperar unos con otros para ganar el juego.
Lo genial sobre los videojuegos casuales desde la perspectiva de los desarrolladores es que son mucho más fáciles de construir que los videojuegos intensivos en gráficos de disparos en primera persona o de deportes. Así que es más fácil para un solo desarrollador, o para un grupo de desarrolladores, producir una primera versión de un nuevo videojuego original.
En este artículo, pasamos a través de las bases para crear un juego de línea de tres casual de multijugador en red. El servidor del videojuego es una aplicación web basada en MySQL y PHP con una interfaz XML. La parte frontal es una aplicación nativa de Android que funciona en teléfonos de Android.
El fondo inicia con una base de datos simple de MySQL que tiene dos tablas. El Listado 1 muestra el esquema para la base de datos.
DROP TABLE IF EXISTS games; CREATE TABLE games( id INT NOT NULL AUTO_INCREMENT, primary key ( id ) ); DROP TABLE IF EXISTS moves; CREATE TABLE moves( id INT NOT NULL AUTO_INCREMENT, game INT NOT NULL, x INT NOT NULL, y INT NOT NULL, color INT NOT NULL, primary key ( id ) ); |
La primera de las dos tablas es la tabla de los juegos, que sólo tiene el ID exclusivo del juego. En una aplicación de producción, probablemente tenga una tabla de usuarios, y la tabla de juegos incluye los IDs de usuario de ambos jugadores. Para hacerlo simple, sin embargo, renunciaré a este enfoque para concentrarme en las bases de almacenar los datos del juego, la comunicación entre el cliente y el servidor y la construcción de la parte frontal.
La segunda tabla es la tabla de movimientos, que incluye los movimientos individuales para el juego dado, así que tiene cinco columnas. La primera columna es el ID exclusivo del movimiento. La segunda columna es el ID del juego al que aplica este movimiento. Después vienen las posiciones 'x' y 'y' del movimiento. Estos valores deben estar entre 0 y 2 para 'x' y 'y', ya que cuenta con una red de tres por tres. El último campo es el "color" del movimiento, que es un entero que indica X u O.
Para construir la base de datos, primero use mysqladmin para crearla y después use el comando mysql para ejecutar el script db.sql como se muestra aquí:
% mysqladmin --user=root --password=foo create ttt % mysql --user=root --password=foo ttt < db.sql |
Esta etapa crea una nueva base de datos llamada "ttt", que tiene el esquema del juego de tres en línea.
ahora que tiene el esquema, necesita crear una forma de iniciar un juego. Para esto, usted cuenta con un script llamado start.php, como en el Listado 2.
<?php header( 'Content-Type:text/xml' ); $dd = new PDO('mysql:host=localhost;dbname=ttt', 'root', ''); $sql = 'INSERT INTO games VALUES ( 0 )'; $sth = $dd->prepare($sql); $sth->execute( array() ); $qid = $dd->lastInsertId(); $doc = new DOMDocument(); $r = $doc->createElement( "game" ); $r->setAttribute( 'id', $qid ); $doc->appendChild( $r ); print $doc->saveXML(); ?> |
El script comienza por conectarse a la base de datos. Después ejecuta una sentencia INSERT en la tabla de juegos y recupera el ID que fue generado. Desde ahí crea un documento XML, añade el ID a una etiqueta de juego y exporta el XML.
Necesita ejecutar este script para poner un juego en la base de datos, ya que la simple aplicación de Android no tiene una interfaz para crear juegos. Este es el código:
$ php start.php <?xml version="1.0"?> <game id="1"/> $ |
Ahora ya tiene su primer juego. Para ver la lista de juegos, use el script games.php que está en el Listado 3.
-
Android
- Google comienza a añadir funciones de bloqueo antirrobo a los teléfonos Android
- Cómo conectar Linux y Android y por qué deberías hacerlo
- Scrcpy: muestra y controla tu dispositivo Google Android a través del escritorio Linux
- Cómo instalar y utilizar Android Debug Bridge (adb) en Linux
- Eliminar el software espía de su teléfono puede resultar complicado. Estas son tus mejores opciones
- Android 14 Preview 1 está disponible, prohibirá oficialmente la instalación de aplicaciones antiguas
- Android 13 puede ejecutar Windows 10, 11 y distros Linux en el móvil.
- Samsung puede descontinuar los teléfonos inteligentes Galaxy Note de gama alta
- El nuevo procesador Snapdragon 888 de Qualcomm impulsará los buques insignia de Android de 2021
- Google lanza Android Enterprise Essentials dirigido a pymes
- Google quiere que Android use el kernel regular de Linux
- HarmonyOS: el Sistema Operativo de Huawei, compatible y que podrá ejecutar apps de Android
- Google bloquea Huawei por orden de Trump, no sólo Google también Intel, Qualcomm y otros grandes fabricantes «ULTIMA HORA: EE.UU. Retrasa su veto 3 meses»
- Hacking con tu móvil smartphone android
- Fallo en Android permite secuestrar el móvil con sólo una foto