CRASH: Cómo programar un juego sencillo en el QL paso a paso

Avatar de Usuario
badaman
Mensajes: 179
Registrado: 13 Feb 2012 19:12
Ubicación: Badajoz, España
Agradecido : 39 veces
Agradecimiento recibido: 54 veces
Contactar:

CRASH: Cómo programar un juego sencillo en el QL paso a paso

Mensajepor badaman » 27 Dic 2019 18:01

Viendo el hilo de @dancresp Programando NUCLEAR INVADERS para MSX, recordé un pequeño juego que hice en 2009 y que creo que puede animar, en estos días de vacaciones, a alguno a enredar con el QL, y de paso aprender sobre colisiones y uso de matrices para juegos sencillos.

El juego básicamente consiste en conducir tu coche a gran velocidad en una carretera sin chocar con los vehículos que hay en ella. El juego termina cuando haces Crash!

Con un poco de trabajo es fácil portar este juego a otras máquinas, y la teoría explicada sirve para cualquier sistema. Espero que os interese. Pongo el enlace aquí:

CRASH: Cómo programar un juego sencillo en el QL paso a paso.

Captura de pantalla del juego:

Imagen

No esperéis a nivel gráfico mucha parafernalia, pero sí que aprenderéis a usar ventanas (canales), colores, tamaños de caracteres, scroll... además del uso de matrices en el QL.
«ZX Spectrum+, yo soy tu padre» - Dark QL

afx
Mensajes: 638
Registrado: 25 Nov 2010 23:26
Agradecido : 29 veces
Agradecimiento recibido: 44 veces

Re: CRASH: Cómo programar un juego sencillo en el QL paso a paso

Mensajepor afx » 30 Dic 2019 14:25

Otro recurso interesante para empezar a programar juegos con el QL es este libro:

GenioJuegosQL.png
Portada libro Genio de los Juegos con el QL
GenioJuegosQL.png (473.99 KiB) Visto 836 veces


geniojuegosql.zip
Genio de los Juegos con el QL
(3.03 MiB) Descargado 19 veces


El libro es muy didáctico y lleva a la práctica el desarrollo de varios juegos sencillos.

Saludo!

napsternds
Mensajes: 6
Registrado: 16 Sep 2019 15:02
Agradecido : 1 vez

Re: CRASH: Cómo programar un juego sencillo en el QL paso a paso

Mensajepor napsternds » 31 Dic 2019 14:47

Hola,

Hace muy poco consegui un sinclair QL, y me lo estoy pasando muy bien con esta máquina. En las ultimas semanas he leido muchos posts tanto de badaman como de afx, y me ha sorprendido muy gratamente que esteis activos en el foro.

Mis primeras impresiones con el QL es que se tarta de una maquina muy interesante y el SuperBasic me parece espectacular, sobre todo viniendo del BASIC del Spectrum.

Como ejercicio de aprendizaje, estoy portando a SuperBasic algunos juegos del concurso de juegos en basic para spectrum de Bytemaniacos 2020, definiendo “procedures” y eliminando tanto como sea posible los GOTO y GOSUB.

Apelando a vuestra experiencia, ¿hay alguna forma sencilla de generar caracteres graficos? Algo semejante a los UDG’s del Spectrum sería muy útil.

Gracias

Avatar de Usuario
ron
Mensajes: 18624
Registrado: 28 Oct 2010 14:20
Ubicación: retrocrypta
Agradecido : 1752 veces
Agradecimiento recibido: 1499 veces

Re: CRASH: Cómo programar un juego sencillo en el QL paso a paso

Mensajepor ron » 01 Ene 2020 20:01

Feliz Año.

El SuperBasic de QL yo mismo reconozco que fue lo mejor del QL. La inclusión de funciones y procedimientos en el Basic es algo que hizo que el SuperBasic destacara por encima de todos sus rivales, pero bueno el hard es otra cosa..., la historia la conocemos bien y no me lio contando batallas.

En la web de dilwyn hay joyas en SuperBasic de QL ( eso si, en inglés ). : dilwyn.me.uk

