Videojuego desarrollado en AS3: Flash + PHP + MySQL + XHTML + jQuery

Como algunos ya sabréis, me dedico al desarrollo videojuegos para cualquier plataforma, éste fué uno de los proyectos que un cliente ( makro.es ) me pidió hace un tiempo.

Se trata de un videojuego tipo Trivial Pursuit con los gráficos de Joan Carles Muñoz, desarrollado durante dos semanas, consiste en una serie de preguntas que pueden definirse fácilmente y sólo una de ellas es correcta. Trae soporte de login usando una conexión a un servidor Apache con PHP y MySQL y en varios lenguajes, en este caso portugués y español. Las preguntas son aleatorias, aunque no hay límite de tiempo, se compite por empezar y acabar antes que nadie así como tener el menor número de fallos posible.

Vídeo:

Está todo hecho de cero, desde los textos hasta los botones pasando por las animaciones, que son interpolaciones hechas con con tweeners.

Cuando un usuario hace el login, se guarda la hora de inicio de la partida, después, al conseguir todos los quesitos, se guarda la información generada: fallos, tiempos, etc.,así como se calcula el mejor tiempo conseguido. Todo va a la base de datos MySQL que se presenta a los encargados de la administración como un listado de personas con sus datos correspondientes, ordenado por los mejores tiempos de partida, esta parte fué elaborada usando jQuery así como las plantillas en XHTML+CSS3.

Estos datos pueden ser exportados como CSV en modo texto para ser importados y tratados posteriormente en programas de análisis de datos como puede ser Microsoft Excel, permitiendo así analizar las partidas de los usuarios y hacer gráficos con ellos.

La parte más complicada fué ,quizás, la de los estados del juego y las firmas de seguridad incluídas usando encriptación en ambas partes, cliente y servidor. En cualquier caso, fué un desarrollo bastante entretenido.

Portal de juegos flash en PHP

Arkatia es el portal sobre el que he estado trabajando recientemente, para un cliente de Valencia: Taykron  Games , que me proporcionó el diseño en imágenes de lo que quería, con el que nuestro querido amigo Joan Carles nos hizo la maqueta en XHTML+CSS +Jscript (algunas cosas en JQuery) y en mi caso ,me encargo de toda la parte de la programación y, diseño de estructuras de datos, base de datos, arquitectura de la información, jerarquía y roles, etc.: Las tareas de un ingeniero jeje, aunque en este caso también he hecho, entre otras, el diseño , maquetación y programación del backend o administración interna.

 

La estructura de clases de esta aplicación web consiste en un modelo vista controlador (MVC) para  juegos, concursos, jugadores ,etc., que están en continúa intercomunicación,i.e., todo centralizado desde una clase principal que gestiona las acciones de los controladores que llaman a las vistas, rellenando los datos proporcionados por el modelo de datos, asociado a tablas de la base de datos.

Los algoritmos de relación entre entidades se ejecutan a través de filtros de metadatos y se mantienen actualizados con metaprogramas y tareas automatizadas y mantenimiento, las búsquedas sin embargo se ejecutan mediante un híbrido entre los filtros like y match, jugando con los números de resultados para la toma de decisiones,difieren un poco frente a la búsqueda de entidades -similares- en que se usa una referencia citada por medio de categorías específicas.

Se construye el sitio web cumpliendo normativas básicas de XHTML válido -W3C – , compatible los navegadores más usados , opciones avanzadas y efectos en JavaScript, optimizado para posicionamiento (SEO), etiquetas opengraph, etc

Las páginas del sitio web se generan en unos milisegundos y se usan dominios y subdominios alternativos para aumentar la velocidad de carga mediante peticiones en paralelo ,esto es algo importante y mientras más se usa la web más fácil es de que sea cargarda en un instante mediante el uso de la caché del servidor y del navegador, sobre todo tratándose de este tema en el que los juegos flash pueden pesar bastante; de hecho la administración dispone de opciones a medida como la carga externa de datos desde una URL proporcionada.

 

Aunque el proyecto ha pasado a la fase final y entrega del mismo, sigue estando en desarrollo y continua mejora.

Características de administración:

  • Asistencia a la metaprogramación
  • Gestión de banners
  • Gestión de usuarios
  • Gestión de concursos
  • Visualización de estadísticas básicas
  • Edición de páginas dinámicas
  • Gestión de configuración del sitio

La parte cliente tiene:

  • Buscador basado en metadatos con diferentes algoritmos
  • Gestión inteligente de SEO (posicionamiento)
  • XHTML validado por la W3C
  • Uso de etiquetas para redes sociales y botones para compartir en estas
  • Sistema de plantillas para gestionar temas distintos
  • Interacción de usuarios siguiendo reglas básicas de publicación

En desarrollo:

  • Sistema de niveles y premios
  • otros

 

Estudio de arquitectura – Proyectos, Galerías, Información

Se utilizó el framework ZENPHP sobre un diseño de Agencia Q4 contra bases de datos de un servidor MySQL y animaciones con Flash y JavaScript en el año 2007.

Se pueden ver como se puede configurar las categorías que se deben mostrar primero, la galería de imágenes y la administración de contenidos : proyectos e información del estudio.

Tecnologías AJAX, configuración XML, CMS

Gestor de contenidos con animaciones AJAX.
La aplicación web usa diferentes capas, la capa del cliente puede presentar el contenido con distintas lógicas, se administra el contenido usando categorías como padres e hijos, donde a su vez pueden distribuirse los contenidos en forma de artículos con la posibilidad de añadir multimedia sin restricciones de ningún tipo. Las galerías de imágenes se muestran con lightbox y se hace uso de google maps y otras tecnologías a disposición. Se muestra el administrador y la sencilla forma de edición que permite una rápida generación de información..


Ver vídeo en youtube con explicaciones

El diseño web fue plasmado por la Agencia Creativa Q4.