¡Jejeje, vaya con la preguntita!. ¿Cómo se hace un juego de MSX?. Yo diría que con mucho cuidado, jejeje. Voy a intentar responderte con mi manera de hacerlo. Hay muchos modos, cada uno utilizará sus propios métodos y seguirá sus distintos criterios de orden... ¡Allá vamos!.
INTRO.- Conocer la máquina lo mejor que puedas es crucial: modos gráficos, velocidades de transefrencias a VRAM, etc... sólo un conocimiento lo más preciso del hard te hará que exprimas al máximo tus programas. No es estrictamente necesario, pero te ayudará mucho, te lo aseguro.
Pista: hay FAQs muy buenos acerca de la estructura general del MSX, por ejemplo éste.1.- Diseñar el juego: Y no me refiero a gráficos ni a música, me refiero a la conceptualización del mismo. Es decir: ¿Que tipo de juego será?. ¿Cuantas pantallas tendrá?. ¿Qué movimientos harán los enemigos?. ¿Cómo archivaré el buffer de pantalla de la manera más compacta?, etc, etc... O sea, visualizar todo el juego en la mente antes de hacer absolutamente nada. Examinar QUÉ quieres programar y tomar la decisión de CÓMO vas a hacerlo.
Programas a utilizar: servilletas del bar de la esquina, bloc de notas milimetrado, calculadora para ir contando los bytes que te vas a gastar con todo lo que le vas a meter al juego, etc...2.- Diseñar los gráficos y las pantallas: Yo siempre empiezo por los gráficos. Me ayudan a visualizar un poco lo que tengo en mente y en papel, y voy empezando a perfilar el aspecto de los personajes y escenarios, hasta que lo tengo absolutamente todo listo. Y cuando digo todo, me refiero a TODO, hasta ese gráfico oculto que solo sale cuando te pasas el juego sin que te maten. Lo mejor es tener todo el material antes de lanzarse a la labor de programarlo todo.
Programas a utilizar: Editor de imagen que convierta a PCX (Photoshop, por ejemplo) y Karoshi's PCX2MSX para convertirlo a un idioma "legible" para el MSX.3.- Escribir el código: Con todos los gráficos y pantallas hechos, ya puedes empezar a moverlo todo. ¡A programar!. Yo te recomiendo el ensamblador, que es el lenguaje con el que te puedes pegar cara a cara con el MSX, pero también lo puedes hacer en C o en BASIC, claro. El ensamblador y el C lo puedes programar en cualquier editor de textos, como el Bloc de Notas del Windows o el Edit del MS-DOS (yo lo hago así). Hay por ahí editores mejores que hasta te van coloreando instrucciones, etiquetas, etc... Lo primero que hago yo es desarrollar todo el esqueleto del programa con etiquetas falsas, tal que así:
; esqueleto juego más sencillo
; que el mecanismo de un chupete
INICIO:
LOGO_KAROSHI
; menu principal
DIBUJA_MENU
ESPERA_TECLA
;empieza juego
INICIALIZA_VARIABLES
DIBUJA_PANTALLA
LOOP_JUEGO:
MUEVE_PLAYER
MUEVE_ENEMIGOS
COMPRUEBA_COLISIONES
ACTUALIZA_MARCADOR
halt
TRANSFIERE_SPRITES
TRANSFIERE_MARCADOR
jp LOOP_JUEGO
Una vez tengo todo el esqueleto programado, empiezo a programar cada una de las etiquetas una a una, hasta que completo el juego. Depués, a testearlo todo.
Programas a utilizar: Bloc de Notas para escribir el código ensamblador y Karoshi's asMSX para compilar. 4.- Componer la música y los sfx: si, compañeros, lo reconozco. Esto lo hago siempre al final. Así sé de cuantos KBs dispongo para hacer las músicas y hago las que me entren. La verdad es que aquí supongo que cada cual lo hará a su manera, pero yo prefiero que un juego tenga 100 pantallas y 2 músicas que 50 pantallas y 10 músicas.
Programas a utilizar: Karoshi's Caruso para componer y para extraer los datos para inyectar en el código.¡Voilá!, ¡un juego de MSX!. Bueno, esto es, a grandes rasgos, los pasos que yo sigo a la hora de desarrollar un juego para MSX. Seguro que hay quien funciona de otra manera, así que supongo que este thread se irá completando con las experiencias de los demás
Eso sí, te deseo mucha suerte y... ¡no te rindas!