Organización
La organización a la hora de crear un videojuego juega un papel muy importante: Muchas veces nuestra cabeza se satura con tanta información y no nos permite trabajar correctamente. Tanto si vas a crear un juego propio como si tienes a un jefe o cliente que te guíe en lo que tienes que hacer, es muy importante que mantengas una organización constante.

Vamos a tomar el ejemplo de que quieres crear un videojuego de plataformas 2D, estilo Mario Bros. Hacer una lista de las características básicas ayuda a organizarte y tener mucha mayor facilidad a la hora de crear el videojuego. No es lo mismo hacer las cosas a lo loco e implementarlas justo cuando te llegan a la cabeza, que guardar todas las ideas en una lista e ir implementando cada una de ellas poco a poco. Créeme que tu mente te lo agradecerá. Siguiendo con el ejemplo del tipo de juego que he sacado, si pretendemos crear un videojuego 2D tipo Mario Bros, deberíamos de tener en cuenta los aspectos básicos y esenciales del juego (el código base sobre el que se desarrollará) es decir, el movimiento, la interacción, el menú, etc. He creado un ejemplo del tipo de lista que se tendría que desarrollar en el caso de que se quisiera realizar este tipo de juego:

Lista de sistemas a implementar
• Crear menú del juego: Nueva Partida, Cargar Partida, Configuración (controles) y Salir 
• Crear movimiento del personaje básico: Moverse, saltar, correr, agacharse, golpear
• Crear enemigo: IA, movimiento y ataque
• Crear bloques interactivos con los que el personaje pueda interactuar al saltar
• Crear monedas para recolectar: Agregar un contador de las monedas que tiene el jugador
• Crear pantalla de Game Over: Al acabar el juego, este se reiniciará
• Agregar tiempo al nivel de juego: Una cuenta atrás que al llegar a 0 te lleve al Game Over
Como puedes ver, he listado las características básicas de un juego de plataformas 2D tipo Mario, algunas de ellas no son fundamentales a la hora de crear un juego de este estilo y se pueden omitir, como por ejemplo, la cuenta regresiva que al llegar a 0 te lleva a la pantalla de Game Over, pero entonces ya estaríamos hablando de otro tipo de juego con características similares.

El caso es que depende del tipo de juego que vayas a hacer deberás listar primero lo más importante y básico a implementar. Olvídate de dejarlo bien diseñado y bonito, lo primero es tener la base de programación y la idea en mente, luego una vez tengas programados todos los sistemas ya entraremos en la fase de adorno, yo esto recomiendo hacerlo siempre cada vez que se quiera trabajar en algún objetivo de la lista.


Por ejemplo, si vamos a crear el menú, primero lo programaremos, e implementaremos un diseño básico (con colores sólidos y diseño vago), y una vez estemos seguros de que el menú esté funcionando correctamente, procederemos a implementar el diseño. Posteriormente, continuaremos con otro de los puntos fundamentales de la lista, y continuamos hasta que no quede ningún sistema más por implementar. Cuando la lista se termine, sería conveniente probar el videojuego y pensar en nuevos sistemas o mejoras, y a raíz de eso elaborar una nueva lista. Es conveniente hacer también una lista con todos los errores que encuentres en el juego.

¡Importante! Si encuentras errores en tu juego, apúntalos todos en lugar de intentar solucionarlos en el momento en el que los encuentras. Dependiendo de la gravedad del error, este no puede ser tan relevante y puede ser solventado en el futuro. Te recomiendo probar tu juego y apuntar todos los errores y cosas que se podrían mejorar en una lista para posteriormente, o más adelante, trabajar sobre la solución de ellos. Es importante que sigas estos pasos, pues uno de los errores principiantes que yo cometí cuando empecé a desarrollar videojuegos fue cuando me propuse solucionar los errores nada más aparecían. Esto es algo muy frustrante, pues al ver que hay tantos errores de golpe no sabes ni por donde empezar, es determinante que mantengas una organización y una planificación adecuada, no pretendas hacerlo todo de golpe. Ya habrá tiempo para solucionar los errores.

Te recomiendo que hagas una carpeta para tu juego especial titulada "Errores y sugerencias de (inserte nombre de juego aquí)", y metas en ella todas las sugerencias, sistemas y errores del juego, a partir de ahí, todo se hace mucho más fácil. Este tipo de organización te salva la vida muchas veces, en lugar de tener muchas cosas en la cabeza solo te centras en lo que te tienes que centrar, por lo que la efectividad es mucho mayor. A la hora de crear un videojuego tienes que ser tú el director del mismo, nadie te va a organizar por ti. Si tú eres el programador, tendrás que organizar tu trabajo (incluso en las grandes empresas de videojuegos, si tú programas un sistema y este da unos cuantos errores, deberás aprender a organizarte para solucionar los errores de una forma mucho más eficaz).


Mantener un orden a la hora de programar
Una de las cosas más básicas a tener en cuenta cuando hablamos del Desarrollo de Videojuegos es el orden a la hora de programar. Pues no es lo mismo escribir un código sin separación ni anotaciones, que hacerlo con ellas. Te recomiendo que al programar siempre hagas uso de las anotaciones, tabulaciones e 'intros' para dejar la estructura de la programación lo mejor posible. Hay que tener en cuenta que más adelante puede que tengas que volver a modificar el código, ya sea para arreglar algún error, mejorar una funcionalidad, o agregar una nueva. Aunque pueda parecerte lógico y entendible, en un futuro seguramente te quedes perdido en tu propio código.

Cuanto más visual tengas el contenido, mejor va a ser luego para hacer modificaciones. Me arrepiento las veces que he querido ir rápido haciendo los códigos y no he dejado anotaciones en ellos. Así mismo, también es recomendable agregar variables que se entiendan. Siempre es conveniente invertir unos segundos demás en dejar el código lo más entendible posible a base de espacios y anotaciones.


Puede que a ti te guste adornar de otra forma tus códigos, o te resulte más intuitivo realizar otro tipo de estructura o poner las anotaciones en otro lugar. Cada uno lo hace de la mejor manera en la que pueda entender el código.