MetsuOS

Construyendo la plena inclusión a través del videojuego

Tutorial de AGD 2018 Capitulo 02 - Qué son los tiles ⚫①

Pantalla de Inicio de JBA

Continuamos con el tutorial, en esta ocasión centramos la atención en los tiles o bloques.

Si empiezas de cero lee la primera parte de este tutorial de AGD antes de entrar a que son los tiles.

En esta ocasión continuamos con el primero de los siguientes elementos (Los tres restantes serán la entrega número 3, por razones de extensión). En conjunto, los cuatro nos permitirán crear nuestro "mundo virtual":

Una vez completemos este y el siguiente capítulo seremos capaces de crear pantallas sencillas y no morir en el intento (ya tendremos tiempo jugando el juego).

¿Qué son los Tiles?

Pantalla de la cueva de Javi's Big Adventure

Antes de comenzar a explicar cómo se crean tales en AGD, quizá estaría bien explicar en qué consisten los tiles y qué es eso de "mapas hechos con tiles".

Todo comienza debido a que las máquinas sobre las que ejecutaremos nuestros juegos tienen una memoria extremadamente limitada, así que conviene ahorrar lo más posible.

En la época, los desarrolladores que trataban de grabar las pantallas de sus juegos directamente en memoria, rápidamente se encontraban con el problema de que la memoria del ordenador se llenaba extremadamente rápido.

Por ello, idearon una forma de reducir el espacio que ocupaban sus pantallas.

"Divide y Vencerás"

Eso reza la famosa máxima, y esto es lo que hicieron, dividir la pantalla en trocitos más pequeños y repetir estos de forma que con un número limitado de trozos de gráfico, un poco de arte y un mucho de paciencia, lograban crear pantallas bastante complejas, con un gasto de memoria mínimo, al tener que indicar solo que en la posición tal, estaba el gráfico cual y no almacenar el gráfico en sí más que una vez.

¿No lo ves claro? Fíjate en el agua de la parte inferior de la captura que acompaña a estas líneas y los pinchos del fondo ¿muchos verdad? En realidad no, tan solo hay un gráfico de 8x8 píxeles para el agua y otro para el pincho, a base de repetir estos dos gráficos he construido ese "lago mortal de la leche"(TM).

Si lo tradujera en texto, en lugar de tener que guardar algo del estilo: "dibujoagua dibujoagua dibujoagua dibujoagua dibujoagua dibujoagua dibujoagua dibujoagua dibujoagua" simplemente almacenaremos "9 x dibujoagua" lo que evidentemente ahorra cantidades ingentes de memoria para almacenar las pantallas.

El truco radica en guardar una sola vez el dibujo y repetirlo en lugar de almacenar los píxeles de cada parte de la pantalla, requiere más trabajo para evitar que se note la repetición pero merece la pena.

AGD hay que trabajarlo

Está claro que llegar a crear pantallas vistosas, en las que no se note la repetición de los pequeños bloques (o lo menos posible) y que además sea colorista, no es fácil, pero os enseñaré lo básico para que luego vuestra creatividad os lleve al Olimpo de los creadores de pantallas.

Como me jacto de unir lo viejo y lo nuevo, predicaré con el ejemplo, este video, con un tono muy actual, explica bastante bien cómo funciona esto en la práctica. Hay diferencias entre la época "arcaica" (que es donde haremos nuestro juego con AGD) y la "mona elegante", pero es un modo muy visual de ver esto en la práctica:

Un pequeño ejercicio: dedica un rato a tratar de identificar los bloques individuales que he usado para crear el mareado de The Big Javis Adventure e incluso descárgalo, y usando la versión 4.6 de AGD cargado para ver cómo está hecho, no hay mejor forma de aprender que tocar.

Si vas a cargar el juego en AGD, te recomiendo que uses la opción cargar de AGD y pongas la cinta del juego a partir del final de la screen.

Creando nuestros primeros tiles en AGD

Editor de Bloques - Bloque 0 Fondo

Lo primero de todo, es acceder al editor de bloques desde el menú principal, pulsando B, esto nos llevará a la pantalla del Editor de Bloques, y mostrará el Bloque 0.

Este es un bloque muy especial y que debemos dejar sin tocar.

AGD utiliza este bloque, de tipo "empty space" (lo explicaremos cuando lleguemos a crear paredes y plataformas) que básicamente es el "cielo", o relleno por defecto de todas las pantallas.

Si lo tocamos, variaremos todo el fondo (para bien y para mal).

Nota importante: Este bloque también define los colores de los sprites, el "paper" de este bloque será el de fondo y el "ink" la tinta. Es algo que sucede "por que se ha diseñado así".

En la pantalla del editor podemos ver varios elementos:

Os copio aquí la lista de atajos de teclado de esta pantalla:

TECLAS
=============================================
- FLECHAS = Mover el cursor de dibujo
- SPACE = Cambia color del pixel seleccionado
- Q = Mover a la izquierda por las propiedades
- W = Mover derecha por las propiedades
- N = Siguiente Bloque
- L = Bloque Anterior
- P = Rotar color de Fondo
- I = Rotar color de Tinta
- B = Cambiar Brillo y Flash
- M = Copiar bloque actual al portapapeles
- K = Pegar bloque desde el portapapeles
- C = Limpiar el bloque actual
- X = Crea un nuevo bloque
- D* = Borra el bloque actual
- ENTER = Volver al menú principal.

Bloques, bloques, bloques

