
(Ellys Gorodisch)
About Me

Hello! I'm Ellys, a Worcester Polytechnic Institute student double majoring in Interactive Media & Game Development and Computer Science.
My strong background in programming and passion for picking up new skills allowed me to make the games and projects on this page (and the website too!)
If you have any questions, don't hesitate to reach out! And thank you for checking out my porfolio!
Projects
Memoria Altera
Cozy Coast
Your Music is Trash
PixelPunk
HackerMan
Campus Connect
Sudoku Solver
Resume
Contact
Project Details
Role
Tech Coordinator, Cutscene Programmer
Software
Unreal 5, Git
Development Time
9 Months
Language
Blueprints
Team Size
6
Release Date
May 2025
Awards
IMGD Provost Award, WPI Showfest 2025
Featured at PAX EAST 2025
Memoria Altera
About
Memoria Altera is a narrative-driven puzzle game where you wake up on the floor suffering from amnesia. You must explore the futuristic lab you woke up in to recover your memories with the aid of a fellow amnesiac who is just as confused as you are. Venture deeper into the lab and unravel the secrets of who you were before losing your memories!
This game was completed as part of my senior capstone project at Worcester Polytechnic Institute by a team of 6 core members and 2 contracted workers.
I and my fellow programmer Owen Knizak started as both general programmers, planning to split the programming tasks between the two of us evenly. However, Owen was rediagnosed with brain cancer halfway through the year. This led to us bringing in another programmer to help out, and myself transitioning to the role of tech coordinator.
Cutscene System
The system that composed the majority of my work on Memoria Altera was a cutscene camera system. Unreal Engine has its own built-in cinematic camera system, but we felt that it lacked the level of interaction that we desired to easily implement quick time events and other forms of player interaction during cinematic moments.

Example of a Quick Time Event in a cutscene in Memoria Altera
Core Components
To implement this camera system, I created 3 core components.
The first of which is a spline path. A spline is a series of points connected by curves. These are incredibly useful for making paths in the engine's editor, as you can place the points and angle the curves between them very easily.
The second component is the main loop. The diagram below is a simplified version of the actual code, but it captures the essence.

Flow Diagram of Cutscene Camera Main Loop
Nodes System
The third core component of this camera system are the nodes that can be placed along the path. These nodes can control the behavior of the cutscene camera as well as the game world.
Node | Purpose | Parameters |
---|---|---|
Speed | Controls the speed of the camera | Distance/Time, New Speed, Time Dilation, Easing Function, Transition Time |
Rotation | Controls the rotation of the camera | Distance/Time, New Rotation, Use Shortest Path?, Easing Function, Use Spline Rotation?, Use Mouse Rotation?, Transition Time |
Trigger | Triggers event in the game world | Distance/Time, Trigger Class |
Quick Time Event | Starts QTE | Distance/Time, Key, Time to Complete, Time Dilation, Spam Event?, Pause Movement?, QTE Class |
Move Key | Force player to hold key to move forward | Distance/Time, Key |

Example of nodes placed along a camera path
Puzzle and Interaction System
To implement player interaction and puzzles, we created a custom Interactable interface and a PuzzleBase class.
Interactable Interface
In early playtesting, we noticed that players had a hard time knowing what was interactable in our game world. To address this problem, I added a proximity highlight affect to interactable objects to improve player understanding.

Example of proximity highlight effect
Puzzle Base

Class Diagram of Puzzle classes
All puzzle classes are children of the PuzzleBase class. This class has default implementations of OnInteract, LeaveInteract, and PuzzleComplete.
Project Details
Role
Lead Programmer
Software
Unreal 5, Git
Development Time
7 weeks
Language
Blueprints
Team Size
7
Release Date
May 2024
Cozy Coast
Website
A young falconer decides to go visit their grandfather, who happens to be the only fisherman in a little rundown coastal town. Upon arrival, their grandfather asks them to help out with meeting the fishing quota through falconry. Along the way, the falconer learns about the history of the town and the people who live in it.
Players will get to explore the town and interact with townsfolk as the falconer. They will also catch fish and find trinkets as a falcon.



Project Details
Role
Programmer
Software
Visual Studio, Git
Development Time
2 weeks
Language
C++
Team Size
2
Release Date
March 2023
Your Music is Trash
The music festivals came and left, and the toxic music runoff they left behind ran rampant!
Play as Jerry the Janitor as you clean up some the garbage that these terrible tunes infected, out-grooving their trash music!



Welcome to the world of PixelPunk, an adventure game created entirely inside the Windows console.
This is a simple demo of some of the capabilities that I have been working on, such as animations, screen scrolling, and NPC dialogue!
NOTE: This demo was designed and tested on Windows 10. Other versions of Windows may not run the game properly.



HackerMan is a concept for a hacking minigame. Navigate your little square around a randomly generated maze to get to the blue terminals. At the terminals, solve the puzzle by swapping the pieces. Once you complete all of the terminals, you will get pulled out Mission Impossible style!
Press Enter to Start. Press Space to navigate the menus and complete the puzzles. Use Arrow Keys to move.
HackerMan



Project Details
Role
Programmer
Software
Render, MongoDB, OAuth
Development Time
2 weeks
Languages
HTML, JavaScript, CSS
Team Size
4
Release Date
April 2024
Campus Connect
Website
Campus Connect is an application designed specifically for WPI students to get more involved on campus via club engagement or to help students meet others informally through a posting board.
Campus Connect covers 3 key functionalities for WPI students: allowing students to post messages about classes, meetings, social events, or just needing some one to get dinner with; allowing clubs and students to create public events on a calendar, streamlining club evemt attendance; and allowing students to create their own personal calendars from the list events on the public calendar.



