Página 12 de 15

Re: Proyecto Aquanoids: el videojuego

Publicado: Sab, 22 Ago 2015, 13:44
por elborra
$this->bbcode_second_pass_quote('na_th_an', 'N')o, se pueden poner todos los EXTERNs que queráis. El EXTERN siempre vuelve al siguiente comando del script, no interrumpe. Sólo interrumpen BREAK, REENTER, REHASH, WARP_TO y WARP_TO_LEVEL. Si miráis los scripts de leovigildo veréis millones de EXTERNs encadenados.

El lunes podré ponerme a mirar los scripts. Me ayudaría (no sé si lo has hecho ya; en ese caso enlázame) que me explicases en palabras qué quieres conseguir hacer.
Tienes toda la razón na_th_an (sabes que yo estoy aquí para ayudar y confundir en partes iguales XD), no se si esto a mi me ocurriá porque modifique cosas en su tiempo, o la versión que usaba tenía algun break... pero desde entonces nunca suelo usar más de un extern XD... sin embargo probando de nuevo funcionan perfectísimamente :oops: :oops: :oops:

$this->bbcode_second_pass_quote('NeilParsons', 'P')ues, por ejemplo, en la pantalla de comienzo del juego es posible incluir más de un comando EXTERN y aquí sí funciona perfectamente esta cláusula que escribí:

