lunes, 14 de enero de 2019

SPACE PHANTOM premiado en #8BITANNUALDEV

hola amigos de 8 bits de poder

Como algunos seguidores sabréis, "Space phantom", el ultimo juego realizado en BASIC con la librería 8BP ha sido premiado en el certamen de programación de juegos retro #8BITANNUALDEV


Desde aqui quiero agradecer este premio a los organizadores de 8BITANNUALDEV, no solo por el premio sino por contribuir a mantener vivo el espíritu retro que tanto nos gusta. Gracias, especialmente a George Bachaelor @CPCCLASSICGAMESDEMOS

Este reconocimiento ha supuesto un verdadero estímulo para seguir mejorando la librería 8BP para todos vosotros y así mantener viva la escena retro de nuestro afamado Amstrad CPC. Podes admirar el póster que @spitoufs  (alias "Lobo") ha creado inspirándose en el juego. Una verdadera obra de arte!

Impresionante póster creado por "Lobo"
el juego "Space phantom"

El concurso 8BITANNUALDEV es un concurso que abarca diferentes ordenadores retro ( Amstrad, ZX, MSX, C64, BBC, NES , SMS y otros). Posee 3 categorias: "Basic", "advance" y "others"y no tiene restricciones, se pueden presentar varios desarrollos, esta abierto a cualquier tipo de juego aunque se valora la originalidad y el reto que supone un estilo de juego que se salga un poco de lo mas habitual

el concurso 8BITANNUALDEV y 8-BIT ANNUAL 2019
Esto es lo que los ganadores obtienen:

- A winners certificate.
- A FREE 8-BIT ANNUAL 2019 hardback.
- An interview in 8-BIT ANNUAL 2019.
- An article / feature about them and their game(s) in online retro website Retro Gaming Mag http://retrogamingmagazine.com/
- A FREE A1 poster of their game with the image put together by the famed artist Lobo - who did the 8-BIT ANNUAL 2018 cover, the 8-BIT DEV image and has worked on many retro projects including the box artwork and manual of Galencia for the C64.


Como veis es muy interesante, y contribuye muchísimo a la difusión de las creaciones que hacemos

No quiero despedirme sin antes mencionar que en la categoria advanced ha obtenido el premio Keith Sear con su videojuego "Tragical Chase", y desde aqui quiero darle mi mas sincera enhorabuena!
Tragical chase de Keith Sear ha sido premiado en categoría advanced


un saludo y hasta pronto amigos!

viernes, 7 de diciembre de 2018

Disponible nueva version de 8BP V35 y nuevo juego "SPACE PHANTOM"

Hola amigos de 8 bits de poder

Ya esta disponible la versión v35 de 8BP,  en https://github.com/jjaranda13/8BP la cual incorpora las siguientes mejoras

  • comando |ROUTESP mejorado, ahora permite adelantar varios pasos en la ruta para colocar facilmente naves en hilera
  • he incluido una nueva demo para demostrar ROUTESP
  • corregido un pequeño bug detectado en v34 en el uso conjunto del codigo 251 y |AUTOALL,1
  • no ha cambiado el espacio ocupado por la libreria
  • manual : En la documentacion he reflejado todos los cambios y he mejorado apendice de teclado, asi como el apartado de logicas masivas
  • JUEGOS: nuevo juego "SPACE PHANTOM" disponible en la carpeta GameExamples. Es un juego pseudo 3D creado con 8BP V35, ocupa unos 18KB de BASIC

Os voy a poner un ejemplo del comando ROUTESP

|ROUTESP, <spriteid>, <pasos>

Este comando mueve un sprite el numero de pasos que desees a lo largo de la ruta que tenga asignada. En el ejemplo he destacado en rojo la asignación de la ruta 8 y los comandos ROUTESP que posicionan cada uno de los sprites en la ruta

10 memory 23999
10 ON BREAK GOSUB 12
11 GOTO 20
12 |MUSICOFF:CALL &BC02:PAPER 0:PEN 1:MODE 1:END
20 CALL &BC02:DEFINT A-Z:MODE 0
50 CALL &6B78
70 ' todas las naves colocada en la misma coordenada inicial
75 ' y con la misma ruta pero con un numero inicial de pasos distinto
76 locate 2,3: Print "comando |ROUTESP "
80 for s=16 to 21: |SETUPSP,s,9,33: |SETUPSP,s,0,137: |SETUPSP,s,15,8:|LOCATESP,s,20,100:next
90 |ROUTESP,21,40:'nave cabeza
100 |ROUTESP,20,30
110 |ROUTESP,19,20
120 |ROUTESP,18,10
130 |ROUTESP,17,0
131 |PRINTSPALL,0,0,0
140 '--- ciclo de juego ---
150 |AUTOALL,1:|PRINTSPALL
160 goto 150


