¡Hola! Aquí Momfus, con el segundo Diario de Desarrollo de Project NN. Soy el programador principal de Crios Devs y si no saben mucho de qué va nuestro nuevo juego, pueden leer nuestro anterior posteo aquí. En este segundo capítulo quiero hablarles sobre un tema muy controversial y por el cual siempre mis colegas me preguntan ¿Por qué estoy usando GameMaker Studio 2?

Primero voy a hacerles una pequeña introducción sobre el motor. Game Maker Studio 2 es un motor gráfico para realizar videojuegos, orientado especialmente a 2D (pueden hacerse cosas en 3D pero no se especializa en eso). Esta herramienta originalmente realizada para enseñar a programar fue creada en 1999 con el lenguaje Delphi. Para mediados del 2000 fue cambiando y sacando nuevas versiones, hasta que Yoyo Games adquirió la licencia y comenzó a utilizar el lenguaje C++.

Si les interesa hay datos históricos de cómo evolucionó el motor (les dejo la info aquí) pero actualmente la versión es GameMaker Studio 2, la cual tiene un cambio fundamental en la interfaz de uso y un mejor soporte. Se puede “programar” con una metodología llamada “Drag & Drop” con la que el motor se hizo muy popular; pero lo más importante (y que recomiendo) es usar su propio lenguaje llamado GML (Game Maker Language). El mismo para darles una idea es una mezcla de C con Javascript y es “tipado dinámico” (además que no se requiere definir el tipo de variable en la gran mayoría de casos). El motor actualmente permite exportar a diversas plataformas tanto PC (linux, mac y Windows) como Ninendo Switch, PS4, Xbox One, Web, Android, iOS.

Reel de videojuegos hechos en GMS

Ahora que ya conocen un poco la herramienta pasemos a lo más importante: ¿Qué tiene de malo y qué tiene de bueno GameMaker Studio? ¿Es acaso tan distinto o inferior a los otros motores de desarrollo?

Todo lo que voy a comentar es experiencia personal y sepan que no importa que motor usan, lo más importante es que lo elijan de acuerdo a sus objetivos y al tipo de producto que quieren desarrollar. Cada motor gráfico tiene sus puntos fuertes y débiles y si es bien utilizado, se pueden conseguir resultados increíbles.

PUNTOS FUERTES

  • Tiene una interfaz muy amigable e intuitiva.
  • Especializado en el desarrollo 2D
  • Se puede prototipar soluciones de forma muy rápida e intuitiva.
  • Hay una comunidad en inglés muy buena para buscar soluciones, además de tutoriales por Patreon, YouTube y otros medios; como Shaun Spanding, HeartBeast o Fiendly Cosmonaut
  • Tiene una muy buena integración con git y herramientas internas (los editores de sprites y rooms son muy buenos e integrados)
  • Tiene integración con Api de Steam, Amazon y más.
  • Mercado de assets muy buenos como Tweenline, que mejoran algunas falencias que tiene el motor.
  • Comunidad de Discord y repositorios gratuitos para utilizar.
  • Si tu juego tiene potencial comercial, Yoyogames mismo se puede ofrecer de publisher.
  • Modo de debuggear muy bueno.
  • El motor tiene proyección de crecimiento a futuro, agregando nuevas mejoras (pueden ver el roadmap aquí)
  • Tiene un manual muy completo y en varios idiomas (ver manual)
  • Algunos ejemplos y tutoriales base completos para iniciarte en el uso del motor

PUNTOS DÉBILES

  • La licencia gratuita es muy limitada y hace que mucha gente que podría contribuir más, se aleje y utilice otros motores
  • Solo soporta GML (no puedes alternar con otro lenguaje como unity o godot) aunque pueden hacerse librerías y agregados en javascript, python, c, c++, etcétera.
  • El marketing de yoyogames es muy malo, los problemas son arreglados por la comunidad antes que el soporte oficial.
  • Es débilmente tipado, esto produce que a veces sea difícil encontrar errores y declaraciones previas.
  • La conexión de redes, juego multiplayer online y 3D necesita más trabajo para funcionar eficientemente.
  • GUI poco adaptable, a diferencia de Unity y Godot.
  • Pensar “orientado a eventos” en vez de “orientado a objetos” puede generar confusión si vienes de un entorno como Java o C#
  • Falta de un editor interno y scripts específicos para animaciones,  como tienen godot, unity o unreal.
  • La comunidad hispanohablante de GMS no es muy colaborativa.
Presentación de Game Maker Studio 2

Habiendo comentado los puntos fuertes y débiles de Game Maker Studio 2, estas son las razones de porqué lo elegí frente a otros motores:

  • Experiencia usando el motor
  • El juego que queremos hacer es 2D
  • Existen antecedentes de juegos exitosos con mecánicas y género similar al nuestro.
  • YoYo Games realiza actualizaciones y mejoras constantes.

Como verán, al igual que otros motores tiene varios puntos fuertes y varios débiles. Pero dependiendo del producto que quieran realizar y la costumbre que tengan en cuanto a programación, GameMaker puede ser una excelente elección. En especial si están comenzado, pero esto no quiere decir que no puedan realizarse juegos profesionales y comerciales con éste motor. Y ahora les muestro una lista de juegos exitosos y rentables que fueron desarrollados con GameMaker:

  • Undertale
  • Hotline Miami
  • The Swords Of Ditto
  • NidHogg
  • Nuclear Throne
  • Va-11 Hall-a
  • Rivals of Aether
  • The Red String Club
  • Super Hydorah
  • Maldita Castilla
  • Gods Will Be Watching
  • Gunpoint
  • Death’s Gambit
  • Spelunky
  • Hyper Light Drifter
Más juegos desarrollados con Game Maker Studio

Insisto, todo depende del tipo de producto que quieran realizar y de sus preferencias, lo importante es el programador y no la herramienta. GameMaker como muchas otras es muy útil y se pueden desarrollar grandes videojuegos. Espero haber logrado eliminar algunos prejuicios con respecto a GameMaker y si no es así, espero convencerlos a medida que vayamos mostrando el desarrollo de nuestro proyecto.

Para seguir nuestros avances podés suscribirte en el sidebar de este posteo y si te quedo alguna duda que pueda contestarte, dejanos un comentario o envíanos un mensaje, me encantaría conocer sus opiniones.

¡Adiós y buen gaming!

FOLLOW ALL THE NEWS!

Sharing is caring!