Rúben Mateus

Network & Tools Programmer

About Me

I'm a curious, self-driven programmer who’s always excited to learn new technologies and sharpen my skills. My main language is C#, and I have a solid grasp of design patterns, data structures, and algorithms. In my free time, I enjoy taking game development courses on platforms like Udemy and Zenva, as well as reading up on random bits of knowledge to keep things interesting.

Right now, I'm learning C++ and, of course, playing video games!

Projects

[WIP] Dentistry Mobile App

University Of Dundee School Of Dentistry (August/2024 - Present)


Summary

I am currently developing a mobile application for both Android and iOS platforms, specifically designed for dental students. The app is intended to enhance their practical skills through interactive, hands-on training.

Additionally, the app provides exercises for identifying teeth using the standard dental nomenclature, letting students have a safe and free space to practice.


Role

Programmer | Designer

As the sole developer of the project, my responsibility is to ensure I develop a quality game that aligns with my client's goal of helping students practice for the future.

I have full autonomy over design decisions and the systems to implement in order to achieve the project’s goal. For this project, I chose Unity due to its ease of mobile development and used SQLite as a lightweight database to store scores, allowing students to track their performance and progress.

Tools

Unity | SQLite

Skills

C# | Git

Links

Coming Soon

Lightship

Abertay University 3rd Year Professional Project (September/2023 - April/2024)


Summary

LIGHTSHIP is a sci-fi 2D puzzle platformer with horror elements that's waiting for you to shine a light on the mystery within.

This was a group project for the DES310 – Professional Project module at Abertay University, where we developed a game for a client. Our specific project was for The Chinese Room, based on a detailed list of their requirements.


Role

Programmer

My primary responsibility was to develop the Visual Novel Framework, which involved creating custom Unity Graphs and Nodes to support the game’s structure. I also handled the implementation of various gameplay mechanics, as well document any features that were implemented so other were able to use them.

As the Programmer, I ensured that Git was properly set up and that all team members were able to use it effectively for version control. Beyond these tasks, I provided support in other areas of the project as needed, ensuring smooth collaboration and overall progress.

Tools

Unity | Jira | Bitbucket

Skills

C# | Git

Links

Cryptopolis Game

Red Cat Pig/Cryptopolis (June/2022 - November/2022)


Summary

Cryptopolis is a crypto-driven and free-to-play social NFT game developed with entertainment and social interactions prioritized above everything else. In Cryptopolis, you create and control the life of your very own customizable avatar. This avatar has needs similar to yours and will ask you to fulfill them to keep them happy and ready to do anything you ask.

While working under Red Cat Pig, I was outsourced to work for Cryptopolis as a network programmer.


Role

Network Programmer

As a network programmer, I was responsible for adding multiplayer functionality to an existing pool minigame. The studio was using Photon as their network solution but required me to avoid using Photon’s built-in object synchronization. This meant I had to create a custom solution using PUN. Although it was a challenging task, I was confident and excited to take it on.

I also took on other networking tasks, such as finding and implementing a solution to send player profile pictures over the network, all while working within the limitations of Unity WebGL.

Tools

Unity | WebGL | Photon | Jira | Bitbucket | Metamask

Skills

C# | Javascript | Git

Links

Soul Mirror

Abertay Global Game Jam 48H (January/2022)


Summary

Soul Mirror is a cooperative 2D Platformer where the players take on the personified forms of creation and destruction which is metaphorical representation of two aspects of one's soul. The objective of the game is to traverse these serene landscapes destroying corruption and erosion and healing and rebuilding the landscape.


Role

Network Programmer

During this game jam, my responsibility was to integrate the network code with the gameplay code provided by the other programmers. I chose Mirror as the networking solution because it's free, reliable, and suited to the 48-hour time constraint. Additionally, I wanted to try something new instead of using Photon.

This game jam was a personal challenge. Although I had previously dabbled in network programming with Photon and Mirror, this was the first time I fully implemented a network project with a team. The tight time constraints made it stressful, but I learned a lot from the experience.

Tools

Unity | Mirror | Gitlab

Skills

C# | Git

Links

Chama

ST Studios (June/2021 - December/2021)


Summary

Chama is an edutainment game with the goal of sensibilizing people about fire outbreaks. Where through small interactive experiences you explore the point of views of survivors

We follow the journey of Ana Raposa, a journalist who is tasked with investigating forest fires in the village of Mação. This is showned by reliving as the local residents during the incident.


Role

Programmer

I joined the project as the sole programmer after it had been in development without any coding support. My primary tasks were to refactor, restructure, organize, and optimize the entire game from scratch, ensuring it adhered to best practices and could run efficiently on school PCs.

I consider this my biggest project after spending time learning game development and honing my programming skills. It was a major challenge that tested everything I knew, both technically and socially, as I had to communicate with other departments and help my own. It was a great experience, though unfortunately, the project was canceled due to financial reasons.

Tools

Unity | Github

Skills

C# | Git

Links

Babushka

Abertay Global Game Jam 48H (December/2021)


Summary

Babushka is a game about…a grandmother! Experience her memories through interacting with objects around her house and help her realize how good her life actually was!

We also took the opportunity to look into each person nationality and bring a item from that country to the game.


Role

Programmer

I was responsible for making the game, implement the art given and making sure the 2.5D perspective worked correctly.

It was a simple game, but it was also my first game jam where I took on the role of programmer from the beginning.

Tools

Unity

Skills

C#

Links

Yami

Tumultuous Productions (May/2020 - October/2020)


Summary

Yami is a pixel art 2D co-op Metroidvania adventure game, which focuses on the player discovery, through the usage of platforming and solving of puzzles, as well as uncovering lore of this world. Players will be able to control two brothers, Yuyo and Yuki. Both of whom possess the powers of Yami, but whereas the elder brother Yuki obtained a pure version, his younger brother Yuyo’s magic is corrupted.

In order to save Yuyo from the corrupted magic within, Yuki joins his brother in a quest beyond the safe borders of their city, seeking a desperate hope to find a cure somewhere within the Empire of old. Should they fail, Yuyo’s life will be overtaken and fade into the corrupted Yami. The world they traverse is teeming with dangerous creatures and traps alike, but through their bond, as brothers, they will explore the Empire, discovering clues and gathering precious information to find a path forward and a cure for Yuyo.


Role

Programmer

This was my first time (as a programmer) joining a team and working together with people from all different backgrounds. It was an inavaluable experience.

As I was still quite inexperienced despite self-studying game development, I didn't take on many complex tasks. My role primarily involved fixing bugs and learning from others. The one system I developed was a drop system that triggered when an enemy died, randomly dropping items based on the designers' choices for that enemy.

Tools

Unity

Skills

C# | Git

Links

Wave Wave Duck

ETIC Global Game Jam 48H (January/2017)


Summary

A fantastic 2D Runner, where a duck is running above a lava wave. The challenge: not to become a duck roast.

This was my first game jam, and a very important one due to the story behind it, even if the game is very janky.


Role

Artist* | Animator* | Coder*

In this game Jam, at the time I had the artist role. Due to lack of programmers or the shortest of them, we weren't able to get one.

I became the programmer without any prior coding experience and unexpectedly found myself in a leadership role. Despite the high stress of coordinating a team and learning programming in just 48 hours, it was a valuable challenge—my first programming experience. While the game is playable and has its quirks.

I will be forever grateful for the opportunity because it ignited my passion for programming.

Tools

Unity

Skills

Art and Animation* | C#*

Links

Contacts