Behind the Beans: Detective
Hello, Crewmates!
Welcome to a special blog post I’m calling “Behind the Beans.” We wanted to give you a peek behind the scenes (or beans in this case), and talk about some of the design decisions that make Among Us what it is currently!
Thankfully, we have our amazing principal game designer, Dave, to walk us through how the team took on some new challenges in developing our newest roles: the Detective and Viper!
I hope you have your magnifying glasses polished and a fresh notebook: today, Dave will showcase what it took to bring the Detective role from a cool concept into a bean-ality.
Take it away, Dave!
Dors
Detective
When I think about a detective, I picture someone who gathers clues, puts evidence together, and solves crimes. This is exactly what the Detective Crewmate does! With the Notes and Interrogate abilities, they can write down important info, gather clues from other Crewmates, and put it all together to solve murders.
The Detective is one of the most complex roles the team has ever worked on. A big part of its complexity comes from the Notes ability. It’s a core component for the Detective that holds a lot of important information and can be the deciding factor on whether the Crewmates win or lose.
Considering all of this, it should be no surprise that the Notes ability underwent many, many iterations. So for this blog post, I want to take you through a few of the iterations and highlight why changes were made and some of the difficulties we encountered – one issue was so scary we almost delayed the role entirely!
The Early Days
The early version of a role is always very barebones: grey blocking, reusing assets, and doing the absolute minimum to get the point of the role across. For the role prototypes, the goal is to “find the fun” as fast as possible. This means hacking together the required parts of a role so that we can playtest it ASAP.
One of the first versions of the Detective had a Suspect List which was created if you found the body and used the Inspect ability on it. Of course, if someone else were to walk in at this moment, they will see you standing over the body and can only assume one thing…
With the Suspect List, the Detective automatically got a list of other players, one of which is guaranteed to be the killer. Through playtesting, we found out pretty quickly that there were a couple of pain points with this version:
- First, the role completely relied on finding a dead body. It’s pretty common to go a whole game never finding a dead body. If a player was a Detective and never found one, they never got to use their ability. This was a huge bummer!
- The second issue was that the Suspect List was too powerful because the killer was guaranteed to be in it. Through discussion, the list would be quickly narrowed down and the Impostor outed. We tried a variation where the number of suspects in the list was dependent on the number of players left in the match but that got way too complicated way too quickly.
With these two major issues, it was important to make some changes and try a new version of the role.
More Player Agency
For the next iteration of the Detective, I wanted to give the player more agency through information collecting. True to the fantasy of being a Detective, they should be able to gather clues around the map.
To alleviate the dependence on a Detective finding a body, we created “crime scenes” that replaced a dead body after the next Emergency Meeting. So, if Lime is the Detective, but Pink found the body, Pink will say that it was in Electrical and Lime can go there after the meeting to see the crime scene. The Detective will be able to Inspect the crime scene to get the Suspect List for that murder.
Speaking of the Suspect List – that also got a big change this iteration. Instead of giving the Detective a list of actual Crewmates, they have to build their own list based on information brought up in meetings. The Detective could build their own Suspect List by investigating other Crewmates around the map to learn their location at the time of the murder.
Playtests for this version went a lot better! The Detective’s ability was actually being used and crimes were being solved. Matches were more evenly balanced now that Impostors weren’t guaranteed to be on a Suspect List. But with this iteration, a new (and big) issue emerged. The Inspect ability got overloaded with how much it could do. It made it difficult to teach and play the role. Running around to inspect crime scenes and inspect other Crewmates was far too much for one role.
This wasn’t an issue that could be easily solved with a minor adjustment. A big change was needed that still maintained the fantasy of playing a detective but in a way that didn’t overcomplicate the role. On to the next iteration!
Almost There
The first step towards simplifying the role was in the crime scenes. Instead of having to go to each one, the Suspect List had a section to manually add where it happened. This change is what made the Suspect List turn into the more generalized Notes ability. Along with simplifying the role a lot, I was happy with this change because it fulfilled a lot of other ideas:
- It encouraged more discussion in meetings because now the Detective is very dependent on the person who reported the body to state where they found it
- It maintained the fantasy of being a Detective by filling in the info they learn into their notes
- It allowed counter play by an Impostor. If the Impostor self-reported and lied about the location, the Detective has a much harder time trying to solve that murder
Because “Inspect” wasn’t for dead bodies or crime scenes anymore, it was renamed to “Interrogate” to better fit the detective fantasy of interrogating other Crewmates and learn their whereabouts.
This version of the Detective playtested really well, and is ultimately what we ended up releasing. However, in classic game dev fashion, there was one more big issue that came up that almost caused us to put the role on hold completely. Internally, we started to refer to this issue as The Hallway Problem.
The Hallway Problem
The Hallway Problem exists because maps are made up of lots of hallways. Maybe not so much Polus and The Fungle, but this was even worse because they both have huge outside areas. Basically, the Hallway Problem is the issue that the Detective’s abilities are greatly nerfed if the Impostor kills outside of a room. Because the Notes and Interrogate abilities revolved around room names, kills outside of rooms made it nearly impossible for the Detective to solve those murders.
Using The Skeld as an example: if a dead body was found in a hallway and a Crewmate who was interrogated was in “Hallway” at the time of a kill, that could mean the Crewmate was next to the body or it could mean that they were on the other side of the ship! This doesn’t help the Detective at all.
The team explored tons of different solutions, some involving pathfinding, some raycasts. Each solution had their strengths and weaknesses, but ultimately we were all in agreement about setting up “Near Zones”. This simply meant manually defining areas on each map as “Near” a room. Therefore, a Detective wouldn’t get “Hallway” in their Notes anymore but instead “Near Reactor” or “Near Storage”. This at least gave the Detective a clue they could still work with.
What started as a scary problem ended up being solved by a pretty simple and straightforward solution. I’m really proud of how the team put their heads together to tackle this issue.
Final Touches
With “The Hallway Problem” solved, the team was able to confidently move forward with getting the role ready for release. Along the way we were able to further polish the role by doing things like adding an Impostor type selection to the Notes and making the Notes icon change based on the active case.
With two abilities, the Detective easily has one of the highest skill floors and skill ceilings out of all the roles we’ve created. Building a case takes a long time, and if you’re able to finally put one together, it’s then about convincing your allies that you can be trusted. Don’t forget, this puts a big target on your back as Impostors look to take you out before you solve a case – it’s truly a high stakes, high rewards type of role!
It was a real journey iterating on the Detective to get to where it’s at now. I’d be remiss if I didn’t shout out Jade (woooo, thanks Jade!) who took on the bulk of the programming iterations on the Detective. As a team, we had a blast playing the role and I hope you have just as much fun as we did!
Q&A
Before we conclude this deep dive, take a look at our Q&A with Daniil from TikTok, and get answers to other burning questions about the Detective!
Off to cook up some more roles,
Dave