Como he publicado ¡Blub! Mi primer juego porpio

Bueno, como podrás ver, si eres asiduo por aquí, hemos estrenado una nueva sección en la web. La sección del blog. En esta sección voy a hablar un poco de mis movidas, proyectos y cosas que hago en mi día a día. Siempre intentando aportar valor adicional con cada uno de los artículos y con una lección para que tú, como programador, aprendas de mis errores y mis éxitos. Éxitos que también deseo para ti.

Yepaaaa!! Hola majo lector, guapa lectora, aquí estamos una vez más. Pero esta vez le ha tocado el turno a la nueva sección dentro de la web, el blog. Como he explicado un poco más arriba, aquí hablaremos de cosas muy chulas, tremendas, guapísimas, y todas esas particularidades que yo, y posiblemente tú, ahora, o en un futuro, usarás/mirarás para hacer que nuestra habilidad profesional sea más fuerte. Vamos al lio…

¿Qué es ¡Blub!?

Antes de continuar hablando tendría que presentarte al nuevo integrante de la clase. ¡Blub!, el primer juego que hemos publicado bajo el nombre de AyMCorp. Se trata de un juego sencillo, realizado en poco más de una semana, contando con el tiempo que le puedo dedicar, en horas han sido unas 15 o así.

En este tendrás que unir las gotas que van apareciendo en el mapa con las bolas del centro. Al pulsar sobre cualquier zona de la pantalla las bolas cambiarán de posición y así sucesivamente hasta el infinito.

El juego cuenta con un sistema de dificultad pensado a propósito. No es el tipo de sistema común que según vas destruyendo más gotas, más aparecen, no. Aquí todo va pensado sobre el usuario. Según va explotando gotas, dependiendo de la velocidad de reacción con la que ha tomado la decisión de cambiar, o no, de posición dichas bolas, la dificultad aumenta. Eso sí, siempre aumenta, nunca disminuye ni se mantiene. Para mantener un ritmo constante con el juego. Ya está, simplemente es eso.

Te invito a que lo pruebes aquí: ¡Blub!

Ahora bien, como usuario de ComoProgramar.net te aprecio muchísimo, porque se siempre estás ahí, o por lo menos lo intentas, siguiendo los cursos, hablando por correo donde te soluciono las dudas, etc… Vengo a pedirte una cosa. Necesito, si fuera posible, que lo pruebes y me des tu más sincera opinión sobre él y que podríamos mejorar / incluir. Los gráficos ya están siendo mejorados, he contratado un ilustrador que se va a ocupar de ellos.

 

Datos técnicos de desarrollo

Si no lo sabes, te lo digo ya, yo programo toda la parte de juegos para los clientes, nunca había tenido ninguno propio, con Unity 2d/3d. Los gráficos me los reportan siempre bajo firma en el contrato de codificación, si no es así no les hago el juego, soy muy mal ilustrador. Y esto te lo cuento por lo que vamos a ver a continuación…

Como podréis imaginar, y si no es así ya os lo digo yo, me encanta estar al día con las tecnologías por lo que pueda pasar. En esta ocasión he aprovechado para hacer el juego con la librería «libgdx» que conocí hace poco y me picó el gusanillo de hacerlo con ella. A ver qué tal estaba, el funcionamiento, el rendimiento, sus características, etc… Y he de decir que he quedado encantado con ella. Es muy ágil y sencilla de usar. Sobre todo el tema de los Stages y los Actors. Para esta ocasión no he utilizado el sistema de físicas, que es box 2d, pero ya estoy pensando en la siguiente app que voy a hacer que si que lo tendrá.

Galería de imágenes Blub

Visto esto, me gustaría hablarte un poco más de LibGdx. Es una librería, que no framework, ni IDE de desarrollo (como Unity), que nos brinda todos los sistemas para poder hacer juegos bastante decentes. Está centrada, ¡yo creo eh!  por lo que he podido ver, aunque no se especifica en ningún lado, y tiene las herramientas para hacerlo en 3D, en el 2D. Y todo el sistema es codificado, no tiene parte visual, como es lógico en una librería.

