Ha pasado, ya, una semana del concurso que comenté en la anterior entrada. Todavía no he empezado a codificar nada, pero eso no quiere decir que no haya empezado.
Esta semana, aparte de pensar cómo será el juego, he estado planificando, escribiendo y haciendo esquemas y diagramas. Mirad, mirad:
Planificar es algo que debería hacerse siempre antes de empezar a programar, pero por desgracia no puedo hacerlo en el trabajo casi nunca porque dice mi jefe que tardo mucho. Y es verdad que se tarda más, pero es que a la larga ahorra mucho trabajo. Perder el tiempo haciendo y repitiendo esquemas permite darse cuenta de dónde van a estar los problemas antes de toparse con ellos, y casi siempre ayuda a encontrar la solución mucho antes de escribir una línea.
Por ejemplo, si os fijáis en la foto que he puesto (pulsad encima para verla más grande, incluso la tecla "Ctrl" y, sin soltar, la tecla "más (+)") veréis que en las dos hojas de arriba a la izquierda hay dibujado un monigote de palos. Esto es porque estudiando cómo dibujar y manejar los personajes, el primer sistema que pensé no me convenció y según lo he cambiado he ido encontrando problemas o cosas que luego me darían problemas. Si hubiera empezado a programar sin hacer esos esquemas me hubiera encontrado inconvenientes a la hora de comprobar las colisiones del jugador y los enemigos con las armas, entre ellos y con el entorno (paredes, muebles, etc.). Hubiera encontrado una solución, sí, pero es que la mejor que he encontrado me hubiera obligado a reescribir prácticamente todo el sistema de dibujado y de colisiones, lo que hubiera sido tiempo perdido.
En definitiva: procurad dedicar un tiempo a la planificación antes de hacer cualquier cosa, no sólo programar. Os facilitará la vida.
Por cierto: El juego se titulará Duke of Dragonfear: Deathland, como homenaje a un juego escrito en BASIC por Tim Hartnell, con cuyos libros aprendí mucho de programación. A ver si en lo próximo que escriba os puedo enseñar ya algo.
