top of page

Role: Programmer II (Design/QA Support)

TenureMarch 2022 - December 2023​

I first joined King Crow Studios as a contractor working on B52-VRTP. After a few months, my performance impressed my employer enough to offer me a full-time role as a programmer.

This position rapidly improved my scripting skills from where they were at the time while continuing my path of working in VR simulations. I wore extra hats assisting with design and quality assurance-related tasks needed for the projects due to studio size.

Engine/Tools:

Unity3D, Meta Quest II, Plastic SCM, Jira

B52-VRTP

Core Ownerships

Transitioning to Unity's XR Interaction Toolkit

Goal: Convert the previous version of B52-VRTP from SteamVR to Unity's XR Interaction Toolkit tools.

 

Area of Focus: refactoring the user interface, implementing updated training modules, and updating UnityEvents on interactables.

 

Key achievements included:

  • Developed custom XR UI scripts enabling and expanding 3D button interactions with XR hands.

  • Scripted aircraft events for interacted objects like pressed buttons, pulled levers, and flipped switches.

  • Implemented 20+ training simulation modules for aircraft modules to match the confidential training documentation from the US Air Force.

  • Collaborated with QA to test interactables and training module flows for bugs and quality.

When I first started as a contractor, this was the first task I was immediately thrown into. I adapted to tools and systems used quickly to get going.

Integrating Multiplayer Mode

Goal: Implement Multiplayer Mode using Unity's GameObjects With Netcode

 

Area of Focus: Implementing network features on existing GameObjects and mechanics, and weekly playtesting with QA for synchronization checks over the server.

Key achievements included:

  • Implemented networked GameObjects using composition, to add network consistency across the server.

  • Scripted host-client synchronization for mechanics like teleportation, object grabbing, and radio channels to enhance multiplayer functionality.

  • Designed the lobby scene for seamless multiplayer user entry.

  • Debugged and resolved 50+ bugs related to different training modules and networked interactables leading to a polished multiplayer experience.

My biggest challenge was working with the multiplayer mode, which required collaboration with two other programmers and QA to integrate the mode. Having never scripted multiplayer features or content, I learned Unity's GameObjects With Netcode and mastered the relationship between server and client ownership to keep them synchronized.

S.T.E.P.S XR TRAINING

Working on S.T.E.P.S XR allowed me to be more creative with the training simulations and modes. I utilized the HurricaneVR plugin which was fun to learn and experiment with before diving into tasks. I tapped into a designer role here as I had ownership over several simulations, features, and modes. ​​

Core Ownerships

Fire Safety Training Simulation

Area of Focus: white-boxing levels to completiondesigning the warehouse and office locations to support the fire training simulation.

 

In addition, I worked on other things to improve or enhance the simulation experience including:​

  • Scripting several new interactable objects such as the fire extinguisher to be useable.​​

  • Expanded the tools from the third-party fire and smoke assets to be integrated into the internal simulation systems.

Weapons Training Mode

Area of Focus: full ownership in creating the weapons training mode from:

  • Prototyping the levels for designers to iterate upon.

  • Creating the selection menu for players to customize their gun course experience.

  • Implementing the structure flow and mechanics for the mode.​

    • Timer​

    • Score Manager/High Scores

    • VFX/Destruction Mesh Feedback for Objects

    • Reset Weapons Button

Unreleased Multiplayer Project

*Due to confidential information, I cannot give full details.

However, I have permission to replicate concepts of my work in-engine that don't reflect the current state.

 

In April 2023, the company spun up an idea for a fun multiplayer party game, which went immediately into development throughout 2023.

Core Ownerships

Technical Design

  • Prototyped and iterated on five mini-games from concept to completion.

  • Designed systems leveraging C# and polymorphism for stationed AI creation pipeline and animations.

  • Contributed to implementing features for gameplay mechanics, loops, and network features using Normcore.

  • Pitched ideas in design sessions for creating debug tools to improve testing efficiency for new mechanics.​

Game Programming

  • Worked on extending Normcore's microphone input logic to feature an optional input and output audio selection.​

  • Handled sound logic using Unity's mixer audio to allow players to adjust audio for proximity chat and game volume.

  • Implemented several sound VFX scripts for game objects and added ambient sounds to the game environment. 

  • Worked on implementing player network features such as icons to identify players during matches.​

Quality Assurance

  • Participated in weekly playtesting sessions to help the QA Analyst execute or write test cases.

  • Fixed numerous bugs within several realms of the game such as UI, network, minigames, and audio.

Drop-down-arrow-icon-rounded.png
Drop-down-arrow-icon-rounded.png
ButtonClickGameplay-ezgif.com-video-to-gif-converter.gif

Button Click

The very first minigame I worked on in this project. The goal for this game was to be very simple and easy to get through.

SliderGameplay-ezgif.com-video-to-gif-converter.gif

Slider Bar

I initially pitched this minigame and implemented it using the pinning slider system from the WWE 2K games as a reference.

SwitchMouseClickingGameplay-ezgif.com-video-to-gif-converter.gif

Button Switch Clicking

I took on this minigame as a design challenge for myself as I had to implement a way to toggle between both left and right mouse clicks.

ColorMixingGameplay-ezgif.com-video-to-gif-converter.gif

Color Mixing

This is my favorite minigame I've done for this project! I took inspiration from how my sister uses her hair color products and used it to craft this minigame.

TaggingGameplay-ezgif.com-video-to-gif-converter.gif

Item Tagging

The last minigame I worked on before moving on to different tasks for the project. This one just needed to be another simple one. I brainstormed it to a scanning system similar to a grocery store when checking items out.

Retrospect

Working in this position outside my comfort zone with a heavy focus on software engineering and virtual reality benefited me as a Game Designer.

 

I gained new skills in coding architectures and a love for the technical implementation of game mechanics and systems by implementing multiplayer content and creating training simulations. The biggest takeaway was learning the importance of attention to detail for design intentions and understanding the complexity behind game systems'.

 

The lessons learned from this position will benefit me in my career especially as I am now confident in dealing with complex scripting involving optimizing scripts, creative solutions to problems, breaking down tasks, and debugging or refactoring legacy code.

My experience and learnings at King Crow Studios opened me up to take up any future position as a Gameplay Engineer or Virtual Reality Developer.

bottom of page