Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Mensajes - josepzin

Páginas: 1 ... 11 12 [13] 14 15 ... 909
181
Desarrollo / Re:CharPad, editor de chars, tiles y mapas
« en: Marzo 06, 2024, 19:45:44 »
Bueno, es que yo lo hacía así también. Es decir, no exportaba todo el mapeado, sino pantallas independientes.
Probaré la opción esa de Submaps, a ver si separa cada pantalla.



Citar
En todo caso para hacerlo como tu dices, en el momento que compilas para probar, ya sabes las pantallas que tienes metidas. Antes de compilar modificas el valor correspondiente al número de pantallas que tienes y si añades más, modificas el valor. O estableces un valor máximo, por ejemplo de 40 pantallas y lo mantienes salvo que crezca...no le veo más problema salvo que me pierda algo, que también puede ser (soy un programador sinver)
Si, creo que es la respuesta, tener esos valores pero se me va la cabeza en como se haría un scroll multidireccional!
@Zub !!

182
Desarrollo / Re:CharPad, editor de chars, tiles y mapas
« en: Marzo 06, 2024, 19:42:46 »
Si, todo por código, por eso digo que es un dolor. Ahí creo que el charpad no ayuda gran cosa. Una manera quizás sencilla, que simplificaría esta tabla podría ser por ejemplo, establecer un caracter invisible con material 5.
Sería una opción fácil para poner límites, la única pega que le veo es que en ese lugar no se podría poner ningún elemento del escenario. Y otro problema es que si se usan tiles (2x2, 4x3) la cosa se complica más todavía.

Entre los programas que vengo acumulando desde hace añares para estas cosas tengo uno que se llama Tiled, que quizás podría servir para esto. Seguro hay otros editores mucho mejores. Ya investigaré un poco mas el tema. Por ahora puedo usar el sistema vía código.

183
Desarrollo / Re:CharPad, editor de chars, tiles y mapas
« en: Marzo 06, 2024, 14:30:50 »
Con el tema del Scroll y tiles la verdad no he trabajado, supongo que del problemas que hablas es para hacer un flip Screen. No acabo de entender muy bien tu problema....

¿Por qué dices que no sabes el ancho? De normal (o por lo menos lo que yo hago) al diseñar pantallas formadas por tiles, es tener unos tiles que encajen con el tamaño de la pantalla. Por ejemplo tiles de 5x5.

Con esto tendrías 8 Tiles horizontales (8x5=40) y 5 verticales (5x5=25) Entonces ya sabes que tienes que poner esos 8 tiles y luego bajar 5 caracteres en la pantalla para poner los siguientes 8.

Los Tiles almacenarán una secuencia consecutiva de 25 caracteres (un vector de caracteres) ej:

Tile1[25]={1,5,6,8,34,12,12,21,34,2,5,45,35,23,53,50,21,12,4,65,45,5,67,4,89}
Tile2[25]={2,8,9,12,26,16,1,1,34,23,5,12,32,25,58,67,2,16,88,99,32,12,6,14,8}

Escribes el Tile1 así: 5 caracteres seguidos en la memoria 0 de pantalla.
                              5 caracteres seguidos en la memoria 0+40 de pantalla.(Osea una fila mas abajo)
                              5 caracteres seguidos en la memoria 0+80 de pantalla.(Osea 2 filas mas abajo)
                              5 caracteres seguidos en la memoria 0+120 de pantalla.(Osea 3 filas mas abajo)
                              5 caracteres seguidos en la memoria 0+160 de pantalla.(Osea 4 filas mas abajo)

Escribes el Tile2 así: 5 caracteres seguidos en la memoria 0+5 de pantalla.
                              5 caracteres seguidos en la memoria 0+45 de pantalla.(Osea una fila mas abajo)
                              5 caracteres seguidos en la memoria 0+85 de pantalla.(Osea 2 filas mas abajo)
                              5 caracteres seguidos en la memoria 0+125 de pantalla.(Osea 3 filas mas abajo)
                              5 caracteres seguidos en la memoria 0+165 de pantalla.(Osea 4 filas mas abajo)

Al terminar el octavo Tile bajas 5 filas de pantalla para escribir el noveno. (Osea en la posición 200. 40*5)

Y así hasta completar todo el mapeado..

El mapa de pantalla que exportas en "bin" con charpad, contiene un set de 40 tiles almacenados consecutivamente en un vector y los guarda de izda a dcha y de arriba a abajo (OPQA de toda la vida).

No sé si te aclaro algo o te lío mas :-P

Bien, es lógico que el tema se complique porque no es tampoco fácil de explicar.

Entiendo lo que me dices y es lo que estoy haciendo (al final me salió mientras voy aprendiendo). El caso es que con una pantalla está super claro.

