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.

Servicios web para aplicaciones de escritorio

Esta aplicación de escritorio consiste en un Editor de Artículos en base a Plantillas de Revistas que construí en el año 2007 con tecnología .NET para una tesis doctoral de una profesora del Departamento de Traducción e Interpretación de la Universidad de Granada. Para ver más información usar el siguiente PDF [ aquí la tesis ].

El programa puede utilizar servicios web para descargar bases de datos de revistas con reglas para ejecutar sobre dos documentos del paquete Office Word ©: el documento del artículo y el de tablas asociado al primero, en conjunto forman un proyecto, con notas, información y referencias bibliográficas,etc. Para hacer esto crea instancias de la aplicación del editor de textos y se controla que esté correcto desde Sciscribe para poder enviarlo a la Revista elegida facilitando así la corrección de los revisores.

Otro servicio web comprueba la versión de la aplicación para ser actualizada.

Este otro caso es de una aplicación de una base de datos compartida en Red con acceso por usuario,

generador de informes, listados de tareas asociadas, etc. hay una aplicación web que administra los avisos que recibirá cada usuario en su pc, es del año 2005-2007 y el vídeo sólo muestra el login pero es sólo para dar un ejemplo de como pueden comunicarse las aplicaciones web con las de escritorio a través de servicios, almacenando los datos en bases de datos locales o remotas y restringiendo el acceso por privilegios de usuario de la manera más fuerte, software compilado para la arquitectura en la que se ejecuta…

Existen más ejemplos de aplicaciones de escritorio que se comunican por medio de internet con una base de datos administrada remotamente…por ahora es suficiente…

Aplicación web de anuncios con mapas de Google Maps

Hace unos años estuve realizando pruebas con aplicaciones web simbióticas usando mapas de Google Maps, finalmente algunos clientes me pidieron productos basados en dichas pruebas, en el vídeo mostrado a continuación se muestra una de ellas, del dominio inmorusticas.com, está en fase muy beta aunque las críticas son bien recibidas, como siempre…, pero se puede dislumbrar lo fácil que es construir sin un equipo de diseño, sólo con mi trabajo como programador un sitio web como los que actualmente están “dando caña” en internet.

Está optimizado para SEO  (posicionamiento) aunque siempre se puede mejorar, por ejemplo, las direcciones amigables google se pueden optimizar más aún.

Los puntos fuertes de una aplicación de este tipo,son

  • la mayor parte hecha en AJAX con Php y MySQL
  • tiene un generador interno de formularios basado en plantillas
  • se pueden añadir categorías, subcategorías
  • inmuebles con una interminable lista de campos a rellenar, entre los que cuentan: la posición en el mapa con coordenadas de latitud y longitud, imágenes que aparecen animadas, datos de varios tipos como requisitos de la información de la propiedad
  • varias formas de indexar los elementos: filtros a medida, por provincia, categoría, subcategoría, precio,etc.
  • una administración interna para dar de alta/modificar/eliminar/aceptar las fichas en cada categoría así como los servicios e información del sitio web.
  • sindicación de contenidos por RSS: compartir los anuncios para con otros servicios web con XML

y seguramente me dejo algo más pero es sólo para dar una idea de lo que se puede hacer, básicamente todos los sitios de anuncios utilizan este tipo de estructura y arquitectura de la información, además de los mapas de Google Maps, claro.

Ejemplo de Aplicaciones para iPhone, iPad, iPod – 2D, 3D – juegos

Este juego se está realizando como proyecto personal, mientras realizo el resto de aplicaciones para clientes; se trata de un juego de rol multijugador online, se paga por tener una cuenta, durante la fase beta (ahora mismo se encuentra en fase pre-alfa) se podrá jugar a la primera pantalla de un mundo con dos personajes.
Está construido con lenguaje LUA sobre el motor Shiva de Stonetrip.com, la comunicación con el servidor se realiza mediante PHP y el protocolo HTTP usando paquetes de información encriptados en XML generados a partir de los datos cotejados de la base de datos MySQL con una aplicación web en PHP con el framework zenphp.
El punto fuerte del juego es el algoritmo generador de mundos que permite reiniciar el juego manteniendo los personajes o usando unos nuevos pero con una experiencia nueva para el jugador.
Los gráficos se están realizando por la empresa BlueShadowGames de Granada.
Este video muestra el progreso de la fase pre-alfa del juego:

PHP : MySQL o NoSQL – Digg, Facebook y Twitter hablan

Vía vivalinux, Leyendo por la red encuentro un enlace a la notica de que Twitter se cambiaba de MySQL a una arquitectura de NoSQL basada en el proyecto de Cassandra: un sistema de administración de base de datos distribuído diseñado para manejar enormes cantidades de información replicadas en varios servidores comunes y corrientes (parecido a lo que hace Tuenti con sus granjas de caché). Usa el modelo de datos del BigTable de Google ejecutado sobre una infraestructura similar a la de Dynamo usada por los servicios web de Amazon (como S3).

Pero lo más importante es que, como una solución NoSQL, Cassandra rompe con la larga historia y teoría de las bases de datos relacionales por otro modelo con un almacenamiento híbrido del tipo “clave ⇒ valor”, totalmente descentralizado y mucho más fácil de escalar que MySQL.

Por ese motivo es que ahora Digg quiere alejarse tanto como puedan de LAMP, comenzando por cambiar MySQL por Cassandra:

“Nuestra principal motivación para alejarnos de MySQL es la creciente dificultad de construir una aplicación de alto rendimiento con escrituras intensivas en un conjunto de datos que crece rápidamente, sin un final a la vista.

A medida que nuestro sistema crece, es importante abarcar múltiples data centers para redundancia y performance de la red, para agregar capacidad o reemplazar sin downtimes nodos que hayan fallado. Planeamos continuar usando hardware común y continuar asumiendo que fallará regularmente. Todo esto es crecientemente difícil con MySQL”.

Cassandra fué desarrollado por Facebook, pero ahora es de código abierto amparado bajo la licencia de Apache. Digg también prometió comenzar a contribuir sus propias mejoras y modificaciones.

En el procesamiento para cloud compiting hace falta una base de datos realmente rápida…

Si os preguntáis por qué se sigue utilizando MySQL o NoSQL en lugar Oracle que tiene un mayor rendimiento: leer más quizás el tema de las licencias responda a vuestra pregunta…

O también puede responderos a esta pregunta el que la facilidad tiene que ver mucho con HTML5 y su WebSimpleDB API

NoSQL se basa en unos patrones, además del de “tipo=>valor”, aquí teneis un tutorial…veamos un ejemplo sencillo usando la librería más simple que he encontrado en PHP: OneFile -> OneSQL:

 
// SELECT * FROM $table WHERE $property $comparator
//                    $value        AND $prop2 $comp2 $val2
function nosql_selectAllFromWhereAnd($table,$property,$comparator,
$value  ,$prop2,$comp2,$val2)
 
// UPDATE $table SET $prop=$new
//                    WHERE $searchfor=$value         AND $also=$val
function nosql_updateSetWhereEqualsAnd($table,$prop,$new,
$searchfor,$value  ,$also,$val)
 
// DELETE FROM '$table' WHERE '$property'
//                  $comparator '$value' AND  '$prop' $comp '$val'
function nosql_deleteFromWhereAnd($table,$property,
$comparator,$value,$prop,$comp,$val)

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.

footer
jbelon © | sitemap.xml