No sé si tendrá partes del componente hechas en C o C++ pero lo que sí que se es que se programa en Java. Si, como has oído, se programa en Java. Así que, si eres usuario de Android, ponte las pilas por que viene pisando fuertísimo. Se puede incluir en Android Studio una vez generado todo el proyecto, que por cierto, se realiza con esta herramienta y ya viene con todo dentro. Más adelante, cuando me libere de cositas y tenga algo más de tiempo, quizás me pongo y hago algún curso de como la podemos usar. Pero de momento hay canales en Youtube, sobre todo el canal de Makigas, que enseñan cómo usarlo DPM.

 

Datos emocionales del desarrollo

Avanzamos en el artículo, que ya parece que se está haciendo un poco pesado, pero no puedo dejar de escribir sin contarte esta parte. Que, para mí, seguro que es la más importante de este. Bien, como te he explicado antes, soy una persona a la que le gusta mucho probar cositas nuevas, ¡no pienses mal eh!, cosas tecnológicas, y por eso me decidí a hacer este pequeño juego. El consejo que quiero aportar aquí es que no tengas miedo, ni pereza, a experimentar con nuevas librerías, frameworks, etc… No te conviertas nunca en un programador Oxidado.

Es cierto que te tienes que centrar en cosas específicas para llegar a la excelencia, pero nunca pasando esto por alto. De hecho, los lenguajes de programación son inmensos, nunca uno terminado de aprender todo, es imposible. Así que tienes una opción más que viable en esto, aprende la mayor cantidad de sistemas realizados en tu lenguaje principal y estarás cada vez más cerca de la excelencia sin perder nunca el foco.

Pero Aitor, ¿a qué te refieres con esto? Sencillo, veamos un ejemplo. Yo, como miles de programadores, aunque no lo recomiendo en la actualidad, comencé mi andadura directamente en Java. Java es un lenguaje cabrón de cojones, engorroso y con una curva de aprendizaje bastante elevada. Pero esto no quita que sea mi lenguaje principal, con el que me siento más a gusto, y más seguro a la hora de hacer un software aparte, lógicamente, de los tiempos de desarrollo. Pero no nos andemos por las nubes.

A lo que me refiero, es que java es inmenso, tenemos android, jdbc, struct, enterprise para web, hibernate y otro millón de sistemas disponibles para nosotros, para que los usemos y para que los aprendamos. ¿Entiendes por dónde voy? No es necesario que nos salgamos de la senda, siempre y cuando estemos en constante estudio para alcanzar la excelencia de este lenguaje, y a esto se le llama enfoque.

Captura del primer día de publicación

Menuda parrafada te he metido, ahora te preguntarás, ¿a qué mierda viene esto? Pues el principio que te acabo de explicar en el párrafo anterior es por lo que decidí aprender, y programar, el juego en libgdx, básicamente por eso, por el ansia de conocimiento que me invade.

La idea del juego nació de un lapsus que me dio. Busqué algo así en los Stores de Android y no encontré nada similar, esos momentos en los que se te va la cabeza a chinchón y se te ocurre algo. Pues me senté, planeé el desarrollo en un par de horas y a codificar, listo. Fue eso…

La lógica emocional que he puesto en el asado es la que en su día hizo tan grande de Flappy Birds. Las mecánicas tan sumamente simples, el scroll infinito (en este caso el Score infinito), la dificultad excesiva y el ranking personal que te permite ir mejorando cada vez que juegas.

Por otro parte, también he hecho hincapié en las habilidades que desarrolla el juego, que son, en consecuencia, de su uso, los reflejos y la concentración. Eliminando la competitividad a los demás y aplicándotela a ti mismo.

Pues sencillamente eso es lo que hay en el artículo de hoy lector/a. Estoy de inspiración y me gusta mucho escribir lo que se me viene por la cabeza y no tanta escritura técnica… Me ha gustado mucho escribir las primeras líneas de mi blog «personal» que será este a partir de ahora y, como te he dicho al principio del artículo, te esperan cosas muy chulas por aquí. A propósito, si no quieres perderte nada, pásate por aquí.

Se trata del «círculo» y es, en resumidas cuentas, el acceso a la comunidad de desarrolladores que estoy montando alrededor de esta gran disciplina que es el desarrollo. Dentro de la url está todo lo necesario que necesitas saber y lo que es.

Sin más me despido de vosotros, y muchas gracias por estar siempre ahí.

Comparte esto en: