[Devlog] Vircon32: Creando mi propia consola

carra

#630 Jeje de todas formas si te animaras a hacer esa mejora, creé un repo para cosas hechas por la comunidad, lo podrías subir ahí si quieres.

ESL_Kaiser

#609 vaya pasada, me han entrado ganas de jugar, este debería estar si o si en lo alto de tu tasklist

2 1 respuesta
carra

#632 Gracias, aunque de momento esto no va a pasar de ahí. De momento. Algún día no lo descarto, pero mi tasklist tiene muchas cosas... y uno sigue teniendo que trabajar y demás me temo :man_shrugging:

1
carra

He creado una nueva versión del emulador (v23.3.19). En la anterior vi que podía perderse el audio en algunos casos después de usar menús o cambiar de ventana. Aparte de este fix no hay ningún cambio (el emulador ya está terminado).

carra

Tenía ganas de intentar hacer algo de merchandising de la consola, a ver cómo quedaría.
He hecho esta prueba con una camiseta y una sudadera con el logo.

Yo creo que no se ven mal :sunglasses:

7 1 respuesta
DarkRaptor

Inb4 llega carra y hace una prueba de cómo sería una hipotética empresa llamada Vircon Games Inc. xd

6
H

Esto es flipante. ¿Qué coño he hecho yo con mi vida? xD

Ojalá te eche el ojo algún headhunter porque si siendo uno puedes montar esto, no me imagino en un equipo de iguales...

¿Se te ha ocurrido montar una Vircom32 jam en itch.io?

Enhorabuena, desde el corazón.

3 2 respuestas
r2d2rigo

#637 como esta dices? https://itch.io/jam/first-vircon32-jam

Ya va tocando una segunda edicion.

2 2 respuestas
carra

#638 Se puede ir mirando, de hecho la primera fue cerca de estas fechas (marzo). Aunque también depende de hay interesados, y de cuándo le va bien a cada uno.

#637HashAfgano:

Esto es flipante. ¿Qué coño he hecho yo con mi vida? xD

Anda que no se pueden hacer cosas en la vida, seguro que tú has hecho muchas que yo no!

1
-tarkens-

Brutal!!

1
Jastro

#638 el mejor juego de la jam -> https://jastro.itch.io/war-on-the-water

Yo me gustaria decir que me apunto, pero la ultima vez me parecio un infierno, no se si quiero repetir experiencia

1 respuesta
carra

#641 Hombre como veas. Compromiso ninguno, ya sabes!

1 respuesta
Jastro

#642 puedo hacer un try, lo peor que puede pasar es que tenga un muñeco quieto en la pantalla como la ultima vez y ya xD. Avisa e intento hacer algo.

1
Ridote

#635 pero hijo de perra con ese cuerpazo como no van a quedar bien

1 respuesta
carra

#644 Cuerpazo dice. No sabes tú lo que hace elegir la mejor foto de 15, y recortar un poco bien después :rofl:

1
finalform

y es que encima el tío es humilde, yo no puedo más.

7
thenanox

tiene que ser una IA, porque @carra no para de abusar

2
carra

Tenía pendiente subir al repo mi ejemplo de RPG, y ya lo tenéis aquí.

No lo había subido aún porque lo hice de cara al video y el movimiento estaba un poco trampeado. Ahora ya le he montado un sistema de colisiones real, aunque muy simple basado en rectángulos. Con el mismo editor Tiled que uso para los mapas, he dibujado unos cuantos rectángulos que son las áreas donde el personaje no puede pasar (en azul). El rectángulo rojo es el que hace de trigger para lanzar la escena con los diálogos si detecta que intentamos pasar.

El sistema de colisiones lo he escrito a modo de "versión preliminar" de una futura librería de colisiones. En realidad lo podéis usar ya si queréis, lo único que ahora mismo está limitado a movimientos en las 4 direcciones, sin diagonales, que es como se mueven los personajes en este RPG.

6
carra

Acabo de añadir al compilador algo que más de uno me había pedido: soporte para memoria dinámica. Ahora el lenguaje permite hacer conversiones de tipos explícitas, y con eso he podido implementar en la librería estándar las funciones malloc, calloc, realloc y free. Mi gestión de memoria dinámica es muy básica, así que puede que no sea la más eficiente. Pero debería funcionar correctamente.

Aún así, antes de darlo por bueno voy a crear algún ejemplo que use memoria dinámica de forma intensiva para comprobar que todo funciona. Después de eso ya crearé una nueva versión de las herramientas de desarrollo y actualizaré la documentación (guías y APIs).

5
carra

Ya está subida la nueva versión del compilador: v23.3.7. También he subido este nuevo tutorial, que muestra cómo hacer efectos de partículas usando listas con memoria dinámica.

Este ejemplo está creando y destruyendo gotas todos los frames. Además he configurado la gestión de memoria para que tenga disponible muy poca cantidad (para obligarle a liberar y reutilizar la memoria). Así que creo que es un buen test para mi implementación de memoria dinámica.

