Gameplay footage of several shots, with a railjump interweaved

SportsMedia Inc. Internship (EVOC)

During my time as a Game Designer Intern at SportsMedia Inc., I contributed primarily to the development of the Unreal Engine 5.4 'EVOC' (Emergency Vehicle Operations Course) project, focusing on gameplay systems such as loading in and out levels, the main menu, and various traffic objects. I collaborated closely with my team lead Xavier and the rest of the department to help translate our design concepts based in research into the frameworks of a playable project. My work involved designing mechanics, iterating on features, scripting in UE5, and heavy documentation, keeping things aligned with both company direction and team cohesion. In an important note, while some departments of the company utilized Generative AI in their workflow, for my work and as a whole for EVOC at least until my departure, no such tools were used in its development as a human-created experience.

  • Company: SportsMedia Inc.
  • Job Title: Game Designer Intern
  • Team Size: 6-14 (6 Specific to EVOC, 14 Department-wide)
  • Primary Role: Scripting
  • Platform: PC
  • Responsibilities:
  • - Helped drive the restart of stalled project, bringing it into structured early production, working within GitHub pipelines for version control.
  • - Implemented many key gameplay systems, delivering 15+ Blueprint actors across traffic systems, vehicle prototypes, and interactable environment logic.
  • - Developed end-to-end player flow, including main menu, level transition systems, and save/load functionality.
  • - Contributed to research on emergency vehicle protocols and integrated findings into game documentation for reference.
  • - Maintained presence in meetings and advocated for greater communication within internal team department.

Blueprint Highlight

Something that was immediately important to create, were traffic lights, which quickly decide the scope and feel of moving through the environment. I created a system for managing states by utilizing a 'master' and 'pair' approach, with differention for whether a paired unit should mirror or be the opposite. Capable of supporting complex intersections, with variants that include a left turn stage. The master accounts for slight variation in the type, keeping things consistent on its timer. I decided to build these out this way for scalability, as my fellow intern worked on the greybox they wanted something heavily modular. After providing a detailed breakdown of the system, I was able to pass it onto the main develop branch of our build to serve their needs.

Demonstration of Lights

Traffic Lights primarily work on a system of 'masters' with other actors either set to 'mirror' their state, or be the opposite, with clearances provided.

Internship Experience

When I first began work for SportsMedia Inc, I found myself presented with a unique angle to approach for my stay. There was interest internally in ‘reviving’ an older project that had stalled out that had been using Unreal Engine 5, which I discovered to be a earlier attempt at EVOC. With my own existing skills in the engine, the team lead Xavier quickly brought me into that team where we started by drafting a new Game Design Document. We did research into various potential target locations to base EVOC in, with me in particular noting down united states vehicle regulations to bear in mind while designing mechanics. To provide structure going on, we broke down what we needed for a ‘minimal product’ in programming tasks, and began assigning with me being amongst the first active programmers from Week 4 onto the end of my internship.

Event Graph Example.

Example of the Traffic Light Box event graph, demonstrating the logic for handling states, but more particularly how keen I was to give my fellow interns a hand in understanding/tweaking it.

My focus throughout programming was on general ‘structure’, the systems that enabled the program to function at a base level such as the first iteration of our Main Menu and Save Data BPs. I actively pushed the team to get onto a discord chat when it became clear it was our preferred communication platform, enabling us to collaborate in more comfort as we kept versions synced through GitHub. I wanted to take the tasks with the longest term value to the company, that while not as flashy were critical for us to have playtests to begin with. Beyond that, reusability of my BPs were important, for each of the 15+ BPs I developed during my time I provided a breakdown on our Discord on how to utilize the parameters and what parts of code are good to duplicate.

Widget Graph Example.

Whenever possible, for elements like this I tried to make it a dead simple process to merely copy and paste that comment if a fellow developer wanted a simple task like 'make new level'.

As I leave and reflect on what I gained, much of that lies in refining my production process and organization. Aside from the expected outcome of pushing my skills in Unreal further, it was an invaluable opportunity to revamp a project like this in a way simply starting one wouldn’t. Looking at prior iterations, I saw how poor planning resulted in individually impressive pieces of work being left on the cutting room floor, and ensured they’d hit a snag once that semester of interns left. It motivated me to reconsider my work, and navigate my process in mind with the fact someone other than me will need to use my work in six months. And I delivered quite substantially on that account, leaving me with a bit of pride in something outside my typical scope.