Blog

Mission Report: Writing A Bug

Have you ever played this awesome game where a guy in a green tunic travels around a kingdom called Guyrule (Not actual name) with this amazing blue shield and sword? I did! Did you ever come across this one problem in said game where you would go talk to a specific character that would give you a set of 3 missions. If you followed the list in order and returned to that same character, your game data would be corrupted, making that 5 hours of re-spawning game play go down the drain.

 Welp! There goes 5 hours...

Welp! There goes 5 hours...

Oh hoho, I did and let me tell you I wasn’t too pleased with the creators. But why would I bring an issue you may or may not have heard of? Well, dear children of Eggverse, you may have encountered a issue similar in another game. Maybe something that was clearly broken, awfully implemented or even upsetting to play?

So now I ask you this important question. If you found an issue like the one I just described, how would YOU go about reporting the issue to the creators of the game? That’s where writing a bug up comes in. As QA testers, we are tasked with finding and writing up every issue we can find in a game in order to help developers. This helps them make the necessary fixes or changes so the game doesn’t break or look bad. QA needs to find, locate, and instruct the programmers on how to find the issue on their own while we continue to find more bugs. We are like mission control, we give out the coordinates and the programmers go out and diffuse the bomb. If the code a programmer wrote does not work as intended, we send back the issue in order for them to work on another fix.

Now writing up a bug may sound like the simplest thing to you. Total walk in the park right? Alright, let me test you on your assumption. In 8 steps, could you walk me through how to make a peanut butter and jelly sandwich? Is your first step to go buy the ingredients or take the bread out? Wrong! (There’s the door, see yourself out)

 Don't forget to say Goodbye!

Don't forget to say Goodbye!

You see, you already have all the supplies in front of you. Why would you waste a step on telling someone who already has the set up to make this delicious PB and J sandwich to go buy bread?

 Lets Jelly Jam!

Lets Jelly Jam!

Each and every issue that we write into our database consists of 3 major things.

* Summary

* Description

* Steps to Reproduce

 Step 4 is mandatory!

Step 4 is mandatory!

All three are important. What is most important is to write a clear and detailed report on what it is that was found. We write up issues with the most detailed amount of steps and information to help our programmers resolve the issue that we encounter. And sometimes we add a picture of the issue for good measure. (That’s because QA doesn’t want to come off as crazy liars when the programmers can’t reproduce the issue. We have PROOF, we tell you! PROOF!) We do it to not only help them out, but also so when we go back in to check if the issue is fixed we aren’t confused on what our team member found.

 Take a picture, it last longer!

Take a picture, it last longer!

So you can bet that when a bug like “A crashed occurred when tapping a button in room” is submitted it drives QA bonkers. Like, what room where you in? Which button did you push? What were you doing before you went into the room? Is it a soft crash or a hard crash? Did it delete your file? Did this happen before or after you got the Hylian Shield because if it happen after, you just spent 5 whole hours of boss battles for nothing! NOTHING! (Sorry, it gets me every time)

Details! It’s all about the details. You wouldn’t tell a cop that someone stole your awesome PB and J sandwich without telling them it was a large purple dinosaur with some whiter than white teeth and green spots on its back. How would justice be served!? Justice, to that beautifully made PB and J!

So remember kids, when reporting an issue, it’s always important to spread the peanut butter before the jelly. OH! And the details, the details are also important.

 Enjoy my child-like PB and J! (Katie had better ones)

Enjoy my child-like PB and J! (Katie had better ones)

 

- Cass

Designing With User Feedback

A big part of being a game designer, on 'Egg!' or any other game, is accepting feedback and criticism.  The first round naturally comes from the team and others in the company, especially during the early stages of development.  As the game gets further along it’s helpful to reach out to friends and family for input.  And finally, once it’s out in the world, we get to hear from you, our wonderful fans.  The other half of the process is what to do with all this feedback we receive.  After all, everyone has different opinions and the responses aren’t always as direct and easy to interpret as you might imagine.

Internal Feedback

Internally, we always have to remember that people in the company rarely play the game the way real players do.  When you have to go through the introductory tutorial 200 times in a day, you will definitely get sick of seeing Mr. Peeg.  But many new player need and enjoy his guidance.

 Noooo mooore Peeeeg!