En el Foro QL de RW hay bastantes cosillas, no todas las que quisiéramos pero lo mejor es empezar 2020 con nueva gente de QL. A disfrutarlo.

Avatar de Usuario
Zerover
Mensajes: 148
Registrado: 12 Abr 2011 08:24
Agradecido : 12 veces
Agradecimiento recibido: 33 veces

Re: CRASH: Cómo programar un juego sencillo en el QL paso a paso

Mensajepor Zerover » 01 Ene 2020 21:13

napsternds escribió:¿hay alguna forma sencilla de generar caracteres graficos? Algo semejante a los UDG’s del Spectrum sería muy útil.


En un QL básico sólo se puede cambiar el juego de caracteres mediante código máquina. Si tienes el QL ampliado hay varios comandos S*BASIC para modificar el juego de caracteres, por ejemplo CHAR_USE en el Toolkit II, o USE_FONT en el DJToolkit.

En el manual supercompleto de S*BASIC puedes encontrar información más detallada.

Avatar de Usuario
badaman
Mensajes: 179
Registrado: 13 Feb 2012 19:12
Ubicación: Badajoz, España
Agradecido : 39 veces
Agradecimiento recibido: 54 veces
Contactar:

Re: CRASH: Cómo programar un juego sencillo en el QL paso a paso

Mensajepor badaman » 01 Ene 2020 21:21

Hola napsternds,

napsternds escribió:Como ejercicio de aprendizaje, estoy portando a SuperBasic algunos juegos del concurso de juegos en basic para spectrum de Bytemaniacos 2020, definiendo “procedures” y eliminando tanto como sea posible los GOTO y GOSUB.


Eso es muy interesante. ¡No dejes de mostrarnos el resultado!

napsternds escribió:Apelando a vuestra experiencia, ¿hay alguna forma sencilla de generar caracteres graficos? Algo semejante a los UDG’s del Spectrum sería muy útil.


Pues hay varias opciones para ello.

La más interesante es un programa de Zerover que se llama DefCarac. Es un sencillo pero potente editor de caracteres que permite crear y guardar juegos de caracteres predefinidos. te paso la ruta para su descarga de nuestra web sinclairql.es:

Imagen

Ve a sinclairql.es y luego entra en Utilidades. Casi al final encuentras DefCarac. Es un fichero zip que tendrás que descomprimir. Contiene el programa en SuperBASIC y varios juegos de caracteres que en su momento hizo Zerover. (arkanoid, amstrad, ibm...)

Verás que debajo también hay un programa para definir sprites, del mismo autor, por si te sirve para adentrarte más en el mundo de los juegos para QL.

Volviendo a los caracteres redefinidos, el código del programa te dará una idea también de cómo incorporar el juego de caracteres que fabriques. Ve a la linea 2630 y tira del hilo... En esa línea se activa el juego de caracteres modificado.

Seguramente hay más de un programa para ello del mismo estilo que el de Zerover.

En el libro que te pasa Afx también encontrarás otra solución a la definición gráfica para juegos.

Otra opción es usar las facilidades del Tooklkit II. Esta extensión al SuperBASIC que podemos considerar como indispensable, y que cualquiera que programe para QL puede y debe tener en cuenta, tiene dos comandos directamentes relacionados con el uso de caracteres redefinidos. Te paso el link al manual en español del Toolkit II.

14.2 Control de la fuente de caracteres

Como ves, no es tan sencillo de entrada como en el Spectrum, pero tiene solución.

Mucho ánimo, y cualquier cosa, aquí nos tienes.
«ZX Spectrum+, yo soy tu padre» - Dark QL

Avatar de Usuario
badaman
Mensajes: 179
Registrado: 13 Feb 2012 19:12
Ubicación: Badajoz, España
Agradecido : 39 veces
Agradecimiento recibido: 54 veces
Contactar:

Re: CRASH: Cómo programar un juego sencillo en el QL paso a paso

Mensajepor badaman » 02 Ene 2020 04:34

Siguiendo la propuesta de Ron, he encontrado una extensión o toolkit que incorpora un nuevo comando al superBASIC llamado S_FONT que carga un juego de caracteres en un canal, como el comando CHAR_USE de Toolkit II.

Esto te permitirá cargar sólo esta extensión sin sobrecargar tus programas con el resto del Toolkit II. Lo puedes descargar de aquí, y esta en la página http://www.dilwyn.me.uk/tk/ Se llama "Font", y viene en un zip.

Siguiendo el enlace de Zerover, puedes ver cómo se construye un juego de caracteres aquí:

A10 Designing New Character Sets (Fonts)
«ZX Spectrum+, yo soy tu padre» - Dark QL

afx
Mensajes: 638
Registrado: 25 Nov 2010 23:26
Agradecido : 29 veces
Agradecimiento recibido: 44 veces

Re: CRASH: Cómo programar un juego sencillo en el QL paso a paso

Mensajepor afx » 02 Ene 2020 12:42

napsternds escribió: ¿hay alguna forma sencilla de generar caracteres graficos? Algo semejante a los UDG’s del Spectrum sería muy útil.


A parte de lo que te han aportado los compañeros, el libro "Genio de los juegos con el QL" describe una técnica sencilla y aporta el código fuente.

Un antiguo entusiasta del QL subió en su día el código de esos juegos a la red, ahora no encuentro su sitio Web pero tengo una copia que te adjunto.

GenioJuegos.zip
Fuentes. Genio de los juegos con el QL.
(100.33 KiB) Descargado 5 veces

Avatar de Usuario
ron
Mensajes: 18624
Registrado: 28 Oct 2010 14:20
Ubicación: retrocrypta
Agradecido : 1752 veces
Agradecimiento recibido: 1499 veces

Re: CRASH: Cómo programar un juego sencillo en el QL paso a paso

Mensajepor ron » 02 Ene 2020 13:13

Es una excelente noticia, que los aficionados al Sinclair QL empiecen fuerte en 2020. Ya es hora de retomar lo que nos intentaron joder, esta vez no pasaran.

Y dicho todo eso que queda tan bonito, tenemos pendiente hacer una imagen para las QubIDE y para las FPGA, MiST/MiSTica y MiSTer. Ya que mucha gente puede tener contacto con el QL a través de las implementaciones FPGA, hay que aprovechar, el QL fue un micro incomprendido y ya es hora que la gente lo conozca.

Los que programamos en el pasado algo con SuperBasic que ya veníamos de Basic sabemos que se pueden hacer unos programas chulísimos y sobre todo prácticos y a sabiendas que el QL con RAM y almacenamiento masivo es como el Dr. Jekyll y Mr. Hide, hay que aprovechar el tirón !

Además en unos días cumple solo 36 añitos.

@dancresp. Ya va siendo hora que te des rienda suelta con ese pedazo programa en SuperBasic de QL !!! No se si tan siquiera lo tenías en mente, pero no -no es mala idea. -drinks -507 -rofl

napsternds
Mensajes: 6
Registrado: 16 Sep 2019 15:02
Agradecido : 1 vez

Re: CRASH: Cómo programar un juego sencillo en el QL paso a paso

Mensajepor napsternds » 02 Ene 2020 13:56

@badaman, @afx

Muchas gracias por los aportes y la información. Hoy he vuelto al curro, pero a ver si este fin de semana saco un poco de tiempo y reviso en detalle las opciones que me habéis dado.

@ron
Ye he contestado la encuesta del censo QL, a ver si la gente se anima!!

Saludos

Avatar de Usuario
badaman
Mensajes: 179
Registrado: 13 Feb 2012 19:12
Ubicación: Badajoz, España
Agradecido : 39 veces
Agradecimiento recibido: 54 veces
Contactar:

Re: CRASH: Cómo programar un juego sencillo en el QL paso a paso

Mensajepor badaman » 03 Ene 2020 20:17

Aprovechando que hemos empezado este tema, pregunto. ¿qué juegos sencillitos, del estilo de los juegos a base de caracteres, os gustaría programas para el QL? Quien sabe, lo mismo tenemos que hacer algún tipo de competición para juegos de QL.
«ZX Spectrum+, yo soy tu padre» - Dark QL


Volver a “Sinclair QL”

¿Quién está conectado?

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