Dogmole Tuppowski - Las Nuevas Aventuras (o casi...)

For all things Churrera. ¿Estás haciendo un juego? ¿quieres proponer un cambio? ¿tienes alguna duda? ¡Cuéntanoslo!

Moderador: na_th_an

Avatar de Usuario
Jarlaxe
Mensajes: 212
Registrado: Jue, 09 Ene 2014, 13:44

Re: Dogmole Tuppowski - Las Nuevas Aventuras (o casi...)

Mensajepor Jarlaxe » Jue, 16 Ene 2014, 10:02

Por mi genial! :corchoneta:

Gracias por tu tiempo na_th_an!
Avatar de Usuario
na_th_an
Mensajes: 26412
Registrado: Vie, 09 Ene 2009, 12:18

Re: Dogmole Tuppowski - Las Nuevas Aventuras (o casi...)

Mensajepor na_th_an » Jue, 16 Ene 2014, 10:07

Antes que nada, ¿Qué versión de la churrera estás usando?
Como diría Rorshach: "Urm..."
Avatar de Usuario
Jarlaxe
Mensajes: 212
Registrado: Jue, 09 Ene 2014, 13:44

Re: Dogmole Tuppowski - Las Nuevas Aventuras (o casi...)

Mensajepor Jarlaxe » Jue, 16 Ene 2014, 10:23

La 3.99.3 ;)
Avatar de Usuario
na_th_an
Mensajes: 26412
Registrado: Vie, 09 Ene 2009, 12:18

Re: Dogmole Tuppowski - Las Nuevas Aventuras (o casi...)

Mensajepor na_th_an » Jue, 16 Ene 2014, 10:50

Vale. Si abres el archivo extern.h verás que sólo contiene esto:

Código: Seleccionar todo

// External custom code to be run from a script

void do_extern_action (unsigned char n) {
   // Add custom code here.   
}

Lo que vas a hacer es borrar todo eso y sustituirlo por el código necesario para imprimir los mensajes que puse más arriba que, si te fijas, añade código a la función do_extern_action además de definir otras funciones auxiliares que le son necesarias y los textos.

Luego, asegúrate que:

1.- ACTIVATE_SCRIPTING está activado en config.h, y has seleccionado una tecla de acción (SCRIPTING_DOWN, por ejemplo). También debe estar activado ENABLE_EXTERN_CODE.

2.- Estamos compilando bien el script. En make.bat, por el principio, vienen originalmente este código:

Código: Seleccionar todo

rem no olvides cambiar NPANT por el nº de pantallas
msc %1.spt msc.h NPANT

Esa es la llamada al compilador de scripts. Asegúrate que en vez de "NPANT" estás poniendo el número total de pantallas de tu güego.

3.- Tenemos el script donde debe estar: en el directorio script debe haber un archivo que se llame igual que tu juego con extensión .spt (debe tener el mismo nombre que el que le pusiste a churromain.c, pero con .spt).

4.- Que en el script estemos referenciando la pantalla correcta (en PRESS_FIRE AT SCREEN n) y la posición correcta (en IF PLAYER_TOUCHES x, y). También es importante que el número que pasamos al EXTERN sea 1, 2 o 3, ya que en el ejemplo sólo hay tres textos.
Como diría Rorshach: "Urm..."
Avatar de Usuario
Jarlaxe
Mensajes: 212
Registrado: Jue, 09 Ene 2014, 13:44

Re: Dogmole Tuppowski - Las Nuevas Aventuras (o casi...)

Mensajepor Jarlaxe » Jue, 16 Ene 2014, 11:38

He hecho lo que me dices y me salen errores al compilar :cry:

Código: Seleccionar todo

### COMPILANDO SCRIPT ###
msc-config.h
msc.h
        2 archivos copiados.
-------------------------------------------------------------------------------
### REGENERANDO MAPA ###
** WARNING **
   MapCnv convierte un archivo raw de mappy (mapa.map, por ejemplo)
   a un array directamente usable por los juegos de la churrera.
   Si metes mal los parámetros ocurrirán cosas divertidas.

packed
Se escribió mapa.h con 24 pantallas empaquetadas (1800 bytes).
Se encontraron 2 cerrojos.

        1 archivos copiados.
-------------------------------------------------------------------------------
### COMPILANDO GUEGO ###
        1 archivos copiados.
        1 archivos copiados.