Noooo mooore Peeeeg!

Co-workers are great guinea pigs for other kinds of design and balance changes though.  From our first iterations to the version you’re playing now our balance guru, Tracie, was able to implement and fine-tune really major changes with the help of data and reviews from people in the company.  The interface, art style, systems, and features all change dramatically before anyone outside the company ever sees the game.

Focus Testing

 

The company is a small group though, and often too familiar with the game to test many things that we designers need fresh eyes on.  This is where friends and family and a select group of players invited to test the game come in.  They help us get a fresh perspective and look at the game through the eyes of people who are playing for the very first time, free from biases formed by earlier versions of the game.

One of many changes that came out of our focus tests was in how you can drag items from your inventory to your Egg.  This is an action you will repeat many, many times while playing 'Egg!'  Early on, you could only drag items while viewing them in the main list, and not while looking at the specific item details.  This was a behavior that we had carried over from our previous game, Egg Baby, and because everyone in the company was so accustomed to it, no one had ever tried doing it differently.  In the focus tests, however, every single player tried to drag the item from the details panel.  Luckily it was an easy enough behavior to accommodate, but we wouldn’t have come across it without the external players.

 A common behavior that almost didn't make it in.

A common behavior that almost didn't make it in.

Live User Feedback

Focus testing is great for catching specific behaviors and interactions like that, but of course once the game is out in the world, reviews and feedback from our players gives us a much broader view of issues and sticking points that might not have been problematic when it was just us and our friends and family playing the game.

One update that we had planned but then decided wasn’t a high priority was displaying a timer when the Egg goes to sleep, so you know how long it will take.  What wasn’t a high priority for us turned out to be very important for our players – many of you left reviews confused and requesting that exact feature.

 A rough mock-up of what the timer might look like.  Coming soon!

A rough mock-up of what the timer might look like.  Coming soon!

Putting It All Together

These examples are all pretty straight forward, and there’s not much question about one option being better than another.  Most of the time, though, the feedback that designers receive is anything but direct. 

Everyone has different and often conflicting opinions about difficulty or balance or how a system should work.  People have many different play-styles and care about different parts of the game – the collecting, the progression, the social aspect – and a big challenge for designers is how to appease all these groups.

And, sometimes, the best decision is not to appease them at all.  Players don’t always know what they want – they know what they don’t like, but the solution is rarely as simple as they think.  Beneath the surface, the systems that drive the game can be very complex and intertwined, and seemingly obvious “fixes” can have cascading and wide-reaching effects. 

As designers it's our job to take these opposing opinions, our own knowledge of the game and of how our players interact with the game, feedback and criticism from many sources, and figure out what changes to make or features to add to improve the game in the best and most meaningful ways.  The information we gather and the choices we make with it trickle down to everything we do in design, and certainly makes for a better experience for everyone!

And that's just considering feedback from individual players.  We also gather data on a much larger scale, looking at the big picture of what and when and how players do different things in the game.  But that’s a larger topic for another post…

-Dyala

Fashioning the 'Egg!' Wardrobe

One of the most fun parts of 'Egg!' (or any game, really), in my humble opinion, is getting to play dress-up! Much of my work as an artist on 'Egg!' has involved designing and creating the various clothes and accessories you can collect to give your Eggs more personality and pizzazz.

To start out, I'm given a list of potential items brainstormed with the designers. Then I'll start bringing those ideas to life with rough sketches. Getting something down quickly in this rough stage makes it easier to make changes if the item isn't what the designers had in mind, or if the art director feels it doesn't quite look or feel right for our game.

 Some of the details on the spacesuit changed from rough to final because we wanted it to match the design of the spacesuit-wearing Egg seen in the Nerdy sleeping minigame.

Some of the details on the spacesuit changed from rough to final because we wanted it to match the design of the spacesuit-wearing Egg seen in the Nerdy sleeping minigame.

In some cases, I'll do roughs of multiple possible versions of an item, and after input from the art director and/or game designers, choose one to take to final.

 An Egg with fake feet might have been a little weird...

An Egg with fake feet might have been a little weird...

