Wayfinder – Airship Syndicate

Wayfinder is a co-op arpg featuring randomized dungeons, massive open-world zones, hundreds of unique creatures to fight, and much more.

Steam

Role: Game Designer

Team: Airship Syndicate, 70 employees

Duration: March 2022 – October 2024

Engine: Unreal 4

Release: Initial MMO EA release August 17th, 2023 on Steam, Playstation 4 and 5.
Co-op ARPG EA release was June 11, 2024 on Steam and v1.0 release was Oct. 21, 2024

Terminology

Hunt: An instanced, high difficulty boss fight for 1-3 players to cooperatively defeat and receive unique and powerful rewards from. Hunt bosses feature custom mechanics, new creature types and environments for players to experience.

Lost Zone (LZ): A randomly created ‘dungeon’ for players to explore with the intent of replay ability and ever changing layouts of the LZ they intend to travel to.

Imbuement: Imbuements are items players may find or craft that are typically used to change, or ‘mutate’ a LZ in various ways. The 5 imbuement types are Shadow, Chaos

Technical Design

NOTE: In the below event descriptions are blueprint examples that lead to https://blueprintue.com which showcase in greater detail the UE Blueprints I created for these events. The website only allows the raw .xml data from the blueprint and does not allow any further edits. The screens shots are examples of how my Blueprints typically appear and are organized.

Event – Hunting Party

The Problem

This event has players discovering the bodies of slain Reavers, a hostile force found throughout Wayfinder, and challenges them to find and deal with the source of the attack. Interacting with a body reveals tracks of footprints leading to randomly selected locations throughout the world. Players must follow the footprints before confronting the beast responsible for slaying the Reavers.

There are 3 different variants of this event spread throughout 3 distinct areas of Frostmarch, a massive open-world zone, with each having it’s own unique creature to defeat. The event consists of 4 sublevels in pre-defined randomly chosen locations; 3-4 for the start (depending on the location and available space in that spot), 5-7 mid points of which 2 are selected, and a single end point leading to a multitude of different combinations in which the path from the start to the end could occur.

After having play tested with just the footprints, with the start and 2 mid point prints rotating towards the next point in the sequence when the event begins, feedback was received indicating the difficulty of staying on track between the points due to the varying topology of the landscape, foliage and other obstacles that may be along the path

The Solution

To solve this I designed and created a dynamic spline path between each point in the sequence. Once the event starts, splines will connect between each point along the player navigable path for a VFX particle to travel along in bursts for players to have an easier time to follow. A problem arose however that the spline, again due to the constant varying topology of the landscape, would connect through high hills or low valleys and travel through the landscape (because the generated nav was used to created the connecting paths, foliage and other obstacles that players would not normally be able to traverse were avoided) and this would cause the VFX to also travel through the landscape.

To solve this new problem, once the spline was created, starting at the initial starting point a line trace would be sent to the next point in the spline. If the line trace hit any part of the landscape, a new spline point was automatically added, raised 200 units (as it is the height of the spline path above the ground) and another line trace would be sent again to the next point. This process would continue until the line trace successfully reaches the final point in the spline. This would continue for each path that leads towards the encounter players are trying to track and allow the VFX to always be visible as it travels along the path.

I then took this idea and built it for use with the narrative/quest team to use in their quests in Frostmarch and future areas.

 

 

Link to Blueprint Example

Event and Level Generation

Initially, event and LZ level generation was purely random in nature. A LZ first generates a level and then determines what event spawners are available in the generated LZ. It then passes this information to the event generation system which then randomly selects events, initially based on the follow criteria

  • Event Tier: This was to be representative of potential event difficult and time invested. The larger the event, the higher the tier and the greater rewards to players
  • Event Size: Events are sized based the event sublevel size, a predetermined size in which the event sublevel can fit inside a particular level tile. These sizes range from extra small (xs) to Mega. Events can also be static and tied directly to a particular level tile
  • Cost: The event cost was initially a range between 1-4 that was given to an event based on it’s apparent difficulty. When an event is chosen to spawn, it’s cost is taken from an overall budget that determines how many events may spawn during generation. Once that budget is consumed, no more events may be generated