sccz80:"engine.h" L:139 Warning:#4:Function returns different type to prototype
sccz80:"engine.h" L:139 Warning:#5:Prototype is signed int fn
sccz80:"engine.h" L:139 Warning:#6:Function is unsigned char fn
sccz80:"mainloop.h" L:4 Warning:#4:Function returns different type to prototype
sccz80:"mainloop.h" L:4 Warning:#5:Prototype is signed int fn
sccz80:"mainloop.h" L:4 Warning:#6:Function is void fn
Error at file 'C:\DOCUME~1\Carlos\CONFIG~1\Temp\s3j4_.asm' module 'DOGMOLE': Symbol not defined in e
xpression '_DRAW_TEXT'
1 errors occurred during assembly
Key to filenames:
C:\DOCUME~1\Carlos\CONFIG~1\Temp\s3j4_.o = dogmole.c
Error at file 'C:\DOCUME~1\Carlos\CONFIG~1\Temp\s3j4_.asm' module 'DOGMOLE': Symbol not defined in e
xpression '_DRAW_TEXT'
-------------------------------------------------------------------------------
### CONSTRUYENDO CINTA ###

BAS2TAP v2.5 by Martijn van der Heide of ThunderWare Research Center

Creating output file loader.tap
Done! Listing contains 1 line.
Input file open failed!
loader.tap
screen.tap
        1 archivos copiados.
-------------------------------------------------------------------------------
### LIMPIANDO ###
No se encuentra C:\Dogmole\dev\main.tap
No se encuentra C:\Dogmole\dev\dogmole.bin
-------------------------------------------------------------------------------
### DONE ###
Avatar de Usuario
na_th_an
Mensajes: 26412
Registrado: Vie, 09 Ene 2009, 12:18

Re: Dogmole Tuppowski - Las Nuevas Aventuras (o casi...)

Mensajepor na_th_an » Jue, 16 Ene 2014, 12:04

Vale, eso es porque el código del ramiro tenía funciones que se llamaban de otra forma.

En extern.h, cambia la llamada a draw_text por print_str, en la linea 70 o asín:

Código: Seleccionar todo

print_str (x, y, c, cad);

Es que en la churrera vieja la función de imprimir cadenas se llamaba de otra forma :)

Para quitar los warnings que salen, edita definitions.h y escribe esto al final:

Código: Seleccionar todo

unsigned char rand (void);
void saca_a_todo_el_mundo_de_aqui (void);


Con esos dos cambios te debería compilar sin problemas
Como diría Rorshach: "Urm..."
Avatar de Usuario
Jarlaxe
Mensajes: 212
Registrado: Jue, 09 Ene 2014, 13:44

Re: Dogmole Tuppowski - Las Nuevas Aventuras (o casi...)

Mensajepor Jarlaxe » Jue, 16 Ene 2014, 12:55

Uyyyyy, casi!

Ahora termina de compilar bien, pero tras cargar el loading screen, se cuelga.

Venga que ya estamos más cerca :D

Te dejo el tap para que veas lo que te comento.

Gracias nathan!
Adjuntos
dogmole.tap
(43.15 KiB) Descargado 109 veces
Avatar de Usuario
na_th_an
Mensajes: 26412
Registrado: Vie, 09 Ene 2009, 12:18

Re: Dogmole Tuppowski - Las Nuevas Aventuras (o casi...)

Mensajepor na_th_an » Jue, 16 Ene 2014, 12:56

Con el tap no veo nada :lol: Necesito tu /dev.
Como diría Rorshach: "Urm..."
Avatar de Usuario
na_th_an
Mensajes: 26412
Registrado: Vie, 09 Ene 2009, 12:18

Re: Dogmole Tuppowski - Las Nuevas Aventuras (o casi...)

Mensajepor na_th_an » Jue, 16 Ene 2014, 12:58

Ah, pues sí que ha sido suficiente con el tap.

Se cuelga porque ocupa demasiado, 37131 bytes... Y el máximo para tu versión es de 36455 bytes.

¿Cuánto ocupa tu mapa? ¿Qué motores estás activando? A lo mejor vas a tener que pedir ayuda a Antonio Villena para comprimir el mapa y ganar algo de espacio.
Como diría Rorshach: "Urm..."
Avatar de Usuario
Jarlaxe
Mensajes: 212
Registrado: Jue, 09 Ene 2014, 13:44

Re: Dogmole Tuppowski - Las Nuevas Aventuras (o casi...)

Mensajepor Jarlaxe » Jue, 16 Ene 2014, 13:37

Jejeje, el tap era solo para recrear el momento dle "pete"

Pues que raro, porque es el mapa original del Dogmole, solo que he ido añadiendo ya algunos tiles extra a las pantallas mediante script.

Pero vamos, no creo que eso le haga aumentar demasiado el tamaño.

Mira, te dejo 2 dev comprimidos en un mismo zip:

El dev1 es el que peta. Este es al que le he modificado el config.h, extern.h y script como tu me indicabas.

El dev2 NO peta, y es como lo tenía antes de intentar mostrar texto en pantalla.

A ver si con eso puedes averiguar algo más, y si no, pues paso de meter texto y arreando! jejeje
Adjuntos
dev.zip
(112.18 KiB) Descargado 107 veces

Volver a “La Churrera”

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 6 invitados