We are Ok
On-the-fly character switching puzzles exploring father-daughter bond.
We’re OK is a story-heavy puzzle platformer where the player can weaken or mend a broken father-daughter bond by completing or skipping puzzle segments.
This game was made in two weeks for the Budding game jam. All assets were created by me (except music & SFX). I was keen to dabble in narrative writing, coding and UI design for this game.
Roles and Responsibilities
- Design: gameplay and balanced levels, 3 camera viewports using Cinemachine.
- UI Design: splash screen, start menu, in-game menu, narration system, win/lose screens.
- Narration Design: exploring a father-daughter bond in a backdrop of losing a terminally sick family member.
- C# Scripting: movements, UI updates using triggers, using playerPrefs, character toggle system
- 2D Art: characters, environment, narration bubbles
Contributions
UI Design
I used Affinity Designer to design the UI and create sprites. I was keen to keep the UI minimalistic, given the short time frame. All the UI was made in Unity Canvas, using boolean functions to activate and deactive gameobjects based primarily on button clicks. Some of the buttons (eg. “skip hurdle” button) were controlled by scripts that monitored the number of clicks to show or hide buttons. Narration bubbles were individually made using Affinity Designer, and their visibility were also controlled by button clicks in Canvas.
I also made use of three cameras to show both Anita and Baapu (the leading characters) on the same screen, with the narration box on the righthand side.
Narrative Design
This was my first experience writing narration with different endings.
The game revolves around Anita, and Baapu (her dad) as they come to grips with losing the matriarch of the family to a terminal illness.
Due to the short timescale, I decided to focus the story on a singular incident, having two different endings, one a bit less positive that the other.
I wrote the narration in the context of text messages between Anita and Baapu, using emojis within narration bubbles.
One of the areas of improvement that would be interesting to implement is more variation in endings. The variation in ending was determined by whether the player skipped a hurdle or successfully solve the puzzle in each level. If they skipped the hurdle, the main characters would drift further apart.
Since I allowed the player to skip puzzles only once in this prototype, the narration did not need significant variation. If this game was expanded to include three skips, for example, I would have liked to add more dramatic narration, delving deeper into the core relationship dynamics between Anita and Baapu.
Gameplay design
I used a toggle system for the player to have more control on character movement. I also wanted to find a better solution for the camera logic, using a split screen to focus on each character.
Designing the toggle system
For the toggle system, I decided to use colours to differentiate between each characters. Baapu and his environment was blue, while Anita and her environment was pink. I then turned the active character yellow so the player was aware which character they were controlling.
I also decided to use the Shift key for toggling between characters. I initially intended for the player to be able to move faster by using the Shift key, which is often used in other platformers, but in the end I did not feel that it was necessary, so adopted it instead for the toggle.
Split-screens & camera logic
I opted for a horizontal split-screen rather than a vertical split-screen between the characters, since their y-axis position does not vary as much as their x-axis values. A horizontal split-screen also created less blind spots for the player. I implemented this mechanic using Cinemachine, creating two main cameras and two follow cameras with camera bounds, one for each character, as follows:
I also left some space on the right hand side of the viewport rect to add the narration screen.
One of the areas of improvement for this system would be making the narration camera inactive when the characters are not conversing, therefore reducing blank spaces while the player is solving the puzzle.
Accessibility
In terms of accessibility, I was keen for colour-blind players to also be able to play the game, so I adjusted the colour brightness so the active character was still distinguishable. I also added name tags in the narration box (left for Anita, right for Baapu).
Looking back, I could have made the game even more accessible by adding more contrast between the environment colours for each character, which could have been implemented if I had tested the game for accessibility at earlier stages of art creation.
Programming
One of the main mechanics of this game was the toggle system. The main challenge was making the toggle turn off again after it was pressed the first time and return a different value the second time. To solve this, I wrote up a loop using bool values.