This system, while functional, was limited and was relying mostly on random luck especially if any quests were relying on events to be present to move players forward. Once I become responsible for managing these systems, I worked with Engineering and implemented the following changes

  • Event Weight: To allow events to have a higher chance to spawn, we introduced a weighting system with 5 different levels, from common – to legendary. Common events would have a higher chance than legendary to be chosen to generate and their costs removed from the budget
  • Priorities: To help facilitate events that were required for quests, instead of relying on chance that they would eventually appear in an particular LZ, we introduced a prioritization for certain quests so that any event that a quest required would be guaranteed to spawn in, given a specific set of additional criteria such as Unreal Tags.
  • Tier and Cost Adjustments: To make it more clear and make the math easier to understand, I implemented and updated all events to ensure that their Tier, ranged 1-3, would also equal their cost. This allowed for easier planning on how many events would appear at a given time. I also implemented a split in budgets having a separate cost for events required by quest and another budget for normal events to utilize.

For level generation I also managed the system ensuring that the required levels for static events, or other random events, were available when they were needed

Event Design

  • Designed & prototyped, from ideation to final shipping product, over 25 unique events while maintaining over 30 others
  • Created detailed creature design for events and hunts
  • Established core pillars, features, and systems that defined and improved the Event system and randomly generated Lost Zones
  • Developed combat encounters for events, quests, and systemic filler spaces

I’ve also spent a significant amount of time designing and implementing Encounters, Events, Creatures, and more. Below I detail out some of the processes and tools I’ve utilized to deliver content alongside challenges and problems I’ve helped solve throughout the game.

Events

Randomly selected player content experienced in the procedurally generated LZ or the static designed Overland areas. Events are intended to be replayable continually throughout player engagement.

The Core Pillars of the events were:

  • Emphasize player choice
    • Utilize items, World Modifiers, or hidden interactions that affect the gameplay and outcome for an Event
  • Design with randomization and replayability in mind
    • Design combat heavy Events with varied Encounters and mini bosses to fight
    • Create Event Variants with randomized changes for players to encounter
  • Reinforce core game loops
    • Rewards are a powerful tool players will return to an Event to acquire
    • Provide opportunities where players can utilize their toolkit to achieve success
  • Create unique and memorable moments
    • Focus on quality over quantity for all Events
    • Feature gameplay and interactions that a typical Quest or Level Design cannot deliver

Event Examples

Secret Chamber

The event was considered a Silent Event so it had none of the usual Event UI, as the intent was for players to discover and experience it naturally during a play through, discovering it as a part of the environment.

Having none of the usual UI, players would not immediately know that a typical event was in the area or had even officially begun. Discovering the consoles and interacting with them, each one would send a pulse to a central point. Noticing there are 3 points, the hope is players would deduce that there may be 2 other consoles in the current area they’re in. All 3 consoles have randomly selected, predetermined locations in which they can appear in

After having interacted with all 3 consoles, a portal appears at that central point, taking players to a Secret Chamber

Inside the chamber is an encounter that is considered a Mini-Boss. Higher hit-points, larger damage output, players must defeat the encounter before progressing through the chamber. The chamber was designed to allow enough of an open space for combat but contained to not allow players to flee or have players with ranged weapons find a safe spot in which to not have to fully engage the enemy.

After having defeated this encounter, the room at the far end of the chamber opens containing a chest players can loot for rewards. Also in this room, just out of sightline is a ‘key’. This key is used in a device in the main chamber room that unlocks the puzzle in this room. Without unlocking the device, the puzzle cannot be interacted with.

The puzzle consists of 4 rings, that are randomly rotated from their ‘solved’ position. Players must stand in the middle of the rings to rotate. Players must realize that there are 2 marks on the rings that will line up with other marks on the floor. Players must rotate each ring to match the marks on the floor

Once the puzzle is complete, it unlocks and opens a final room near the initial entry point into the chamber, allowing players to access a further reward. After completing the event the first time, players will get a unique cosmetic for the apartment, after which, random valuable loot will be granted.

Summary

  • Randomize the location of the consoles, ensuring the experience isn’t identical every time players encounter the event
  • Having the key to unlock the puzzle only accessible after defeating the miniboss ensures players cannot find the other treasure until then
  • Placing the key in a obscure location that may not immediately be noticed, meaning the puzzle and additional reward can be missed, but visual clues exist in the chamber indicating there may be more to do
  • After completing the event the first time, players will obtain a unique item, after which, if they encounter and complete the entire event, other valuable random loot will be provided

