Proyecto The Hobbit en Dragon por PSER1 - FINALIZADO

Avatar de Usuario
pser1
Mensajes: 4094
Registrado: 08 Dic 2012 18:34
Agradecido : 1352 veces
Agradecimiento recibido: 1118 veces

Re: Proyecto The Hobbit en Dragon por PSER1

Mensajepor pser1 » 21 Jul 2016 22:35

Último mensaje de la página anterior:

Hola,
he hecho un pequeño cambio en la imagen de la pantalla final añadiendo espacio en blanco por arriba
Asi compenso el que se pierde con los scroll que hace al mostrar el texto. El programa no cambia para nada!

He eliminado estos mismo adjuntos del mensaje anterior (página anterior)


saludos
pere

End-1st part-nuevo.jpg
End-1st part-nuevo.jpg (52.87 KiB) Visto 4506 veces

End-2nd part-nuevo.jpg
End-2nd part-nuevo.jpg (62.8 KiB) Visto 4506 veces

Hobbit0816a7-nuevo.zip
(319.73 KiB) Descargado 137 veces

Avatar de Usuario
pser1
Mensajes: 4094
Registrado: 08 Dic 2012 18:34
Agradecido : 1352 veces
Agradecimiento recibido: 1118 veces

Re: Proyecto The Hobbit en Dragon por PSER1

Mensajepor pser1 » 21 Jul 2016 23:40

Chema escribió:Me he perdido... El código anterior, según los comentarios, mira si el objeto Butler está marcado como muerto y si es así regresa sin hacer nada (yes, exit) y en otro caso ¿activa su script? No sé cómo puede eso resucitar al objeto..

Tras modificar mi respuesta anterior y escribir que TAMPOCO entiendo el código, he visto que además hay otra
rutina de codificación parecida para Dragón y para Bard:
Solo se me ocurre que el flag de DEAD se pasa a cero antes de llamar a estas rutinas, de lo contrario
NO tienen ningún sentido!

saludos
pere

Código: Seleccionar todo

ResurrectDragonBard                                                         
        lda     #3                      ; put value 3                       
        sta     D_CAC4                  ; to reactivate hole in Bilboevents
        ldx     #L_C133+7               ; point to red golden dragon flags
        ldb     ,x                      ; get flags
        bitb    #%00001000              ; is it tagged as dead?             
        bne     i_C7D1                  ; yes, exit                         
        lda     #$3c                    ; get ID for red golden dragon     
        sta     Dragon_HLDir            ; put in HLevelDir                   
i_C7D1  ldx     #L_C4C3+7               ; point to bard flags             
        ldb     ,x                      ; get flags
        bitb    #%00001000              ; is he tagged as dead?             
        bne     e_C7D1                  ; yes, exit                         
        lda     #$46                    ; get ID for bard                 
        sta     Bard_HLDir              ; put in HLevelDir                   
e_C7D1  rts                             ; return                             

Avatar de Usuario
Chema
Mensajes: 2664
Registrado: 21 Jun 2012 20:13
Ubicación: Gijón
Agradecido : 3190 veces
Agradecimiento recibido: 926 veces
Contactar:

Re: Proyecto The Hobbit en Dragon por PSER1

Mensajepor Chema » 22 Jul 2016 00:16

Oye, ¿y no será que simplemente lanzan los scripts asociados a los objetos si no están muertos? Me parece recordar que, cuando un script finalizaba, se ponía el campo que indicaba el objeto que lo estaba ejecutando a cero en el directorio o algo así.

Tendría más sentido...

Avatar de Usuario
ron
Mensajes: 21855
Registrado: 28 Oct 2010 14:20
Ubicación: retrocrypta
Agradecido : 3862 veces
Agradecimiento recibido: 4752 veces

Re: Proyecto The Hobbit en Dragon por PSER1

Mensajepor ron » 22 Jul 2016 09:11

