@ agnasg

agnasg


The Battle for Wesnoth

27-07-2015 7:11 AM

Estuve varias horas revisando toda la historia alrededor de The Battle for Wesnoth, juego que se encuentra en desarrollo desde 2003, tiene una gigantesca comunidad, y la lista de desarrolladores excede el centenar. Llegó a mis manos debido a un llamamiento por ayuda, para continuar/reiniciar su desarrollo (mencionado en Hackers News y en Reddit). Es un juego de estrategia basado en turnos, del tipo Tribal Wars, donde tienes tu ejército, tienes fortalezas, y debes usar estrategia para conquistar territorio. Parecido también en cierta forma a Civilizacion. Está desarrollado en C++ y si bien es cierto que parece tener graves problemas de diseño,  particularmente en el sistema que maneja las conexiones, lo puedo recomendar como un buen ejemplo de un gigantesco juego que vale la pena examinar. También es interesante ver las imágenes, íconos, fonts y toda la media en general. Tiene un lenguaje propio WML para diseñar los mapas, e interfase con python y lua.

Enlaces (este es casi el resumen del mes porque creo que voy a estar muy ocupado de aquí al 31)

  • Defininitivamente estoy de acuerdo que esto está fuera de control. Este juego sobre diseño de puentes debe ser prohibido.
  • Hoy aprendí que puedes hacer function overloading en C.
  • Esto estuvo dando vueltas por las páginas de programación hace unas semanas: Los 10 mandamientos de la Nasa para programación. La última,Todo el código debe ser compilado desde el primer día de desarrollo con todos los warnings del compilador habilitados (All code must be compiled, from the first day of development, with all compiler warnings enabled at the compiler’s most pedantic setting) no puede ser más cierta. Curiosamente esto no puede ser más cierto: ayer entregué un sistema (bien bien complicado, del tipo NP), sin ningún warning pero, olvidé validarlo en 32 bits (coloqué una constante MAXCOST como 2147483648, el cual es un número que genera el warning: this decimal constant is unsigned only in ISO C90 (esta constante es unsigned solamente en ISOC90), por lo que ahora tengo que agregar pruebas en un sistema 32bits (mi máquina de desarrollo es 64 bits).
  • A mi no me gustan los juegos de cartas (me refiero a juegos tipo The Gathering o Yu Gi Oh), pero este juego Guild of Dungeoneering tiene un excelente diseño (y el video es super divertido). Estuvo entre los 10 juegos más vendidos hace unas semanas. Reportado aquí.
  • Por cierto que aquí esta la discusión sobre esta loquera de los 30fps. Por ejemplo: juegos con tag 30fps. Pues sí, algunos desarrolladores bloquean el frame rate a 30 para garantizar que el juego funcione bien sin importar el equipo y la tarjeta grafica. Interesante.
  • “La gente recomienda no programar juegos RPG por su gran alcance. ¿De dónde viene el gran alcance en los RPGs?. Hmm. No es una dolencia de los RPGs nada más, el mencionado juego The Battle for Wesnoth adolece del mismo problema por lo que desde el comienzo el desarrollador original alineó el desarrollo del juego con la filosofía KISS (mantenlo simple estúpido (keep it simple stupid)).
  • Lo cual me lleva a esta intesantisima historia sobre el desarrollo del juego The Age of Decadence. El cuento trata sobre las ??? en esta lista: 1) Anunciar un nuevo RPG. 2) ??? 3) Ganancias. En serio que esas son las ??? más angustiosas (angustiantes no parece existir como palabra) de mi vida.
  • Me quedé contemplando durante varios minutos este post en los clasificados de Reddit “Hi there. Im interested in starting a paid/rev share project. (“Hola, estoy interesado en comenzar un proyecto pagado/ganancia compartida”) Recordé horas, días, semanas, proyectos, discusiones, peleas en el chat (las peores y más violentas peleas), proyectos no pagados, frustración, etc, etc, etc. ¿Por qué? Porque hay personas que no saben nada de trabajar en un proyecto, no saben nada de trabajar/producir/llevar ideas a productos terminados, hay personas que no parecen personas. O al menos no parecen comportarse como tales. Porque decir en mi opinión “persona razonable” es una redundancia, toda persona debe ser razonable. Entonces, yo, como desarrollador, o como freelancer, o como programador de juegos decido colocar mis próximos días/semanas en manos de un ser (no consigo otra palabra no tan peyorativa) que tiene una idea y cree saber como llevarla a un producto terminado. Es la pesadilla de convertir el “???” del punto anterior a una realidad. Por ejemplo esta página sobre “Ideas propuestas frecuentemente”, es interesante por las respuestas de los desarrolladores. “Si esa es una interesante idea pero creemos que ese cambio va en contra de la filosofía del juego, es decir, va en contra de KISS, o va a cambiar el balance del juego, etc. Eso es inaceptable para un creador de proyectos que “tienen una idea”. Ellos son la persona de la idea y no se puede discutir razonablemente con ellos. Y el problema es que esta persona, la persona de la idea no hace nada, él solamente tiene su idea y nada más. A este tipo de proyectos yo les digo “no gracias” de entrada sin preguntar siquiera “qué”. Y sobretodo por lo de “ganancia compartida”. Como dice alguien en los comentarios “everything about your post tells me you’re an “idea guy” (“todo en su post me dice que usted es “la persona de la idea”). Y es que si no sabes que  “la persona de la idea” es lo más inútil e irrelevante de un proyecto, deberías estar lo más alejado posible de cualquier foro donde se publiquen anuncios para participar/desarrollar proyectos. ¡Gracias!

Una respuesta a “The Battle for Wesnoth”

  1. jose miguel dice:

    Examinar otros proyectos o postmorten incluso de juegos creados me parece una fenomenal manera de alimentar el peor síndrome de un desarrollador de videojuegos, que es “no publicar videojuegos”. Todo lo que no sea hacer el videojuego en si, aunque suene un poco estúpido retrasara esta acción, que es publicarla en si.

    “idea guy”, me parece genial como concepto, cualquiera que tenga un poco de experiencia como desarrollador, se la han presentado al menos un impresentable en su vida con la frase de “tengo una idea que me gustaría hacer”, a lo que muchas veces se le añade el “pero no tengo idea de programación”, esta persona con conocimientos nulos de gestión de proyectos, y 0% de proyectos completados, pretende asumir el rol de líder, en la mayoría de los casos empieza sin nada de documentación, todo se sustenta en su mente, por supuesto, con muchas lagunas por clarificar. Lo que desembocara en que tires por la borda, horas, días, semanas, meses. Y en el mejor de los casos, acabas con un zombie como proyecto. Como reza el dicho “nunca mas”.