vamos a ver un ejemplo en accion en el siguiente video
https://www.youtube.com/watch?v=9Tk5ZE8lG-c




Ademas de esta nueva versión de la libreria, ahora se incluye el nuevo videojuego "SPACE PHANTOM", un tributo al clasico "Space Harrier" de SEGA, realizado en BASIC con 8BP. Es un juego con capacidades pseudo-3D, logicas masivas, enrutado de sprites avanzado, etc.
Equipado con un jet-pack, debes volar por el espacio y destruir meteoritos y pajaros diabolicos espaciales, despues entrarás en el ultramundo donde te enfrentarás a numerosas naves enemigas y por ultimo tendrás que enfrentarte a un dragon y conseguir su cabeza. Una aventura epica espacial en tu AMSTRAD.




y aqui os dejo el video

https://www.youtube.com/watch?v=8adNXl3K7qw





Espero que os guste. Hasta pronto amigos!!!




miércoles, 10 de octubre de 2018

Disponible nueva versión V34 de la libreria 8BP

hola amigos de 8 bits de poder

Ya esta disponible la versión v33 de 8BP,  en https://github.com/jjaranda13/8BP la cual incorpora las siguientes mejoras


  • corregido un bug detectado en v33 en la deteccion de colisiones
  • el comando PRINTAT ahora puede imprimir fuera de los limites establecidos por SETLIMITS y es algo mas rapido
  • soporte de impresion transparente y flipeada en mode 1
  • nuevo codigo de ruta 251 para forzar animacion en mitad de una ruta
  • la libreria ahora ocupa 8200 bytes de los que unos 180 estan libres. comienza en la direccion 24000 dejando 24kB libres para BASIC
  • SPEDIT: (editor de sprites): nueva version v11 con soporte de mode 1, con capacidad de flip tambien para este modo
  • manual : En la documentacion he reflejado todos los cambios y he corregido la distribucion de bits en mode 1 en el capitulo de video
impresion transparente y flipeada en mode 1
Gracias al soporte de mode 1, ahora podemos hacer juegos con impresion flipeada y transparente tambien en este modo. Es la antesala de la capacidad filmation (o algo similar) que incorporaré a 8BP
8BP v34 soporta fliping y sobreescritura n mode 1



SPEDIT V11
ahora SPEDIT (nuestro editor de sprites integrado en la libreria), soporta edicion en mode 1
spedit v11 soporta mode 1


Animación forzada desde rutas:
Podemos dejar inactivo el flag de animación de un Sprite y animarlo solo en determinados instantes de la ruta usando el código 251 ( ver manual para mas detalles).

Esto puede ser muy útil para dar sensación de que un Sprite se acerca en juegos que utilizan técnicas pseudo 3D. Por ejemplo, para un meteorito que se acerca y que queremos que cambie de fotograma para aparecer mas grande. El meteorito se moverá unas cuantas veces antes de pasar al siguiente tamaño. Este mecanismo es muy similar al de cambio de imagen, solo que te permite definir el cambio de imagen sin especificar explícitamente la imagen, sino simplemente indicando un cambio de frame en la secuencia de animación que tenga asignado el Sprite.

un meteorito o una nave que se acerca pueden usar esta funcionalidad
Todas estas cosas las teneis bien descritas en el manual, el cual he actualizado convenientemente. Para el futuro cercano os diré que sigo trabajando en el videojuego "space phantom", del que os adjunto unas pantallas y en cuanto a la libreria, no la voy a hacer crecer mas, pues no quiero dejar menos de 24KB al programador BASIC, pero como aun me sobra algo de espacio en la zona de memoria de la librería, ando pensando cosas para poder hacer juegos estilo filmation. Eso lo dejo para la V35





hasta pronto amigos!



domingo, 24 de junio de 2018

Disponible nueva version V33 de la libreria 8BP

hola amigos de 8 bits de poder

