Desde siempre hemos tenido un montón
de gente interesada en saber cómo se hace un juego, qué necesitan
aprender para diseñar uno, y donde encontrar los pasos para volverse
rico con ellos. Pues bien, esta nueva sección esta dedicada a responderles,
de la mejor manera posible, todas sus inquietudes, sólo hay un par
de cosas que deben recordar. Lo más importante, lo primero que hay
que aprender es inglés, se quiera o no es, hoy por hoy, la lengua
madre de todos los lenguajes de programación y libros al respecto,
esperar por versiones en español o algún otro es quedarse
atrás, lo último, lo mejor, lo más interesante siempre,
o casi siempre, estará en inglés. ¿ok?
Otro punto necesario de recalcar es que
en cuanto desarrollar un juego pasa de ser una mera diversión o
distracción personal, llamémosle hobby, este se convierte
en Software de Entretenimiento y por lo tanto debe obedecer reglas de desarrollo
propias de un complejo sistema de computación, a menos, claro, que
quieran ver como meses de esfuerzo (o años!) se van por la ventana
porque no tuvieron el criterio de utilizar alguna metodología de
desarrollo y testeo de software desde el inicio (la famosa Ingeniería
del Software).
No existe ninguna metodología de
desarrollo de software exclusivamente orientada a los vídeojuegos
por obvias razones, sin importar el resultado, sea un juego de acción,
aventura, Rol, estrategia o un híbrido, detrás de todo y
cada uno de ellos todo lo que hay es código en algún lenguaje,
lo veamos en 3D o 2D isométrico o con cámara dinámica,
sigue siendo un programa, sigue siendo software, de ahí que una
metodología que sirve para desarrollar un sistema de simulación
de flujo de avenidas o un sofisticado procesador de texto, también
podrá servir para un juego. Todo esta en ver que pasos sirven y
cuales no, esto dejado a criterio del equipo de producción.
Por más que muchos resultados parezcan
ser sumamente simples, su desarrollo no necesariamente lo es. Todo depende
de como se trabajó, si su producción fue desde cero entonces
la cosa puede ser súper compleja y además tener un engine
reutilizable, o no. Si elegimos adquirir un engine entonces puede
que el trabajo sea menor. Etcétera. Hay mil y un maneras de hacer
sofware, y hay mil y un dos de hacer sofwtare de entretenimiento o vídeojuegos.
También esta el detalle sobre si será sólo para PC,
alguna consola en particular, o tienen planeado desarrollar para varias
plataformas a la vez --considerando sólo leves cambios para cada
una.
Otro punto que es necesario recalcar es
que no hay porque hacer todo siempre desde cero. Muchos juegos de hoy permiten
la creación de mapas, e inclusive pseudo-mapas/niveles sofisticados
que pueden tratarse como un juego compacto e independiente, los famosos
mods. Cuando los recursos faltan pero uno quiere empezar a aprender
cosas nada como explorar los secretos de un juego que permite la realización
de mods, tal el caso de Half-Life, Serious Sam, Max
Payne, Operation Flashpoint y recientemente StrifeShadow,
entre tantos otros.
Lo penúltimo a considerar es que
ningun juego, por más nuevo, bueno y sofisticado que sea tiene un
éxito asegurado, y lo contrario también sucede. En especial
ahora que el mercado no sólo esta empezando a ser saturado por producciones
hechas en EE.UU. pero las realizadas en Europa, Asia y Rusia, entre otros,
lo que termina siendo mucha competencia y cientos de juegos, la mitad de
los cuales nunca ven la luz o no pasan de curiosidades locales. Muchas
veces todo es cuestión de suerte o buenos contactos, como sucedió
con los que hicieron, por diversión, mods como Counter Strike
o Team Fortress, quienes ahora dirigen o participan en el desarrollo
de las versiónes comerciales de esos, secuelas y otros juegos similares.
Como último punto esta el hecho,
rara vez recalcado/considerado, que desarrollar sofware de entretenimiento
de buen nivel incluye una gama de especialidades muy alta y diversa. Tomemos
por ejemplo un FPS con multiusuario y bots. Para el diseño requerimos
analistas de sistemas, para la codificación muy buenos programadores,
para la historia guionistas, para las voces actores, para el engine
3D programadores gráficos, para el multiusuario programadores de
Redes, para los mapas y niveles diseñadores, para los gráficos
y el entorno diseñadores gráficos, dibujantes y artistas,
para los bots y otras tantas cosas programadores con conocimientos de Inteligencia
Artificial. Por nombrar algunos. Obvio que muchos tendrán varias
especialidades, pero aún así, es un trabajo fuerte, que requiere
de una alta inversión de tiempo y concentración, y que no
siempre se verá adecuadamente remunerado. Esto no quiere decir que
si hay las ganas y el deseo un grupo sin experiencia previa o especialidades
definidas no pueda desarrollar un vídeojuego --decente.
Aclarado todo lo anterior, ahora si será
posible adentrarnos en el interesante, sofisticado y complejo mundo del
desarrollo de software en general y del de entretenimiento en particular.