Sunday, September 11, 2016

A new freeware game! (Wheels of Elefantita!)

   A lot time has passed since last time I wrote something here. Last week I've been working on a "secret game"... as a gift for my beloved partner (the woman who lives with my the last 10 years).

   Actually I have to say that I'm very proud of the final result... considering that was made in less than a week, I'm very happy with it.

   The game is a "City Connection" like, with Nes and MSX 8-bit style. I upload it to Itch as a Freeware game in order to more people can enjoy it.

   If you really like it, don't forget to share it with anybody, it could be really cool if a lot of people knows about it... and, considering that is maded with the same engine that F.A.R.M uses, it could be a GREAT way to check some possibles compatibility issues with my framework! (it already works on every tested pc anyway)

   Thanks for reading! And I hope you like this new short but cute and enjoyable game!




Tuesday, March 01, 2016

Game Name Story

On old entries I said that the name of my game was "Fight Against Mutant Revenge", but at that time I had not created the title screen yet. So, when I started to create the title, I put the acronyms "F.A.M.R" and I notice that's not easy to pronounce... and even... I was really close to a real word "farm" instead!

Considering that's a game where you fight against a lot of animal-looking mutants... I thought that FARM acronyms will sounds way better... and finally I changed the name to "Fight Against the Revenge of the Mutants".

So, why I decided to start the game name with "Fight Against" initially? Well... the real answer is that I was looking for a generic name, in order to make a prefix for distinctive sequels... like "Fight Against : whatever I want", and in this case were "Mutant Revenge".

However, I must say too, that in that time, I was listening a lot of the "Rise Against" songs, and I really liked how some song titles reads with band title as prefix, like: "Rise Against Entertainment", "Rise Against Broken Mirrors", etc.

I think that's funny how this sequence of decisions took me to an interesting wordplay, don't you?

Saturday, February 27, 2016

Resumen de un año más de trabajo en el mismo juego.

   Para quienes se encuentren leyendo esta entrada con el único fin de saber sobre el estado actual del beatemup, aclararé que el apartado jugable del juego está prácticamente terminado: Los 3 personajes principales están 100% completos y también la mayoría de los enemigos, incluso el 100% de los enemigos ya están diseñados (mas no todos terminados aún). Los niveles están todos definidos y algunos de ellos ya están terminados al 100% también. La jugabilidad tiene meses y meses de pulido, tanto como para asegurar que está en calidad final. El juego cuenta con varios niveles de dificultad (desde uno fácil hasta un modo prácticamente imposible) modo cooperativo local, modo vs y también entrenamiento de combos entre otras cosas.



   Nota: lo que sigue de esta entrada trata sobre mi experiencia personal como desarrollador, osea que si solo querías ver noticias del estado del juego, te advierto que lo que viene a continuación podría no aportar ninguna información interesante para ti.