Process

  • Initially, this was simply to be an interactive event found randomly within this zone. However, due to the size of this particular zone, I felt we could better utilize some of the space and have bigger events stationed around that were not so confined to the usual event sizes
  • I had pitched for a static event (non-randomly spawned) after going through all available tiles and finding the one it now stays in and having an interactive moment here. However, due to the available size in this zone, I pitched the idea of teleporting players to another room.
  • Brainstorming with other designers (and even an engineer!) we can up with the ring puzzle, having players rotate them and lining them up
  • Due to the encounter in the area however, I ensured that the puzzle was locked and required players to unlock it to interact with it.
  • Feedback that I was given included that the marks I originally prototyped with were too difficult to see and line up perfectly. So I worked with the art team to make it more obvious and also included an offset, on both sides of the marker, that if players at least got close to the required point and stopped the rotation, it would automatically adjust to the correct point.
  • Also working with the person responsible for the potential loot, we made it so that the second chest was greater than the initial easier to obtain loot as, without noticing the key and solving the puzzle, players could easily miss the second chest. It had to be worth the effort

 

 

Link to Blueprint Example

Elemental Overload

This was the start of 2 events which allowed players to affect the outcome of the event

For this particular event, players would encounter a dormant Elemental Sentinel in randomly selected locations, a common higher difficulty enemy (considered a Brute class). While in this state, players can insert an imbuement and depending on which Imbuement players chose to insert, different enemy makeups would then spawn in to challenge players. The final encounter would then spawn in a normal Elemental Sentinel, however this Sentinel had a single new or altered existing ability based on the Imbuement that was provided. The Sentinel material would also change its colour based on the Imbuement type as well, away from its default of green, to further emphasize to players that it’s different from the normal types.

Summary

  • Give players the ability to influence the combat by their own choices and actions
  • Connect this event with Sentinel Charge with familiar mechanics

Process

  • It was requested to have an event in the Gorge that was similar to another event in the Ruins. This was late in the development process and it was felt we needed some additional events.
  • Not wanting to do the exact same thing, but using the other event as inspiration, I created the idea of using the damaged Sentinel as the interact point
  • It was suggested by an environment artist that perhaps we could set dress the event to look like something fell on it and damaged it, that’s why it was there. Working together, we found appropriate spots in the Gorge in which this event could appear in and setup the event to look like falling rocks had fell on the Sentinel and disabled it.
  • Initially, the idea was to only have 3 imbuements have an effect by player choice, but having already been working on Sentinel Charge, I included all 5 and used the similar idea of modifying the combat with a Sentinel with this event.
  • Through various feedback suggestions, I was able to get the various combat waves and imbuement effects to where they are now

 

 

Link to Blueprint Example

Sentinel Charge

Following a similar approach to the Elemental Overload event, Sentinel Charge increases the number imbuements players can provide to the dormant Sentinel. Players can provide 0 – 3 Imbuements (0 in the event they have none or do not want to give any up, so this allows players to still participate in the event) with each one affecting the Sentinel at different points. Once players have inserted any number (up to 3) imbuements they can activate the central station, charging the Sentinel and then gaining access to it.

For each 30% health lost during this mini-boss fight, the Sentinel will change an attack based on the Imbuements provided, as well as it’s visuals to indicate which state it is in.

The rewards for this event are based on the number of Imbuements provided. The more imbuements offered the greater the potential rewards, incentivizing players to try the event again.

Once this encounter is completed, players may notice some glyphs on the wall in the combat space, which is the code players must input in another spot within this area the event takes place in. Once the encounter is complete, the shield in the combat area will dissolve giving players direct access to the puzzle. Without the key, players may attempt to brute force the code, however for every 2 incorrect attempts, there is a 50% chance that either an encounter will spawn or players will trigger a trap, causing damage to the player who inputted the incorrect code, to dissuade further guessing. If players persist, and if all 3 different encounters have spawned, players will trigger the trap every incorrect guess.

Once the correct code has been inputted, players will be able to access a chest with a random reward.

Summary

  • Increase the amount of control players have to affect the Sentinel, customizing the encounter through player choice
  • Instead of strictly being another combat encounter, add the element of having the key to the code in the area where players must face off with the Sentinel first
  • Give players the option to brute force the code, but have a small deterrent in the form of a combat distraction or immediate damage to the player

Process

  • During development, the level tile this event currently resides on, was one of the biggest tiles in this zone. However, there was no plan to utilize the space to give players more to do than just running around in large spaces with nothing to do
  • I pitched the idea of the 2 activities here, the combat and the code puzzle to fill as much as the space for players as possible
  • First I created the puzzle and code. Initially where they are now was a single long hall, but working with the environment art team, it was made into a small round room where all the glyphs could fit
  • Since colour was to be a feature to differentiate the different sides, I did research on the various types of colour blindness to try and find colours that, if anyone is affected by this condition, could at least differentiate between the 2
  • After initially setting it up with 2 colours, I worked with the world building team lead to come up with something that would both better fit the environment and current theme of the area, while also allowing those with colour blindness to still participate in the event
  • Having already started building the interacts for the combat portion of the event, I worked with the combat team in designing what the sentinel will do when affected by each imbuement. This idea was then used for a future hunt, but instead of only 3 imbuements that players chose to affect the Sentinel, the Hunt had the sentinel rotating between all 5 imbuements at random times during the combat

 

 

