Waves Out! for PlayStation 4 (EN)

Thanks again to the Global Game Jam, in this case due to the fact that the team was created there and we used the game we made as a prototype (you can see the original version here Who Let The Waves Out!) we applied to the 2018 edition of PlayStation Talents with a new GDD. After the pre-selection, we had a personal interview with the responsibles from the Bilbao headquarters, where we had a great start thanks to having a striking game, a complete team and a good feeling since the first minute with our interviewers. And as it can be seen, we were one of the two teams selected to represent Bilbao in the PlayStation Talents.

Waves Out! is a game that mixes pinball elements such as light effects and metal balls to have at least two examples, and the billiards portholes where that balls have to be taken. Mix this with physics not usually seen, since the players use magnetism to move the elements in the scenario, and here we have a game that catches the eye and, most of all, that allows people to play with friends and family over and over again.

As a programmer I learned a lot from this project, having already worked with AIs, UI elements for menus and the game interface, physics quite different than the usual and so on. Also, being the head of communications of the studio I keep improving and getting new social skills that will help me in order to help selling more games in the future, being in a small or a big studio (and to communicate properly with my future teammates, of course).

Even if the process of developing the game was hard sometimes, I would say the hardest was the publishing process due to the amount of requisites to be taken into account not only related to the game, but the ones used for the marketing, the store elements and so on. It is hard to believe, but something we see as simple when we see it in the store has a lot of work if we know the process done to have it there.

Finally, after a lot of work and fighting with this processes, the game was published on January 2021 in the store both for PlayStation 4 and PlayStation 5 and can be found here: https://store.playstation.com/es-es/product/EP0811-CUSA25817_00-3688651617334080

Also, here you can see the last trailer created for the game where you can see some gameplay. It was a great adventure, but it is time to keep going and find the next one!

Waves Out! para PlayStation 4 (ES)

A raíz una vez más de la Global Game Jam, en este caso tanto por el equipo que se formó en la susodicha y basándonos en el juego que hicimos (para más señas podéis ver a qué me refiero en este link Who Let The Waves Out!) nos presentamos con un nuevo GDD a la edición de 2018 de los PlayStation Talents. Tras pasar las primeras selecciones, tuvimos una entrevista personal con los responsables de la sede de Bilbao, donde empezamos con buen pie gracias a la unión entre un juego llamativo, un equipo completo y un aura de buen rollo que se notó desde el minuto 1. Y, claro está, fuimos uno de los 2 equipos elegidos para representar a Bilbao en el PlayStation Talents de este año.

Waves Out! es un juego que mezcla elementos del pinball como son los efectos de luz y las bolas de metal por poner dos ejemplos, y el billar por las troneras a las que hay que llevar las susodichas bolas de metal. Si a eso le sumamos unas físicas muy diferentes de lo habitual, ya que los personajes usan magnetismo para mover los elementos del escenario, tenemos un juego que llama la atención y, sobre todo, que da mucho juego a la hora de jugar con amigos y familiares una y otra partida con los buenos piques de toda la vida.

Como programador aprendí muchísimo de este proyecto, y como jefe de comunicaciones el manejar las redes sociales del juego y tratar con los medios también me está ayudando  a desarrollar nuevas habilidades sociales que nunca están de más a la hora de vender un juego sea en un estudio pequeño o uno grande (además de saber comunicarse con el resto de miembros de los equipos en los que trabajo y llegaré a trabajar, claro está).

Si bien es verdad que el propio proceso de desarrollo se hizo algo duro en ocasiones, creo que lo que más me costó fue el proceso de publicación dada la cantidad de requisitos a tener en cuenta no solo con respecto al juego, sino con los elementos utilizados para el marketing, los que se muestran en la propia store y demás. Parece mentira, pero algo que nos parece tan simple al verlo en la tienda tiene muchísima miga si se conoce el proceso para que llegue hasta allí.

Finalmente, tras mucho trabajo y peleas con los susodichos procesos, el juego se lanzó en enero de 2021 en la store de PlayStation 4 y PlayStation 5 y podéis verlo en el siguiente link: https://store.playstation.com/es-es/product/EP0811-CUSA25817_00-3688651617334080

Además, aquí debajo tenéis el tráiler donde podéis ver el juego en marcha. Ha sido una gran aventura, ¡pero toca seguir adelante e ir a por la siguiente!

Trainpunk Run – Steam (EN)

