top of page

Truants (Unity3D)

Latest gameplay video:


1. Summary

Truants is a 2D narrative mystery game with the simulator of a computer operating system. During the entire game, the player can only see a simplified computer desktop and a few simulated software and websites. He or she plays as Scott Bowers, a university professor, and the story starts at one day when an anonymous user tries to mess up Scott's online document. The player's mission is to figure out what happened or happening inside a suspicious mental health center and then help Truants members, a few teenage victims, escape from there by using computer skills. Cursory decisions and lack of discovery may lead to the torture or death to Truants, the life threatens to Scott and bad endings.


2. Background Story

This game bases on a true story that happens in China. Yang Yongxin is a highly controversial Chinese clinical psychiatrist who advocated and practiced electroconvulsive therapy (ECT) without anesthesia or muscle relaxants as a cure for alleged Internet addiction in adolescents. Yang ran Linyi Internet Addiction Treatment Center from Jan 2008 to Fab 2019. Families of teenaged patients sent to the hospital paid about US$805 per month to be treated using a combination of psychiatric medication and ECT, which Yang dubbed as brain-waking treatment. He treated 3000 children or adults before the Chinese Ministry of Health prohibited the practice. Since the ban, Yang has used 'low-frequency pulse therapy', a treatment of his own devising alleged by former patients to be more painful than ECT. The victims of this center can vary from 13 to 30 years old. This group of people not only contains the students who play video games but also includes eSports players and the owners of online shops. In my Personal Statement of applying Games and Playable Media MS program of UC, Santa Cruz, I talked about my will of making a game about this horrible story. Then I pitched the idea in May 2019 and successfully formed a team of four. This game is not just an opportunity to bring these atrocities to the public eye here; it is a statement that declares people should not be condemned to severe punishment for doing harmless things that they enjoy.

3. Attributes

Engine & Language: Unity3D C#

Platform: PC

Control: Keyboard & Mouse

Genre: 2D/Simulator/Narrative/Mystery/Puzzle

Team: (Group of four) Yitong Hu, Zijie Zhang, Nicolas Banducci, Sai Ruthvik Thandayam

My Roles:

  • Overseed design vision and worked directly with producers, designers, programmers, artists and musicians

  • Led system design, narrative design, level design, puzzle design and documentation

  • Prototyped game mechanics, simulated applications and systems in Unity3D

  • Designed UI and 2D graphic assets in Photoshop

  • Coded UI system with Unity3D C# scripting

  • Handled playtests, QA and debugging with JIRA, and version control with Perforce

4. Early Concept (May 31st, 2019)

According to our master program's schedule, each student pitched a game idea at the end of the third quarter (May 31st, 2019). Five of us passed the greenlight and formed five teams in which they worked as creative directors, and other teammates got the titles of technical director, development director, and producer. At that time, there were a couple of Unity files, but no build at all.

Game Interface

Game Core Loop

Find Messages: The player and a NPC have a conversation by editing the same Google Docs document

Find Messages: highlighting all the texts in a Google Docs document to see the hidden cipher that typed in white color

Find Messages: combining the first letter of each YouTube video's title in History to get the hidden message

Decipher Messages: Caeser Cipher

Send Messages: Sending the escaping route you made for Truants members by setting the image as the cover of your online class video

5. Pre-production & Vertical Slice (Dec 11th, 2019) After the summer session, we started our fourth quarter and the pre-production stage. Our goal for this stage focused on technical development to convince the judges of Vertical Slice that we can complete the game development. We prototyped the applications and then linked them with the demo of Act 1 script in less than three months.

At the end of the fourth quarter (Dec 11th, 2019), we had our presentation for Vertical Slice, which was like a checkpoint for the same group of judges of greenlight pitch to come back and decide if we can continue to develop the projects.

Vertical Slice Start Screen: Since Vertical Slice demo starts from the middle of Act 1 story, we provided the introduction and a computer button that you can press to start the demo.

