2D Platformer Engine Tool - [Devlog]

kesada7

2D Platformer Engine Tool

Qué es 2D Platformer Engine Tool?

Es un plugin para Unity que te permite crear juegos de plataformas sin tener que tocar nada de código. La herramienta incluirá las características más comunes de juegos de plataformas conocidos como Super Mario, Super Meat Boy o Celeste para poder crear controladores de jugador, enemigos, plataformas móviles, etc personalizables.

La idea es poder crear un juego sin necesidad de saber programar y poder customizarlo lo máximo posible.

Pero eso ya existe no?

Bueno si quieres desarrollarlo en Unity sí, hay uno que es el más conocido llamado Corgi Engine, y otro por ejemplo Rex Engine.

Entonces en que se diferencia el tuyo?

Mi idea no es competir con ellos, no podría. Corgi lleva ya mucho tiempo desarrollándolo y perfeccionándolo y tiene muchísimas features.

Mi idea es diferenciarme un poco sacrificando perfomance y features a cambio de que la herramienta sea lo más simple y fácil posible de usar, ya que ahora mismo los otros 2 ejemplos que he puesto son más bien como un juego ya construido con muchos módulos y scripts, en el cual se trata de cambiar los sprites que ya vienen a modo de placeholder por los tuyos propios y luego ya para poder customizar las mecánicas tienes que pelearte un poco con la herramienta e incluso muchas veces tocar código, todo sin un editor propio sino directamente insertando scripts según necesites, por ejemplo, para un player controller en corgi tienes todos estos scripts:

Mi idea es que sea más sencillo a base de clicks todo desde el editor de la herramienta. Para el mismo ejemplo del player controller sería, tu pinchas en un game object y si no tiene ningún modulo ya asignado te da la posibilidad de asignar uno nuevo:

Pinchamos en Player, se insertará su módulo con todos los componentes y colisiones necesarios para que funcionen, y cuando pinchemos en ese game object ahora nos reconoce que tiene el módulo de player controller y nos dará todas las opciones para personalizarlo, organizado en pestañas para movimiento, salto, etc.

Un ejemplo de enemigo, con la herramienta para crear way points en un patrol, en el gif no se aprecia bien porque no se ve el cursor pero activo/desactivo la pestaña de volar. Si no puedo volar el enemigo no llegará hasta los puntos si están en el aire, los intentará seguir solo desde el suelo.

Bueno y después de haber soltado todo el rollo pues decir que como buen dev puede que esto no vea nunca la luz xD Ahora mismo como prototipo cumple más o menos su función pero hay muchas cosas que están muy mal hechas y habría que rehacer de 0 si realmente quisiera publicarlo y que fuese algo medio decente si contar los cientons de bugs. Al menos me ha servido para toquetear la parte de extender el editor de Unity y hacer plugins que nunca había hecho nada.

Si finalmente lo termino o no ya veremos xD Por ahora voy a seguir dandole, tengo pendiente meter:

  • Checkpoints
  • Plataformas móviles
  • Escaleras
  • Cofres
  • UI
  • Sistema de sonidos (que funcionará parecido al de animaciones, donde tu seleccionas la animación saltar y la metes en jump y se reproduce atomáticamente cuando saltes).
  • Entre muchas más cosas que se pueden extender como un dash paral el player a lo "Celeste", diferentes formas de disparar, o cualquier mecánica que se ocurra una vez ya estén las cosas más "básicas" para el funcionamiento del un juego.
8
DiGuti

Vaya currazo, enhorabuena!!

Eso sí, muere un gatito cada vez que alguien desarrolla una solución para "deprecar" a los programmers, jejeje

1 respuesta
Leos

Vaya curro te estas pegando! Tiene buena pinta, aunque no soy fan de estas herramientas xD

1 respuesta
kesada7

#2 #3 Thanks. Yo tampoco lo usaría xD Casi nunca tiro de la asset store para nada, y mira que tiene cosas... que si sistemas de guardado, de traducción para multiples idiomas, de animaciones... pero siempre intento hacerme yo todo lo que necesito para tener más control, y que me da más pereza aprender a usar la herramienta que hacerlo yo. Aquí pasa igual, esto para un programador es una patata, está pensado para artistas, diseñadores o gente que no sabe programar y que quieren prototipar o hacer juegos de plataformas sencillos. Luego subirlos todos a la google play y llenarla todavía de más basura xD

1
Hukha

Así que en esto andabas ocupado...
Como mola!
Ya que toque varias mierdas de editor me entra la intriga, como has hecho los way points? Gizmo personalizado, no?

1 respuesta
kesada7

#5 Si lo de lo de los way points no es más que el sistema que tenía en el otro juego de plataformas lo he puesto para que puedas modificar sus posiciones mediante gizmo y añadir/eliminar nodos con ctrl/shift

1 respuesta
Hukha

#6 Ya, pero... Con que lo has hecho exactamente? Gizmos toque pocos, toqué más que nada editor

1 respuesta
kesada7

#7 Para capturar inputs en la GUI como pulsar shift o control he usado Event y para mover los nodos Handle. Yo ha sido la primera vez que hago algo así por lo que mi código es puta mierda de estar quitando, poniendo... probando hasta que daba el resultado que quería, uno de los motivos por lo que no puedo subirlo así a la store ya que ahí a diferencia de en un juego mientras funcione... aquí el código de un plugin es visible y cualquiera que lo abra se va a echar las manos a la cabeza xD

AikonCWD

Yeeeah como mola, es algo así como un pequeño framework cerrado y abstracto para montar un platformer, no? Pinta muy chulo.
El hilo te ha quedado genial :ok_hand:

1 respuesta
kesada7

#9 Ty! Si algo así. Cuando hice el troleo con tus sprites iba a grabarlo para ver un ejemplo de como funciona haciendo una copia mala a tu juego pero al final me dio pereza xD Tal vez más adelante cuando esté un poco más acabada grabe un video creando una demo o varias haciendo juegos con distintas mecánicas porque creo que ahora mismo como tampoco se puede ver mucho en imágenes no se termina de entender bien.

Pero básicamente la idea es que vas pinchando lo que te hace falta, por ejemplo unas escaleras, y se te crean automáticamente ya preparada para interactuar con el player controller, después tu ya configuras la hitbox, velocidades, etc.

1 respuesta
AikonCWD

#10 Ostras, eso me molará verlo :)

Usuarios habituales

  • AikonCWD
  • kesada7
  • Hukha
  • Leos
  • DiGuti

Tags