Trainpunk Run was a project I found when looking at the collaborations section in the Stratos-ad website. In the beginning they were looking for a Community Manager for the game, role I filled for a few months while they finished the game for mobile platforms, and when they finished and decided to port it to publish on PC I was proposed to take the role as a programmer, being this my opportunity to work in another Unity based project.

The game is based on simple side-scroller mechanics including a variety of levels (where the game story is told as you advance), different power-ups and the customization both of the main character Ryana’s clothing and here flying steampunk vehicle. Also, the game was done in memory and as a tribute to pioneer pilot women such as Amelia Earhart, Jane Trefusis Forbes y Jacqueline Cochran.

When I took the project’s programming lead I found something that was quite well built, but a few elements needed a deep revision to optimize the game and adapt it to be played on PC. I started with a system to play both with keyboard and with a plugged in controller based on the input system provided by Unity, to later on build from scratch a series of new interfaces for the game: main menu, the in-game shop, the level selection map (with the corresponding navigation) and a revision of the main game interface to make it clearer and easier to read when playing.

To this we have to add the development of new mechanics added to Ryana, the power-ups and the revision of the already existing game elements and finally we have the project ready to be published in Steam not only as a port, but as a new and improved version from the original game that you can find here: https://store.steampowered.com/app/819470/Trainpunk_Run/

Also, here is the game tráiler:

Trainpunk Run – Steam (ES)

Trainpunk Run fue un proyecto con el que di buscando en la sección de colaboraciones de la web Stratos-ad. Originalmente buscaban un Community Manager para el juego, papel que cumplí durante varios meses mientras el juego terminaba su desarrollo como juego para plataformas móviles, y tras ello cuando se decidió hacer un port del juego para publicarlo en PC se me propuso tomar el rol de programador del mismo, siendo esta mi oportunidad de trabajar en otro proyecto desarrollado en Unity.

El juego se basa en mecánicas simples de un side-scroller en el cual se incluyen varias fases (las cuales van mostrando la historia del juego a medida que se avanza), diferentes power-ups y la personalización tanto del vestuario de la protagonista Ryana como de su vehículo volador. Además se hizo en memoria de pilotos mujeres pioneras como Amelia Earhart, Jane Trefusis Forbes y Jacqueline Cochran entre otras.

Cuando tomé las riendas de la programación del port del juego me encontré un proyecto que, si bien estaba bastante bien montado, tenía una serie de elementos que necesitaban una revisión en profundidad para optimizarlo y adaptarlo a unos controles cómodos para PC. Empecé con un sistema de controles tanto con teclado como con mando basándome en el sistema de Input provisto por Unity para posteriormente montar desde cero una serie de nuevas interfaces para el juego: menú principal, la tienda in-game, el mapa de selección de niveles (con la consiguiente navegación por los mismos) y una revisión de la interfaz de la parte principal del juego haciéndola más clara y limpia a la hora de jugar.

A esto hay que añadir el desarrollo de nuevas mecánicas añadidas para el manejo de Ryana, los potenciadores y la revisión de los elementos ya existentes en el gameplay, y tenemos finalmente el proyecto listo para su publicación en Steam siendo no solo un port, sino una actualización del proyecto original que podéis ver en esta página de la tienda de Steam: https://store.steampowered.com/app/819470/Trainpunk_Run/

Añadir a esto el tráiler del juego por si queréis verlo en marcha:

Archery Simulator (EN)

During a Unity course dedicated to Virtual and Augmented reality, I had the opportunity to develop a little project with the Oculus technology. The teacher responsible of the subject wanted us out of our comfort zone working in projects that weren’t videogames, so this was my choice.

With the use of the controllers you can simulate the hand motion picking the bow, while at the same time pressing the trigger controls the strenght applied to the string in order to shoot the arrow further. The shooting grounds can be divided in three parts:

1 – Domino: A series of blocks placed in order to cause a domino effect when shooting the target, which in the end hits the barrel and starts a particle system simulating an explosion and allowing the user to go to the second part. With this I worked with the basic physics for the bow, the materials on the blocks (since they change to a random color when being hit) and the Unity particle systems.

ArcheryPart1

2 – Antigravity: A block placed next to a bullseye, which dissapears on being hit letting the block to fall. This causes the block to hit a ball that reaches a tile, activating it to apply forces in the Y axis and making the ball float. In this part I keep working on physics systems, being more focused on the way forces interact with physical objects.

ArcheryPart2

3 – Mobile bullseye: A bullseye that moves with a fixed speed in the horizontal axis. As you hit it with the arrows, the level goes up making it move faster and, later, also in the vertical axis. Physics varying the bullseye speed and a simple state machine that manage the level in which the bullseye is based on the amount of hits it received.

