How we created Roy, our AI chatbot

Each player will have a personal “Roy” who will have the role of assisting and supporting the player during their missions and activities.

As you may have noticed, a new character has been added to The RoyaLand project: Roy, our chatbot based on LLM algorithms (large language models), who within the game will be the Virtual Agent of Emanuele Filiberto of Savoy.

In this article we will explain the technical process that led to the creation of Roy. Let’s start!

The process

First of all, We needed to clearly define what we wanted Roy to do. In this case, Roy had to be able to provide information about the game, its world, and potentially interact with users as if it were a character from the game itself.

We selected an appropriate Large Language Model (LLM) that suits our needs. The key is to ensure it can be integrated into our website and has the capability to be fine-tuned for our specific requirements.

Since Roy’s knowledge is limited to our game, which is still in development, we gathered all available information about the game. This includes background stories, character details, game mechanics, and lore. We preprocessed this data to format it in a way that’s easily ingestible by the LLM.

Behind the scenes of the digital human Emanuele Filiberto

We used the collected data to fine-tune the LLM. This involved training the model on specific content related to our game to ensure Roy can respond accurately to queries about the game. Since the game involves different Royal Families around the world, We included also detailed information about them in our training data.

Since Roy is a character in our game, its responses should reflect its personality and role in the game world. This involves scripting responses or modifying the model’s outputs to be consistent with Roy’s character: a very polite butler!

We developed a frontend interface on our website where users can interact with Roy. This interface is user-friendly and visually aligns with the game’s aesthetic. Backend integration involves setting up APIs to communicate with the LLM.

Before going live, we tested Roy to ensure it responds accurately and consistently within the scope of the game’s world. This phase involved iterative retraining and tweaking of responses.

Once testing is complete, we deployed Roy on our website. Continuous monitoring is crucial to ensure it functions correctly and to gather user feedback for further improvements.

Roy’s future within The RoyaLand

As our game is still in development, we’ll regularly update Roy’s knowledge base with new information as the game’s content evolves. Also, we’ll maintain the system to ensure its performance remains optimal.

We’ll analyze how users are interacting with Roy to understand their needs and preferences better. This feedback can be used to refine Roy’s responses and functionalities.

By following these steps, we can ensure Roy effectively serves as an engaging and informative character-based chatbot, enriching the user experience on our game’s website and creating interest in the game before its release.

Finally, after the game’s release, Roy and all his siblings will become an integral part of The RoyaLand environment. Each player will have a personal “Roy” who will have the role of assisting and supporting the player during their missions and activities. 

Keep following us on social media and on our website for the next news!

Join the project