mail me

Demo: Integrated user feedback tool in video games

Author: Christoffer Blomvik
Material: Article
Published:
Keywords: unity 3d, game dev, QA, UX, UI Toolkit, UIElements
View table of contents

Abstract

This article demos a player tool integrated into a video game which allows them to send feedback from any point of the game back to the developers. This could be from inside a game menu, while solving a puzzle or walking around in the world. The aim is to make the means of sending feedback an easy and constantly available process such that whenever someone experiences a problem then the developers are more likely to hear about it. The user can pick between various categories to file it to, such as ‘issue’, ‘proposal’, ‘dislike’ and ‘like’. These categories will determine which discord channel these messages will end up in.

Demo

Note that the player input was not disabled when the feedback modal was up at the time of recording, thus the character moves when typing and mouse clicking.

Why Discord instead of email

Whenever a new message comes in, it is visible for the whole team by the thick text on its channel. Then, any team member have the same resources to learn about the player experience, and contribute to the discussion that happens around the player feedback. When using an email, there are several more steps to access the player feedback, and that extra fatigue may lead to the player feedback not getting the exposure that would be best for it.

Example

Player's view

The player can at any point open the feedback window. When pressing ‘F2’ (or any other assigned key binding), the player is met with a modal which gives them the following choices. The player must fill in the text field with written feedback. Without it, the players can not send the message. Next, the player selects a category for the written feedback. While a large portion of the 'gamer' market segment are familiar with 'computer jargon', the categories avoids such jargon, and instead ops for more common words: Issue (bugs, progression problems, technical issues), proposal (potential changes to the game), like (what they like), dislike (what they don't like) and the choice to send a screenshot (on by default) and/or the save file (off by default).

After submitting, the player is met with a message to encourage further feedback from them when they feel like it.

Developer's view

Once the player have sent a feedback message, the message immediately shows up in a Instant Message app, such as a secure company-driven Discord server. Depending on whether the player sent a screenshot and save file or not, there will show up in an IM message within the channel that coheres to the category that the player chose upon submitting the feedback.

The gist of how it works

Discord

Discord allow messages to be sent to a server through an unique Webhook URL. The sender does not have to be logged into dicord themselves, so it can be sent as a general user from within the game. Note, however that every player that sends feedback will share the same name.

The syntax for webhooks can be a bit clumbersum, but there are cheap assets that makes that part easier by looking for webhooks assets in the Unity asset store.

Unity

This tool was made with UI Toolkit/UIElements. There are some current limitations in how UIElements supports USS variables which makes it a bit inconvenient in creating a fully adaptable color style template. For now, the color scheme has the following USS variables:

  • Theme-color for the general color of the window, where the child elements will adapt to and shade based on the alpha value.
  • Field-color for the color of the input fields, such as the text field, add screenshot, send save file and category fields.
  • Accent-color for the color of the UI text, button text and checkmark icon.

The appearence of the tool window with the parameter above:

When only changing the --accent-color variable:

Will I share the tool?

No, this tool was developed on company hours, so I can not share it. But reach out through my email and I may be able to tell you about more parts of it so you can recreate it yourself.