How cool would it be to have software that always, no matter what, behaves as it’s supposed to? Predictable, fast, enjoyable.
Everything goes according to plan. With each new release, the software gains shiny new features, making it even better.
The thing is: software is written by humans. I don’t know about you, but I’ve never met any perfect human being. But wait, we’re in 2023, we have Artificial Intelligence! ChatGPT is so cool, it generates new stuff from… what it learns from humans. Ok, definitely not the final solution.
So what? Turns out there’s only one thing we can do, deal with it. We make mistakes, and even if we try our best to reduce the number and frequency, it’s never going to be zero.
This indeed also applies to software, including our favourite game, that may have bugs at times.
The only thing we have full control of is how we deal with them.
## Reporting a bug
So we have bugs. Wouldn’t it be great if all bugs were fixed within a day? An hour? A minute?
Sure, but someone has to inform the development team about the bug first. They’re already playing the game, but thousands or even millions of players make a better network than a few dozen of team members.
There are some automated systems consistently monitoring the game but sometimes they’re not enough so here’s where players come into play (pun intended), informing the game team about what just happened and providing as much information as possible.
On pretty much all games, usually near the settings, you should find a “Contact us” or “Support” button. This is the quickest channel to the game team and the best way to report a bug.
For example, on Grepolis you’ll find it exactly in the settings which you can open from the cogwheel button on the top right corner.
Here at InnoGames we always add a shortcut to our support system inside our games and you can also reach out to us from here.
## How to report a bug
The quicker the development team has enough information about a bug, the faster they can fix it. With a little action, you become the hero, the main character of the game, saving all the other players from that nasty bug you just found.
It’s basically a cooperative side quest!
But, what should a report contain? How can you be the most helpful?
1. Reproduction steps (how to reproduce the bug)
2. As is (what happened)
3. To be (what did you expect to happen)
These are the three most important pieces of information you should provide. Seems like a lot? Nah, let’s break it down.
### How to reproduce the bug?
What happened is already in the past, but we need to time travel and understand how did we got there.
This is the first piece of information you should provide, and the most important one as well. Try to think about it and use a numbered list to describe the steps you took before the bug happened.
Helping the development team to be able to reproduce the bug reliably is the best way to get it fixed quickly.
Here’s an example:
1. Open the main menu
2. Click on the button to do X
3. Move the slider to the right
4. Close the menu without confirming
These steps may or may not include weird behaviors as it’s what the dev team should do to reproduce the bug.
As you can see, a really simple list of ordered steps like that is already great!
### What happened?
Now this is the part where you can describe the actual state, that is supposed to be what exactly happened right after doing the steps above.
Try to describe exactly what happened and what you see on your screen. Describe the relevant details and everything you think doesn’t seem quite right.
For example: “Resources are spent but the building upgrade has not started”.
If you can, try to provide a screenshot or a video. A picture is worth a thousand words, and a video is worth a thousand pictures.
Oftentimes, some more information about the environment can help a lot. In browser games like Grepolis or Forge of Empires some graphical issues might be tied to a specific browser, like Chrome or Safari.
### What did you expect to happen?
I know it may sound obvious, but this is also important.
The expected behavior helps having even more context and understanding what the bug is about.
It’s like double checking everyone is on the same page and is often just a sentence, like “I expected the building upgrade to start” or “I expected the resources to not be spent”.
And that’s really it! Less than 5 minutes might prevent thousands of players from facing the same issue and make the game better for everyone.
Thank you!
## Beta testing
One of the best ways to prevent bugs from reaching the game everyone is playing, is to test new updates in a controlled environment, often called “beta”.
Wait a moment, does this also mean these environments are more likely to get bugs? Why would I want to play there?
Like we said before, reporting bugs quickly helps the entire player base have more fun, and actually for someone hunting bugs it’s a lot of fun!
However, there’s a huge advantage for players who join the beta testing: they can test and learn about the new features before everyone else!
This is a great opportunity to get a head start and be ready for the new features when they’re released to everyone.
It’s also worth mentioning that playing in those game versions still in development gives even more power to the player who are even more able to influence the game design and the features, providing early feedback before the release. But… this might be the topic for another article!
Thank you for reading and happy bug hunting!
Written by: Leonardo Montini, Community Manager – Grepolis International Beta
Published by: Hernan Diaz