Tiene bastante sentido lo que comenta Chema. No obstante seguramente sea un problema menor, ya que el programa en si funciona bastante bien.

Avatar de Usuario
Chema
Mensajes: 2664
Registrado: 21 Jun 2012 20:13
Ubicación: Gijón
Agradecido : 3190 veces
Agradecimiento recibido: 926 veces
Contactar:

Re: Proyecto The Hobbit en Dragon por PSER1

Mensajepor Chema » 22 Jul 2016 10:11

Solo se notaría quizás en que algún objeto de esos deja de comportarse como debe (no aparece o no hace ciertas acciones) o, precisamente, en que aparece después de haberlo matado haciendo algo (por ejemplo el Dragón). Pero será difícil de ver.

Una cosa más. He estado jugando un poco (muy poco, pero quería intentar ayudar) con XRoar y SpeckEmu a la vez y se comportan prácticamente igual excepto en un par de detalles que igual tienen importancia o igual no:

1- Tras pedirle a Elrond que nos devuelva el mapa, en la versión de spectrum sale el mensaje explícito "Elrond gives the curious map to you", mientras que en el Dragon no sale nada (creo que sale una línea vacía, pero no recuerdo), aunque el mapa acaba en nuestro poder. No es que Elrond se niegue o algo parecido, es que no sale ningún mensaje.

2- En la versión de Dragón aparecen pausas (para que pulses una tecla) cuando entras en localizaciones sin que se pinte imagen, cuando en el speccy no ocurre.

3- En el Dragon tuve que decir "SMASH TRAP DOOR" como una docena de veces - si no más... dejé de contar a la octava (con y sin VICIOUSLY añadido) para que rompiera. En el spectrum sucedió a la primera. Sigo pensando que algo raro pasa con el generador de aleatorios. Aunque supongo que es posible que ocurra, me parece poco probable.

4- Hubo otra cosa, pero igual es que yo metí la pata. Tras ir la caverna de los Trolls, metí directamente la secuencia - GET ROPE AND SWORD, S, S y, mientras en la versión de speccy funcionó bien, en el Dragon me dio un error de que no se podía ir al sur. Intenté repetirlo y no fui capaz, así que igual es que me equivoqué al escribir la entrada. De momento, si a nadie le ha pasado que interpretase mal una secuencia de comandos, ignóralo.

No puedo dejar de decir que la mayoría de eventos van super sincronizados y los gráficos de la versión de Dragon le dan un aspecto increíble. Es un trabajo impresionante, pere.

dancresp
Mensajes: 6224
Registrado: 13 Nov 2010 02:08
Ubicación: Barcelona
Agradecido : 664 veces
Agradecimiento recibido: 1016 veces

Re: Proyecto The Hobbit en Dragon por PSER1

Mensajepor dancresp » 22 Jul 2016 10:34

Chema escribió:No puedo dejar de decir que la mayoría de eventos van super sincronizados y los gráficos de la versión de Dragon le dan un aspecto increíble.

¿A nivel gráfico será la mejor versión de 8 bits?
Coincido que el aspecto del juego es excelente.
Buscando la IP de la W.O.P.R. he encontrado mi índice

Avatar de Usuario
pser1
Mensajes: 4094
Registrado: 08 Dic 2012 18:34
Agradecido : 1352 veces
Agradecimiento recibido: 1118 veces

Re: Proyecto The Hobbit en Dragon por PSER1

Mensajepor pser1 » 22 Jul 2016 10:38

Hola Chema,
El nombre de las rutinas ResurrectXXXXX es tan falso como lo era el de BreakIfB6fafbZero
Su nombre correcto (voy a cambiárselo) sería: ReActivateXXXXX porqué en realidad, como bien decías
su misión es reactivar el Script del personaje (solo de los indicados en la tabla "LiveStatusChange"
Desafortunadamente es un nombre engañoso que nos pareció clarísimo en su momento y que sin dudas
induce a error!
Esto implica que habrá que mirar las posiciones que salvé tras matar a Butler y ver si alguna de
ellas lo contiene VIVO de nuevo, ya os contaré ... si a alguien le sucede (con Butler, Bard, Dragon)
que guarde posiciones y las suba, por favor!

Vamos a por los puntos que indicas:
1) El mensaje debería aprecer siempre que Elrond nos dé el mapa:

Rivendel-Elrond.jpg
Rivendel-Elrond.jpg (48.69 KiB) Visto 3011 veces

2) Cierto, lo ví pero no le dí importancia, ya echaré una ojeada por si hay algo que permita
imitar mejor al Spectrum. Como la carga de pantallas es especial habrá que mirarlo con cariño!

3) En el calabozo, a mi se me ha roto la TRAP a la tercera vez o tras TREINTA intentos!
Suele ser mas rápido - SAY TO THORIN "SMASH TRAP". Pero los números aleatorios mandan!
Lo mismo aplica al - KILL BUTLER WITH SWORD, me ha fracasado tantísimas veces que ya
opto por pedirle a Thorin que lo haga el. Si ademas está el warg de por medio y se pelea con Butler
hay grandes posibilidades de conseguirlo, sino a usar el anillo!

4) Yo me equivoco mas de una vez al escribir sentencias múltiples, especialmente porqué tengo
prisa y no recuerdo que la primera pulsación habilita el cursor y por tanto la entrada de datos.

Muchas gracias por tomarte el tiempo para hacer las pruebas -drinks

saludos
pere

Avatar de Usuario
ron
Mensajes: 21855
Registrado: 28 Oct 2010 14:20
Ubicación: retrocrypta
Agradecido : 3862 veces
Agradecimiento recibido: 4752 veces

Re: Proyecto The Hobbit en Dragon por PSER1

Mensajepor ron » 22 Jul 2016 12:53

Chema escribió:Solo se notaría quizás en que algún objeto de esos deja de comportarse como debe (no aparece o no hace ciertas acciones) o, precisamente, en que aparece después de haberlo matado haciendo algo (por ejemplo el Dragón). Pero será difícil de ver.

Una cosa más. He estado jugando un poco (muy poco, pero quería intentar ayudar) con XRoar y SpeckEmu a la vez y se comportan prácticamente igual excepto en un par de detalles que igual tienen importancia o igual no:

1- Tras pedirle a Elrond que nos devuelva el mapa, en la versión de spectrum sale el mensaje explícito "Elrond gives the curious map to you", mientras que en el Dragon no sale nada (creo que sale una línea vacía, pero no recuerdo), aunque el mapa acaba en nuestro poder. No es que Elrond se niegue o algo parecido, es que no sale ningún mensaje.


Confirmo que es un tema tratado y desde que Pere tocó teclas eso funciona perfecto, ELROND dice hello, le dices hola, le das el mapa, le dices que lo lea, comes y antes de pirarte le dices que te lo devuelva. Y así se comporta el programa. Lo hace bien, creeme. Eso si, si Pere considera que hay que revisar, ya sabes que yo me fío de ti si o si .

Chema escribió:2- En la versión de Dragón aparecen pausas (para que pulses una tecla) cuando entras en localizaciones sin que se pinte imagen, cuando en el speccy no ocurre.


El Spectrum dibuja los escenarios, el dragon presenta una imagen, es lógico que el prompt tenga algunos ligeros cambios. Si haces PAUSE el comportamiento es correcto.

Chema escribió:3- En el Dragon tuve que decir "SMASH TRAP DOOR" como una docena de veces - si no más... dejé de contar a la octava (con y sin VICIOUSLY añadido) para que rompiera. En el spectrum sucedió a la primera. Sigo pensando que algo raro pasa con el generador de aleatorios. Aunque supongo que es posible que ocurra, me parece poco probable.


Esta parte se completa perfectamente y sin problema