Pero desde CharPad tengo generadas 4 o 5 pantallas de forma consecutivas, asi que luego de la primer linea de datos no tengo la segunda linea de la primer pantalla sino la primer linea de la segunda pantalla ¿se entiende? es como si fuera un mapa para scroll.
Asi que para saltar a la segunda linea debería saber el ancho total del mapa para poder saltear todos esos datos.

Esto ahora lo puedo solucionar generando cada pantalla de forma independiente, sería lo mas simple.

Pero me queda la duda como se hace con las pantallas con scroll.

184
Desarrollo / Re:CharPad, editor de chars, tiles y mapas
« en: Marzo 06, 2024, 13:15:52 »
Pues a ver si te lo resumo rápido. Al final es todo una evolución...
Cierto, por eso intento ir despacio pero quizas voy demasiado rapido :D

Citar
Tanto el Bomb run como el fart Escape (los inicios) el sistema de colisión era muy sencillo, usando las prestaciones del VIC. (Colisión sprite/Background en Bomb run y Sprite/Sprite en Fart Escape) Para editar las pantallas en Bomb run que era modo bitmap no usé Charpad. Creo que fue Multipaint. Para el Fart Escape si usé el charpad a un nivel muy básico....
Ya le voy a dar un nuevo vistazo a ese juego, a ver si puedo preguntarte cómo resolviste cosas concretas.


Citar
En el Juanje Juega, Seguía con la colisión Sprite/Sprite hardware pero ya fue necesario implementar colisión software con las plataformas. Aquí, tiré del Charpad para establecer los caracteres "colisionables". Lo hice gestionado el tema de los "materiales" que no sé si lo has visto. Chars con material 0 eran aire, material 1 suelo, material 2 escalera etc etc...
Ahh bien, vi eso de los "materiales" y sospechaba que sería para cosas como esta, asi que me lo has confirmado!!


Citar
La animación del los sinvers era bastante simple pero costosa de "setear", para cada pantalla había una tabla tipo:

Enemigo1--->Posx,Posy,Velocidad,DesplazamientoX,DesplazamientoY, Cambio de sentido aleatorio (si o no) etc...
Nos vamos acercando a parte de mi pregunta,

¿cómo hiciste para crear esa tabla?
Me imagino que fue a mano en plan, poniendo los valores por código. Pero sé que se puede hacer usando editores, no creo que estén entre las opciones de CharPad.


Citar
En Randoom También uso el tema de los materiales. Para los sprites ya uso colisiones por Software y la mayor evolución viene de la animación de los sinvers... debido a lo costoso que era en JJ, quería hacer que tuvieran un movimiento autónomo ( Que detectaran los choques con las plataformas o que cayeran al llegar al borde de la misma) De esta mánera solo hay que situarlos en pantalla y cobran vida..
Ahí has creado vida!! :D
Por ejemplo para la colisiones con el escenario, ¿usaste la misma función que para el protagonista?

185
Desarrollo / Re:CharPad, editor de chars, tiles y mapas
« en: Marzo 06, 2024, 05:33:25 »
Me encuentro con un problema en esto del mapeado.

Al hacer las pantallas como si fuera un scroll, una detras de la otra, luego para leerlas es un lio porque ¿cómo se cuanto sumar para llegar a la fila siguiente, si no sé el ancho total del mapa?

No sé si se entiende...

Cada pantalla tiene 10 tiles, pero el mapa que tengo con CharPad tiene (supongamos) 6 pantallas.

Si quiero mostrar la primer pantalla empiezo leyendo desde cero pero al llegar a 10 tendría que pasar a la linea de abajo y eso significa sumar el total de todo el mapa para llegar a la primer columna de la segunda linea.

No me parece una buena idea... igual me pregunto cómo lo hacen cuando tienen un mapa con scroll, que tienen que ir metiendo a la pantalla una columna, ¿hay que saber de antemano ese ancho? ¿y si cada nivel tiene un ancho distinto?. Se me ocurren soluciones pero me pregunto si no hay otras opciones.

@Dozznar @jicas

186
Alex64 / Re:Cabal
« en: Marzo 05, 2024, 18:14:42 »
Yo puedo tener a mano el gatillo de una ametralladora Vulcan y tampoco lograría esas puntuaciones :D

187
General / Re:Nuevos juegos en desarrollo
« en: Marzo 05, 2024, 18:13:05 »
No le falta mucho al Phantomas

188
General / Re:Nuevos juegos en desarrollo
« en: Marzo 05, 2024, 03:01:52 »
Actualización (sin demo): Phantomas III The Return of Brok for C64 » Devlog » Status Update v0.70

https://srhead.itch.io/phantomas-iii-the-return-of-brok/devlog/692226/status-update-v070


189
Desarrollo / Re:CharPad, editor de chars, tiles y mapas
« en: Marzo 05, 2024, 02:52:48 »
@Dozznar también me interesa saber cómo hiciste en tus juegos para cada pantalla, enemigos o información especial de la pantalla.