Scott's Computer Login Screen

Scott's Computer Desktop

YeeMeow: Simulated E-mail application

Visage: Simulated Facebook social media website in the simulated web browser which called "Brovo"

Bouquet: Simulated Instagram social media website

GoodPoints: A drag-and-drop note-taking app with keyword system

Haiyoo (Already renamed as Visager): Simulated messaging app

Tudu: A sticky note reminder app that helps give players a push in the right direction with the story.

xPloit: A hacking cipher tool that provides hashed password, performs brute force attack on target computer, and shares the latter's screen on Scott's computer like a simulated TeamViewer.

LTBMC's Computer Desktop

File Browser

Ending Voice Over with subtitles

6. Production & Future Plan

In our fifth quarter, our production stage of Truants will end with our master program. We replaced the temp story with a fully polished script of Act 1 (totally three acts), added a few more applications, and abandoned some old applications. We are still in the process of combining each part of gameplay, inserting new content, and replacing temp assets with original assets.

In Vertical Slice presentation, we made a plan for production stage. (Some parts have already been changed.)

Main Menu with Interactive Background: I drew the background of Main Menu; then, I made five transparent buttons that look like adding color to a part of the background to indicate their functions and combined with five standard buttons in the list on the left side of the screen.

Brovo (Upgraded Version): I built this simulated web browser with Unity UI widgets and C# scripting. Now it has the empty page, bookmark function, and URL function.

SyncDocs (Prototype): I prototyped this simulated Google Docs with Unity UI widgets and C# scripting to give the player the experience of communicating another person (NPC) through an online document that is editing by both people. The player types in red with the hacker-typing effect, which means each time he press any keyboard key, there will be a couple of letters be printed on the document. The NPC types in blue with the auto-typing effect and text boxes have random type speed to simulate real human typing. The player's cursor will flashing if there is still some content that needs to be typed. The NPC's cursor will only blink when NPC finished typing the paragraph.

7. Challenges as Creative Director

Although I have cooperated with more than ten teams to develop board games and video games, this is the first time that I work as the team leader and have control of the entire game design. I encountered three challenges in leadership:

  1. How to let my teammates follow my design vision?

  2. How to balance our ambitiousness and scope?

  3. How to make different departments work together in the most efficient way?

Below are the details of these challenges and my solutions.

1. Design Vision

Firstly, this game bases on a story that happens in China, but half of my team, especially our narrative designer, doesn't come from this country. I roughly translated some essential Mandarin articles or found the links of English articles for my teammates to read. Then I had many small meetings with the narrative designer to help him understand the culture and traditions of Chinese society, which caused the issues of anti-humanity treatment and bias against video games. Besides, sometimes I found it's not very easy to communicate with my teammates about the design of a function or a plot. My solution is drawing charts or diagrams to provide visualized design plans, like the narrative outline of vertical slice demo

and the escaping plan:


2. Passion VS Scope

Our team always has a big problem: everyone is too passionate! Since this game is mainly a simulated computer desktop, there are a lot of potential features that we can develop, like different kinds of software or websites. Therefore I have to hold two large meetings which we spent all day long to narrow down our current scope of mechanics and story. In the production stage which we are working on now, I separated our tasks into four small stages:

  • Golden Path Stage: Only the necessary functions and contents of the simple linear storyline which leads the player directly from the beginning to the end of the entire game.

  • Discovery Stage: Adding extra contents and small functions which can give the player a better understanding of each character and world view.

  • Polishing Stage: Fixing all the issues of the existed features and improving the gameplay experience by adding details to the contents and UI.

  • Finishing Stage: Building a bug-free publish-ready game.


3. Pipelines

Pre-production Pipeline: Finding out what features we are able to build and suitable to the gameplay experience of the full game.

Production Pipeline: Adding or modifying the features according to the needs of the main story.

bottom of page