Chema escribió:4- Hubo otra cosa, pero igual es que yo metí la pata. Tras ir la caverna de los Trolls, metí directamente la secuencia - GET ROPE AND SWORD, S, S y, mientras en la versión de speccy funcionó bien, en el Dragon me dio un error de que no se podía ir al sur. Intenté repetirlo y no fui capaz, así que igual es que me equivoqué al escribir la entrada. De momento, si a nadie le ha pasado que interpretase mal una secuencia de comandos, ignóralo.


Puede que en en vez de West sea un Up y yo lo transcribiera erróneamente, en eso ando, buscando salidas o indicaciones que no existen, de momento como decía el comportamiento es bastante natural.

Chema escribió:No puedo dejar de decir que la mayoría de eventos van super sincronizados y los gráficos de la versión de Dragon le dan un aspecto increíble. Es un trabajo impresionante, pere.


Yo no puedo dejar de decir que nos digas que versión estás usando. Ya se que es sobre Xroar, pero es como si estuvieras ejecutando una versión un poco más antigua. Conste que todo puede pasar, pero por lo de que describes creo que todo eso está repasado, aunque buena cosa es que Pere lo tenga en cuenta. A ver si esos pequeños bug-duende terminar por ir saliendo, ya saben lo que les espera -507 -rofl

Avatar de Usuario
pser1
Mensajes: 4094
Registrado: 08 Dic 2012 18:34
Agradecido : 1352 veces
Agradecimiento recibido: 1118 veces

Re: Proyecto The Hobbit en Dragon por PSER1

Mensajepor pser1 » 22 Jul 2016 17:44

Hola,
me parece perfecto que varios usuarios estén probando el programa y que comenten las cosas
anómalas que les sucedan. Si pudieran grabar una posición del punto en que sucede lo raro, mucho mejor!

Lo que indica Chema sobre solicitar una tecla en situaciones en las que Spectrum no lo hace es cierto, no recuerdo
en cuales pero me ha sucedido alguna vez. Lo que pasa es que no estoy comparando siempre ...
Si tienes alguna localización concreta, Chema, dímela por favor, me facilitarás la búsqueda del duende

Yo sigo revisando código y viendo si puedo añadirle alguna funcionalidad extra ... ya veremos.

saludos
pere

Avatar de Usuario
pser1
Mensajes: 4094
Registrado: 08 Dic 2012 18:34
Agradecido : 1352 veces
Agradecimiento recibido: 1118 veces

Re: Proyecto The Hobbit en Dragon por PSER1

Mensajepor pser1 » 22 Jul 2016 18:54

Hola chicos,
ya dije que la 0816a7 no iba a a ser la última versión -507
Aquí os subo la 0816a8:
- corrige los nombres de dos rutinas, detectado por Chema. Para estandarizar con las demás rutinas
de este bloque les he llamado "ActivarXXXX".
- me he estado peleando con el DOS y, parece, que ahora ya podremos grabar y recuperar posiciones
desde cualquier unidad de disco (1-2-3-4). Esto ya permitiría una exageración de posiciones salvadas -thumbup
Tomadlo como una versión muy muy beta. Funciona, pero alguna vez al pedir un fichero inexistente se
ha quedado traspuesto y he tenido que resetear -507