Ya esta disponible la versión v33 de 8BP,  en https://github.com/jjaranda13/8BP la cual incorpora las 4 mejoras prometidas : flipping, sobreescritura con 2 y 4 colores de fondo, mejora del comando RINK para usar cualquier numero de tintas y posibilidad de sobreescritura de segmentos en modo Pseudo-3D.

Una de las mejoras mas importantes es el manual. Le he dado un repaso muy completo y ahora tiene mas aclaraciones y corrección de muchísimos detalles. He incluido mas medidas de rendimiento, mejor explicación de los mecanismos de scroll, mejor capitulo de memoria de video, mas diagramas explicativos, codigo fuente con colores y tipo de letra monoespaciado, etc. Ahora merece ser impreso como un libro de referencia en programación de 8 bit de nuestro querido CPC.


Cosas importantes a saber de la V33:
  • Ocupa lo mismo que la v32 (7700 bytes). Es decir, tienes 24.5KB libre para BASIC
  • Ahora tienes 1400 bytes para musica (100 bytes mas que con v32)
  • El comando RSX SETUPSQ ha sido eliminado. Este comando tenia una sintaxis mas compleja en BASIC que en asm y he preferido dejar la creacion de secuencias unicamente en el fichero asm. Ademas en ninguno de mis juegos lo habia usado. Era el comando menos util. gracias a ello he ganado espacio de memoria para mejoras de funcionalidad y para graficos, pues antes este comando reservaba 256bytes en la zona de memoria de graficos pra poder funcionar.
Con los bytes que me sobraban de la v32 y los que he ganado con SETUPSQ, he incorporado las 4 mejoras:


  • En modo pseudo-3D, ahora tiene capacidad de imprimir segmentos con sobreescritura. Esto es algo que se podía hacer en v32 con todo tipo de sprites menos con los segmentos. Ahora simplemente al configurar los items con sobreescritura (usando MAP2SP, status) los segmentos tendrán sobreescritura
  • Rotación de tintas mejorada (comando RINK) sin limitaciones. Hasta ahora se podían hacer patrones de 4 y 8 tintas rotando. Ahora puedes rotar cualquier numero de tintas
  • Sobreescritura de sprites con posibilidad de elegir el numero de bits de fondo: esto te va a permitir si lo deseas usar 4 colores de fondo en tus juegos
  • sprite flipping horizontal: ahora puedes definir imágenes "virtuales", que en realidad se definen como el "flip" horizontal de una imagen real. Esto te permite ahorrar mucha memoria RAM destinada a gráficos. He hecho el horizontal y no el vertical porque el horizontal es el más útil. Normalmente un personaje que camina a la izquierda es la imagen especular del mismo caminando hacia la derecha, mientras que cuando sube hacia arriba muestra la espalda y al bajar muestra el pecho y la cara.


Os dejo con un video de las demos que vienen con 8BP V33 y que ya podéis descargar y disfrutar. Yo me pondré con el nuevo videojuego que tengo en marcha, y espero poder regalároslo pronto




Hasta pronto amigos!






lunes, 11 de junio de 2018

Nueva versión V33 de la librería 8BP

Hola amigos de 8 bits de poder

Aunque aun no he liberado la v33, ya esta terminada y suficientemente probada. Solo me queda actualizar el manual, lo cual haré en los próximos días.

Os cuento sus características y lo que incorpora:

  • Ocupa exactamente lo mismo que la v32
  • En modo pseudo-3D, ahora tiene capacidad de imprimir segmentos con sobreescritura. Esto es algo que se podía hacer en v32 con todo tipo de sprites menos con los segmentos
  • Rotación de tintas (comando RINK) sin limitaciones. Hasta ahora se podían hacer patrones de 4 y 8 tintas rotando. Ahora puedes rotar cualquier numero de tintas
  • Sobreescritura de sprites con posibilidad de elegir el número de bits de fondo: esto te va a permitir si lo deseas usar 4 colores de fondo en tus juegos
  • sprite flipping horizontal: ahora puedes definir imágenes "virtuales", que en realidad se definen como el "flip" horizontal de una imagen real. Esto te permite ahorrar mucha memoria RAM destinada a gráficos. He hecho el horizontal y no el vertical porque el horizontal es el más útil. Normalmente un personaje que camina a la izquierda es la imagen especular del mismo caminando hacia la derecha, mientras que cuando sube hacia arriba muestra la espalda y al bajar muestra el pecho y la cara. 