$this->bbcode_second_pass_code('', ' IF FLAG 6 = 0
THEN
# Imprimir texto de inicio del juego
SET FLAG 6 = 1 -- Pongo otro valor para que no se tenga que repetir todo de nuevo
EXTERN 0
EXTERN 1
REDRAW
END')

Quizás por lo que comentas tendría que reescribir las líneas de otra manera. En cualquier caso, te he dejado un privado, elborra.

Como verás eran dos tonterias que tenías mal escritas y que OBJECT_COUNT <> n no existe. En el privi te dejo extern.h y el spt arreglados.

Re: Proyecto Aquanoids: el videojuego

Publicado: Sab, 22 Ago 2015, 16:16
por na_th_an
Dicho esto, si a alguno os hace falta mucho el OBJECT_COUNT <> n, añadirlo a msc es un rato. Sólo hay que pedirlo.

Los temas con objetos y llaves automáticas están muy verdes en el scripting y es normal que traigan bugs porque no los usamos desde hace un montón, así que todo lo que veáis que podría mejorar el tema proponedlo.

Re: Proyecto Aquanoids: el videojuego

Publicado: Sab, 22 Ago 2015, 21:02
por NeilParsons
$this->bbcode_second_pass_quote('na_th_an', 'D')icho esto, si a alguno os hace falta mucho el OBJECT_COUNT <> n, añadirlo a msc es un rato. Sólo hay que pedirlo.


Pues al final no me va a hacer falta, al menos en mi caso.

Por fin, gracias a elborra, se ha conseguido arreglar un problemilla que tenía con el scripting y me ha mejorado el contenido de extern.h, con lo que ya se ha salvado un escollo más que se me había presentado desde hace dias para imprimir en pantalla unos textos en unas circunstancias especiales (conseguir los tres objetos primordiales del juego, al recoger el tercer y último de ellos en cualquiera de las tres ubicaciones donde era posible esta situación), con o sin todas las baterías (PLAYER_NUM_OBJETOS) en nuestro poder.

Lo último en lo que he estado metiendo la manija han sido unas leves modificaciones en el mapeado, cubriendo finalmente algunos huecos, que consideraba como algo incoherentes. He probado estas últimas modificaciones y os puedo adelantar que, aunque parezca que no, es posible llegar a determinados sitios. Estoy poniendo el nivel de dificultad bien alto... :mrgreen:

Ya solo me queda ajustar finalmente el nivel de energía inicial del robot (en config.h) (se acabó eso de empezar con una ventaja de 99 unidades de energía... hala, a cascarla... :lol: :lol: ) y darle a la tecla con el beepola. :parsons: :parsons:

Después, es posible que vuelva a revisar la versión "redux" para cambiar el diseño de buena parte del tileset, el mapeado, la colocación de los enemigos, etc... para que se diferencie de alguna forma respecto del juego "oficial" e incluirlo como "bonus extra" con el fichero definitivo conteniendo todo el material que considere oportuno.

Y pensando en una futurible edición física, hasta tengo un boceto dibujado a lápiz de la carátula del juego. :mrgreen:

Re: Proyecto Aquanoids: el videojuego

Publicado: Sab, 22 Ago 2015, 22:28
por NeilParsons
Música hecha y compilada en los dos formatos (assembly listing y song data only) y, teniendo como referencia otros ejemplos, ubicado todo a partir de la dirección 60000 y colocados dentro de la carpeta /mus del proyecto. En total, ocupa 1143 bytes. :cheer:

Me figuro que los archivos creados en la compilación de la música se tienen que renombrar a compiled.asm y song_data_only.asm, respectivamente. ¿Es así o no, y si hay que hacer algo más?

Re: Proyecto Aquanoids: el videojuego

Publicado: Sab, 22 Ago 2015, 22:58
por NeilParsons
Por cierto, relativo a la directiva PAUSE_ABORT (en config.h viene comentado como que son las teclas H para pausar e Y para abortar la partida), me he dado cuenta mientras testeaba las betas que no es la tecla H la que se tiene que pulsar para detener o pausar la partida, sino la J.

Re: Proyecto Aquanoids: el videojuego

Publicado: Dom, 23 Ago 2015, 00:33
por na_th_an
Para poner música hay que editar el archivo \dev\sound\music.h (o \dev\music.h, depende de la versión de MK2) y cambiar los datos de la canción por los de la tuya. Tienes que sustituir a partir de donde pone ".musicdata" con el código que exporta beepola. Además, hay que cambiar las etiquetas del formato "etiqueta:" de beepola por ".etiqueta" de z88dk (si tu editor de textos es bueno podrás hacer una sustitución por expresiones regulares que te lo hará automáticamente, si no toca ir una a una).

Una de las cosas en mi interminable lista de "to-do" es automatizar este proceso.

Lo de la tecla de pausa seguramente será que me equivoqué al poner el scancode de la tecla en el código. Lo corregiré el lunes.

Re: Proyecto Aquanoids: el videojuego

Publicado: Dom, 23 Ago 2015, 03:10
por NeilParsons
Etiquetas en mayúsculas en un archivo (el generado por el beepola) y en minúsculas en el otro (el que tengo que reemplazar). Supongo que es indiferente como se reconozcan, ¿no? Aparte, comparando ambos, me encuentro con instrucciones comentadas con un "beware!". ¿Qué significa?

codigo2.png
codigo2.png (21.8 KiB) Visto 24156 veces


Espero no meter la pata en esta operación, no sea que al entrar en el menú de opciones suene un cuesco mal parido o algo peor...

Re: Proyecto Aquanoids: el videojuego

Publicado: Dom, 23 Ago 2015, 14:20
por na_th_an
Pasa del player, déjalo como estás o puedes liarla. Tienes que sustituir sólo los datos de la canción, que están bastante más abajo, donde pone ".musicdata". Verás que empieza con una tabla de los patrones, y luego los patrones que hayas creado. Es bastante "visual". Y sí, no importa que pongas mayúsculas o minúsculas. Las partes en ensamblador son "case insensitive" (las de C no, son case sensitivísimas).

Te recomiendo que te bajes e instales WinMerge. Con él puedes abrir los dos archivos y él te los empareja y te compara linea a linea. Verás como hay cosas diferentes al principio, pero pasa de ellas. Vete al final y sustituye sólo los datos de la canción.

Re: Proyecto Aquanoids: el videojuego

Publicado: Dom, 23 Ago 2015, 16:33
por NeilParsons
$this->bbcode_second_pass_quote('na_th_an', 'P')asa del player, déjalo como estás o puedes liarla. Tienes que sustituir sólo los datos de la canción, que están bastante más abajo, donde pone ".musicdata". Verás que empieza con una tabla de los patrones, y luego los patrones que hayas creado. Es bastante "visual". Y sí, no importa que pongas mayúsculas o minúsculas. Las partes en ensamblador son "case insensitive" (las de C no, son case sensitivísimas).

Te recomiendo que te bajes e instales WinMerge. Con él puedes abrir los dos archivos y él te los empareja y te compara linea a linea. Verás como hay cosas diferentes al principio, pero pasa de ellas. Vete al final y sustituye sólo los datos de la canción.


Oido cocina... gracias Nath!

Re: Proyecto Aquanoids: el videojuego

Publicado: Dom, 23 Ago 2015, 21:10
por NeilParsons
¡¡¡Listo!!! No sé me ocurre qué más meter para que el juego no se quede tan corto. Es fácil de terminar en 10 o 15 minutos y aún así me he quedado con ganas de meter algo más, que le dé algún aliciente. Es mi primer juego, así que para el próximo, si me atrevo a hacer otro con el MK2, ya me pensaré algo más complejo y que cuente con varios niveles. Y llegado ese caso, cualquier colaboración siempre será bienvenida.

En resumidas cuentas, el juego es el siguiente: hay que buscar y recoger 15 baterías que hay dispersas por el fondo del mar, escondidas entre rocas, galerías y restos de antiguos naufragios. Además, hay tres objetos que también han ido a parar al océano por circunstancias bastante extrañas: un barril lleno de cerveza "Aupa Tristeza", una lata de combustible (alguien lo tiraría al mar por accidente o por pura malicia) y una cartera herméticamente cerrada con documentación "top secret". Estos tres objetos son tan imprescindibles de recoger como las baterías.

Algunas galerías están cerradas a cal y canto y las llaves no andan muy lejos (en el archivo final, se adjuntará un PDF con el manual y donde se contará a santo de qué aparecen estos cerrojos en un lugar inhóspito para el ser humano). Hay que tener cuidado con las estalactitas de ciertas grutas y con algunos animales.

Logrados todos los objetos, hay que volver al punto de partida, regresando al interior de la base submarina.

Controles en el teclado:

Q - Salto <--- pulsando más tiempo esta tecla se puede llegar más lejos a ciertos sitios
A - Acción (coger objeto)
O - Izquierda
P - Derecha
J - Pausa
Y - Abortar partida

Aquanoids-3.2-MK2.rar
(37.79 KiB) Descargado 1604 veces


Se ha reducido la energía inicial de 99 a 60 unidades. Si alguien me aconseja bajar un poco más el nivel de energía, así lo haré. Se puede llegar, bien justito de ello, al final.

NOTA: Tras recoger algunas baterías, aparecerán en su lugar cápsulas de energía que aumentarán en 10 puntos nuestro consumo energético. Solo hay que fijarse bien al entrar y salir en determinadas zonas. No siempre están a la vista.

:corchoneta: :corchoneta: :corchoneta: