RL Match Tracker is a fully developed Android app that provides players with game-to-game data tracking for the competitive multiplayer car-soccer videogame, Rocket League. Data is collected to showcase the players average abilities to highlight where the player can improve. My project partner and I thought that this was an untapped market for data tracking for Rocket League players, because existing popular websites like Tracker Network only showcase the players lifetime career data, with no way to see specific match data.
This application was developed over the course of the Fall 2019 semester for an android app development course. My partner and I both programmed the application using Android Studio, but I mostly focussed on the UX and visual development, while he focussed on the back-end. The goal of the project was to create an Android application that uses an SQL database. I did some additional polishing and published the app to Google Play on May 6th, 2020.
The most advanced capability of the app is auto mode, which allows you to put your phone down during gameplay. Then when you pick up your phone (ideally at the end of a match), the camera will activate and you can take a picture of the final scoreboard. This scoreboard will be saved for manual input when the user is free to do so. Referencing from your scoreboard pictures, or with manual input, the app will save all inputted Rocket League match data including the gamemode, score, and your personal performance stats for each match. The app will present you with some graphs and data such as your average score for each game.
The app also has some more fun features such as themes, which can be changed between blue or orange, according to the team colours of Rocket League! There is also the ability to put in your Rocket League account which will let the user easily view their stats on Tracker Network, for a broader view of their Rocket League career stats.
For my project partner and I, it was our first time programming with Android Studio so there were obviously many hurdles early on in the course. Beyond that, there was a lot of difficulties with the SQL database, such as filter/sorting not working properly because one of our data fields had dashes in it, this would cause conflicts when the sequential search tried to go through the database. Another big challenge was that we wanted to save scoreboard images in the same database as the inputted match data, this led to challenges with compression and image-to-text conversion. We figured these things out with a lot of Stack Overflow trial and error, and occasional help from our our peers.
There were a few more features (dark mode, customizable charts, more sorting options) I wanted to implement into the application to make it more useful, but each one would probably take me several hours. I'm really proud of what we managed to pull of with this app, and despite the challenges we faced along the way, we received 100% on the final presentation. Having a project with a core theme that you are actually interested in is a great motivator to create something great. I spent many late nights fixing some very minor bugs that were driving me nuts just because I wanted the application to be capable of what we pitched and it was something I could see myself using. Lastly, a huge thing I wish we put more effort into was figuring how to use Git so collaborating on our codebase would have been easier. We were fortunate in that we didn't have any major issues just zipping up our cide to each other.