
A day at Portland is at its core a narrative experience, and we want to immerse the players in a tense situation of searching the truth to save their lives. The controller is part of the story, each port you plug with your own fingers is an important decision you will make and the action being so different from pressing a key on a keyboard highlights the weight of that decision. The purpose is not to aim for a game that you cannot play without this controller, it's to make an experience you cannot replicate, a rush of emotion you can only feel when you're the one sitting in front of the suitcase and making that final important decision that will decide your fate as the detective of this story.
This project is part of a game jam organized by the school, where the aim is to create a game with an alternative controller in order to present it at GDC. The technical challenge was to link all the technologies we wanted to use with Unity and make sure they worked well with our project. I was also able to set up a tool via Google Sheet to enable our Game Designers to write their dialogues easily. And finally, we had to make a trailer for our game where I got to play one of the characters, which was a lot of fun to do! (don't judge my acting too much!)
Release : December 2023
Period : 2 weeks
Platform : Unity - C# & Arduino
Team Size : 9
- 3 Game Designer
- 2 Game Developer
- 2 Game Artist
- 2 Producer / Manager
My Role : Lead Gameplay / Tools Programmer
- Task distribution
- Input connexion with the Alt Ctrl
- Dialog Tool
- Dialog UI
- Forward / Backward feature
- Art Integration
- Gamefeel
- Git Management
- Build Distribution

Dialog Tool - Google Sheet
Game designers needed to be able to create dialogues quickly and easily. So I decided to give them a Google Sheet so they could set up each dialog.
They can decide which character is speaking, his emotion, when and for how long, and to which person. They can also easily write their dialog in the language they want.
Once everything has been initialized, a key is created for each dialog and read into Unity to retrieve all the data.
Dialog Tool - Unity
To retrieve all the dialogs, I use the Google Sheet API, which lets me read the entire sheet. With the key created for each line, I'll be able to fill in a new Data Asset with its creation date as its name, containing all the dialogs in the game.
After that, our system will be able to update the various assets and discussions according to the time spent in the game.


Alternative Controller
With the Game Designers, we had to create a new controller for our game from scratch. So we came up with several technologies, including jack plugs, rotary encoders and a lever.
Everything is connected to an Arduino board, which I had to link to Unity.