----

   Después de un año más de trabajo en el beatemup (ya van 2 años), me he topado con una serie de desafíos y revelaciones que me gustaría compartir con ustedes. Tal vez esté equivocado respecto a muchas de las opiniones que compartiré en esta entrada, pero creo que vale la pena mencionarlas igual.

   1- Dedicar mucho tiempo a una sola cosa, puede ser mucho más insalubre de lo que uno cree en un principio.

    Luego de 6 meses de estar trabajando en un mismo proyecto... si no cuidas los otros aspectos de tu vida, puedes llegar a un punto donde acabes odiando todo aquello que disfrutabas hacer, y eso es algo muy serio. Ahí es donde caes que embarcarse en un proyecto grande, no es solo para "desarrollar un producto", sino también para "desarrollarte a ti mismo".

   2- No hay vuelta atrás.

   Para qué mentirles?... ya me pasó de estar trabajando más de 6 meses en un juego para luego abandonarlo... pero con este juego es diferente. Nunca le había dedicado tanto tiempo a un juego como a este... y además, este es el juego que soñé hacer durante muchísimos años... tiene absolutamente TODO lo que yo quiero. Cada vez que se me cruza por la cabeza hacer otra cosa, trabajar en algún otro juego o otra cosa en general, siento que no tiene sentido... a veces parece que el hecho de terminar bien este juego fuese lo único que me mantiene vivo (tal vez suena un poco extremista, pero realmente a veces se siente así).

   3- El nicho al que apunto, es demasiado específico.

   Tal vez muchos de ustedes ya lo hayan notado, pero... recientemente no se han desarrollado muchos beatemups "puros" (me refiero a beatemups, que no contienen elementos de rol, plataformas, o metroidvanias)... y esto no es casualidad. Los géneros "puros" cada vez son menos rentables, sin importar lo buena que sea su ejecución (se puede ver claramente en el mundo de los juegos de lucha). Por un lado, esto me alegra, pero, siendo sincero, debo reconocer que existe un poco de temor de que el juego en el que trabajé por tantos años no le guste a nadie más... aún así, tengo fe de que va a gustar.

   4- Tengo que reconocerlo... el resto de la humanidad progresa más rápido que yo.

   Estuve años trabajando en un framework propio y en mis propias herramientas, mientras veo que el resto del mundo genera herramientas mejores. Pensar que en un principio, abandoné la idea de hacer juegos en C++, debido a que mi PC compilaba muy lento, por eso, pasé a C#... con el paso del tiempo, hoy en día, las compilaciones de C++ no son un problema en proyectos medianos/chicos (en este caso no fue una mala decisión de todos modos, porque C# es grandioso al día de hoy).
   Luego, programé mi propio framework simple en XNA... pero, dado que XNA por aquel entonces requería una previa instalación de su runtime, cosa que era bastante molesta al principio... me hice un nuevo framework genérico independiente de la plataforma y comencé a programar implementaciones concretas... la primera de ellas en SFML (muy mala experiencia con esa librería) y luego OpenTK (que es lo que estoy usando ahora)... el tiempo pasó, y se inventaron frameworks para trabajar en 2D cómodamente, como MonoGame, y luego vino la nueva versión de Unity.
   También implementé un motor de audio que usaba OpenAL... luego pasé a IrrKlang para no tener problema con el streaming... y al poco tiempo de eso, la gran librería FMOD (que valía unos 3000 dólares), pasó a ser "gratis para indies"... por tanto, finalmente, me pasé a FMOD (que fue por lejos la mejor opción... pero hubiese sido mejor ir a por FMOD desde un inicio).
   Desarrollé montones de herramientas... hice un editor de animaciones bastante potente, para luego ver que salieron muchísimas herramientas como Spriter. Hice un sistema de física básico, un sistema de partículas propio, un lenguaje de script, un editor de script in-game... solo por nombrar algunas de las cosas que hice y que hoy por hoy, existen equivalentes mejores, como complementos de herramientas gratuitas más potentes.
   Imagínate eso... estás meses y meses trabajando duro en solucionar problemas técnicos para que tu juego se vea lo mejor posible... y con el paso del tiempo, salen muchos frameworks gratuitos que le permiten a cualquiera hacer eso, solo presionando un botón!
   Es una realidad que hay que aceptar, aún así, no me arrepiento de haber trabajado en eso, (de hecho, lo considero una experiencia maravillosa). Supongo que es natural... quienes hicieron juegos en consolas de 8 o 16 bits, deben de sentir eso también... el mundo avanza. No me malentiendan, me parece GENIAL que las cosas avancen así, pero también es una realidad, que son incontables los días que he trabajado en cosas que hoy por hoy, no tienen (técnicamente hablando) nada de especial, y hay que asumirlo, así son las cosas cuando trabajas demasiado solo. Eso es algo que me costó aceptar y hoy lo tengo asumido, la vida es así, y uno tiene posibilidades de hacer juegos hoy, en su casa, gracias a que el mundo viene funcionando así desde hace muchas décadas atrás.

   5- Hoy por hoy, creo que no fue la mejor idea ocultar el desarrollo por tanto tiempo.

   En el post anterior, daba razones por las cuales preferí mantener el desarrollo del juego en secreto... sin importar que esas razones sean válidas o no, noté que se siente mucho en falta el hecho de compartir lo que uno hace. El mundo es muy grande, y uno a veces se mete demasiado en su propia burbuja, y cuando eso pasa, es fácil perder el foco... si bien es necesario cierto nivel de concentración, creo que es un tema de equilibrio... tampoco es un tema de hacer pública cada linea de código programada... pero... por otra parte, me ha pasado de haber estado tan concentrado en el desarrollo que olvidaba todos los puntos buenos del juego y me concentraba solo en desanimarme por aquello que aún le faltaba... creo que UN POCO de eso, está bien (es en parte lo que te empuja a mejorar los detalles), pero cuando no muestras tu trabajo por mucho tiempo, eso se puede volver una obsesión que podría incluso rozar lo enfermizo.

   6- Mis siguientes entradas, deberían estar en inglés.

   Tengo que asumirlo, si bien mi inglés es muy básico y suele tener errores... hay que abrirse al mundo. Si en algo tan "informal" como un blog de desarrollo, no me animo a comunicarme en un lenguaje "universal"... qué queda para todo lo demás?

---

   Dicho esto, dejo constancia que mi intención actualmente es continuar el blog de desarrollo, compartiendo con ustedes aspectos interesantes del mismo, pasados y actuales. También es mi intención comenzar a revelar screenshots mediante mi cuenta de Twitter. Me encantaría saber que opinan al respecto aquellos que venían siguiendo este blog... les parece una buena idea?