ArcheryPart3

After completing all the objectives, the time and amount of arrows fire is saved in a text file to keep a register on the users that used the simulator. The prototype has also controls to be used with mouse and keyboard, since not everybody has a virtual reality equipment at home and this way anyone can try it.

As an extra, between the parts 2 and 3 a ball can be seen hanging with a chain. This was an extra addition where I made experiments joining pieces with the use of the Unity “joints” in order to give the feeling of a chained ball that moves when hit with the arrows.

The project can be downloaded from this link. As mentioned, it can be used with keyboard and mouse, so do not worry about not having a VR headset: https://gitlab.com/Kaeltrom/archery-simulator.git

Archery Simulator (ES)

Durante un curso de Unity dedicado a la Realidad Virtual y Aumentada, tuve la oportunidad de desarrollar un pequeño proyecto con la tecnología Oculus. El profesor responsable de la asignatura quiso sacarnos de nuestra zona de confort trabajando en proyectos que no fueran juegos, y esta fue mi opción.

Mediante el uso de los mandos se puede simular el movimiento de las manos cogiendo el arco, al tiempo que la pulsación del gatillo controla la fuerza con la que se tira de la flecha a disparar. Así mismo, el campo de tiro se divide en tres partes:

1 – Dominó: Una serie de bloques colocados de manera que al disparar al primero, causan un efecto dominó llevando finalmente a un barril que hace saltar un sistema de partículas de explosión, dando acceso a la segunda parte. Con esto trabajé en las físicas iniciales del arco, los materiales de las piezas (ya que al golpearse cambian a un color aleatorio) y sistemas de partículas en Unity.

ArcheryPart1

2 – Antigravedad: Una diana sujeta un bloque evitando su caída. Al disparar a la diana, esta desaparece haciendo que el bloque caiga, golpeando así la bola y haciendo que llegue a la casilla que se activa haciendo que la bola flote aplicándole fuerzas hacia arriba. En este caso sigo profundizando en sistemas de físicas centrándome más en aplicar fuerzas a objetos (en este caso la bola que flota al final)

ArcheryPart2

3 – Diana móvil: Una diana que se mueve a una velocidad fija en el eje horizontal. A medida que se golpea con las flechas, aumenta el nivel moviéndose más rápido y, posteriormente, también en el eje vertical. Físicas variando la velocidad de la diana y una máquina de estados muy simple que gestiona el “nivel” en que se encuentra la diana en función del número de aciertos.

ArcheryPart3

Tras cumplir estos objetivos, se guarda el tiempo y el número de flechas disparadas en un archivo de texto para llevar un registro de los usuarios que han utilizado el programa. El prototipo está hecho para ser usado también con controles de teclado, ya que no todo el mundo tiene un equipo de realidad virtual en casa y así cualquiera puede probar su funcionamiento.

Como extra, se puede ver entre las partes 2 y 3 una bola colgando de una cadena. Esta es un añadido extra en el que hice pruebas con uniones entre piezas usando los “joints” de Unity para dar la sensación de una bola con una cadena que se mueve al ser golpeada por las flechas.

El proyecto se puede descargar en este link. Actualmente está preparado para ser usado con teclado y ratón, con lo que no os preocupéis si no tenéis un set de VR para ejecutarlo: https://gitlab.com/Kaeltrom/archery-simulator.git

Demo Reel

Como su nombre indica, esta es mi demo reel con los proyectos relacionados con videojuegos en los que he trabajado (y estoy trabajando) hasta la fecha. Si queréis ver más no dudéis en visitar el resto de secciones del portfolio.


As the name says, this is my demo reel created with all the videogame related projects I worked in (and the ones I am currently working). If you want to know more about them, don’t hesitate to visit the rest of the sections of this portfolio.

Who Let The Waves Out (EN)

Back to working on the videogame development, I finally could take of one of the thorns I had nailed from a long time ago: participating in a Game Jam. Not only that, it was the Global Game Jam 2017, more specifically in the Bilbao headquarters. Was it good? I would say that it was way better than just that.

globalgamejam_640

This 48 hours experience was the starting line for this game: Who Let The Waves Out, which would lead to one of my biggest projects, Waves Out!. The theme for that year was “Waves” which left all of us a bit frozen since we didn’t know what could be the best way to work around it, but with some creativity, luck and a full team we needed a little more time to have 3 programmers, two graphic designers and a musician to start working on this idea. Not only that, but having just 48 hours was really helpful to be aware of our limits and prioritize what was really necessary to have a good project to show at the end of the event.

