Terminado

Frontend para página de Videojuego: Minecraft (parte 1)

Publicado el 02 Enero, 2014 en Programación y Tecnología

Sobre este proyecto

Abierto

El proyecto consiste en la realización de un frontend Web preferentemente en jQuery, HTML5 y CSS3 con Responsive Design el jual debe dar al jugador opciones extra durante el juego.

Como es la primera vez que uso este medio de contratación comenzaremos con un proyecto pequeño (unas 40Hs) y si me gustan los resultados podríamos continuar de forma indefinida.

Para este primer proyecto es necesario mostrar unos resultados de estadísticas de jugadores en una página, la cual debe permitir poder ver resultados en tiempo real, estadísticas diarias, el mejor de la semana, del mes, de todos los tiempos.

Los datos del backend los genero en Java y los puedo exportar según el desarrollador del frontend necesite, ya sea en MySQL, xml, json, o lo que prefiera.

Se valorará positivamente el conocimiento en el lenguaje de programación PHP.

No tengo prisas con el proyecto, en realidad hay bastante tiempo, ni tampoco necesito que el desarrollador tenga experiencia, si tiene ganas de aprender y se anima bienvenido será.
Por ser un proyecto personal no puedo pagar mucho la hora sobre todo en los primeros meses.

Detalles de esta primera parte:

Tengo un servidor propio que es dónde ejecuta actualmente le juego y la página actual (solo links y un vídeo promcional), el diseño de la página es lo de menos, puedes ver lo que tengo en www.libelula.me y no necesito mucho más por el momento por lo que me ocupo yo de maquetarlo, aunque si haces maquetado también me gustaría que me ayudes con eso.

Como he comentado el server es mío, por lo que puedo instalar módulos o tunear PHP y Apache a tu gusto, siempre y cuando siga funcionando un foro que ahí ejecuta que es dónde los usuarios se registran y expresan sus opiniones, en un futuro también me gustaría reemplazarlo.

Como primer tarea vamos a hacer lo siguiente:
Dentro del juego hay una parte de PVP (Player vs Player), cada vez que un jugador mata a otro se genera un evento y yo lo guardo en MySQL. Me gustaría tener una página como esta: https://oc.tc/Lirba143 (ejemplo de un jugador) mira las distintas pestañas de Stats pvp encounters, etc.
Y añadir algunos filtros más (el mejor del día, de la semana, del mes, de todos los tiempos, etc)

Respecto a la db, el tema es que tengo que crearla, se me había ocurrido una tabla para registrar todos los eventos cuando un player mata a otro, algo como:

create table if not exists `kill_events` (
  `id` int(11) not null auto_increment,
  `server_id` int(11) not null,
  `timestamp` timestamp not null default current_timestamp,
  `killer` varchar(20) not null,
  `killed` varchar(20) not null,
  `details` varchar(50) not null,
  primary key (`id`)
) engine=innodb default charset=utf8 auto_increment=1 ;

y luego los índices correspondientes en función de las queries que hagamos, me apaño bastante bien con dbs y con php, así que cuando vea tus queries hago yo los ídices.

El requisito: Representar algo similar a las estadísticas de Overcast Network para cada uno de nuestros servidores: https://oc.tc/Lirba143

Para esto se necesitan 2 entradas de datos:
1) El evento de muerte de un jugador en manos de otro, eso dispara una función que yo tengo y ahí puedo escribir lo que quiera dónde quiera y en el formato que quiera, así que tu mandas.
2) Las imágenes (caras del jugador que mata y del jugador que es muerto), utilizaremos la api de minotar, que nos devuelve la imagen dando el nombre del jugador: https://minotar.net/
Se puede hacer de otra forma (que me gusta mas), que es recortar recomponer la imagen que minecraft.net entrega cuando el server pide un skin, pero esto lo dejamos para una segunda entrega.

La representación deberá ser:

1) A nivel de servidor (como octc tenemos varios servidores, pero esto sería solo una condición más de la query de dónde obtengas los datos a representar, es decir que lo que tendré que pasarte es Server y Player en lugar de solo player para obtener las estadísticas de un jugador.
2) Estadísticas: https://oc.tc/Lirba143#stats son unas cuantas cuentas muy simples: La suma de muertes (deads), la suma de asesinatos (kills), Muertes / asesinatos (kd), media de asesinatos entre cada muerte (kk), Dias jugados (days played) este dato te lo paso yo, creo que lo suyo sería en otra tabla ¿player_timeplayed? o algo así.
3) Pestaña PVP encounters (https://oc.tc/Lirba143#warlock) Esta es un query de la primera tabla, a mi me gustaría mostrar todos en lugar de los últimos como hacen los de octc, no obstante depende de quien sea la responsabilidad de paginar, si me lo paginas tu lo hacemos así, sino hacemos un limit 30 y ya.
4) Pestaña de Objetivos: A diferencia de Overcast Network nosotros tendremos objetivos completamente distintos por servidor. Me gustaría tener la libertad de escribir texto rico e imágenes ¿cómo hacemos? ¿Te doy una línea HTML por cada registro y la pintas tal cual?
5) Sanciones: Idem anterior.

Las tareas serían maquetacion y desarrollo, del diseño nos ocuparemos nosotros.

Categoría Programación y Tecnología

Plazo de Entrega: No definido

Habilidades necesarias