Capstone - Improving the Inclusive Customer Experience



My capstone project was easily the most valuable learning experience I have under my belt. I tackled new things outside of my comfort zone. This project consisted of a yelp-like app that focuses more on accesibility and demographics when measuring the quality of local businesses. I worked on a team of five people called Inclusive Solutions and our app was called welcomed.

The first new thing for me was leadership, I was put on a team with four other people and I stepped up as the team lead, a role I was otherwise keen to avoiding. I decided to challenge myself with this position. As a team, we dealt with setbacks such as the disappearance of a member that caused serious harm to our progress as a group. As the team lead I put time into organizing and making decisions on how to move forward so that our team can be as successful as possible. At some point, my leadership position wasn't just assigned, but earned among my peers. They trusted and relied on me to make final decisions and assign them their next task. I additionally served as the main point of contact between my team and our client to organize meetings and keep a good relationship.

The technical challenges I faced were challenging but fascinating and sparked my interest in backend development. I was in charge of setting up our Amazon Web Server EC2 instance, This gave me experience with AWS management, setting up and using database systems and networking. I accomplished This with a MySQL server hosted on the EC2 instance along with From there I set up a MySQL database that harbors the data in our entire project, along with it's schema. Lastly, I set up a java server that runs around the clock using systemctl and accepts client socket connections to send data to and from the database.







Raytracing Projects

During my time at university, I participated in a graphics elective that involved generating images in C from scratch with raytracing. The images shown are two of my final projects. The one of the left features a fully raytraced project that includes, color, light sources, diffusion, refraction and reflection to generate shapes given an input text file. The image on the right takes the ideas from the left image and extends it by make a stereoscopic image, or also known as a red-blue 3D image.

There are also a few examples from my Roblox games that involved raytracing by casting rays from the user mouse cursor onto a 3D environment in order to allow item placement.






Kings Reach


"King's Reach" is the first game I developed on Roblox. The development of this game took place over six months from May to November of 2020. This game is an RPG style community interaction game.

This game more than anything was a learning process for me, it was my first exposure to self projects and discovering the process of researching and problem solving without guidance from professors or mentors. Using the platform that Roblox provides as well as the coding language was all new to me and I racked up hundreds of hours just surfing through forums, online tutorials, and practicing.

King's Reach features elements of ray tracing, saving model location data using algebra-based formulas, and utilizing built in services provided by Roblox.

If I were to go back to this game I would change a few things. First I would improve the system that saves model location data because it is only compatible with models that are loaded onto four different angles: 0, 90, 180 and 270 degrees. With improvement in the formula used, any angle should be compatible when loading the models. Additionally I would remove the models I used in this game from an online database and recreate them as my own custom models.






Monster Kid


After my learning experience with King's Reach I sought after Monster Kid as a first real attempt at creating a game suited for the market on Roblox. This was developed over six months from December 2020 to June 2021. This is a mini-game style game designed to have replayability value.

The main things I learned from this game was picking up skills outside outside of my expertise and creating a lobby/matchmaking system that can start and end games.

What I mean by new skills is that I was heavily encumbered by my inability to create unique and professional models in my previous game. I don't have anyone that I can reliably work with to handle that more artistic area so I took the time to practice and learn how to develop models on my own. Everything in Monster Kid is completely original and made by me, that includes the items, player models, the map and even the GUI. The only thing that wasn't made by me was the games thumbnail which I coordinated with someone on Fiverr to make.

The lobby system is a seemingly simple, but surprisingly complicated system that I designed. It has to intake all the players in the game, randomly select one as the monster, and teleport the players accordingly. During this teleport the game also has to set up the map properly and change the player model of the monster. These are the obvious changes I list, but it actually does a number more of things during this teleport. Additionally when the game ends, everything has to be reset to base state so that no errors occur when the teleport is reinitialized. The debugging process on this was long and took coordinators to help me with hours of just sitting in the lobby and letting me observe the errors that may show up.





Boxing Game (untitled and unfinished)

This game is my latest project and unfinished. I have been working on this game since September 2021. The most major thing to come out of this game is integrating it into a youtube series designed to be both educational, and for entertainment purposes. Additionally I have developed a new and unique form of "quick time event" that involves communicating from client to server to client in order to create user created prompts that must be returned by the receiving client. This idea is currently under development but in the pursuit of that I have learned to make typical quick time events.