This is a simple Sudoku solver that can solve all but the most extreme Sudoku puzzles.
Enter your own Sudoku puzzle or press "Setup" to load a preconfigured one. Then just press "Solve" to solve the puzzle! The "Step" button goes through one iteration at a time. The "Reset" button clears the board.
Sudoku Solver


Memoria Altera
Project Details
Role
Tech Coordinator, Cutscene Programmer
Software
Unreal 5, Git
Development Time
9 Months
Language
Blueprints
Team Size
6
Release Date
May 2025
Awards
IMGD Provost Award, WPI Showfest 2025
Featured at PAX EAST 2025
About
Memoria Altera is a narrative-driven puzzle game where you wake up on the floor suffering from amnesia. You must explore the futuristic lab you woke up in to recover your memories with the aid of a fellow amnesiac who is just as confused as you are. Venture deeper into the lab and unravel the secrets of who you were before losing your memories!
This game was completed as part of my senior capstone project at Worcester Polytechnic Institute by a team of 6 core members and 2 contracted workers.
I and my fellow programmer Owen Knizak started as both general programmers, planning to split the programming tasks between the two of us evenly. However, Owen was rediagnosed with brain cancer halfway through the year. This led to us bringing in another programmer to help out, and myself transitioning to the role of tech coordinator.
Cutscene System
The system that composed the majority of my work on Memoria Altera was a cutscene camera system. Unreal Engine has its own built-in cinematic camera system, but we felt that it lacked the level of interaction that we desired to easily implement quick time events and other forms of player interaction during cinematic moments.

Example of a Quick Time Event in a cutscene in Memoria Altera
Core Components
To implement this camera system, I created 3 core components.
The first of which is a spline path. A spline is a series of points connected by curves. These are incredibly useful for making paths in the engine's editor, as you can place the points and angle the curves between them very easily.
The second component is the main loop. The diagram below is a simplified version of the actual code, but it captures the essence.

Flow Diagram of Cutscene Camera Main Loop
Nodes System
The third core component of this camera system are the nodes that can be placed along the path. These nodes can control the behavior of the cutscene camera as well as the game world.
Node | Purpose | Parameters |
---|---|---|
Speed | Controls the speed of the camera | Distance/Time, New Speed, Time Dilation, Easing Function, Transition Time |
Rotation | Controls the rotation of the camera | Distance/Time, New Rotation, Use Shortest Path?, Easing Function, Use Spline Rotation?, Use Mouse Rotation?, Transition Time |
Trigger | Triggers event in the game world | Distance/Time, Trigger Class |
Quick Time Event | Starts QTE | Distance/Time, Key, Time to Complete, Time Dilation, Spam Event?, Pause Movement?, QTE Class |
Move Key | Force player to hold key to move forward | Distance/Time, Key |

Example of nodes placed along a camera path
Puzzle and Interaction System
To implement player interaction and puzzles, we created a custom Interactable interface and a PuzzleBase class.
Interactable Interface
In early playtesting, we noticed that players had a hard time knowing what was interactable in our game world. To address this problem, I added a proximity highlight affect to interactable objects to improve player understanding.

Example of proximity highlight effect
Puzzle Base

Class Diagram of Puzzle classes
All puzzle classes are children of the PuzzleBase class. This class has default implementations of OnInteract, LeaveInteract, and PuzzleComplete.
Cozy Coast
Project Details
Role
Lead Programmer
Software
Unreal 5, Git
Development Time
7 weeks
Language
Blueprints
Team Size
7
Release Date
May 2024
Website
A young falconer decides to go visit their grandfather, who happens to be the only fisherman in a little rundown coastal town. Upon arrival, their grandfather asks them to help out with meeting the fishing quota through falconry. Along the way, the falconer learns about the history of the town and the people who live in it.
Players will get to explore the town and interact with townsfolk as the falconer. They will also catch fish and find trinkets as a falcon.



Your Music is Trash
Project Details
Role
Programmer
Software
Visual Studio, Git
Development Time
2 weeks
Language
C++
Team Size
2
Release Date
March 2023
The music festivals came and left, and the toxic music runoff they left behind ran rampant!
Play as Jerry the Janitor as you clean up some the garbage that these terrible tunes infected, out-grooving their trash music!




Welcome to the world of PixelPunk, an adventure game created entirely inside the Windows console.
This is a simple demo of some of the capabilities that I have been working on, such as animations, screen scrolling, and NPC dialogue!
NOTE: This demo was designed and tested on Windows 10. Other versions of Windows may not run the game properly.


HackerMan
HackerMan is a concept for a hacking minigame. Navigate your little square around a randomly generated maze to get to the blue terminals. At the terminals, solve the puzzle by swapping the pieces. Once you complete all of the terminals, you will get pulled out Mission Impossible style!
Press Enter to Start. Press Space to navigate the menus and complete the puzzles. Use Arrow Keys to move.



Campus Connect
Project Details
Role
Programmer
Software
Render, MongoDB, OAuth
Development Time
2 weeks
Languages
HTML, JavaScript, CSS
Team Size
4
Release Date
April 2024
Website
Campus Connect is an application designed specifically for WPI students to get more involved on campus via club engagement or to help students meet others informally through a posting board.
Campus Connect covers 3 key functionalities for WPI students: allowing students to post messages about classes, meetings, social events, or just needing some one to get dinner with; allowing clubs and students to create public events on a calendar, streamlining club evemt attendance; and allowing students to create their own personal calendars from the list events on the public calendar.



Sudoku Solver
This is a simple Sudoku solver that can solve all but the most extreme Sudoku puzzles.
Enter your own Sudoku puzzle or press "Setup" to load a preconfigured one. Then just press "Solve" to solve the puzzle! The "Step" button goes through one iteration at a time. The "Reset" button clears the board.

