Tocando con un palo el MK2

Ayuda sobre MT Engine MK2.

Moderador: na_th_an

fupinet
Mensajes: 112
Registrado: Vie, 05 Jun 2015, 12:55

Tocando con un palo el MK2

Mensajepor fupinet » Sab, 12 Dic 2015, 12:54

Buenas a todos!!! estoy loco por empezar con el MK2 y espero ir aprendiendo poco a poco.
Tengo en mente un juego nuevo y llevo varios días creando los gráficos (tengo loading, sprite del protagonista y algunos tiles) y me gustaría poder hacerlo en el mk2. Me he leido todo lo que he visto en el foro.
Empece como base los archivos de leovigildo, pero despues de varios dias(testeando los nuevos sprites y tiles) me di cuenta que no estaba a 128k. Y cuando he intentado pasarlo como que me he perdido en como hacerlo. He visto que ninjajar! es 128k y multinivel como lo que yo quiero pero el juego que queria hacer es mas parecido al leovigildo porque usa lo del menu de items.

Para no liarme me he bajado la ultima version de la carpeta mk2 y he intentado mezclar con los de leovigildo y vamos que otra liada padre....

Si me podeis aconsejar un poco sobre como hacerlo seria de gran ayuda para guiarme un poco.

Un saludo y gracias! :cafe:
fupinet
Mensajes: 112
Registrado: Vie, 05 Jun 2015, 12:55

Re: Tocando con un palo el MK2

Mensajepor fupinet » Sab, 12 Dic 2015, 22:28

bueno de momento voy a intentardo siguiendo este hilo viewtopic.php?f=17&t=1995
a ver si consigo hacerlo funcionar ..
gracias :D
algun consejo o cosas a tener en cuenta .....
Avatar de Usuario
na_th_an
Mensajes: 26408
Registrado: Vie, 09 Ene 2009, 12:18

Re: Tocando con un palo el MK2

Mensajepor na_th_an » Lun, 14 Dic 2015, 08:29

Ese hilo describe, paso a paso, lo que hice para empezar nuestro actual proyecto.

De todos modos, sigo aconsejando empezar en modo 48K con un set de datos mínimo (tileset básico, spriteset inicial, mapa del tamaño elegido, pantallas de final/marco vacías), apañar todo el motor (activar y configurar lo que necesitas), y luego hacer el paso con las cosas configuradas y funcionando como uno quiere.
Como diría Rorshach: "Urm..."
fupinet
Mensajes: 112
Registrado: Vie, 05 Jun 2015, 12:55

Re: Tocando con un palo el MK2

Mensajepor fupinet » Lun, 14 Dic 2015, 15:22

Ok na_th_an a ver si entiendo un poco mejor todo esto. El tamaño de los archivos de loading, tileset, sprite, ending.... no influye en que sea de 48k o 128k, es decir que hay una limitación de carga inicial que es lo mismo para 48k y 128k. Que por ejemplo por usar el 128k el loading y el ending por ejemplo no puede ser mas pesado que en 48k. No se si entiendo eso bien.

Aparte tengo un problema que quiero comentar. (Esto puede parecer de primero de churrera o de programación para ZX.....)
Estoy trabajando con la base de leovigildo. Solamente he sustituido 2 archivos y ya me peta el juego.
Loading y title, es decir, entiendo que me estoy pasando ya de espacio...
mi loading.png ocupa 6kb y el de leovigildo 8kb
mi title.png ocupa 2kb y el de leovigildo 3kb
con el make.bat de leovigildo incluye el :

..\utils\png2scr.exe ..\gfx\title.png ..\gfx\title.scr
..\utils\apack.exe ..\gfx\title.scr title.bin
echo ### MAKING LOADING
..\utils\png2scr.exe ..\gfx\loading.png loading.bin

y se hace todo mas comodo...

el resultado final es que mi loading.bin es de 7KB (1 mas que el png) igual que el de leovigildo.
y mi title.bin ocupa 1kb y el de leovigildo 578 bytes.
es decir 422 bytes mas...por esos 422bytes ya me paso de memoria?

Viendo los archivos, mis dibujos son mas grande..

Me gustaría entender todo esto :cabesa: un poco mas para tenerlo en cuenta y no pasarme con la memoria pero si me explica un poco este tema te lo agradezco.

Un saludo y gracias
Avatar de Usuario
na_th_an
Mensajes: 26408
Registrado: Vie, 09 Ene 2009, 12:18

Re: Tocando con un palo el MK2

Mensajepor na_th_an » Mar, 15 Dic 2015, 08:25