The wardrobe covers a range of styles to fit all the different personalities your Egg can have, and similarly, the clothing options can range from simple t-shirts to eggsquisite gowns. When I'm drawing the wardrobe items, I do so at a much larger size than they'll actually appear in-game, since this allows me to put a lot of polish and detail into the more luxurious garments.

 Check out that shimmer~!

Check out that shimmer~!

Zoom out, and the final result looks super clean and sparkly!

 Ready to roll down the red carpet ;3

Ready to roll down the red carpet ;3

Have fun playing around in the wardrobe, and see how creative you can get with your Eggs' personal style!

- Dana

Programming on 'Egg!'

We programmers use our fingertips to bring ideas (provided by our delightful designers) and art (provided by our amazing artists) to life. The raw pieces are separate and motionless at first, but with a little bit of code, we bring them all together and make them move about.

Sometimes, things don’t move the way we thought they would. When I first programmed the rope slicing in the Dreamscapes minigame, I didn’t anticipate just how fast fingers can move across a screen. A fast finger could end up missing the rope if the finger’s frame-by-frame position skipped over the rope.

 That rope should have been sliced...

That rope should have been sliced...

Time for a new approach! Rather than a basic collision check, how about tracking when the slice intersects the rope? That method sounds much more promising, even if more involved. As a finger moves across the screen, it moves from point A to point B, creating a new line segment with each new frame. A rope is also just a collection of line segments. There is enough information to calculate the point at which these line segments intersect, if they intersect. Using this method, even if a finger starts on one side of the rope in one frame and then ends up on the other side of the rope in the next frame, it will still get sliced. With the plan in mind, implementation can get under way.

 During implementation, debug visuals are useful to make sure everything is working properly.

During implementation, debug visuals are useful to make sure everything is working properly.

After implementing the new method, the ropes get sliced as intended, even with really fast fingers!

-Hussein

The Trials and Tribulations of Quality Assurance

When I tell my friends and family who are not in the gaming industry about my job in Quality Assurance, they like to joke that I clearly “just play video games all day.” This seems to be a common misconception about the QA life, one I would like to stop right here. Because QA is anything but play.


In a single day the members of the Nix Hydra QA Team can be detectives and developers, chroniclers and critics, protectors and players. We are often called upon in the darkest of hours to find our game’s biggest threats – the game breaking crashes, the show stopping glitches and the deeply dreaded load hangs.  To the uneducated eye it may look like I spend my day sitting at my desk pouring over several screens and then occasionally typing a line or two – but I assure you I am desperately fighting against the forces of evil. 

 An average day in QA (Note: Some artistic license may have been taken) 

An average day in QA (Note: Some artistic license may have been taken) 

So what exactly does that fight entail? Most of my day-to-day work revolves around bugs. Not the creepy crawly kind (thank goodness), but the electronic variety. Bugs can be crashes that halt progression, small grammatical errors or even areas of the game that seem less fun than others. It is QA’s job to ferret out these bugs, determine what causes them, catalog them and then check to see if they have been fixed in a later builds.  We also create testing plans for each production milestone, write the FAQs for our games and maintain impeccable records about our projects.

Needless to say, between all those tasks the QA team at Nix Hydra is quite busy. Fortunately for me I work with a fantastic group of totally terrific testers. Between the four of us we have a myriad of skills and backgrounds that give each us a unique approach to testing and an aptitude for certain tasks.  We are in constant communication about what we are seeing on the current build, and often have to pull our heads together to solve certain testing challenges.

 The QA team @ Nix Hydra are the real pig wizards of the Eggverse

The QA team @ Nix Hydra are the real pig wizards of the Eggverse

And our game ‘Egg!’ was certainly a challenge to test at times! Many of the activities a player enjoys such as growing an Egg or sending a creature on a quest, can take hours or even days to complete. But QA doesn’t always have the luxury of waiting around for Eggs to hatch! Often we have to find ways around this issue, whether it is with special builds designed to help us cheat time or even “time traveling” on the live build by changing our device's date and time.  We have to look closely at each activity you can take with your Egg, not only making sure nothing is broken, but also ensuring that the activity feels fun and approachable to players!

In QA we often stand right on the line between developers and players, and serve as the final defense against any broken features reaching the game that you eventually see on your screen.  I think this gives all of us a unique perspective into the project that we are testing, and more often than not I think we are the ones who know our game best. We’ve definitely seen it at its worst, but on the flip side, we know intimately how amazingly fun and wonderful 'Egg!' can be. 

 A smorgasbord of some of my favorite bugs from Egg! 