@jicas En tu caso, en el Vampire ¿cuál usaste?

Y otra cosa importante... ¿cómo hiciste el mapeado de los enemigos?
He visto que hay programas de mapeo que permiten poner los enemigos y objetos, especificar el comportamiento o trayectoria, etc. No creo que CharPad esté pensado para eso, pero en todo caso ¿cómo lo resolviste?
La lógica del scroll en principio es fácil, otra cosa es hacerlo y que funcione bien!! :D

191
Desarrollo / Re:TRSE, Turbo Rascal Sintax Error
« en: Marzo 04, 2024, 19:39:27 »
Si, tiene punteros, permite incluir código ensamblador, crear librerías, clases, records, etc.

192
Alex64 / Re:Cabal
« en: Marzo 04, 2024, 18:45:37 »
Primer partida: 4.415 puntos

Me gustaba mucho este juego, aunque sería genial tener una versión que implemente el salto también.

193
Alex64 / Re:Highnoon.
« en: Marzo 04, 2024, 18:39:00 »
Jo... con razón que meteis puntos a lo loco, entre la habilidad y los conocimientos es lógico. Por mi parte toda la admiración!

194
Desarrollo / Re:TRSE, Turbo Rascal Sintax Error
« en: Marzo 04, 2024, 18:23:10 »
@Dozznar @mirazulado @jicas , por citar a la gente que está usando C o Rascal. Si hay alguien mas decidme.

Me dejo fuera a los pesos pesados del ensamblador... que a esos mejor no molestarlos ;)

195
Desarrollo / Re:CharPad, editor de chars, tiles y mapas
« en: Marzo 04, 2024, 18:21:25 »
Al Scroll del C64 (Hardware) me gustaría un día dedicarle un directito. Hacer un Scroll Software (al caracter) de una linea de texto es muy sencillo. Cualquier programador experto como usted deducirá el procedimiento. ;-P
Entre los ejemplos que estaba viendo ayer había uno muy simple de estos. Tan simplificado el código que me costaba entenderlo! :D



Citar
El tema es cuando te metes en un Scroll al pixel (Hardware). Aquí el VICII no nos ayuda tanto como nos hubiera gustado. Básicamente (resumiendo), lo único que ofrece es un registro al que le metes un valor del 0 al 7. Este valor simplemente desplaza la pantalla (Toda la pantalla) a la derecha/izquierda o arriba/abajo  el número de pixels que indiquemos en el registro. En un juego, salvo que el área de juego sea toda la pantalla no acaba de ser muy práctico ya que necesitamos meter marcadores seguramente. Tenemos dos opciones:

1.- Poner los marcadores como Sprites (no se ven afectados por el scroll) Es una técnica que queda bastante chula en algunos juegos ya que el "Score" por ejemplo, queda en un overlay sobre el área de juego. El problema es que tenemos el límite de 8 sprites para el juego y los marcadores. Obviamente los juegos que usan esta técnica, multiplexan para saltarse ese límite, lo que implica técnicas de manejo del Raster. Que bueno, tampoco son complicadas, es meterse un poquito más.

2.- Hacer que parte de la pantalla no se vea afectada por el Scroll. Esto también se maneja por medio del raster, interrumpiendo el trazado de la imagen cuando lleguemos a una línea concreta de pantalla.

En ambos casos hay un problemilla añadido. El volcado de los datos de la imagen a la pantalla debe hacerse rápido o si no queda un efecto de "LAG" muy feo. Para solucionarlo se suele usar técnicas de doble buffer de pantalla.

La lógica del tema la entiendo, pero luego a la hora de ponerse seguro que se complica bastante... Todo lo del raster implica unas optimizaciones que por ahora no están a mi alcance todavía.



Citar
De todo esto hay bastante documentacion por aquí https://codebase64.org/doku.php?id=start. (En perfecto Inglés y para ASM)
Has citado a la Madre de todos los ensambladores con esa web...


Citar
En el Oscar 64 (ya para "C") hay en la carpeta "samples" código aplicado a ambas técnicas, entre otras cosas..
https://github.com/drmortalwombat/oscar64

He dudado muchísimo entre Oscar64 y TurboRascal, al final me ha ganado la nostalgia y mi pasada afinidad con Pascal, pero sino lo tenía claro: C con Oscar64 o CC65.


Citar
Por último en mi "afamado" "Fart Scape" uso la segunda técnica de una manera chapucera pero me funciona. Y creo que también tengo algún ejemplo con código sencillo que estaría dispuesto a compartir si me prometes no reirte al verlo ;-P
Afamado y denostado :D

Yo poco puedo reirme del código de nadie!!

Llegado el momento ya pediré consejos a indeseables de la programación como usted. Ya te cito en el otro hilo, asi lo tienes presente también.

Páginas: 1 ... 11 12 [13] 14 15 ... 909