Finally after little sleep hours, a lot of iteration and mostly laughs, the idea took the shape of a game which can be seen here:

This is obviously an incomplete game, even a prototype, but also was a great starting point for the full version I mentioned above. Not only that, but we received an Honor Mention thanks to the participants voting for us, and considering there were professional developers such as the ones from Delirum this is something one can be proud of.

Here is the repository to play the game and also to see the code used for it:

http://globalgamejam.org/2017/games/who-let-waves-out

And finally as an extra, here is the making of:

Wizard Wizoutyou (EN)

Wizard Wizoutyou is a game created with Unity 3D, more specifically in Unity 4, and again with the 4 Elements team.

In this game, the main character Wizoutyou is declared as the heir of his grandfather powers, but to obtain them he will have to succeed in a series of trials that will test his skills and the ones of the player that decides to embark on this adventure with him.

WizardWizoutyouMain

This powers are based in physics, continuing the 4 Elements game programming style that can be seen in Gotcha!. This, combined with little puzzles that can be found in the scenarios and some creative use of the unlocked skills, create a really magical adventure. Also mention that the game is quite lighthearted, so both kids and adults can play it.

Wizard1

Emphasize the fact that we developed this game in 2 months while we were learning how to use the tolls provided by Unity. Also, this was done with Unity 4, so I created the menus fully with code (the canvas system was still nowhere to be seen but in the beta versions). I programmed too most of the character skills and the movement, the skills interface, and also designed the puzzles the player can find in the game.

The art is mostly based on Unity Store elements, with the exception of Wizoutyou, designed and created by our collaborator artist Salvador López.

Here is a video where the game can be seen:

Gotcha! (EN)

Gotcha! is the first game I worked on while I was studying in Digipen, as part of the 4 Elements team.

The main character, called RocketMan thanks to his distinctive rocket, must travel across different worlds collecting tokens to get credit on being a full fledged hero able to face any threat that gets on his way.

RocketManIdle

The game is a retro style platformer divided in 4 worlds, each of team formed by 4 phases. As you go across the different worlds, the difficulty keeps increasing based on the number and kind of enemies, the way they move, how they chase Rocketman, and so; not only that, but each place has different physics laws: in the earth world he will move freely, while for example in the fire world he will move faster and, at the same time, the rocket will also overheat faster.

GotchaPantalla

We chose the retro style based on a classic game: Bomb Jack; but even if we started inspired by that, we kept adding personal features with the different elements, enemies that don’t seem aggressive, but are just a natural part of the game…Gotcha! is not a game where you have to pick a weapon and destroy all on your sight, but you have to have trust in your skills and play over and over until you win, the same as it happened with the old school gaming centers.

This project was created in C++, being my main responsibilities the player interface that can be seen in the top of the screen, the enemies AI, most of the animation mechanics, the game physics working together with other of my teammates and the main and pause menus. Special thanks to one of my teammates, Javier Ortiz, author of the drawings forming part of our RocketMan.

Here you can see the game in action:

Level 3 -My first basic AI project

This was my first “serious” project in C++ for a class homework in Digipen. Based on state machines, I created a series of little characters that automatically do some chores:

– Edward (White): Mines without stopping and sells everytime he has at least 10 units of metal ores and the price is equal or over to 10. When the mine is depleted he gambles his money with Bob playing Rock, Paper, Scissors, Lizard, Spock. Also he is in charge of facing the theats the mine hides.

– Bob (Blue): He is the opposite of Edward, since he will mine until he can’t hold any more ores. He is skittish, so when a theath appears he will run away as far as he can to avoid it.

– John (Yellow): He is unstoppable and unpredictable; he may be mining and, suddenly, he goes to sell the ores with no particular reason. Due to this, when the mine is depleted he goes to sleep because this way of working exhausts him.

This is not a full game, but a challenge for myself to show that in order to develop an original game you may only need some NPCs with different behaviours. At the same time I wanted to make anyone who sees the project smile, that’s the reason for the little surprise hiding under the mine…

Here’s a little video of the project:

Controls for the camera are WASD. Characters move on their own.

The icons above the characters represent the unconventional way of playing Rock, Paper, Scissors that adds Lizard and Spock, well-known by The Big Bang Theory fans. The surprise mentioned before is the fact that the dinosaur coming from underneath is sent back there with this game, since “Scissors” beat “Lizard”.

digipen-logo