A smorgasbord of some of my favorite bugs from Egg! 

Sometimes our job can be quite difficult – we spend so much time focusing on the broken parts of things that it makes it difficult to think about the good parts too. But when I find myself thinking that way, I try to take a step back and look at our game as a whole. I still can’t help getting excited when I hear about the upcoming creatures or clothing options for ‘Egg!’– even though I know I most likely will be testing them 100 times or more.

Besides, could you imagine a world without QA? A world where every time you took a test you never checked your answers. Or if you never looked both ways before crossing the street! What a lawless, apocalyptic dystopia that would be! Because when it comes down to it, QA makes sure things work. And no matter how wonderfully designed or implemented a feature is, if it is broken it is never going to shine. And if it were a core feature, the game would be utterly unplayable.

So I would like to take this time to say “No need to thank us, Eggs, for making sure you could be your amazing wonderful Egg-selves. But you’re welcome. :)”

-       Katie 

Animating Creatures!

Once the creatures in Egg! are drawn and colored, how can we give them more life? We can make them move! That is, we can animate them!!! After all, the most basic definition of "animate" is: to bring to life.

sundae2.gif

As you can see, this character comes to life once he starts moving. The results are magical!

Every creature in Egg! has two movements: and idle and a special move. With the little bear above, his idle is the wobble back and forth and his special move is the kick.

Because of the limitations of game animation, both of these movements needed to be captured with only 8 frames! This was pretty difficult at times. Below, you can see all 8 frames used.

Frames 1-4 are his wobble back and forth, and frames 5-8 are his kick. In the game, the player will see frame 1-4 play over and over, in a back and forth looping fashion. Then, randomly, frames 5-8 will play for the special kick. This random interruption with a special move helps the characters seem less monotonous and more alive.

Seeing how each creature animates is one of the most fun elements in Egg! They all do something special and unique! 

-TJ

 

 

 

Designing Egg Behaviors

One of the interesting challenges with designing for ‘Egg!’ was figuring out how to make a sequel that would be familiar and appealing to fans of Egg Baby, but still fresh and surprising enough to feel like a whole new game.  There’s a lot to like about Egg Baby, but also a whole lot we wanted to add and expand on. 

From the characters and world, to activities and minigames, to the social and multiplayer options, the art, sound, mechanics, and underlying tech are all new and improved.  You might notice certain things appear familiar on the surface, but if you dig a little deeper you’ll start to see all the ways ‘Egg!’ is different from Egg Baby.  Today, we’ll focus on the Eggs themselves.

There’s a whole new set of Eggs to choose from, of course.  Whether you’re raising an Egg alone or with a friend, you’ll still tickle, feed, and clean your Eggs, but the way those actions shape your Egg and help it grow has changed dramatically.

 The Common Egg might look familiar, but there’s a lot going on beneath the surface…

The Common Egg might look familiar, but there’s a lot going on beneath the surface…

One of our favorite mechanics from Egg Baby was the way in which your choices shape your Egg.  We knew from the start we wanted to keep that, but we also wanted Eggs to have more of their own traits and quirks to set them apart from one another.

The items you give your Egg will still help shape it into one of six personalities.    Eggs might have a natural affinity for one personality or another, but they will still be influenced by your choices.  Your Eggs will make requests of you, and you can always fulfill them to see where it leads naturally.   But you can also lead your Egg towards a specific personality, which in turn affects the types of things it will ask for.  Whatever you do, your actions will help it grow faster and develop into a healthy and happy Egg!

Beyond their appearances, we also knew we wanted Eggs to have more unique mannerisms.  We wanted them to feel like independent beings, with thoughts and desires of their own, without watering down the player’s influence over their Egg’s development.  We settled on the idea that Eggs should feel like a cross between puppies and toddlers – depending on the player for love and care, but also being eager to play and explore their world.

The most obvious change you’ll notice is that Eggs now have different tastes in food and hobbies. 

 Eww, veggies!

Eww, veggies!