ejemplo de sprite flipping
Aparte del manual, voy a preparar un par de demos que incorporaré en la v33 de serie y de momento os dejo con una preview del nuevo juego "space phantom" inspirado en el mítico space harrier.

Os prometo publicar la 8BP v33 con su manual en breve  




hasta pronto amigos!



viernes, 25 de mayo de 2018

Disponible conferencia Pseudo-3D de Retromadrid 2018

Hola amigos de 8BP

En esta ocasión os traigo el video publicado por retromadrid, con una cuidada post-producción, con la charla de 8BP sobre Pseudo-3D. En la charla se explican los conceptos de Pseudo-3D, asi como el funcionamiento de las maquinas recreativas de los 80 y 90, y el de los juegos pseudo-3D de los ordenadores de 8bit. Tambien se eplican los mecanismos que posee 8BP para que puedas programar tus propios juegos Pseudo-3D. La postproducción realizada incluye carátulas de los juegos comentados y ha quedado francamente bien. Además, la proyección de la presentación se ve perfectamente.

La presentacion de la charla la encontrareis en presentacion Pseudo-3D . Uno de los conceptos mas importantes de Pseudo-3D es que las curvas no son reales. No hay nada que gire, sino simplemente una carretera que se deforma y unas montañas o edificios en el fondo que se mueven de acuerdo a la supuesta curva que estamos tomando.



En el manual de 8BP disponible en https://github.com/jjaranda13/8BP  podreis encontrar informacion detallada de como usar las capacidades Pseudo-3D de 8BP. Aqui os adjunto un breve resumen

Las capacidades que aporta 8BP para poder disponer de pseudo-3D son:

1) Proyeccción 3D: consiste en proyectar un mapa del mundo 2D en 3D, de modo que, aunque lo recorramos en 2D, nos de la sensación de verlo en 3D. Esto lo haremos invocando al comando |3D para configurar los comandos PRINTSPALL y PRINTSP de modo que proyecten en 3D antes de pintar en pantalla. No habrá posibilidad de girar en el plano, siempre “miraremos” hacia delante, pero el efcto combinado de una curva unido a unas casas o montañas en el horizonte que se desplacen, simulará que estamos tomando una curva.




2) Zoom: consiste en poder usar distintas versiones de una misma imagen de un objeto para dar efecto de zoom a medida que nos acercamos a el. Esto simplemente lo haremos en el fichero de imágenes, definiendo 3 versiones de una misma imagen y agrupándolas en una estructura. En la imagen se muestra el típico ejemplo del cartel que se acerca. Los comandos PRINTSPALL y PRINTSP escogerán la versión mas adecuada de la imagen según a la distancia a la que se encuentre, sin necesidad de hacer nada mas que definir la imagen como una imagen de tipo “Zoom”.



3) Segmentos: consiste en poder disponer de sprites de tipo “segmento”, definidos por una sola scanline horizontal (por lo que ocupan muy poco), a los que podamos asociar una longitud y una inclinación. Con ellos podremos construir caminos, ríos, etc y bordes de carreteras. Esto simplemente lo haremos en el fichero de imágenes definiendo un tipo de imagen que además de ancho y alto posee inclinación. Estos segmentos los utilizaremos en la construcción del mapa del mundo.


Los segmentos utilizados en el juego “3D Racing one” son rojos o blancos y aunque sean largos, solo estan definidos por una scanline. Por ejemplo, el segmento blanco izquierdo consiste en unos pocos bytes verdes para el cesped, un par de blancos y otros pocos grises para la carretera. En el momento de imprimirse, el segmento asi definido se replica hasta medir la longitud deseada, y se imprime en perspectiva, por lo que, aunque sea un segmento recto, se mostrará torcido.

Por último, mencionar que en muchas ocasiones será necesaria la actualización dinámica del mapa (comando |UMAP). Gracias a este comando, el mapa puede ser muy grande (lo cual es necesario si creamos un circuito con muchísimos segmentos).



Pronto os presentaré 8BP v33 con avances muy interesantes en los que estoy trabajando que estoy seguro que os van a sorprender!


hasta pronto amigos!


lunes, 7 de mayo de 2018

8BP estuvo en Retromadrid 2018

Hola amigos de 8 bits de poder

