JUEGO ACABADO (a falta de un par de detallitos).

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
fjpoyato
Mensajes: 23
Registrado: Sab, 09 Ago 2014, 14:17
Ubicación: Huelva
Contactar:

Re: JUEGO ACABADO (a falta de un par de detallitos).

Mensajepor fjpoyato » Jue, 27 Nov 2014, 16:39

Hola de nuevo, he decidido intentar poco a poco portar mi juego a CPC, sería en modo 1 a 4 colores y me he fijado que en el Sir Ababol usáis dos paletas de colores diferentes para la parte superior e inferior del mapa. ¿Cómo se hace esto? ¿Hay que hacer dos tileset y spriteset diferentes? porque revisando el código fuente no me ha quedado nada claro.

A ver si poco a poco van saliendo las cositas, estoy convencido de que no es tan complicado como parece jeje. Saludos :-)
Avatar de Usuario
na_th_an
Mensajes: 26413
Registrado: Vie, 09 Ene 2009, 12:18

Re: JUEGO ACABADO (a falta de un par de detallitos).

Mensajepor na_th_an » Jue, 27 Nov 2014, 23:26

No, en realidad sólo hay que cambiar la paleta. Los gráficos son exactamente los mismos para un piso y para el otro.

El el CPC eliges 4 colores entre los 27 posibles. Esto lo puedes hacer todas las veces que quieras, y cuando quieras. Nosotros lo hacemos al cambiar de piso. Si estás en el piso de arriba, se pone una paleta. Si estás en el de abajo, la otra. Cambiar la paleta es cuestión de hacer 4 llamadas al hardware del CPC.
Como diría Rorshach: "Urm..."
Avatar de Usuario
fjpoyato
Mensajes: 23
Registrado: Sab, 09 Ago 2014, 14:17
Ubicación: Huelva
Contactar:

Re: JUEGO ACABADO (a falta de un par de detallitos).

Mensajepor fjpoyato » Vie, 28 Nov 2014, 19:49

Ajá entiendo, la cuestión y sin ánimo de ser pesado es... ¿Cómo se hace eso, dónde se hacen esas 4 llamadas al hardware del CPC? no tengo ni idea, la verdad :oops:

Creo que con el resto podré apañarme más o menos bien... bueno, ya veremos jeje.
Avatar de Usuario
na_th_an
Mensajes: 26413
Registrado: Vie, 09 Ene 2009, 12:18

Re: JUEGO ACABADO (a falta de un par de detallitos).

Mensajepor na_th_an » Vie, 28 Nov 2014, 21:16

La biblioteca que usamos, la CPCRSLIB, trae funciones para hacer todos estos manejes :) Tienes la doc aquí -> http://www.amstrad.es/programacion/cpcrslib_sp.html

No me acuerdo de memoria, pero mirando el código, es este cachín que pone las paletas (el juego usa tres):

$this->bbcode_second_pass_code('', 'void set_inks (unsigned char n) {

/*
Tabla de conversión de paletas

firm hard
0 20
1 4
2 21
3 28
4 24
5 29
6 12
7 5
8 13
9 22
10 6
11 23
12 30
13 0
14 31
15 14
16 7
17 15
18 18
19 2
20 19
21 26
22 25
23 27
24 10
25 3
26 11
*/

switch (n) {
case 0:
cpc_SetColour (0, 20);
cpc_SetColour (1, 28);
cpc_SetColour (2, 0);
cpc_SetColour (3, 14);
break;
case 1:
cpc_SetColour (0, 20);
cpc_SetColour (1, 24);
cpc_SetColour (2, 31);
cpc_SetColour (3, 3);
break;
case 2:
cpc_SetColour (0, 20);
cpc_SetColour (1, 24);
cpc_SetColour (2, 7);
cpc_SetColour (3, 3);
break;
}
}')

cpc_SetColour asigna una tinta (ink) a una pluma (pen). El segundo parámetro es el color. Arriba ves una tabla de equivalencias. La función utiliza colores "hardware". Los colores "firmware" son estos (por eso necesitas la tabla).
Adjuntos
paleta.cpc.png
paleta.cpc.png (8.08 KiB) Visto 11678 veces
Como diría Rorshach: "Urm..."
Avatar de Usuario
fjpoyato
Mensajes: 23
Registrado: Sab, 09 Ago 2014, 14:17
Ubicación: Huelva
Contactar:

Re: JUEGO ACABADO (a falta de un par de detallitos).

Mensajepor fjpoyato » Vie, 28 Nov 2014, 23:47

