Visit website

Throne of Lies: Medieval Politics

Throne of Lies is a multiplayer online game where players take on various roles in a medieval kingdom. The goal is to uncover traitors among the group while completing objectives, using social deduction and strategy. Each game is filled with intrigue, deception, and alliances as players work together or against each other to achieve victory.

Throne of Lies was rated 7/10 by PC Gamer!

Available on:

Windows
Linux
MacOS

Summary

Throne of Lies is a complex multiplayer online game that combines elements of social deduction and strategy set in a medieval fantasy world. From a technical perspective, the game boasts a variety of features designed to enhance the player's experience. The game supports up to 16 players in a single session, utilizing a robust network infrastructure to ensure low latency and high stability. This is crucial for real-time interactions and maintaining the integrity of the gameplay experience. There are over 50 unique classes, each with distinct abilities and mechanics. This diverse class system is implemented with a dynamic character allocation algorithm, ensuring balanced and varied gameplay in each match. The game features a real-time day and night cycle that influences gameplay. During the day, players discuss and vote on suspects, while the night phase involves players executing their classes’ abilities.

Player data, including statistics, achievements, and game history, is stored in a scalable database architecture. This allows for efficient retrieval and updating of player information, ensuring a seamless user experience. The game is built on Unity3D. Unity's flexible scripting environment is used extensively to handle game logic, class abilities, and the day/night cycle. Throne of Lies leverages these technical features to deliver a rich, engaging, and fair gameplay experience, setting it apart as a standout title in the social deduction genre.

Experience & Tools

During my time working on Throne of Lies, I worked with Unity3D game engine. I used the built-in tools provided by the engine along with popular add-ons like TMPro to improve UX design as well as create new UI for new features brought into the project like the Survey System. C# was a big part of working with Unity3D, as all of the logics were written in C#. On the backend, a lot of the real-time communications at the time were handled by Photon, while the rest of the communications were handled by GameSparks; a GBaas that was later acquired by Amazon. The data was stored in a NoSQL (MongoDB) database and was retrieved through GameSparks.

My main responsibilites were bringing fixing existing bugs, adding new Quality of Life features -many of which were suggested by the playerbase (they were publicly given credit for their ideas)- and working on parts of the game's Moderation 2.0 report review tool, both on the front and the back end. One of the main Quality of Life features I brought in the game was the Survey System; a system that allowed us to start a new survey through GameSparks to gather feedback on new or upcoming updates. The questions were written by us and the answers could be either written by the player or provided by us, with the latter being the most frequently used, to avoid saving a lot of data to the database and make the results easier to group. The survey answers were not linked to the user. When a Survey was available and the player had not yet filled the survey, the player could open the Survey UI and give their feedback. Given the dynamic nature of this features, where number of questions, number of answers and even type of answers (choice or text) could vary, the UI was made to accomodate these needs and be built dynamically with the use of prefabs.

"Excellent developer. Learns fast and excels at back-end with Unity/C# and js/node."

- Dylan Hunt

Co-Founder of Imperium42

Try it out now on the available platforms!

Looking for a software engineer?

Send me an email and I will get back to you as soon as possible.

Game Development | Web & Mobile Development | Salesforce | Consulting | Solution Design

Contact me