Link to Blueprint Example

Enlightening Treasure

During development, we noticed that events at this point were predominantly combat oriented so I designed an event that had no combat built into it, was repeatable and contained within a small Reaver camp within the Reaver Woods LZ.

Within the center point of this camp is a large stone with 4 glyphs on it, and a chest on a small hill with 4 chains wrapped around it. Throughout the camp are also 8 totems with glyphs on the front. When the event spawns in, all the totem glyphs will have randomly assigned 1 of 8 possible glyphs, with no duplicates. The 4 in the center will also be randomly selected so that each time this event is attempted, the experience will be slightly different.

The 4 glyphs on the stone act as the key and the players must find the matching glyphs on the totems and light that particular one. For every successful activation, 1 of the chains on the chest will be removed and the matching glyph on the center stone will change colour. If that correct totem is deactivated, the corresponding chain will reappear on the chest. When an incorrect totem is lit, a red chain wrapping around the center of the chest will be active. So long as an incorrect totem is lit, that red chain will remain and the puzzle cannot be solved. When all 4 correct totems that have the same corresponding glyphs on the center rock are lit, and no incorrect ones are lit, the chest will become available to open and all totems will lock preventing any further interaction

Summary

  • Ensure randomization which glyphs are apart of the key
  • Randomize the glyphs on each totem within the area
  • Not necessary to randomize the locations of the totems as the glyphs on the front will already be randomized
  • Ensure players are able to deduce when an incorrect totem is lit and when a correct totem is lit

Process

  • Instead of focusing purely on events that resulted in a combat oriented theme, I pitched the idea of having a more interactive event without combat in the Reaver Woods
  • Having found this location that appeared to be a Reaver camp, I worked with the narrative team to come up with how Reavers may employ various magic, and eventually settled on the use of Glyphs
  • Initially the event would fail and lock players out after 3 incorrect attempts. However, feedback provided that communication on a failure was difficult to pass to players, so I ended up removing that particular mechanic
  • Also, due to the difficulty of communicating to players when a correct totem was lit or not, I introduced the red chain on the chest for when an incorrect totem was lit, as well as the colour changes on the correctly lit glyphs on the rock
  • Initial placement of a few totems were also difficult to find, so their final placements were iterated on after feedback from playtests

 

 

Link to Blueprint Example

 

Torches Puzzle

Similar in visuals as the Enlightening Treasure, this event was for the Frostmarch overland in a spot controlled by Reavers, the same faction that controls the Reaver Woods LZ Enlightening Treasure may appear in.

While it’s position will always remain the same, every time the event spawns into the area, random changes will be generated as well. Of the 7 large skull totems, 3-5 of them will randomly be lit. Within proximity to the event, close to other sources of fire (with a single one always near the event to give a clue to players what they need to find) will be 7 bundles of wood. Players must locate enough wood, place them into the totems and then light the fire only in front of the totems that are lit. Players also have the ability to extinguish the flames. Once all the flames infront of the lit totems are lit, the 2 chests near the event will unlock, granting players the ability to loot them for rewards.

Notes:

  • Players must always have enough wood available to light all the totems as they wood cannot be removed once placed inside
  • Randomize which and how many totems are lit so it’s not always the same combination
  • Randomize where the wood piles are so they are not always in the same locations, becoming monotonous in the search

Process

  • Similar in theme to the Enlightening Treasure event in the Reaver Woods, this Reaver controlled area in Frostmarch was to have a similar like event initially with glyphs
  • Early prototypes had different patterns of glyphs that players had to match by lighting totems in an area, however feedback provided was that it was difficult to visualize the pattern on the wall to the 3D space the totems were in, so I simplified it so that, instead of glyphs, players simply had to light the totems by the similarly lit skull totems that the Envionrment team already had placed as ambient set pieces in the zone.
  • Initial placement of the firewood was in too large an area and players were having trouble finding all the required wood. Instead I moved them all closer and near other sources of fire to make it easier, and faster, for players to find the required items to solve the puzzle

 

Link to Blueprint Example