viernes, marzo 24, 2006

He vendido el alma de todos ustedes al Demonio, jejeje... bueno, aún no.

Buenos días:
Me complace informar que he estado hablando con José Carvajal (Kote Carvajal) acerca de una "alianza estratégica" para sacar adelante el proyecto Tythalos.

Se lo que estan pensando:
Noooooooooooooo! El Kote noooooooo! etc etc etc...

Pero existen varias razones por las que pienso que podría ser una buena idea:

1.- Eliminar de una vez el problema del diseño de personajes (a cambio de permitir a Multiverze studio, ex Kotecomics, la generación de contenido adicional y participacion en las ganancias que esto signifique).
2.- Difusión (NO Extrema... !%"%&!#") a través de la generación de este contenido adicional incluso antes de la fecha de la 1° beta (lease comics, etc).
3.- Financiamiento directo y la posibilidad de postular en bloque a fondos concursables y proyectos de incubación (siendo "apadrinados" por Multiverze).
4.- Mayor formalidad del proyecto y apoyo en recursos.
5.- La posible conversion del proyecto en uno 100% comercial lo que permitiría efectivamente pagar a los que colaboren en la realización de este.

Ahora cuales son las razones por las que podría ser una mala idea:

1.- Eliminación de la caracteristica de OpenSource del software de Tythalos (aunque me aseguraron que esto no sucedería ya que la gente dispuesta a financiar
es abogada por lo general del OpenSource)
2.- La posibilidad de perdida de control (en pro de la comercialidad) en el desarrollo de conceptos para el proyecto .
3.- La posible perdida de gananciales en el aspecto merchandising ya que como los diseños de personajes serían propiedad de Multiverze, estos podrían exigir una participación sobre otros conceptos como la historia (al generar comics por ejemplo).
4.- La posibilidad de tener que trabajar con una carta Gantt estricta (en caso de la conversión del proyecto a uno comercial) implica que mucha gente podría sentirse sobre-presionada y abandonar.

Por favor, gente que lee este BLOG, denme su opinion, ya que todavía no hay nada concreto.

martes, marzo 21, 2006

Aspectos de diseño, parte 1: Ancho de banda

Estoy llegando a los diagramas de clases para el Servidor (al menos en papel, todavia no los paso a Visio) y me he puesto a pensar en algo. Es cierto que sería lindo que el juego fuera en tiempo real y fuera más parecido a un ActionRPG que a un RPG por turnos, pero...

¿Cuanto ancho de banda consumiria eso en un servidor con digamos, 100 usuarios?
¿1000 usuarios?

La experiencia dice que para mantener el ancho de banda en un limite razonable se necesitaría:
1.- Limitar la frecuencia de las actualizaciones de las posiciones de los mob's y players, dependiendo del ancho de banda disponible. Eso produce un problema que es muy comun de ver en RO: El fenomeno de la teletransportación de los mounstros (no se en otros MMORPG por que no he jugado ninguno...Guild Wars? )
2.- Pasar parte de la pelota de la resolución de golpe al cliente. Esto funciona bien... en FPS's. En MMORPG's se presta para la aparición de cheats que te permitan pegar a distancias mayores de la permitida o acertar siempre. Es la aproximación que usan en parte Phantasy Star Online y Diablo 2. Diablo 2 solo almacenaba los players en sus servidores y la version original de PSO ni siquiera eso, lo que hacia posible unos Hacks terrorificos (onda el que no tiene un personaje de nivel 99 en el servidor de shthacks, es un perdedor).
3.- Hacer que el juego tenga una arquitectura distribuida tipo p2p... MUY Complejo, y está sujeto a los mismos problemas del punto 2. Es la aproximación que estaba tomando BANDAI NAMCO con .hack fragment, una de las arquitecturas mas raras que he visto para un ORPG... (no no es un MMORPG ya que el mundo no es persistente), en la que cada PC es un Area Server (con sus propios dungeons, etc) que responde a un Matching server central el que provee los servicios de guilds, tiendas, chat, pvp, validación y otros. Es muy parecido a Bit Torrent.
4.- Usar otra forma de juego como el juego por turnos (FFXI)... no es la idea.
5.- Limitar la cantidad de usuarios (TIBIA?). Lo mas chanta, aunque siempre debe estar esa posibilidad.
6.- Limitar la cantidad de jugadores que pueden entrar a un area en un momento determinado (World of Warcraft, creo...), o hacer que los quest sean solo para el grupo que los juega (Guild Wars por ejemplo, en que cada grupo de jugadores tiene su propio mapa privado o las quest machines de Anarchy Online que funcionan de manera similar). Notese que como consecuencia secundaria de esto se limita el "Kill-Steal", pero la jugabilidad no es tan realista (nunca te encuentras con otra persona fuera de las ciudades).
7.- Hacer un protocolo State-of-the-art que sea taaaan eficiente que pueda aguantar un flujo continuo de al menos 4 actualizaciones por segundo para cada conexion y en cada actualizacion pasar la posición de al menos 5 objetos (los numeros son discutibles, lo estoy calculando al ojo). Eso implica que el protocolo no puede estar basado en algo que tenga muchos descriptores (osea ni cagando XML).
Notese que tambien está el impacto en los Locks de cada uno de los objetos del servidor, especialmente el asunto de como los distintos hilos de ejecucion interactuan entre si (Datachannels anyone?).

Acepto sugerencias :)

jueves, marzo 09, 2006

Direct X, Windows Vista y el futuro según J.

Windows Vista...
Finalmente todo el mercado terminará plegandose a el ¿o no?.
Cuando veo la tremenda cantidad de cambios de Hardware y Software necesarios para correr Windows Vista, se me viene a la mente el cambio de Windows 3.1 a Windows 95.
Cd-Keys, BIOS incompatibles, mucha mas RAM para correrlo, cambio del PCI al AGP, cambio de modelo de programación, DirectX, etc...
Ya Microsoft nos hizo pasar por un cambio mucho mas grande que el de Vista y todos lo seguimos. Alguien podria decir "Es que en esa epoca no había alternativa", y que hay de OS/2... Bueno, quizá habria sido salir de la sarten para caer al fuego (azul), pero ya todo el mundo siguio zombificadamente a Mr. William Henry Gates III.
Osea: ¿Construir el futuro o construir basado en el futuro?. ¿Hacer Tythalos en OpenGL con digamos... Java+Ogre y esperar que el proyecto no muera espontaneamente de patentitis (o algo por el estilo) o hacerlo con DirectX9, ya que será soportado por Windows Vista y por Wine (algun día... .Net todavia no funciona en Wine)?.
Por ahora sigo con DirectX9 y tengo la esperanza que el proyecto Mono logre portear algun dia DirectX9 en forma nativa (a menos que les hagan un Patent Blast) o que Wine corra .NET, ya que despues de todo no es tan malo y es lo unico que tiene harto soporte en el mundo de los pc, ya que la unica alternativa, OpenGL, a parte de ser cacho (a menos que tengas apellido Karmack) no se sabe si será soportado a futuro por Microsoft, y como sabemos, Mr. Bill controla el mundo.

(Y no, si alguien hace un framework 3D alternativo, obviamente no correrá en maquinas Bill.)

martes, marzo 07, 2006

¿Fallas de diseño en algo tan grande como World of Warcraft?

Un articulo interesante sobre algunas falencias de diseño que plagan a todos los MMORPG (como concepto). Quizas algunas puedan ser agendables.

El post original:
http://www.gamasutra.com/features/20060222/sirlin_01.shtml

¿Una respuesta?

http://www.gamasutra.com/features/20060224/qhong_01.shtml