Ryan Davidson Headshot
Ryan Davidson

Untitled (Reality Reload)

This page contains more information on my work on the yet unannounced game being produced by Reality Reload.

Unfortunately, I am contractually prohibited from Discussing many details of the game until it's publicly announced. However, I am able to discuss some information regarding my role on the team and my contributions.

Project Overview

While I was one of several programmers on the team, I was the only person for whom programming was my central responsibility. The other programmers were also serving as the Project Manager and Narrative Designers. As a result, it fell on me to ensure the game strong technical foundations were reliable. This included managing build packaging and performance optimization, system design for the game's core narrative architecture, and integration between the game's new and old systems. The game had been in production for some time, with already existing prototypes for the main minigames the player would experience. My first contributions to the project were to revisit those old prototypes and refactor the existing code for performance, clean coding standards, and easier integration with the rest of the game's core narrative systems.

These core narrative systems were my other largest responsibility, and probably the work I'm the most proud of. In the current state of the game, the minigames and dialogue each existed in entirely separate contexts, with little to no broader narrative or gameplay connections between them. So, it was my responsibility to plan and implement the system to connect all of this. I restructured each minigame and dialogue scene into an activity interface, and built a manager to process the transitions between each activity. This involved programmatic handling of the current activity (such as memory and scene management, as well as the gameplay logic for how the activities needed flow into one another. While the final implementation of these systems fell to me, I also organized meetings with my fellow programmers to ensure these systems fulfilled all of our needs. The nature of these needs involved the capabilities and functionality of the system, but also their ease-of-use by both programmers and non-programmers. The API's were a familiar matter of following coding standards. However, I also made use of custom editor scripting and Scriptable Objects for designer-side editor access to gameplay data to ensure it would be intuitive and stable.

Tools Used

Unity
C#
Git
Github Projects