Os comento como queda la entrada de datos al hacer LOAD o SAVE:
Aparece la orden seguida de 1:SAVGAM00
La unidad puede ser otra (la última que has usado en esta sesión para Load que puede ser distinta de la de Save)
Las cifras finales también pueden ser las última usadas ...
Si pulsamos UNA cifra, se mueve una a la izquierda (pasa a decena) y la tecleada aparece como UNIDAD.
Si pulsamos Retroceso borra la UNIDAD y la decena baja a ser unidad.
Lo mas simple es pulsar dos teclas, cero por delante si es inferior a 10
Cuando deseéis cambiar de unidad, pulsad una de esta letras: A-B-C-D que serán utilizadas como 1-2-3-4
Al darle a Intro le enviamos la orden al programa
Por supuesto, y por desgracia, esta versión es, como muchas, incompatible con posiciones salvadas con anteriores :(

saludos
pere

Hobbit0816a8.zip
(321.93 KiB) Descargado 141 veces

Avatar de Usuario
pser1
Mensajes: 4094
Registrado: 08 Dic 2012 18:34
Agradecido : 1352 veces
Agradecimiento recibido: 1118 veces

Re: Proyecto The Hobbit en Dragon por PSER1

Mensajepor pser1 » 22 Jul 2016 22:03

Comentario sobre puntuaciones
===========================

Hay determinadas localizaciones que dan puntos, obviamente no todas.
Mirando el fuente, he encontrado una tabla que indica qué localizaciones son y cuántos puntos da cada una.
La verdad es que después de un recorrido por parte del laberinto, pido SCORE y NO me cuadra con lo previsto.

Para los interesados:
- Si no es Bilbo quien ENTRA en ciertas Localizaciones, NO se acumulan puntos a pesar de haber estado en ellas ...
He estado trazando para verificar que la rutina que acumula lo haga correctamente y funciona muy bien.
Hala a ver quien consigue la más alta puntuación posible (?)

Saludos
pere

Avatar de Usuario
Chema
Mensajes: 2664
Registrado: 21 Jun 2012 20:13
Ubicación: Gijón
Agradecido : 3190 veces
Agradecimiento recibido: 926 veces
Contactar:

Re: Proyecto The Hobbit en Dragon por PSER1

Mensajepor Chema » 23 Jul 2016 14:21

Jaja ron tienes razón :) se me olvidó y use el dos que viene con el XRoar, el 4.0 creo.

Vaya, parece que os lío más que ayudo. Eso me pasa por las prisas.

Voy a estar unos días desconectado (vacaciones por fin) así que no podré probar mucho más.

A la vuelta lo retomamos...

Avatar de Usuario
pser1
Mensajes: 4094
Registrado: 08 Dic 2012 18:34
Agradecido : 1352 veces
Agradecimiento recibido: 1118 veces

Re: Proyecto The Hobbit en Dragon por PSER1

Mensajepor pser1 » 23 Jul 2016 15:32

Chema escribió:Jaja ron tienes razón :) se me olvidó y use el dos que viene con el XRoar, el 4.0 creo.
Vaya, parece que os lío más que ayudo. Eso me pasa por las prisas.
Voy a estar unos días desconectado (vacaciones por fin) así que no podré probar mucho más.
A la vuelta lo retomamos...

Que tengas unas buenas vacaciones!
Cunado vuelvas igual estamos por la version 0816z4 -507

saludos
pere

jltursan
Mensajes: 5619
Registrado: 20 Sep 2011 13:59
Ubicación: Madrid
Agradecido : 990 veces
Agradecimiento recibido: 2040 veces
Contactar:

Re: Proyecto The Hobbit en Dragon por PSER1

Mensajepor jltursan » 23 Jul 2016 15:50

La verdad es que empiezo a tener un follón en lo que respecta al DOS que deberiamos tener en las controladoras.

He abierto un hilo a ver si discutimos el tema y sacamos alguna conclusión: http://retrowiki.es/viewtopic.php?f=62&t=345

Avatar de Usuario
pser1
Mensajes: 4094
Registrado: 08 Dic 2012 18:34
Agradecido : 1352 veces
Agradecimiento recibido: 1118 veces

Re: Proyecto The Hobbit en Dragon por PSER1

Mensajepor pser1 » 23 Jul 2016 15:51

Hola,
de todas formas hay que seguir probando.
Yo tiendo a usar el debugger GDB incluso probando ... con un único breakpoint tras la petición de comandos al usuario.

