GAME DEVELOPMENT - COMPILATION
20/04/2026 - 27/07/2026 (Week 1 - Week 14)
Figure 3.2.2.3: Layout Draft using AI.
Madeline Ordelia Tjahjadi (0376920)
Bachelor of Design in Creative Media
Compilation
Table of Content
1. Lectures
2. Instruction
3. Process Work
4. Feedback
5. Reflection
1. Lectures
Week 1
We were given a brief about the module and an explanation of what programs
we will use. Ron recommended us to use PlayCanvas as the software to use,
because it's easier and he's already tried a bunch of software. The project
can be done individually or in groups; we can choose ourselves.
Week 2
This week we proposed and presented our ideation to Ron. My group and I
received feedback and revised some of it. After receiving that feedback, we
consulted with him one more time regarding our new art style direction and
how we are going to execute it.
Week 4
This week Ron taught us how to do 3D modeling in blender and how to export
it to PlayCanvas. We also ask another tutorial for 2D movement in
PlayCanvas.
Week 5
Consultation
Week 6
Consultation and we continue to finalize our assets.
Week 8
Consultation and creating assets
Week 9
Consultation and finalizing assets
Week 10
Consultation
Week 11
Still consultation
Week 12
Still consultation
Week 13
Consultation
2. Instruction
3. Process Work
During the first week of this module, Sir Ronald (who prefers to be called
Ron) briefed us on the module. Ron said that he changes the requirement
every semester so it doesn't get boring. This semester, he decided to
introduce us to a new software for creating games called PlayCanvas. Before
this, he briefed us on what tasks would be and showed us examples of
seniors' work and some games related to the theme.
The theme for this semester is mental health: "Where healing meets fun."
Ron showed us some games he has played that also revolves around the theme
of mental health. Examples include Gris, Before your eyes, Dear Esther,
Spiritfarer, and many more. This project can be done individually or in a
group. I chose to be in a group consisting of seven people:
Lee Wai Xian | 0365740
Jensen See Yong Chern | 0366322
Madeline Ordelia Tjahjadi | 0376920
Gwendalyn Firly Bong | 0374580
Jesslyn Octavia Tjong | 0374562
Khansa Raudlatus Syahiidah | 0374511
Feilycia Joy Kurniawan | 0373400
Jensen See Yong Chern | 0366322
Madeline Ordelia Tjahjadi | 0376920
Gwendalyn Firly Bong | 0374580
Jesslyn Octavia Tjong | 0374562
Khansa Raudlatus Syahiidah | 0374511
Feilycia Joy Kurniawan | 0373400
3.1 Story Development
To start with, we created documents for us to discuss easily and pour our
ideations into. Ron have us an example of a game design document that we can
refer to for a head start on what we should think about when making a game.
Below are our concepts draft:
For a starter, we each gave our own ideation and concept to discuss and choose
from. After several discussions, my concept and Sean's were chosen, but with a
mix of both and some revisions after discussion with others. We referred back
to the game design document and outlined what we should have in our
games.
After we finalized the story along with the progression of the game, we
consulted on our concept and it was approved. With small changes needed to
fill some blank spaces in the story, Ron suggested a lot of good feedback.
First, we need to determine our protagonist's biography so we can make our
story more relatable, especially when illustrating the environment and the
cultural differences. Since our story is about self-blame and relates back to
parenting, we need a more realistic background story. Second, we need to
adjust the ripped diary part and change it to a ring binder where pages can be
removed so the diary doesn't need to be ripped, making it more realistic for
them to be scattered around the house. After the feedback, we changed it and
discussed our art style and how to execute it. Below is our draft after
further discussion, we finalized story, items, illustration and etc:
So, basically we will have 4 areas:
Area 1: Living room
This area will focuses on the memories of her mother.
Area 2: Kitchen
Focuses on the memories of her father.
Area 3: Emily's Room
Focuses on Mei ling (Emily) struggle throughout her childhood and how she
endure it.
Area 4: Parent's Room
This area will reveal the truth behind everything that has happened.
Our game progression will be tracked by the diary pages collected, so we have
4 key areas as mentioned, in each areas, players will interact and complete
the missions to collect the diary page in that area, and players can access it
anytime in their inventory.
3.2 Design direction and Assets Creation
During our discussion, we decided to go with a 2D-HD game concept, so we want
our art style to be pixelated. At first, we wanted the point of view to be
from the side, but after further discussion, we think it is better if our POV
is from the top, so we can see the movement clearly. Below is the example:
Figure 3.2.1: Illustration reference.
Source: https://pin.it/6hxZGlZSF
Figure 3.2.2: Moodboard from pinterest for illustration.
To make pixelated art, we searched for apps to create it, we stumbled upon
Aseprite and Pixelorama (recommeded by Ron). These will help us create
pixelated assets for the game. Pixelorama is open-source and free, while
Aseprite needs to be purchased. After looking at tutorials, they definitely
serve the same purpose and are quite similar in how to use them. So, we
decided to use pixelorama.
We then proceed to make the storyboard to visualize the interface for
our game.
Figure 3.2.3: Storyboard process
After the group meeting, we decided to divide the workload. Feilycia, Sean,
and Jesslyn will work on the illustrations (basically the game's visual
assets). I will be joining the coding team and (hopefully) creating the
music. The rest of the group will also be on the coding team; however, we
will all support one another and help out across all tasks as needed.
3.2.1 Character
In week 3, we began creating assets, including the character designs and the
layout for each area. The character was the first assets completed; Sean was
in charge of the design and we used Pixelorama to create the pixelated look
for all assets. He first sketch the design character and ask AI to help
prompt the movement design to create animation.
Figure 3.2.1.1: Character Sketch.
Figure 3.2.1.2: Character draft using AI to create movement.
Below are the finalized character design in pixelated art and the movement
animation:
Figure 3.2.1.3: Finalized character.
Rationale:
Mei Ling (Emily) character intentionally designed with a slightly masculine
appearance, even though she is a girl, to reflect her background. She grew
up in a very difficult family environment and endured many hardships
throughout her childhood. Since she was raised mostly by her father, she
developed more traditionally masculine traits rather than feminine
ones.
Meiling is a resilient and determined person. Although she may appear sad at
times because of the pain she experienced during her childhood, she never
lets her past define her. Despite everything she has been through, she
continues to move forward with strength and perseverance. The intention of
her character is to create a strong, independent character whose resilience
that is reflected in both her personality and appearance.
3.2.2 Room Layout
After finalizing the character, we also completed the layouts for each
area/rooms. Since the main character has a Malaysian background, we want to
evoke a "kampong" vibe. We found this resource (https://www.littledayout.com/visiting-pulau-ubins-chinese-kampong-house/) and used it as a guide.
Figure 3.2.2.1: Room design reference.
Feilycia was in charge of our sketches for room's layout and utilize AI to
help build the layout with pixelated and colored design, using our research
as a reference. This later will help us to draw it in Pixelorama as a guide.
Figure 3.2.2.2: Sketch for layout.
After creating the draft, we began to draw it out in pixelorama. There are
some changes in the layout because of some limitation in the scripts later in
the future. Below are the finalize layout for each rooms we have:
Jesslyn will be in charge of drawing the other close-up items that the player
interacts with, such as the diary, album, rotan, alcohol bottles and more
(still in progress).
Living room will have photo album as the only close up scene. As for the rest
interactable things in living room will be the mugs and plate that player will
interact as a hint to go to kitchen as their next task and bookshelf clean up
to find the diary as their mission 1 to collect.
Note: Some of our assets were sketch first and then generated in AI to help
us create the pixelated effect before we trace and draw it out.
Figure 3.2.3.1: Photo album closeup assets (animated sprite).
Kitchen will have Rotan and Paper scraps (mission) as the close up
scene.
Figure 3.2.3.2: Papers scraps (Mission 2).
3.2.3.3: Rotan.
Emily's room will have 3 close up scene since this area has the most
storytelling of emily's struggle as the background story of this game.
Figure 3.2.3.4: Bear.
Figure 3.2.3.5: Crosswords (Mission 3).
Figure 3.2.3.6: Trophies.
Last area is the parent's room, this room will be the ending of this game that
reveals the truth. This area will have 2 close up scene that are connected:
pin lock and drawer open.
Figure 3.2.3.7: Pin lock (Animated sprite)
Figure 3.2.3.8: Drawer open.
All of this close up scenes, will help to deliver the story of our game better
with dialogue included inside.
3.2.4 Menu, Intro and Outro
Our homepage or menu will be the house. The one in charge of creating the
intro and outro video is Khansa, while Feilycia created the assets.
Figure 3.2.4.1: Homepage & Intro.
Figure 3.2.4.2: Outro.
3.3 Coding
We're continuing to work on the code for our character movement and we're
using AI to help us write it as our foundation. After that we will change it
based on our needs.
Figure 3.3.1: Code progress.
To test this code, we are using placeholder AI layout since our assets aren't
finished yet. We also created walls to prevent the character from moving off
the 2d screen.
Figure 3.3.2: Trying the code.
In week 5, we continued working on our code and successfully solved the
character's movement. Now, we need to figure out how the character will move
between rooms. To achieve this, we need to place a trigger on the doors that
teleports the character to a different scene. Consequently, we have created
five different scenes dedicated to each of our rooms, including a newly added
hallway.
Figure 3.3.3: Different scene created.
Figure 3.3.4: Hallway added.
We also created a new script for scene transitions. While we successfully
managed to get the character to change scenes, their positioning after the
transition is still an issue we need to solve.
In week 6, we still exploring the coding while finalizing the assets. We
managed to fix the problem for our character position when it changes scene.
Ron helps us to create a coding to keep tracks the overall character
movement.
Figure 3.3.5: New script added in the root.
The coding team trying to start the first interactive activity which is the
bookshelf: where player will press E to clean the scattered books into the
bookshelf. We use a testing assets to indicate the changes.
Figure 3.3.6: Testing process.
We successfully make all of the interactive elements in living room area,
including changing the test assets into our final assets. We also add UI
element like "press [E]" to indicate how player can interact later.
Figure 3.3.7: Progress for interactive elements in living room.
So, now we have 3 things to interact in living room before going to the
kitchen. There will be scattered book that player will picked up.
Additionally, we have added a special book to interact with the photo album
close up. Lastly the mugs and plate that player need to picked up to bring
to kitchen.
Figure 3.3.8: Final look for living room (Week 14).
In week 9, we continue to make all the interaction in kitchen area to work.
So far, we implement the same pick up books in living room area to our pick
up bottle, for the interaction/mission in kitchen area. Additionally, we
also create scene for the interactive object, so when player interact with
the object it will show the close up UI screen. To achieve this, we decided
to change scene when we interact, since the pop up UI screen will be full
screen anyway.
Figure 3.3.8: Process for interactive elements in kitchen.
However, we still have a problem with the 'E' prompt for each of the bottles
that we need to pick up. That is the something that we want to consult for
next week.
In week 10, we consult about the problem and Ron figure out how to do it.
Basically, instead of having one new entity consist of the prompt, We can
just immediately put it inside each of the object (the prompt). Later in the
script we can called the prompt inside the object.
We also figure about our layout problem, we initially put our image of the
background on a screen, when we can just put it outside in the root. So,
after we figure that out, we pull it out from the screen UI component, and
ended up need to arrange everything again from the start. But, if we manage
to do it, it will be easier for us in the future to arrange our
sprites.
Figure 3.3.9: Layout after changing camera.
As you can see in Figure 3.3.9, after we change the camera to orthographic,
we manage to make all of the asset sticks to the image instead of flying in
front of the image.
In week 10, we aim to finish the kitchen and living room area, because once
we finish with this area, the logic for the other rooms are basically the
same. We are trying to finish the main activity/mission in the game and
additional things like close up scene, blocking the layout and adding a bit
of UI element.
Figure 3.3.10: Final look for kitchen (Week 14).
For our second mission in kitchen, we have paper scraps. Jensen and Sean are
in charge of this mission.
Figure 3.3.11: Final look for Paper Scraps (Week 14).
Next we go to another scene which is Emily room. we have 3 things to
interact which 2 close up scene and 1 mission: crosswords.
Gwen and I were in charge of building the crossword puzzle mechanic. We
wanted a highlighted box when player selects it and allow players to type
letters directly into the boxes. To make navigation smoother, players
can use the arrow keys to move between boxes. We also added color indicators
for correct and incorrect letter placements to give players hints along the
way.
Once we finalized the requirements, we used an AI tool to generate the core
script, naming it crosswordPuzzle.js. We included exposed attributes in the
script so we could easily drag and drop the UI text elements for
instructions and completion feedback.
Figure 3.3.12: Script used for crosswords.
As you can see in Figure 3.3.12, the answers were type in the code where the
cell that called are the text element we put in each boxes in UI editor in
PlayCanvas.
Figure 3.3.13: Crosswords final look (Week 14).
In week 11, we consult to Ron because we need to ask several things
regarding of our code. During the consultation, Ron actually notice the
problem in our code, where everything is tangled and we need to start again
to make the code cleaner.
It's actually quite stressing to go back to square 1, when we thought we
almost finish. But after we fix it, Ron suggestion was right and it helps us
a lot. So right now, we basically only have several main code that can be
applied to anywhere that has the same activity or action. Other games that
requires special code we have separate script for that.
1. Gamemanager
This script acts as the global memory for each state that we want to save
every time we are trying to do something. We stored it here to later
called in other scripts. This script only applied in the first area that
user will see when they first play the game.
2. playermovement
This script basically will be attached in every player in each area. This
script is used to move the player, including the animated sprite state,
how the player freeze when interact with the dialogue and many more.
3. pickedupdiary
This script is used to pickup a certain object like mugs and the books
that will shows the dialogue to interact and the E prompt UI.
4. sceneCloseup
This script will lead to another scene and mainly to shows the close up
scene that we have.
5. sceneChanger
This script applied in every trigger we have in each door to change scene
and mainly use to go to another room or change scene. This script includes
the spawn point of the player that we can adjust the x and y
manually.
In week 12, we start to do the activity and mission in parents room. In this
room, because this is the ending, We only have 2 things to interact: diary
to picked up in the bed and the pin lock. Gwen and I in charge of this rooms
overall.
Just like crosswords they are certain things that we want to aim for the pin
lock mechanism. We applied the same mechanism of highlighted box when player
select the pin and color indicator when player correct or incorrect.
Additionally, we want to change the scene after player put in the correct
pin to unlocked animation. After that they will be redirected to the drawer
open scene where player can interact with the objects inside.
Figure 3.3.14: Script used for pin lock.
As you can see in Figure 3.3.14, we basically open a lot of expose
attributes to drag and drop the sprite for interaction.
Figure 3.3.15: Pin Lock final look (Week 14).
In weeks 13 and 14, we focused on the main progression system and
achievement for the game, which involve collecting diary pages. Sean was in
charge of this task and the mechanism was pretty hard at first. So after
players completed the main mission and received the diary pages, we need to
update the diary book in the inventory.
Figure 3.3.16: Diary page progress (Area 1).
In living room, it was smooth, after players picked up certain item in that
area, they will unlocked this diary book in their inventory. Players can
click inside to read the diary page of each area to understand the story,
which will also help them in future areas/rooms.
However the main challenge is here, when Sean tried to link it with area 2
(Kitchen) in the paper scraps mission, it didn't worked. After we consult
with Ron, we created a new system for changing scenes called super scene,
but it still didn't worked. After we change the system, we become even more
confused because everything went down and wrong, a lot of things suddenly
didn't work anymore, so we decided to remove it and switch back to our
previous system and continue working on it.
Figure 3.3.17: Diary page progress (Area 2).
After we switched back to the previous system, Sean took some time to
understand the code instead of direct copy pasting from AI, and eventually
he made it work. After completing the missions now, the diary book will
update and players can access it anytime. After that, Sean linked the script
to other missions so that the diary book will also be updated upon
completing them. This whole mechanism took 3-4 weeks to finalized.
After finalizing everything, below is the finalized look of each room:
Figure 3.3.18: Living Room Final look.
Figure 3.3.19: Kitchen Final look.
Figure 3.3.20: Hallway Final look.
Figure 3.3.21: Emily's Room Final look.
Figure 3.3.22: Parent's Room Final look.
3.4 Sound Effect & Music
Jesslyn and Feilycia were the one in charge of the sound effects and music
inside the game. They first create a spreadsheets to list which area need
sound effect. Below is the spreadsheet created and all the source of our
sound and music listed:
3.5 Final Outcome
Come Home
Come home is a narrative-driven 2D adventure that explores themes of
self-blame, trauma, and healing. After learning of her father's death, Emily
returns to her childhood home for the first time in ten years. As players
explore each room and solve environmental puzzles, they uncover forgotten
memories and hidden truths, guiding Emily on an emotional journey toward
confronting her past and finding closure.
Video Walkthrough
Link of the game
Game Design Document
4. Feedback
Week 1
Briefing and introduction to module
Week 2
The concept of the game already flows smoothly; it just needs some light
adjustments. He suggested creating a biography for our protagonist to make our
story more relatable (in terms of the environment). Some details in the
narrative need changes; for example, we should make the ripped diary more
realistic by changing it to a ring binder where we can remove the sheets from
inside. We also consulted him about the art style and the software we want to
use, and he recommended additional software that is free and accessible.
Week 3
no class
Week 4
We gave our progression to Ron and he said overall good, we just ask him how
to do some coding stuff for movement.
Week 5
We ask a lot about coding, Ron help us to fix some of our problem.
Week 6
Ron help us to fix our last week problem in the coding.
Week 7
no class
Week 8
Mainly focus on assets and ask about our coding
Week 9
focus on assets creation
Week 10
Ron fix our prompt problem and basically see our progress.
Week 11
We ask Ron couple of things and he noticed that we have problem in our code
where everything is tangled so we need to start a new script to make
everything more clean.
Week 12
Focus on finishing our mission in each rooms.
Week 13
Finalizing the minor things to fix.
Week 14
Finished creating the whole game and proceed to finishing the game design
document.
5. Reflection
Throughout this module I have experienced a lot of things, especially
making games from scratch. We start from brainstorming the story and the
character inside until all the assets that we need to create. The most
difficult and new part for me was the programming/coding to create the
gameplay. As a design student, all of my teammates and I don't have any
experience in coding before so we encountered many problems and relied a lot
on AI for guidance. After trying to understand the code and not just simply
copy it, I found the fun in it, it felt rewarding when I successfully
accomplished something.
Furthermore, I observed that to create a successful game development
requires strong teamwork, communication, and planning, every group member
have their own responsibilities. I'm grateful that I found a responsible
teammates that can carry the burden together. I'm very thankful and proud
that we can finish this game within 14 weeks of work.
Lastly, I really want to say thank you to Ron for his guidance throughout
developing this game. Without his guidance, we will probably lost and can't
even finish this game. He always gave us useful feedback and even help us to
achieve it not just talk about it. I hope with this module, I can use my
skills that I got for further projects.






.jpeg)
















.gif)






















Comments
Post a Comment