SCOTT DAVID GARSON - GAME / NARRATIVE DESIGNER & UNREAL DEVELOPER
Shadow Island
Shadow Island is a hide-and-seek style game developed in the Unreal Editor for Fornite (UEFN).
The game was created using a combination of devices and Verse code.
The main challenge for this game was determing when to use direct event binding vs. when to write custom Verse code.
For the narration, I leveraged ElevenLabs text to speech, and edited the audio with Adobe Audition.
My roles
Game Designer
Narrative Designer
Level Designer
Verse Developer
Stack:
UEFN
Eleven Labs
Adobe Audition
Downloads & Links
Code Organization
My experience as a software engineer has instilled in me the importance of encapsulation, which is essentially keeping related code together in separate files.
To that end, one of the first things that I had to figure out in Verse is how to create and work with separate classes.
Role Balancing
One of the key requirements of the game was to maintain a balance between the three roles based on the number of players.
To accomplish this, I created a method that returned the number of each role available based on the number of players.
The general rule is that there is one monster for every 1-3 campers, and usually only one monster hunter. There are some exceptions to this, which is why I explicitly defined the role counts rather than creating an algorithm.
The Green Room
For Shadow Island, I wanted to allow players to choose their role (class) to play in the game. Rather than a typical class selector approach, I wanted to embrace a larger narrative.
The players are "actors", who have been "shanghaied" into being part of the cast of a B-movie on an island.
As part of this narrative, I created a "green room" where the actors could choose their role by choosing a door to go through.
I wrote some Verse code to display the number of available roles are displayed above the dressing room door. The counts decrease as each player enters the set.
Inside are written and voiced direction on how to play your role. There is also a changing booth that will allow players to change their skin to better fit their role.
Walking through the door at the opposite end of the dressing room will teleport the player to a random teleporter relevant to their role.
Player Roles
There are three roles that a player can choose from: Camper, Monster, and Monster Hunter. Each has unique strategy and abilities. The challenge was to balance the roles so that all players have an equal opportunity to win the game.
Camper
The campers are plain-old squishy humans. They can win by successfully hiding until the time runs out. They can also win by destroying the coffins with their pick axe.
With their large stamina pool, they can outrun the monsters and find a new place to hide.
Monster
Monsters have whip-chains that they use to eliminate the humans on the island. They have increased health, a low stamina pool, and a fast burst speed.
Monster Hunter
Monster Hunters are "glass cannons", with increased damage output. They are armed with a sword and should be able to go toe-to-toe with monsters with a hit-and-run strategy.
Immersive Class Selection
Rather than using the built-in class selectors, I handled class and team selection in Verse. In the dressing room's exit area, I added a volume that would trigger the player's class and team assignment, and then teleport them to their start location.