7
12 días después
carra

Después de haber estado con temas más técnicos me apetecía dedicarme un poco a hacer algún proyecto de juegos pequeños. Hacía ya años que quería hacer un juego de la típica tragaperras, y lo he estado avanzando. Aquí podéis ver el diseño de la máquina y la interfaz.

Aun así, un juego de este tipo puede cansar muy rápido. Para evitar esto he tomado varias decisiones:

  • Hacer el juego muy "arcade": dinámico y llamativo y con partidas rápidas.
  • Tener elementos de habilidad: Retenciones, avances, doble o nada y la ruleta.
  • Hacer que ganar sea un poco más fácil que en una máquina real.

Y sobre todo lo que le dará más vida al juego es que tenemos nuestra casa, y con el dinero que ganemos podemos comprar muebles y decoración, y ver cómo la casa se va completando. Para llegar a tener todo las partidas podrían hacerse largas, así que voy a permitir guardar partidas, como veis en el menú principal:

8 1 respuesta
Ridote

Hacer que ganar sea un poco más fácil que en una máquina real.

Jaja, más fácil dice. Dirás factible. Muy guapo el diseño por cierto.

3
puntocom

#651 Me encanta el diseño, me recuerda a los juegos que venían en los discos shareware que compraba hace 20 años.

1 respuesta
carra

#653 Anda, pues me hubiera venido bien echar un ojo a esos juegos jeje

16 días después
carra

Estos días no le he dedicado mucho tiempo a la consola. Avancé algunas cosas del juego de la tragaperras pero ahora mismo lo tengo pausado porque me ha dado por hacer un Tetris (que no había ninguno en Vircon jeje). Lo tengo casi terminado pero como hace mucho que no pongo nada, aquí veis la pinta que va a tener.

Veréis que para las piezas he tomado como referencia el Tetris arcade de Atari. Sobre todo porque no me gusta nada la típica estética de dibujar todos los cuadraditos iguales, y sin ninguna conexión entre ellos.

Por cierto, ese fondo de tuberías y aparatos los he hecho con una IA. Luego he tenido que retocar cosas a mano, pero para crear algo así resultón con poco tiempo ha funcionado bastante bien!

8 1 respuesta
thenanox

#655 me vi la peli hace unos dias y ando enganchado al tetris effect por los viejos tiempos. siempre me han gustado las piezas de atari porque las piezas tipo L las identifico mejor para saber hacia que lado va cada una :p.

1 1 respuesta
carra

#656 Pues si quieres jugar llegas justo a tiempo :grin:

Ya lo tenéis subido, como siempre en la web.
Y para ver la pinta que tiene os dejo este video con gameplay:

2
carra

Bueno, me han alertado en Discord y lo he investigado un poco. Parece ser que The Tetris Company lleva ya tiempo retirando incluso proyectos de código abierto y gratuitos. Muchos ni siquiera usaban el nombre Tetris. La verdad es muy decepcionante ver que van contra proyectos amateur poco conocidos y que no venden ni monetizan nada, cuando en los 90 (cuando el Tetris era más famoso) era fácil encontrar muchos clones de Tetris en las tiendas.

Yo seguiré manteniendo el juego en mi propia web, pero puede que haga falta tomar medidas preventivas y quitarlo de itch.io y youtube. También cambiaré el nombre y borraré cualquier mención a Tetris en la descripción, para que no les resulte tan fácil encontrarlo. Espero que con eso pueda conservar el juego, aún si eso hace que lo juegue menos gente...

PD: Ya está, por arte de magia ahora mi juego es Vitris (Vircon tetris). El video lo he puesto oculto, y he quitado el nombre Tetris de la web y del código...

9
13 días después
carra

Como hace días que no cuento nada os actualizo un poco.
He estado avanzando algunas cosas para el prototipo de consola física.

Por un lado me están imprimendo en 3D una pieza que es un símil de la ranura para cartucho. La usaré para probar el ajuste y la conexión, con los cartuchos que ya tengo fabricados, y ver si funciona bien el diseño para que el USB del cartucho se centre en posición y conecte fácilmente.

Por otro lado estoy haciendo una versión del emulador en Raspberry adaptada a como debe funcionar el prototipo. Creo que he conseguido algo que es complicado de hacer por software: distinguir en qué puerto físico está conectado cada mando. Así, un mismo mando puede corresponder al jugador 1, 2, 3 o 4 si lo conectamos en diferentes puertos. Como en una consola física, vamos.

Si todo esto va bien haré algún video para enseñarlo.

8
carra

Esta es la pinta que tiene el conjunto. Al final me he pasado un poquito con las holguras, pero en general ha quedado bastante bien. Ahora a ver si no me cuesta mucho meter y fijar en posición el USB hembra, y ya podré hacer alguna primera prueba.

7