La versión 0816a7 no me había dado problemas, pero al probar a fondo la 0816a8, en algunas contadas (y raras) ocasiones
se me quedó frito con el cursor totalmente a la izquierda (+) que es su forma mientras está mostrando texto, luego
cambia a (> +) y ya podemos teclear.
Las dos-tres veces que me pasó tuve que resetear.
No encuentro ninguna explicación. Como tengo un disco lleno de savegames, estuve cargando todas varias
veces para anotar que localización era cada una y luego jugando, pues cada vez que le pasaba algo malo a Bilbo, de
nuevo cargaba una posición.
Así que se me ocurrió sospechar del stack y Bingo! éste crece en dos bytes a cada llamada a LOAD
No acabo de creerme que éste sea el motivo del cuelgue, pero está claro que que hay evitar que el stack se vaya hacia abajo.
El programa tiene tendencia a llenarlo mucho, guarda cantidad de registros y hay muchas llamadas a rutinas anidadas.
Resumiendo, que os subo la versión 0816a9 que ya no sufre de este problema.
En esta ocasión he podido solucionarlo cambiando un solo byte, así los savegames de la versión a8 son utilizables -thumbup
Pero, porfa, puteadlo a tope ... Hay que encontrar gazapos ahora, no dentro de tres meses -nb -nb -nb

saludos
pere

Hobbit0816a9.zip
(321.93 KiB) Descargado 126 veces

Avatar de Usuario
Chema
Mensajes: 2664
Registrado: 21 Jun 2012 20:13
Ubicación: Gijón
Agradecido : 3190 veces
Agradecimiento recibido: 926 veces
Contactar:

Re: Proyecto The Hobbit en Dragon por PSER1

Mensajepor Chema » 23 Jul 2016 18:33

Respecto a las localizaciones donde se pide una tecla mira a ver si son las que tienen asignado gráfico pero que se visitan por segunda vez, con lo que no se pinta. En ese caso no debería esperarse por tecla, creo recordar.

Se me acaba de ocurrir y no tengo pc a mano para probar.

Avatar de Usuario
pser1
Mensajes: 4094
Registrado: 08 Dic 2012 18:34
Agradecido : 1352 veces
Agradecimiento recibido: 1118 veces

Re: Proyecto The Hobbit en Dragon por PSER1

Mensajepor pser1 » 23 Jul 2016 19:58

Chema escribió:Respecto a las localizaciones donde se pide una tecla mira a ver si son las que tienen asignado gráfico pero que se visitan por segunda vez, con lo que no se pinta. En ese caso no debería esperarse por tecla, creo recordar.
Se me acaba de ocurrir y no tengo pc a mano para probar.


Esta es la rutina que pide al usuario que pulse tecla (emite un beep)
si es llamada cuando Spectrum no lo hace ... habrá que buscar un ejemplo de comportamiento diferente
y trazarlo

saludos
pere

L_969A	 									;L_969A: XOR A			 ; 969A AF		; A = A XOR A	; A = 0, borra A, flag Z = 1

; *** ADDED 15c7 (PSR) warn user to press a key ***
ldb #1 ; to make only one beep
jsr Beeps ; warns user to press a key
; *** END_ADDED ***

jsr i_84C2 ; espera una tecla ; IN A, ($FE) ; 969B DB FE ; Lee teclado (todas las filas)
; AND $1F ; 969D E6 1F ; Hace AND lógico de A con $1F
; CP $1F ; 969F FE 1F ; Compara A con $1F
; Ver que se puede hacer !? ; JR Z, L_969A ; 96A1 28 F7 ; si flag Z=1, bucle atrás
; color blanco/gris ; LD A, $07 ; 96A3 3E 07 ; Carga A con $07
; lo pone como color de borde ; OUT ($FE), A ; 96A5 D3 FE ; el valor de A se escribe en el puerto $FE
rts ; RET ; 96A7 C9 ; Retorna


Volver a “Proyecto The Hobbit 6809 por pser1”

¿Quién está conectado?

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