Tools used:
Character behaviors were written in XML, level design elements all edited in Maya
Time taken:
This battle took approximately 30 days to build from start to finish, this includes the
amount of time spent balancing and responding to focus test feedback
The Baroness was the first piece of major scripting that I did for G.I. Joe. I planned the battle, scripted the
actors, wrote the dialog, and implemented the level scripting.
Because it was the first done, this boss battle was probably the most heavily focus tested portion of the game. Which was a good thing.
We were building for a young audience and the timed aspect of this battle ended up giving them more trouble than I had assumed it would.
Battle mechanics
The Baroness is a fairly evasive boss. Since the fight is timed, I built her behaviors around playing out the clock rather than straight
offense. She's invulnerable unless firing. Even her most powerful attack, throwing a grenade, is designed to allow her time to get off the player's
screen again by forcing them to jump away.
The Baroness
Her default behavior is to pick a waypoint and run straight for it
When she reaches the waypoint, she pauses to aim at the player
If the player is in range, she lowers her shields and attacks
If the player isn't in range, she restarts her default behavior
If attacked while moving, she dodges away from the player before returning to her default behavior
As health decreases
At 2/3rds remaining health
Reinforcements begin spawning throughout the area
She begins throwing grenades at the player after dodging
Her aiming and shooting states get a little quicker
At 1/3rd remaining health
She begins throwing grenades at the player after shooting
Her aiming and shooting states get much quicker
Time limit
From the start of the fight, the player has 5 minutes to defeat the Baroness. The time remaining is
always displayed, but I communicate the urgency through in-game messages and increasingly intense particles being
emitted by the missiles the player is trying to deactivate.
A timer in the upper right corner of the screen counts down from 5:00 to 0:00
A message from base updates the player every minute
These messages do not pause the game
Particles advance through 4 stages of intensity
They increase in intensity every minute
At stage 3 the camera begins shaking throughout the level
If the Baroness hasn't been defeated before the timer ends, a failure message plays and the player is taken to the game over screen
The boss battles are handled as individual levels, so this has the effect of forcing the player to restart the fight but not of having to re-reach the boss
Interactive hint text
One of the biggest challenges of building this fight was coming up with ways to teach the player how to beat
it without beating them over the head with the solution. The battle is timed and the player can potentially keep the boss in
states where she will never take damage. I dealt with this through tutorials integrated into the level scripting that responds
to the player's actions by becoming progressively more explicit.
Baroness taunts
Every 4th time the Baroness dodges the player's bullets she randomly chooses a snide remark to make about their inability to hit her
These taunts do not pause the game, so that there aren't too many breaks in gameplay
Help message
Every 4th taunt becomes a message where one of the Joes tells the player to watch the Baroness for an opening
This message pauses the game, which, even for text skippers, highlights that this information is important
Positive reinforcement
After the player has seen the help message, I activate a new message that plays after they have allowed the Baroness to shoot, this message tells them how they can damage her
This message also pauses the game
After they have damaged her, a message plays to congratulate them
This message does not pause the game
It's a simple thing, but there was a point where major changes were considered to this fight due to the difficulty
our focus groups were having beating it. Implementing these tutorials took us from 90% of testers failing the boss fight to 90%
succeeding.