Professional Projects

Overcrowded Tycoon (Unity, C#, Javascript)

Overcrowded Tycoon is a F2P game of tycoon genre for mobile where we’ve to handle a theme park. It has two main characteristics different than competence: behaviour based on physics and visitors use emoticons with a big diversity of emotions supported. So, apart of common mechanics already known like expanding, improving and evolving the park and rides, it’s key how organize the park to optimize the visitors flow, keeping them as happy and comfortable possible, to increase the expense they’ll make in the park.

It’s published in Google Play and Apple Store. In this project, in which I was a bit more than a year as senior/lead, my work was:

  • Refactoring code base to use a dependency injector for Unity (Zenject).
  • Structure code to allow isolated common and specific parts to allow adding more parks, along with a scalable configuration.
  • Refactoring rewards system trying to improve scalability and maintenance.
  • Integration of gacha and loot boxes system with specific logic.
  • Integration of a BaaS (ChilliConnect) as platform for authentication, account management and backup for user data.
  • Implementation of specific modules on server (Javascript).
  • Integration of third party libraries for authentication: Facebook, Game Center and Google Play Games.
  • Support to save date on disk and remotely on several devices pointing to same account.
  • Integration of deeplink and referrals platform (Adjust) to reward existing users which brought new ones to the game.
  • Implementation of anticheating techniques and analytics.
  • Implementation of specific game features: spooky park, in-game reports, UI…
  • Onboarding and supervision of new programmers in the project.
  • Support, maintenance and development from stages previous to soft launch until global launch.

Evo Pop (Unity, C#)

Evo Pop is a puzzle F2P game for mobile based on physics and with progression by levels. Each match, we can interact with our group of “Evo”, creatures with special powers, with the objective to defeat the rest of opponents (eating them, being bigger size, or pushing them out of the map land) or multiplying our “Evo” to achieve certain number before our opponents and before the end of level. If there isn’t a winner when level finishes, the player with more Evo alive wins.

It’s published in Google Play and Apple Store. My work in the months I was part of the team developing the project was:

  • Add 4 game modes:
    • Acid rain: keep Evo covered to avoid being affected by acid rain happening every amount of time.
    • Drowning: water level goes up/down randomnly, having to keep your Evo away from drowning in water.
    • Faster: mana generates faster for certain amount of time, generating faster matches.
    • Macedonia: the objective becomes to feed Evos with fruit randomnly falling from sky with different size. Only if your Evo are bigger than the fruit, they will be able to eat it.
  • Hexmap optimization: apply pooling techniques linked to camera position to allow infinite maps.
  • New levels integration.
  • Support and maintenance of the app.

Rosie’s Reality (Unity, C#)

Rosie’s Reality is a familty puzzle game included as part of Apple Arcade program. Depending on platform, the game can be played using controllers (all platforms), touch screen (iOS) and even in augmented reality (iOS) using Apple ARKit over Unity ARFoundation.

With single player and multiplayer modes, the main focus of the game is to create a interactive experience to enjoy in family. The target is to guide the endearing robot Rosie to the goal creating the path with special tiles that Rosie executes in a sequential order.

My main work in this project was:

  • Create project architecture, state machine and modules to make code working cross-platform for Apple TV, macOS and iOS
  • Gameplay development: behaviour for characters, NPCs, revealing for levels…
  • Implement backend service and data persistency using local storage and iCloud
  • Implement some parts of user interface and integration with augmented reality libraries
  • Manage different inputs on platforms: controllers, touch screen and mouse
  • Integration of service and tools to support language localization
  • Manage credentials and publish the app on Apple Store Connect
  • Profiling and testing the app from the beginning to achieve production environment
  • Develop additional gameplay mechanic: runner mode

Silverwall Platform (C#, Unity)

Base code developed for mobile, desktop and web platforms following a model-view-controller-model (MVCA) pattern architecture, dividing data, logic and user or graphic interface. Its main purpose is provide a base code that it is maintainable, scalable and isolated from particular projects. It follows software pattern SOLID, helping to behaviours extension and use flexibility.

Other entities present in the platform are the services, containing logic controller and data model in a single and isolated entity; and the modules, containing an MVCA architecture with a specific behaviour that, solving their dependencies, are reusable in different contexts.

MundiGames (C#, Unity)

MundiGames is a F2P multiplayer social casino game which acts like a container for casino and board games: Bingo, Slots, VideoBingo, BlackJack, Poker, Ludo, Dominoes… Entering first time, user gets a customizable avatar and the app have economy shared between all the games in the platform. It is published in Google Play, Huawei AppGallery, Apple Store, Facebook and it also has a web page.

My work on this title was:

  • Integration of the app in Huawei AppGallery: IAP, authentication, Ads…
  • Development of horizontal tasks and tools used for all games
  • Implementation of tutoriales and improvement of FTUE
  • Integration of AppsFlyer and use metric systems
  • Development of client-server communication services through GRPC and use of protocol buffers
  • Review automatic process to create builds with Unity Cloud
  • Support and maintenance of the app and the platform for iOS, Android and WebGL
  • Support for the integration of some games in the app
  • Generate asset bundles through Unity pipelines based on Jenkins
  • Social panel for web games: chat integration, list of players and friends

Monster Mansion Blast (Unity, C#, Javascript)

Monster Mansion Blast is a F2P puzzle game for mobile devices developed in Unity and published in Google Play y Apple Store. Set on Halloween thematic, we are in Monster Town where we’ll meet enjoyable cartoon characters of various themes and mechanics linked to increase difficulty and technique required by players to keep passing levels. Also contains customizable options, like decorate an enchanted mansion, and temporary tournaments to keep players engaged.

My work on this title was:

  • Select, integrate and develop some external services: IAP, Facebook, PlayFab, CDN, Ads (Unity Ads y AdMob), Google Play Games, Game Center…
  • Integration of a manager for analytic services: from own development, Flurry y Unity Analytics
  • Development and integration of a runtime error manager for application
  • Manage credentials for publishing on Google Play and Apple Store,
  • Implementation of user authentication services, encryption services and client-server data synchronization
  • Programming and management of PlayFab server with Javascript

Pirate Match Adventure (Unity, C#, Javascript, HTML5)

Pirate Match Adventure is a F2P crossplatform puzzle game made with Unity and published in Google Play, Apple Store and Facebook. It envolves pirate environment with a cartoon style, being a game with progression based on levels with growing difficulty. Following progression, more mechanics are added in the way that user interacts with the board trying to accomplish the different targets that are being proposed.

I was responsible for:

  • Develop the application architecture, state machine, services and integration of a dependency code injector engine (Unity y C#)
  • Select, integrate and develop some external services: IAP, Facebook, PlayFab, CDN, Ads (Unity Ads y AdMob), Google Play Games, Game Center…
  • Integration of graphics developed by artist in the project: static images and animations done using Spine
  • Programming user interface, interaction and programming of animated characters, as well as some graphic effects like sunrise and sunset animation
  • Integration of service and tools to support language localization
  • Integration of a manager for analytic services: from own development, Flurry y Unity Analytics
  • Development and integration of a runtime error manager for application
  • Manage credentials and publishing for Google Play, Apple Store, Facebook canvas and Facebook Gameroom
  • Implementation of user authentication services, encryption services and client-server data synchronization
  • Programming and management of PlayFab server with Javascript

The Great Whale Road (Unity, C#, Javascript)

The Great Whale Road is a PC game published in Steam platform (now retired but gameplay is visible in analysis videos in youtube) that mixes RPG with enough narrative, resource management and turn-based combat. It is set in the medieval era of nordic countries and has a story progression based in events and campaigns selected by the user that, depending of these decisions taken, modifies the course of the game. It is designed to growth deeply using JSON files that form the story campaigns for characters and the background story.

I collaborated in development in different ways:

  • Management of dynamic and on demand events for user
  • Improve and implementation of cameras behaviour usability and combat interface
  • Fixing some bugs and race conditions to finish game cycle
  • Document project with dependency and flow analysis
  • Tool developed over Google Spreadsheet to allow game designers exporting data exposed in tables in JSON format following some syntax rules (Javascript)

Our Bingo-Video Bingo (AS3, AIR, Java, PHP)

Our Bingo-Video Bingo is a F2P crossplatform game based of casino simulation category. It is multiplayer divided in rooms depending on subgames rules and it is published in Google Play, Apple Store, Amazon AppStore and Facebook. Contains three sugames: classic bingo (multiplayer), videobingo or theme rooms (multiplayer) and a fast-way bingo with characteristics more similar to slots (single player). It is integrated inside game portal and has data and economy shared between all the games presented in the portal.

My main work in this project was:

  • Implementation and development of horizontal framework to reuse it for some other mobile applications that are going to develop the company (AS3)
  • Integration of third-party services for mobile platforms: IAP, Facebook, push notifications… (AS3, Java, PHP)
  • Support and validation of purchases and receipt for IAP (AS3, Java y PHP)
  • Integration of graphics using Starling and creation of atlases on runtime in mobile devices based on vectorial graphics (AS3, AIR)
  • Integration of subgame (VideoBingo) with all code shared between web and mobile using dependency code injector engine (AS3, RobotLegs)
  • Port internal services already existing in company for web to mobile platform: authentication, analytics, runtime-error management…
  • Integration of animations done in Dragon Bones
  • Dependency analysis and flow diagrams of each module developed for project
  • Management of credenatials and publishing for Google Play, Apple AppStore, Amazon AppStore y Facebook

Our Vegas-Casino Slots y Our Slots-Casino (AS3)

Our Vegas y Our Slots are F2P games based on casino simulation and, being specific, included in slots category. They are published in Google Play, Apple Store, Amazon AppStore y Facebook. They contain a big quantity of themes and game mechanics that attract all kinds of users. Our Slots is integrated and share data with game portal while Our Vegas is self-contained.

I only did support tasks for these projects:

  • Support to use crossplatform framework developed in the company
  • Use of tools, services and horizontal modules developed in some projects of the company

Project Integra2 UPV (Unity, C#, PHP, MySQL)

Project based on development of a smart tutor system that helps students to select their university careers and linkage of this system to map 3d of Polytechnic University of Valencia (contains modeling and mapped of each buildings in the campus). The project is composed of a client done in C# and Unity while the server data base it is developed using PHP and MySQL. The project is divided in some phases:

  1. Authentication and get user data from server
  2. Show in a visual and atractive way some questionnaires to user in which, analyzing response results, it is obtained a defined profile and are weighing and ordering university careers depending on the these profile values
  3. Integration of selected careers on map 3d of university to, using A* algorithm and path finding, optimize routes to visit the buildings where these careers are imparted
  4. Free navigation of the user on map 3d of the university tutored by proposed path depending on selected career to visit

Biomechanics Institute of Valencia (C++, Blender, Ogre3d)

In this research institute I did some projects as part of software development department.
I developed these aspects of different projects:

  • Kinescan IBV 2011
    • Animation 3d for helping in the process of assigning and visualizing markers for photogrammetry processes
    • Visualization 3d for platforms measuring force
    • Representation 3d of human movements using information provided by markers in motion capture system
  • NedCervical, NedLumbar y NedRodilla
    • Representation 3d of human movements using information provided by markers
    • Simulation of human movement in realistic way using inverse cinematic to show complete animation not provided by markers
    • Integration of IP cameras to record real scene
  • Visual conflict test
    • Modeling, composing, programming and management of test to measure the balance thorugh virtual reality simulation
    • Programming of a stereoscopic vision glasses (virtual reality glasses of VUZIX)