No es buena idea tomar como base Leovigildo porque tienen código para las intros y las imagenes extra que ocupan cada byte de memoria del ordenador. Están muy ajustados, y tocar ahí es jugársela un poco. Así que sí, muy probablemente 422 bytes hagan que ya se salga de madre. 422 bytes son muchísimos bytes cuando sólo tienes 36K, y ya te digo que cada bloque de Leovigildo está literalmente petado. Nos costó hacer entrar todo en más de una ocasión hasta el punto de que tuvimos que simplificar algunas imagenes para que comprimiesen mejor (los compresores se basan en la repetición, cuanta menos complejidad, más comprimen).

Lo mejor es siempre tomar la última versión publicada, que corresponde a la que está en el fijo de este foro.

La diferencia entre los modos 48 y 128K es, aparte del sonido, que todos los recursos que no se empleen durante el tiempo de juego pueden ir en la RAM extra. Esto incluye niveles extra comprimidos y pantallas gráficas completas, incluyendo esto a las pantallas de título, marco y final. Todo el resto debe ir en los 48K principales. El mapa actual, los gráficos actuales y la información de enemigos y hostpots en uso. Los scripts y otras cosas también van en la RAM extra en MK2, y eso es toda una ventaja. Por ejemplo, Ninjajar! tiene casi 16K entre script y textos.

Básicamente estás haciendo un juego de 48K pero tienes la posibilidad de descomprimir otros datos que haya en la RAM extra sobre los que ya tienes. Así se cambia de nivel.

Por eso siempre aconsejo montar el motor básico en 48K y luego hacer el paso. El espacio que reserves para el mapa (con MAP_W y MAP_H en config.h) definirá el tamaño máximo que puedan tomar los niveles que cargues (pueden ser más pequeños que MAP_WxMAP_H o incluso tener una forma diferente siempre que el número de pantallas sea menor o igual al reservado). Cuando pases a 128K se te liberará algo de memoria que puede emplearse para modificar el tamaño del mapa reservado y poder hacer niveles mayores. Además te permite ir probando de forma más inmediata cómo funcionan los elementos en el juego. Arrancar directamente en 128K es más costoso y pasará más tiempo antes de que puedas probar nada, aparte de que los requerimientos de los niveles extra irán cambiando e ir modificando el gestor de niveles cada vez puede ser un coñazo de cuidado. Empezando en 48K lo dejas todo atado y luego sólo hay que ampliar.

La pantalla de carga no afecta a la memoria pues no permanece en ella. Se utiliza para tener algo a lo que mirar mientras los demás bloques cargan, pero sólo reside en la memoria de pantalla y en cuanto el juego se ejecuta y se borra la pantalla se pierde y no se puede recuperar, por lo que no es un factor que debas tener en cuenta.

Por otro lado, lo que ocupen los png y lo que ocupa el gráfico en el Spectrum no tiene relación alguna. Las imagenes PNG utilizan una compresión propia para ocupar poco. El conversor los carga y descomprime, y luego los convierte al formato del Spectrum, que no es más que un volcado 1:1 de la memoria de video, o sea, que siempre ocuparán 6912 bytes. Luego los comprime con apack para que ocupen menos. Cuando los necesitas y se los pides al librarian, el librarian los localiza en la página de RAM donde estén y los descomprime sobre la memoria de video, rellenándola con los 6912 bytes originales.
Como diría Rorshach: "Urm..."
fupinet
Mensajes: 112
Registrado: Vie, 05 Jun 2015, 12:55

Re: Tocando con un palo el MK2

Mensajepor fupinet » Mar, 15 Dic 2015, 14:32

Muchas Gracias por tu explicación y consejo!
He empezado otra vez desde la carpeta inicial del mk2 0.89
He metido los graficos en gfx (loading, ending, sprite, work, title, font...) he incluido el mapa.fmp, mapa.map en la carpeta map, incluido el archivo enems.ene en la carpeta enems.
he cambiado el nombre del archivo .c
y he configurado config.h quitandole todas las opciones posible y dejando solo lo suficiente para que el juego funcione. Ya que por defecto viene para 128k con las opciones de disparo activada entre otras cosas.
he modificado el make.bat ...
pero hay muchas cosas que me lian y no se si lo hago bien..
desactivo la creacion de levels, texts, srcripts...
pero no me funciona porque no lo hago bien, intento desactivar las cosas para que funcione el juego lo mas simple posible y ir activando a la vez que vaya configurando el juego. Adjunto los dos archivos por si puedes echar in vistazo en cuanto tengas tiempo.

Un saludo y gracias


Archivos.zip
(10.28 KiB) Descargado 118 veces
Avatar de Usuario
na_th_an
Mensajes: 26408
Registrado: Vie, 09 Ene 2009, 12:18

Re: Tocando con un palo el MK2

Mensajepor na_th_an » Lun, 28 Dic 2015, 08:15

Ahora mismo el tema está tela de chungo :-(

Coméntanos qué te falla exactamente y lo intentamos ver aunque sea en diferido.
Como diría Rorshach: "Urm..."

Volver a “MK2”

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 1 invitado