The following is an overview of published work in past milestones and is not comprehensive of my duties or work not made public at this time.
The following is an overview of published work in past milestones and is not comprehensive of my duties or work not made public at this time.
Designed 40+ unique multiplayer boss encounters, implementing behavior trees of creature abilities, reactions, and combat phases for live-service content updates
Designed a templatized behavior tree framework for enemies to evaluate board state, enabling designers to rapidly author combat states
A player's account on the impact to standard combat
Own gameplay beats and systems for quest content including The Forbidden Library Gauntlet, The Marketplace of Ideas in Selenopolis, and the Black Lagoon in Darkmoor
Present ideas and concepts to stakeholders and lead communication in developing features such as Spell Card Inspect and combat Tutorials
Collaborated with Systems team to reinvent the Shadow magic combat system as Shadow Pacts, owning the new user experience of its mechanics and content integration
Led meetings with analytics, marketing, web, engineering, and design to streamline user acquisition features like Invite a Friend and improve the first-time user experience in early game content
In Selenopolis, a world based on Egypt, my goal with our content was for the player to develop positive relationships with avatars of the Egyptian gods. Players encounter avatars of the Egyptian gods called Immortals. These encounters teach players a combat puzzle mechanic tied to that god's domain.
Players develop this relationship in three stages:
Narrative introduction
Adversarial encounter
Partnership encounter
Players learn the history and identity of the Immortal through their quest. Then, they face the Immortal in combat, learning the puzzle rules embedded in the encounter.
In the final battle against the Bard, players can summon the Immortal as an ally, triggering powerful attacks by solving those same puzzle mechanics. This final encounter occurs in four stages, facing the Bard in different combat archetypes in each stage.
The player summons one Immortal to help them per stage, using the information they learned about the Immortal's combat behavior from their adversarial encounter to strategically select an Immortal for each stage.
In addition to his spell list, Anubis has the following special behaviors:
Anubis will begin by casting full damage resistance on himself
As the player reaches 70%, 50%, and 20% health thresholds, Anubis reduces his resistance
After the second round, if the player attacks Anubis, he will give them the "Hunger of Anubis" spell
Hunger of Anubis is a self-hit, allowing the player to lower their own health manually
If the player reaches below 10% health, Anubis will cast a spell on himself that doubles the player's damage against him
Anubis rewards players for inching closer towards death. This increases pressure over time, putting players at more risk the closer towards a win solution they become. As an ally against the Bard, Anubis will cast a stronger damage buff for the player depending on these same health thresholds. If the player reaches below 10% health, Anubis will cast his special attack against the Bard.
To build a connection between the player and the companion, the two must play strategically together. Players in Wizard101 have reached significant power spikes, so an enemy that feels comparable to the power level of a player is rare. Players needed feel glad to have the Immortal with them. But the Immortal shouldn't simply win the battle for them--that wouldn't create a meaningful connection either.
I designed these encounters to mirror each other. First, the player opposes an Immortal in battle, during which the boss has a specific puzzle strategy that must be utilized to defeat them. The Immortals' behavior teaches the player how to act.
Then, when the Immortal joins them in battle as an ally against the Bard, the Immortal begins their puzzle again. Only this time, it isn't against the player--it is the way to combo attacks. Executing the puzzle correctly will trigger a powerful attack from the Immortal.
To keep this learning consistent, it was essential the Immortal's puzzle solution as an enemy and as an ally were exactly the same. The player should feel rewarded for what they learned from their previous quests. Any behavior I designed for one needed to work in the other and be communicated clearly to the player.
Additionally, these interactions couldn't interfere with the Bard's own abilities. Therefore, I designed the Bard's behavior to be independent of the player or Immortal's actions. The cooperative play with the Immortal was the focus of the encounter, so the Bard heavily countering the player's attacks would only make executing these combo attacks too frustrating to achieve.
Anubis begins the combat with strong resistance to damage. As the player reaches low health, Anubis will reduce that resistance.
After defeating Anubis, players use the puzzle solution they learned in his fight to trigger that ally's special attack against the Bard.
With these four Irk battles, I aimed to challenge players' dominant strategies without strictly limiting options to do so. Instead of driving players towards a singular puzzle solution, I designed these behaviors with no specific execution strategy in mind. I set out to put pressure on their toolset in a different way each time and encourage them to find their own methods of overcoming it.
Rage overwhelms the player by stacking hanging effects that deal damage over time, requiring the player to think and act fast
Desperation stacks defenses the player must explicitly remove or hit around to deal lethal damage
Despair stops buffs but accelerates the player's own damage
Paranoia acts via its anticipation the player's next move, encouraging the player to think about the order they execute their strategy
In addition to its spell list, Rage has the following special behaviors:
Rage casts a +25% fire damage global at the beginning of the battle
Every turn that the player begins with 6+ pips (power points, the resource for spellcasting), Rage casts a damage over time on the player
If the player casts a spell that costs 7+ pips, Rage detonates all damage over times, removing them and dealing their full damage instantly
This includes any damage over times on Rage
If the player casts an accelerant buff, Rage reacts by casting its own random accelerant buff
Rage builds up damage implements gradually, focusing on damage over time that quickly overwhelms the player. Some players found success by building towards a one-hit-knockout before Rage can build up lethal damage. Others outlast the battle with a chip strategy, dealing frequent smaller hits to keep their pip count low (avoiding the damage-over-time stacking).
This approach to boss design provided each Irk with strong behavioral identity. At high level, they are easily categorized (Rage is the aggressive one, Desperation is the defensive one, etc.), but the behaviors within that framework were largely unique from each other and abilities utilized by other Wizard101 bosses. Paranoia even employed a condition players hadn't seen before--reacting off the number of power points of a specific school the player accumulated.
Players responded positively to these battles for their strategic engagement and stress of dynamic play. If a player asks for advice from players in game or in the community on one of these encounters, responses include a variety of strategies employed successfully by players, proving each battle was a unique challenge providing breadth for players to experiment with their own solutions.
Some even identified my thematic approach to designing the Irks' behaviors, such as this poster in the Wizard101 reddit community:
"After having played Wallaru, I noticed that the three bosses- called Rage, Desperation, and Despair, in that order- seems to be based on three of the five
stages of grief. Maybe I'm not the first one to notice this but I'm drawing some connections.
After denial, the first stage of grief is anger. Rage is another, albeit more intense, word for anger, and the boss fight feels like it is supposed to symbolize
what rage is like. Like anger, he does huge damage in bursts and also burns you down over time, similar to how an angry person would say multiple unkind
things that build up and hurt feelings.
Then, there's Desperation. This matches with the next stage of grief, called bargaining. The connection works because when you are bargaining in the
context of grief, you are desperate for any chance to get back who or what you lost. Further, the desperation fight is a battle against an opponent who
does everything they can to protect themselves (without trying very hard to hurt you.) He'll even resurrect himself, again, desperate to stay alive.
Finally, there's despair, which matches quite well with the final stage of grief (excluding acceptance, which happens at the end of Wallaru:) Depression.
This boss is all about weakness- a good symbol for depression, where you feel weak, helpless, and hopeless." -u/Wiz101deathwiz
These are other considerations that drove the design direction and difficulty tuning of these encounters:
Each Irk is stylistically and thematically very different. There was good design space to link a series of battles together that could provide a very different experience depending on which you were fighting. While I designed their fights to be structurally similar, the strategies players utilized against each varied widely.
These battles were solo encounters, serving as a sort of skill check towards progressing to end-game content. Players who were struggling ended up socializing more, seeking guidance from players in common spaces of the world to talk strategy.
Each Irk battle takes place at the end of a mini-arc in Wallaru's storyline. I thought it valuable to approach these battles as a sort of palette-cleanser, a capstone at the end of each milestone to shift the players' focus. Otherwise, our players tend to rush through our content without really consuming it.
While players face many bosses throughout Wallaru's storyline, Wallaru is the concluding world of the Arc 4 narrative. Freddie Kroaker may be the main antagonist of Wallaru, but these Irks are about Daesin, the only thread the player has to the greater Arc 4 story during Wallaru until the concluding final battle after defeating Freddie Kroaker. I wanted these battles to be notable, to remind the player what the greater threat is.
Similarly, this is not an easy task they have with Daesin. Daesin has been attempting to grapple with his emotions in all of Arc 4, and this is the culmination of that. It is a challenge to overcome complex emotions such as Desperation, Despair, and the personifications of them should be just as challenging.
Rage overwhelms the player by stacking hanging effects that deal damage over time, requiring the player to think and act fast.
Wizard101's enemy AI is inflexible and too simplified to accommodate the game's latest combat dynamics. To increase encounter depth, I designed a simulated behavior tree for creature decision making.
I created a behavior tree framework that allows enemies to evaluate board state and more complex variables. Enemies now execute some or all of the following steps each turn to select an action:
Check health state of self
Check health state of allies
Determine priority state (Buff, Defend, Attack) from the following variables:
Evaluates threat level of players
Evaluates attack efficiency by number of buffs
Evaluates attack efficiency by current power points
Selects action from stack-ranked priority within each state
Execute action
I documented this workflow and trained other systems designers to implement this system into their encounters. This framework allows designers to quickly author boss logic with reusable and adaptable components.
Bosses using this behavior tree can react directly to player actions and vary their strategies across turns. Shortly after its launch, a player's account to the community about their experience fighting a boss that used this AI reinforced the tool's positive impact to standard combat.
Collaborated with Systems team to reinvent the Shadow magic combat system as Shadow Pacts
Authored and scripted new tutorial quests to teach Shadow Pacts in combat via Lua
Owned the new user experience of Shadow mechanics and content integration
Drove mainline content around the reveal of a new spell training location, the Shadow School
Worked with Art and FX to bring the look and feel of the Shadow School to life
Deconstructed how the original tutorials were made, then authored and scripted new tutorial quests for combat systems in Lua.
This included owning the new onboarding flow of the combat system Shadow Pacts.
Decided where in the mainline experience to inject new onboarding
Authored the beats of injected onboarding quests
Scripted Lua combat tutorial to teach the functionality of the new system
Adjusted existing quests with outdated information to ensure a cohesive onboarding experience
Problem: Over the years of updates, combat systems were layered into the core experience without proper onboarding to teach players how to use them. This alienated returning players and endgame players were struggling because they never adopted systems that were now integral to the game.
Objective: Rewrite the onboarding flow through the introduction of each new mechanic to ensure thorough teaching and a pace that doesn't overwhelm the player.
Result: Players now have in-game answers to their questions. New players will be comprehensively introduced to new mechanics during their main quest experience, no longer causing confusion when endgame content utilizes a mechanic they never properly understood.
Since its release, Wizard101's combat systems have grown massively, from new spell mechanics to different ways of acquiring the power cost for your spells.
However, these new systems were not accompanied with new combat tutorials to explain them. The original tutorials were made by a programmer, and no current designer knew how they were scripted or how to make more. Players simply had to trial-and-error their way to understanding or consult the forums for an explanation.
As a returning player who had experienced the bombardment of new mechanics that alienates your understanding of the game, it was important to me to reintroduce these systems with combat tutorials at a pace that graduates with the content.
I deconstructed existing Lua tutorials to learn how to author them, wrote beat lists for the player's actions and the narrative explanation, and integrated these new tutorials into the quest flow. In the first rollout, we backfilled tutorials for existing combat systems Archmastery and the Magic Wheel and created one for the newest mechanic, Spell Fusion. The following year, we reinvented Shadow magic as Shadow Pacts and adjusted Shadow's entire onboarding flow with a new combat tutorial to support it. We have several more mechanics that will get this treatment in the future!
Players praised the tutorials for their comprehensive and progressive teaching of the systems. Now, when returning players ask in community spaces "How do I use Archmastery?", players will point them to the tutorials as the method of learning. Several returning players have even stated they chose to simply begin a new character for the full onboarding experience at the pace we've now set.
(Of course, we would prefer players have the tools to get up to speed without restarting the whole game over, but that's for a future initiative)
Darkmoor: The Black Lagoon
Introduction to Shadow Pacts
Selenopolis: Marketplace of Ideas
Introduction to Archmastery and Fusion
The Forbidden Library Gauntlet
Wallaru
Click on any boss to read their full stat and behavior list.
At the start of the cycle, Ra will put up 3 hanging effects of a type. A player must have exactly 3 of the same hanging effect type to attack Ra.
Anubis begins the combat with strong resistance to damage. As the player reaches low health, Anubis will reduce that resistance.
Thoth will tell a story of the gods and give the player two spells as options to continue the story. If the player chooses correctly, Thoth will reward them by casting a self-hit.
A protector and a guardian, Taweret's defenses are strongest the first and second rounds, but falter every third round. Players must attack Taweret while she is her weakest.
I built a series of encounters to create a companion-collecting combat experience.
Players first oppose each companion in battle to unlock them for the final fight
Upon entering the Rogue Theater to face off with the Bard, they can choose one companion to join them in battle per boss phase
Players must use the puzzle solution they learned in their fight opposing the companion to trigger that ally's special attack against the Bard
Bodleian will cast "forbidden" spells--spells that have been removed from the player's library after deemed by Design as unbalanced.
In phase 2, he will command book minions to help him, triggering their corresponding attacks at the top of each round.
The Goddess of Night turns the players "blind", making their spells more likely to miscast. Players who successfully cast support spells on their teammates will earn a "Torch", lighting up the darkness and allowing them to cast freely again.
In their journey through Wallaru, players fight figments of emotion on their quest to free Daesin from his existential crisis.
Rage overwhelms the player by stacking hanging effects that deal damage over time, requiring the player to think and act fast.
Desperation stacks defenses the player must explicitly remove or hit around to deal lethal damage.
Despair stops buffs but accelerates the player's own damage.
Paranoia acts via its anticipation the player's next move, encouraging the player to think about the order they execute their strategy.
Wally is the Australian Where's Waldo. In this puzzle boss fight, players must identify the real Wally out of a group of identical fake Wallys, before defeating the real Wally in combat.
Bringing back the public boss fight, a type of encounter from early Wizard101 worlds, this is a challenging fight hidden behind a secret pet door that wizards of any level can join or spectate.
This encounter has no "cheats" or gimmicks. Instead, it uses an elaborate behavior tree to select its action from the current board state.