Estuvimos en uno de los eventos retro mas importantes de España: Retromadrid.
Interesantísimo punto de encuentro (no comercial) donde maquinas antiguas, desarrollos homebrew e intercambio de ideas se viven al minuto. Un evento de referencia para todos nosotros, con conferencias y talleres muy interesantes.

Este año fui con un amstrad CPC464, demostrando una vez mas que todos los juegos hechos con 8BP pueden correr en 64KB de RAM, sin trampa ni cartón. También llevé una Bartop para jugar a shooters hechos con 8BP como el Nibiru o el Anunnaki y un video introductorio a 8BP que os adjunto aqui:




Muchos serán los blogs que tratarán el contenido del evento y como no, la participación de Jon Ritman (creador de Batman, Head Over Hells, Match day...), que fue un invitado de excepción.
Estuvimos con Jon Ritman, el creador de Batman (entre otros)
Tuve la oportunidad de charlar con Jon Ritman y contarle lo que 8BP puede hacer. No todos los dias tenemos la ocasión de  conocer en persona a una estrella del calibre de Jon.

Yo en este post os voy a contar mi impresión sobre el evento. Lo retro esta mas de moda que nunca. Y no hay una causa sino muchas. Una muy importante es que un videojuego de 8bit lo puede hacer una sola persona en unas pocas semanas (o a lo sumo meses), mientras que un juego para sistemas modernos requiere mas tiempo, mas detalles, mas trabajo. Además las limitaciones de estas máquinas, lejos de verse como un problema, son valoradas positivamente pues estimulan la imaginación y el ingenio.

gran acogida del videojuego "3D-Racing One", creado con 8BP
Los amantes de lo retro poseen una complicidad "silenciosa". Cuando un programador de Amstrad se encuentra con un programador de spectrum, commodore o MSX (o otro sistema antiguo), se dan la mano. Se entienden en el lenguaje secreto de los 8 bit.
El publico disfrutando de Anunnaki, 3D-racing one, Nibiru...
Otra cosa que me sorprendió fue el elevado número de niños que descubrieron y disfrutaron de los juegos de 8 bit. Su simplicidad, su fácil manejo, su clara mecánica...les atrapa. En verdad los juegos tan sencillos ya no están de moda y por lo tanto están "fuera del alcance" de las nuevas generaciones.
Los niños son verdaderos embajadores del sentido común, de lo que significa divertirse y su criterio esta limpio de modas. Son auténticos validadores de estos juegos.
Una distinguida visitante disfrutando con "Fresh fruits & vegetables", creado con 8BP
Incluso el primer juego construido con 8BP "Mutante Montoya", fue la delicia de grandes y pequeños. Incluso yo mismo estaba sorprendido. Es un juego sencillo, pero "engancha".
Publico jugando a "mutante montoya"
Una novedad interesante y que me causó una grata sensación fue ver un juego mio ("Nibiru") en edición física a la venta. No es mi intención ganar dinero y prometo donar lo poco que gane con el, pero reconozco que me hizo mucha ilusión. Fue como un deseo anhelado desde niño, ver un juego mio a la venta, en cassette.

gran acogida del juego "Nibiru" ejecutado con una Bartop con joystick profesional
Nibiru a la venta a precio ochentero
Durante la jornada del Sábado ofrecí una charla sobre programación Pseudo-3D, cuya capacidad está integrada en la librería 8BP desde la versión 32. He de decir que el público era excepcional: gente reunida en torno a un interés y una pasión común. Esa pasión nos conectaba a todos en la sala de conferencias. Para mi fue un placer compartir esas ideas con todos vosotros.

imagen de la charla de pseudo-3D
Hablé de como estaban programados los juegos en los 80: Pole Position, After burner, Space harrier... y tambien de como se hicieron los juegos pseudo 3D en el Amstrad, asi como de la programación pseudo 3D con la libreria 8BP.

Aunque en el canal oficial de Retromadrid aun no ha sido publicado, hay un canal de youtube que ya ha publicado la charla, aqui os la dejo. Cuando esté disponible el de Retromadrid, añadiré dicho video




Y por último solo me queda agradecer a la organización (a la Asociacion de Usuarios de Informatica Clasica - AUIC) y a todos, expositores y visitantes, por hacer de Retromadrid un gran punto de encuentro.

gran stand de 8BP en retromadrid 2018


hasta pronto amigos!