Some might be a little grumpy and not respond to tickling as well, while others bounce around with happy energy.  Some Eggs might even be a bit free-spirited and can wander off if you don’t keep an eye on them.

 Unattended Eggs can get up to all kinds of mischief.

Unattended Eggs can get up to all kinds of mischief.

We also wanted your house to feel more like a real household, with Eggs that react to each other like real siblings.  You might get an Egg that is a bit of a hypochondriac…

 Cough cough… Can’t go to school today…

Cough cough… Can’t go to school today…

But be mindful it doesn’t spread to the rest of your Eggs!

 Maybe they aren’t just faking it.

Maybe they aren’t just faking it.

Like all siblings, your Eggs will react to and interact with each other more in ‘Egg!’ as well.  While your Eggs will ask for stuff frequently, we wanted to incorporate the idea that you shouldn’t necessarily indulge them all the time - just like with toddlers and puppies, you wouldn’t always give them everything they want.  And just like real siblings, if you indulge one more than the others you might find them getting jealous of each other…

 “She started it!”

“She started it!”

And that’s just a few of the ways that Eggs behave differently!  You’ll still shape them with your care and choices, but you’ll find different eggs have different traits and characteristics beyond just how they look.  Coming soon – just like toddlers and puppies, your Eggs are not responsible decision-makers!

 It looks inviting, but perhaps not the best place for an Egg…

It looks inviting, but perhaps not the best place for an Egg…

-Dyala

Designing Space Egg!

ohai everyone! My name is Jasmine and it's really exciting to be writing my first blog post for 'Egg!' ヽ(^o^)丿

Being a designer, I get to think creatively about all sorts of different features and content, and very clearly detail out how those things are going to work in the game. My teammates will then work with me on my idea and how to make it a reality using their wizard art and programming skills (ノ^ヮ^)ノ*:・゚✧ For me, it's a perfect combo of creative work and tech work. 

One of my favorite things I got to design on 'Egg!' was the mini-game, Space Egg, a mini-game where your egg is flying through space and dodging obstacles. 

On first try, I thought about setting up the mini-game as a predetermined course where I intentionally place each obstacle and those places would never change, no matter how many times you play through the game... similar a scene in one of my favorite games, Aladdin for the Super Nintendo Entertainment System. 

 Lava escape from Disney’s  Aladdin  – a predetermined obstacle course

Lava escape from Disney’s Aladdin – a predetermined obstacle course

The problem I ran into with this idea was because it was so set, once a player memorizes the path and the obstacles coming their way, the fun and magic is kind of lost. For a mini-game that is meant to be played over and over again for coins, this wasn't quite what we needed. Back to the drawing board!

What if I set up different stages that introduced different layers of obstacles? And then randomize those stages? It sounded like I was heading in the right direction, so I started to draw out some examples of the stages I had in mind to show to the team.

I wanted the first stage to be pretty easy, giving the player a feel for the mini-game, getting players used to the swiping up and down and dodging obstacles. 

 My original drawing for Stage 1 of Space Egg!

My original drawing for Stage 1 of Space Egg!

The second stage is where I wanted to introduce the challenge... speeding up the ship, adding in more obstacles that didn't really move, blocking adjacent lanes, and making the space between each obstacle a little smaller. Still nothing too insane.

  My original drawing for Stage 2 of Space Egg!

My original drawing for Stage 2 of Space Egg!

For the third and final stage, I wanted to add an obstacle that didn't just stay still, in addition to having the ship continue speed up and making the space between each obstacle even smaller. That gave birth to the idea of meteors that fly in and go across the screen. Definitely good for keeping players on their toes!

  My original drawing for Stage 3 of Space Egg!

My original drawing for Stage 3 of Space Egg!

After testing the mini-game at least a million times (I am REALLY good at Space Egg now!) and adding in polish like the names of the stages and the ending of the mini-game, my poorly done drawings were brought to life with the final result being a fun and challenging mini-game that gives you a slightly different experience every time. 

 Space Egg and the 3 stages in their final form!

Space Egg and the 3 stages in their final form!

Seeing an idea go from paper to the game always makes me very giddy and excited, no matter how many times I see it happen. Aside from being a part of creating games, my favorite part about being a designer is seeing others take joy in the games and content that I create.

I’m super stoked to see how you do in Space Egg! 

- Jasmine (✿◠‿◠)