Creando un servidor para nuestro juego

Autor original: Polectron

Hace tiempo hice un tutorial explicando cómo llevar un registro del progreso de nuestros jugadores, para llevarlo a cabo era necesario tener un servidor. Tener un servidor suele costar dinero, también podemos montarnos uno en casa pero es muy tedioso, por suerte hay algunas empresas que ofrecen servidores básicos gratuitos.
Si este tutorial lo hubiera hecho hace un par de años os hubiera recomendado http://000webhost.com/ pero hace poco han cambiado la interfa< del panel del control y ahora es una mierda, por eso ahora os recomiendo https://x10hosting.com/ que también es gratuito y es incluso mejor.

No os voy a explicar el proceso para crear la cuenta porque es extremadamente sencillo... Tenéis un gran botón en el medio de la página que pone CREATE MY ACCOUNT lo pulsáis y os va a llevar a lo largo de un sencillo proceso, una vez terminado el registro tendréis un botón que pone Open cPanel junto a tu nombre usuario y el nombre de tu dominio, dadle a ese botón y comencemos con el tutorial.

Nada más empezar nos encontraremos con una interfaz muy sencilla sin casi opciones (podemos poner una bastante más compleja pinchando en Switch Theme, pero con la básica nos sobra)

A partir de ahora nos vamos a tener que conocer 3 conceptos básicos:
  • FTP: Es un protocolo de comunicación que se usa para trasmitir archivos entre ordenadores, es lo que vamos a usar para subir imágenes y archivos PHP al servidor.
  • PHP: Un lenguaje de programación diseñado para páginas web, es el que vamos a usar para comunicar el juego con la base de datos.
  • Base de Datos: Es un sistema de almacenamiento de datos persistente, aquí es donde PHP va a almacenar los datos que recibamos desde el juego.

Para conectarnos al servidor mediante FTP necesitamos un cliente FTP, yo recomiendo usar FileZilla, una vez instalado el programa para iniciar sesión necesitamos los datos de acceso:
En servidor pondremos el nombre de la página web que hemos creado (elmejorjuegopk.x10host.com en mi caso), en nombre de usuario irá el que te haya dado x10hosting y en contraseña la que tu hayas elegido, puerto lo dejamos en blanco, si ahora le damos a Conexión Rápida nos saltará una ventana pidiendo que aceptemos un certificado, lo aceptamos y se comenzará a conectar al servidor.

Una vez conectados veremos 2 listas de carpetas a la izquierda las de nuestro PC y a la derecha las del servidor, siempre que querramos subir algo al servidor hay que subirlo a la carpeta "public_html", haciendo doble click entraremos en ella.
[Imagen: O00eH9b.png]

Actualmente nuestra página web no tiene ningún archivo metido, podemos meter un pequeño index.php que salga cuando entremos a la página mostrando algo de información sobre nuestro juego o incluso podemos montarnos un blog con wordpress.

Para enseñaros como funciona el tema de las bases de datos os voy a explicar como se haría usando el ejemplo del tutorial de seguimiento de jugadores.

Empezaremos configurando la base de datos, para ello en el panel de control de x10hosting nos iremos a la sección Databases y le daremos a Add MySQL Database, nos pedirá un nombre para la DB, en mi caso quedó elmejor2_registro. Una vez añadida la nueva DB haremos click en PHPMyAdmin (esto es un gestor de bases de datos online) elegiremos a la izquierda nuestra base de datos. Nos saldrán varias opciones en la parte superior, a nosotros nos interesa Import para importar una tabla, en este caso la de registros de jugadores, para ello guardaremos el código de la base de datos en un archivo llamado registro.sql y lo subiremos en File to Import, le daremos a Go y ya tendremos nuestra tabla creada.

Continuaremos subiendo el archivo con el código php desde filezilla, en mi caso lo llamé registro.php, antes de subirlo tenemos que hacer un par de cambios en el código:
Código:
$MYSQLSERVER = "localhost";
        $USER = "tu nombre de usuario";
        $PASSWORD = "tu contraseña";
        $DATABASE = "nombre de tu DB";

Una vez montado todo en el lado del servidor meteremos el script de ruby, no sin antes cambiar unos valores, en el juego para que se comunique con el server.

Código:
def pbSendStatus(data)
  begin
    data = {"player_id"=>$Trainer.id, "player_name"=>$Trainer.name, "type"=>data}
    response = pbPostData("TUDOMINIO/registro.php", data, filename=nil, depth=0)
  rescue Exception
    Kernel.pbMessage("Baya, ha habido un error tomto pero peudes jugar")
  end
end

En mi caso quedó:
Código:
response = pbPostData("elmejorjuegopk.x10host.com/registro.php", data, filename=nil, depth=0)

Y con esto terminamos el tutorial, espero que os haya sido útil, recordad que con esto se pueden añadir muchas funcionalidades online a un juego (incluyendo el tema de regalos misteriosos) y con algo de creatividad se podrían crear cosas como un ranking.

Comentarios

  1. Tengo una duda que me impide seguir: En la parte dónde hay que guardar el código de la base de datos en un archivo llamado registro.sql ¿Dónde está ese código? y ¿Dónde está ese archivo?

    Gracias.

    ResponderEliminar
    Respuestas
    1. Tienes que guardarla tú, no hay ningún archivo. Desde el panel de control, guarda el código y crea registro.sql

      Eliminar
  2. Donde se ingresa este código?
    def pbSendStatus(data)
    begin
    data = {"player_id"=>$Trainer.id, "player_name"=>$Trainer.name, "type"=>data}
    response = pbPostData("TUDOMINIO/registro.php", data, filename=nil, depth=0)
    rescue Exception
    Kernel.pbMessage("Baya, ha habido un error tomto pero peudes jugar")
    end
    end

    ResponderEliminar
  3. soy de argentina y no me deja xd

    ResponderEliminar

Publicar un comentario