Bueno, tengo algunas dudas sobre el modo 128K que quiero saber antes de ponerme a trabajar con el en mi nuevo proyecto.
¿El compresor de mapas finalmente funciona bien en este modo? Al final del hilo viewtopic.php?f=16&t=1606 dice que seguía testeando algo que pasaba con enems.h
Lo de los cambios de nivel ¿se puede hacer de manera automática en plan llega a X pantalla se carga ese nivel y si vuelve a Y pantalla carga otro nivel o el anterior? Así tengo varias zonas con sus propios tiles y sus 4 enemigos, que ver los mismos 4 en todo el juego se hará muy repetitivo la verdad.
De momento esto es todo. Gracias por adelantado.
Dudas sobre el modo 128K
Moderador: na_th_an
Re: Dudas sobre el modo 128K
Buenassss, si no recuerdo mal el problema se generaba por el tamaño custom de pantalla que le metí a la churrera. Son tantos los cambios que he ido haciendo para adaptar el espacio que ahora mismo no sabría decirte 100% seguro si se trataba como digo de un bug "custom"o no; ya que hoy por hoy la carga de los niveles/enemigos/set de tiles está cambiado completamente: se va cargando/guardando a cada cambio de pantalla (y toda la información está en memoria extendida.
Siento no poder ayudarte más al respecto.
Siento no poder ayudarte más al respecto.
Re: Dudas sobre el modo 128K
Ummm - creo que no tienes "WARP_TO_LEVEL" en la churrera (está en el Mt Engine Mk2 de Ninjajar, eso sí). Con eso lo tendrías muy fácil...
No teniéndolo, te lo podrías fabricar tú modificando levemente el juego. Por ejemplo, dándole un valor a FLAG 31 (por ejemplo) y haciendo un WIN GAME para terminar el nivel. En el motor podría comprobarse el valoar del FLAG 31 y dependiendo de dicho valor saltar a otro nivel, automáticamente. Sería una modificación bastante sencilla.
No teniéndolo, te lo podrías fabricar tú modificando levemente el juego. Por ejemplo, dándole un valor a FLAG 31 (por ejemplo) y haciendo un WIN GAME para terminar el nivel. En el motor podría comprobarse el valoar del FLAG 31 y dependiendo de dicho valor saltar a otro nivel, automáticamente. Sería una modificación bastante sencilla.
Como diría Rorshach: "Urm..."
- son_link
- Mensajes: 467
- Registrado: Mar, 01 Oct 2013, 11:49
- Ubicación: Atlantis, Galaxia Pegaso
- Contactar:
Re: Dudas sobre el modo 128K
Pues si es sencilla entonces vale. Y si no puedo usar el compresor de mapas, pues intentare no usar muchos tiles por nivel y punto. Hoy empezaré a planificar un poco el mapa para ir haciéndome una idea de como conectar los niveles, y de malo hacer un mini mapa para testear esto.
Re: Dudas sobre el modo 128K
Teniendo libertad para conectar diferentes niveles, no creo que necesites el compresor de mapas. A fin de cuentas, los niveles van comprimidos en la RAM extra y se descomprimen sobre la RAM baja. Con que dejes espacio para 20 pantallas creo que va que chuta... Y eso son 20x150 = 3000 bytes, que tampoco es demasiado.
Ninjajar tiene 273 pantallas, pero sólo hasta 21 "a la vez" en memoria. Goku Mal tiene 118, pero sólo hasta 25 a la vez.
Ninjajar tiene 273 pantallas, pero sólo hasta 21 "a la vez" en memoria. Goku Mal tiene 118, pero sólo hasta 25 a la vez.
Como diría Rorshach: "Urm..."
- son_link
- Mensajes: 467
- Registrado: Mar, 01 Oct 2013, 11:49
- Ubicación: Atlantis, Galaxia Pegaso
- Contactar:
Re: Dudas sobre el modo 128K
Joder, pues con esas cifras podría hacer un juego mazo de largo. Pues entonces sin compresor de mapas.
Re: Dudas sobre el modo 128K
El compresor de mapas viene genial para un juego de 48K o si necesitas muchas pantallas a la vez, pero pudiendo ir cambiando y tal de nivel, deja de ser necesario.
En primer lugar es interesante que te empapes bien el whatsnew.txt cuando se describe cómo se montó Goku Mal. Es importante porque los recursos se generan de otra manera y te tiene que quedar bien claro cómo funciona el librarian (los diferentes recursos que se guardan en RAM extra tienen un número de recurso que necesitamos para la lista de niveles y cosas así). Yo, en cuanto encuentre un rato (tengo ya una cola de cosas que mirar) veré cómo hacer la modificación de la forma más sencilla posible.
Una vez modificado, simplemente dando un valor a un FLAG que designemos y haciendo WIN para terminar el nivel podremos controlar el flujo. Podemos dejar un valor (por ejemplo, 99) para señalizar el final del juego, y tratar cualquier otro valor como un número de nivel al que saltar. De ese modo puedes controlar saltos entre niveles.
En primer lugar es interesante que te empapes bien el whatsnew.txt cuando se describe cómo se montó Goku Mal. Es importante porque los recursos se generan de otra manera y te tiene que quedar bien claro cómo funciona el librarian (los diferentes recursos que se guardan en RAM extra tienen un número de recurso que necesitamos para la lista de niveles y cosas así). Yo, en cuanto encuentre un rato (tengo ya una cola de cosas que mirar) veré cómo hacer la modificación de la forma más sencilla posible.
Una vez modificado, simplemente dando un valor a un FLAG que designemos y haciendo WIN para terminar el nivel podremos controlar el flujo. Podemos dejar un valor (por ejemplo, 99) para señalizar el final del juego, y tratar cualquier otro valor como un número de nivel al que saltar. De ese modo puedes controlar saltos entre niveles.
Como diría Rorshach: "Urm..."
Re: Dudas sobre el modo 128K
Aprovecho para preguntar. ¿Cual es el limite? ¿Tengo 96KB para cosas que meta en el librerian y 32kb para el juego? No tengo muy clara la paginación en un 128KB.
Re: Dudas sobre el modo 128K
Los 128K se dividen en 8 páginas de 16K. De ellas, las páginas 5, 2 y 0 (en ese orden) forman los 48K de RAM. Los últimos 16K se pueden intercambiar por cualquier página. La idea del librarian es que tenemos las cinco páginas de RAM extra como almacenamiento. Cuando necesitamos algo le pedimos al librarian el recurso que sea, éste se encarga de poner la RAM correcta, descomprimir el recurso en un buffer, y volver a poner la RAM 0.
Por otra parte, en los 48K al principio hay 8K ocupados por VRAM y algunos buffers internos, y al final están los buffers que necesita la biblioteca gráfica splib2 para funcionar. Tenemos desde 24200 hasta 60655, o sea, poco más de 36Kb.
Normalmente la RAM 1 la usamos para la música, lo que nos deja 4 páginas libres (3, 4, 6 y 7). Eso son 64K que dan para mucho. Hasta ahora hemos hecho varios juegos de 128K pero el único que llena casi toda la RAM es Ninjajar.
Por otra parte, en los 48K al principio hay 8K ocupados por VRAM y algunos buffers internos, y al final están los buffers que necesita la biblioteca gráfica splib2 para funcionar. Tenemos desde 24200 hasta 60655, o sea, poco más de 36Kb.
Normalmente la RAM 1 la usamos para la música, lo que nos deja 4 páginas libres (3, 4, 6 y 7). Eso son 64K que dan para mucho. Hasta ahora hemos hecho varios juegos de 128K pero el único que llena casi toda la RAM es Ninjajar.
Como diría Rorshach: "Urm..."
Re: Dudas sobre el modo 128K
Todo muy claro. Muchas gracias ![Sonrisa :)](./images/smilies/icon_e_smile.gif)
![Sonrisa :)](./images/smilies/icon_e_smile.gif)
¿Quién está conectado?
Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 21 invitados