Reverse engineering and documenting the "Among Us" protocol

Nov 2020

What is this project?

Collaborating with fellow developer Codyphobe and a dedicated team, we set out to create comprehensive documentation of the Among Us protocol. Our goal was to provide developers and modders with valuable insights into the game’s networking mechanics, fostering a deeper understanding of how the game operates under the hood.

Overview

  • Reverse Engineering Compiled Bytecode: Our team undertook the challenging task of reverse engineering Among Us’s compiled bytecode. This involved analyzing both x86 architecture (for IL2CPP builds) and CIR (Common Intermediate Representation), which helped us uncover the game’s internal logic and data structures.
  • Packet Documentation: We meticulously documented the packets sent and received by the Among Us client. This included a breakdown of packet types, structures, and their corresponding functions within the game, making it easier for other developers to create mods and extensions.
  • Collaboration and Coordination: Throughout the project, we maintained open lines of communication and collaboration among team members. This facilitated knowledge sharing and problem-solving, allowing us to tackle complex issues more effectively.