Bien, continuemos, en la primera entrega creamos "el área de juego", ahora es el momento de comenzar a llenarla con nuestro "mundo virtual". Como hemos dicho, las pantallas se componen de bloques. Cada uno de ellos de 8x8 píxeles.

Como sabemos en ZX Spectrum, cada "carácter" de 8x8 píxeles puede tener solamente un color de fondo y otro de tinta, por lo que debemos prepararnos para ser creativos.

En esencia es un proceso sencillo, pero lleva práctica. Ya sabéis que el maestro Fran Gallego nos incita a practicar, practicar y practicar 🌐🟡③ y aquí vamos a hacer honor a ese guideline!.

Practicar, Practicar, Practicar

Bien, además de trastear con los distintos bloques, en esta ocasión os voy a plantear un reto. La pantalla de "la cueva" que vemos en este mis post, está construida con 12 tiles distintos.

El reto consiste en identificar esos 12 tiles y replicarlos en el editor de bloques.

Como no es algo sencillo, en caso de que se bloqueen, quieran comprobar si los encontraron, o tengan dudas, pueden preguntarme a través de Twitter en la cuenta @metsuke 🌐🟡③, o por mail en metsuke(at)gmail.com y - en la medida de mis posibilidades y tiempo libre, que no es demasiado - intentaré ayudarles.

En el próximo capítulo usaremos esos bloques para crear la misma pantalla en el editor (por si son curiosos) y a continuación haremos un ejercicio artístico que les revelaré en la próxima entrega :)

Sobre todo, ¡disfruten haciéndolo!.

¿Y ahora que?

Referencias Bibliográficas

One More Thing

Un escenario de retrocomputación del siglo 24

¡Desbloquea el poder de MetsuOS y descubre que la privacidad y la seguridad son la clave para desencadenar tu verdadero potencial en línea!

Contenido registrado en Safe Creative

Logo Safe Creative
¡Usa el código de promocional 7ZYM4Z y ahorrate unos eurillos en tu suscripcion de Safe Creative!

MetsuOS Needs You!

Apoyanos en este proyecto difundiendolo en tus redes, o mejor, haznos una donación a la cuenta paypal para poder dedicar más tiempo y recursos a el. No olvides comentarnos que parete te interesa más junto con tu donación.

En este momento, además de mantener los servicios, estoy centrado en crear la siguiente iteración del software que me permite hacer todo esto y creando una biblioteca personal física para poder contrastar contenido.

Sobre el sistema de validez de un contenido en MetsuOS

Empezando a incorporar los niveles de validación de un contenido (también llamada sabiduría o niveles de conocimiento) ⚫🔴 🟡 🟢 🔵⚪ ¿Qué són?

Sobre la categorización de los tipos de conocimiento

La Metsukeología (de Metsuke vision global y logos conocimiento) es la ciencia que estudia el conocimiento como un conjunto potencial de conocimiento del que podemos obtener, procesar o percibir partes concretas dentro de un marco contextual específico, y cuyo contexto general real está muy por encima de lo que somos capaces, como especie, de percibir, procesar e integrar de forma completa (definición en progreso).

La Metsucología (de Metsu aniquilación - en este contexto en forma de colapso - , logos conocimiento) es la ciencia que estudia como extraemos verdades percibidas - colapsadas - como conocimiento desde nuestra perspectiva real (tanto epistemológico como gnoseológico) al tomar una parte específica del conocimiento metsukeológico potencial enmarcado en un contexto concreto, obligando a colapsar el conocimiento potencial en conocimiento específico (definición en progreso).

Mas sobre el contexto

DISCLAIMER: Mi consideración de anticientífico respecto al consenso científico es una hipotesis de trabajo propia, que supone que toda asignación de validez, incluso aquella derivada de la conclusión por acumulación de evidencia NO debe ser supeditada a debate, ni acuerdo, debe ser algo probabilistico sin intervención del ego humano. Podría estar equivocado y, en este punto, es donde se aplicaría entonces ese mismo consenso que ahora considero no valido (incluso dañino)

Existen indicadores para algunas cuestiones adicoinales como los siguientes:

Cuando hablamos de un contenido que incluye un texto que hace referencia a otro.

También aplicaremos el Sistema de fiabilidad de fuentes y credibilidad de contenidos de la OTAN 🔴②, este sistema incluye una valoración de la fiabilidad de la fuente de A a F (siendo A la de mayor fiabilidad) y una varloración de credibilidad del contenido de 1 a 6 (siendo 1 la mayor credibilidad).

En MetsuOS la agregaremos al final uniendo amos valores como si fuera una coordenada. Por ejemplo: ⚫①-D4 o 🟡③-B2. Esto ayudarña a contextualizar la información sobre la solidez del conocimiento al que se hace referencia en cada momento.

Hay que tener en cuenta que, cuando hay elementos subjetivos o parcialmente subjetivos, el punto de referencia seré yo mismo. Quizá más adelante pueda objetivizar esto más (seria lo deseable), pero en tanto no tenga herramientas que me lo permitan, debo ceñirme al principio de honestidar intelectual, y esperar que mis sesgos dañen lo menos posible la información (en parte este es el nudo gordiano que pretendo resolver, y por ello es dificil resolverlo a priori).

Así de forma resumida, podríamos decir que esta definición es nivel 🔴② (Rojo2 xD) ¿Crees que me dejo algo? Si es así por favor ayudame a mejorarlo contactándome a través de X (Twitter) en mi cuenta, @metsuke 🌐

Consulta la versión completa de la descripcion en ⚫🔴🟡🟢🔵⚪ (🔴②) Un poco más de detalle