Muchas gracias, creo que ya lo he pillado, en cuanto tenga tiempo me pongo en faena y a ver si voy consiguiendo hacer cositas ;-)
Avatar de Usuario
na_th_an
Mensajes: 26413
Registrado: Vie, 09 Ene 2009, 12:18

Re: JUEGO ACABADO (a falta de un par de detallitos).

Mensajepor na_th_an » Vie, 28 Nov 2014, 23:59

Ánimo. Es una tarea laboriosa, pero al menos no eres el primero que se aventura a ello ;) Puedes tirar de mi experiencia.
Como diría Rorshach: "Urm..."
Avatar de Usuario
fjpoyato
Mensajes: 23
Registrado: Sab, 09 Ago 2014, 14:17
Ubicación: Huelva
Contactar:

Re: JUEGO ACABADO (a falta de un par de detallitos).

Mensajepor fjpoyato » Dom, 07 Jun 2015, 16:23

Hola, tras algunos meses liado y ahora con más tiempo disponible este veranito, voy a intentar hacer cosillas y aprender poco a poco para una posible conversión de Rigor Mortis a CPC, cosa que me haría una ilusión bárbara, y he decidido primero compilar algún juego mojono para toquetearlo después e ir aprendiendo. Todo ha ido perfecto con Sir Ababol y Lala Prologue generando el archivo bin y luego con el assembler del WinApe. Sin embargo, cuando hago un CALL 10000 en basic, arranca bien pero en menos de 1 segundo se reinicia el CPC. ¿Estaré haciendo algo mal? ¿Alguna versión de alguna librería que no debería usar? Espero vuestras respuestas y como siempre, gracias de antemano ;-)
Última edición por fjpoyato el Dom, 07 Jun 2015, 16:25, editado 1 vez en total.
Avatar de Usuario
na_th_an
Mensajes: 26413
Registrado: Vie, 09 Ene 2009, 12:18

Re: JUEGO ACABADO (a falta de un par de detallitos).

Mensajepor na_th_an » Lun, 08 Jun 2015, 09:24

Creo que deberías hacer antes un MEMORY con la dirección de inicio - 1 para decirle al firmware que no toque nada a partir de ahí. Hace mucho que no toqueteo esos juegos, pero supongo que irán por ahí los tiros.

Lo que puedes hacer es cargar el cargador BASIC y listarlo, lo más probable es que esté todo ahí.

Como, sinceramente, no recuerdo si los hemos publicado o no en formato disco, te los subo aquí. Son los discos de desarrollo, así que deberían funcionar y tener todo lo necesario.
Adjuntos
Mojon-Twins--Sir-Ababol--CPC-DSK.zip
(37.99 KiB) Descargado 458 veces
Mojon-Twins--Lala-Prologue--CPC-DSK.zip
(45.38 KiB) Descargado 501 veces
Mojon-Twins--Cheril-of-the-Bosque--CPC-DSK.zip
(45.63 KiB) Descargado 486 veces
Como diría Rorshach: "Urm..."
Avatar de Usuario
fjpoyato
Mensajes: 23
Registrado: Sab, 09 Ago 2014, 14:17
Ubicación: Huelva
Contactar:

Re: JUEGO ACABADO (a falta de un par de detallitos).

Mensajepor fjpoyato » Lun, 08 Jun 2015, 17:36

Perdona mi ignorancia y torpeza CPCera, ¿hay que poner MEMORY -1 en el basic antes del CALL 10000? lo he probado y lo mismo, se reinicia. Y lo del cargador BASIC no lo he pillado exactamente. Espero poder cargar esos bin correctamente, creo que es el paso más importante ahora mismo si quiero hacer la versión a CPC de mi juego, espero que puedas ilustrarme un poco más en profundidad, sin ánimo de ser demasiado pesado jeje :-p

Voy a ir pensando en otro jueguecillo para spectrum también, que será bastante diferente al anterior, así que preparaos para una nueva oleada de preguntas XD.

Saludos cordiales ;-)
Avatar de Usuario
na_th_an
Mensajes: 26413
Registrado: Vie, 09 Ene 2009, 12:18

Re: JUEGO ACABADO (a falta de un par de detallitos).

Mensajepor na_th_an » Mar, 09 Jun 2015, 08:29

No es MEMORY -1, es MEMORY direccion de inicio-1. O sea, 9999.

Pero ya te digo que hace cinco años de esto, la verdad es que recuerod poco de las peculiaridades de estos juegos en concreto. Examina los cargadores de los discos, ahí debe estar la clave.

Mira, ahí lo tienes:
Adjuntos
lala_loader.png
lala_loader.png (6.34 KiB) Visto 11434 veces
Como diría Rorshach: "Urm..."

Volver a “La Churrera”

¿Quién está conectado?

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