Any views expressed within media held on this service are those of the contributors, should not be taken as approved or endorsed by the University, and do not necessarily reflect the views of the University in respect of any particular issue.

Bug Tracking and Game Iteration

To make the game more user friendly, me and Bohan did a lot of play test to find bugs and potential improvements. Sorry that it is in Chinese but the workload of game development can be demonstrated simply by the number of bugs we fixed,  a list of bugs reported during the game iteration can be found below:

A pdf list of bugs tracked:

Tracked Bugs

Infant Room

The Infant Room 

The Infant Room was inspired by baby rooms in real life that typically have themes like the ocean, zoo animals. However, since our game is based off the theme of surrealism in all the rooms, I took the baby room a bit further in my initial design.

The baby room shown below was by inspiration, and I wanted to create a kind of gentle nighttime atmosphere suitable for a baby trying to sleep.

Room Design

I really liked how the baby room in the inspiration picture had clouds hovering over the bed, so I placed them over the bed and surrounding the room with the three toys in different places in the room.  I used a nighttime image in the sky box to convey they kind of atmosphere I wanted this room to have. All baby toys were created using real baby toys for reference.

Gameplay

In this room, players have to find all the objects in the room and put it into the large blue toy box. Players would also have to navigate the room but bouncing on the glowing spheres all across the room in the search for all the baby toys.

 

UI Design and Implementation

Static User Interface Design

Regarding static UI design, usability and intuition are the first principles we follow. In addition, we divide the UI design into two main modules, one is the resident UI displayed during regular gameplay, this module adopts minimalist design principles, only including the task prompt text in the upper left corner and the three keystroke icons at the bottom of the screen for reminding purpose, all patterns use translucent style to minimize the impact on game immersion.

Main UI Module

The other module is the map UI which requires pressing the tab key to exhale. The UI design of this part aims to provide users with more auxiliary information and emphasizes the real-time interaction of UI. Based on this, we designed a 3D Rubik’s cube map in the middle of the interface to more intuitively show the spatial relationship between different rooms, and also provided a rotation function for players to view the location of each separate room from different perspectives.

Map UI Module

This map UI module was designed to show more information for helping players pass the level, so it includes a “Current Room” tab on the upper left corner which gives the current room name and remaining puzzles,  a real-time responsive “Selected Cube” tab on the upper middle area to tell the name and status of the mouse-selected cube, as well as a “Target Guidance” tab on the lower middle area which gives a lot of text details to help players understand what to do next or how to use this UI map.

When hovering the mouse cursor over small cubes, a glowing frame will appear to remind the player which cube is selected, and colored cubes will display a glowing outline of its key object in the center of it to remind the player which room this cube refers to, together with the room’s name displayed in the “Selected Cube” tab, we try to make it more clear for the players to understand the reflection of cubes and rooms.

Dynamic User Interface Design

As the progression of the game process mainly depends on the interaction between players and key items, guiding players to find the location of interactive items became a very important part of UI design. In order to reduce the effect of the UI prompt on immersion, we bind the UI prompt to the sonic radar so that the player can see the explicit UI prompt only when the sonic radar is triggered actively.

We also split such hints into 2 ways to give players intuitive guidance. First of all, when the interactive item is directly in the player’s field of vision, an “F” icon, as well as a glowing outline, will be displayed on the interactive item to indicate its interactivity as shown in the below image.

Show “F” icon when directly in player’s field of view

When the interactive object is not directly in the player’s field of vision, according to the angle between the object and the center of the player’s camera, an arrow UI pointing to the interactive object will be displayed on the edge of the screen to prompt the player to turn their camera to the direction of the object. The horizontal position and orientation of this arrow icon on the screen will be updated in real-time following the player’s movement and rotation of the view angle. When the player’s view field is aimed at the interactive object, the icon will change into a hand pattern to indicate interactivity. You can find an example in the below image:

Real-time arrow icon to prompt the location of key item

Besides, when the player moved close to an interactive item, the “F” icon and some text hints will also be displayed to indicate the interactivity like in the below image.

“F” icon and hint texts when close enough to interactive items

Technical Details of Game Implementation

Game Engine

The game was implemented using Unreal Engine 5, version 5.1.1.

All gameplay logic was implemented via blueprint programming system and all game level setting up and assets integration.

Implemented Gameplay Systems

Major gameplay systems implemented in the game mostly adapted the principle of object-oriented programming, including, but not limited to, the following systems:

Teleport gate system

The Teleport gate placed in each room controls the player’s navigation between different rooms and constitutes the essence of the core design concept of non-Euclidean space.

Each gate points to a predefined location but uses a scene capture camera to capture a view from another place and display the view inside the door frame, as well as update the view in every rendered frame following player’s movement, thus in player’s perspective, what can be seen within the teleport gate forms an illusion of “fake destination”, while the real destination is set to somewhere else.

This is how we make the Non-Euclidean space and constitute the sense of dislocation in spatial cognition.

Text trigger and interaction system

The narrative and guidance of game mechanisms are presented mainly via UI texts, so I created an interactive text display system that supports below features:

  1. Display an array of texts of any length
  2. Text typing visual effect: Typing the text letter-by-letter, supports quick full-sentence display and single-sentence skipping
  3. Player camera focus feature: Automatically rotate the player’s camera towards target position.
  4. Conditional trigger feature: Only after player finished specific gameplay tasks, will the text be triggered.
  5. Target outline feature: After the player triggers the text, focus on the target object and display a glowing outline as a gameplay task hint.

All the above features were designed as per-instance-editable, so every text trigger placed in the game level can be individually configured per gameplay requirement.

Post-process materials for special game visuals

To better highlight special gameplay mechanisms like sonic radar, I created post-process materials which can render the game level into a single colored scene with line drawn-style outline effect like below image:

This post-process material is used in multiple places like sonic radar to render the feeling of sonic echo detecting the physical environment.

Sonic radar system

As one of the most important means to explore the environment, sonic radar system provides multiple functions for player, including:

  1. Reveal hidden objects in game scene once the sonic wave hit the objects.
  2. Trigger interaction hint of an “F” key icon for player to locate interactable objects in the scene if the object is directly in player’s field of view.
  3. Trigger interaction hint of an arrow icon pointing to the closest interactable object if it is not in player’s field of view, and update such hint in real-time according to player’s movement and camera rotation.
  4. Turn everything into single colored frame outline visual to indicate the sonic radar effect

Interactive map system for cube maze

UI map of the cube maze is fully interactable, each of the cubes is blacked out initially, after player finished all puzzles in current room, it can be colored and provide below functions:

  1. Indicate every colored room’s spatial location.
  2. Show a glowing outline of the room’s key item in the center of the cube, once player hovers their mouse onto a colored room.
  3. Click to directly teleport to the mouse-selected room for fast navigation.
  4. Rotate the whole cube for viewing different rooms in a 3d and intuitive way.

Interactive Items

The logic of interactive items is realized by the way of class inheritance, and each interactive item supports many major functions, such as moving, collecting, placing, resetting, and so on. All major function supports independent per-instance configuration. After inheriting the parent class logic, the implementation of each interactive item only needs to configure the model mesh and the interactive trigger box size separately, significantly improving the development efficiency.

Part of the instance configurable attributes can be found below:

Simply adjust the above attributes for each instance of interactive objects per requirement of gameplay, and the common logic in the parent class will handle the interactive logic accordingly.

Spatial Sound and Visual Hint System

The spatial sound system of the game utilized Unreal Engine’s integrated audio system. To support players’ marking of room spatial position, I created a directional visual hint pointing to the source position of the sonic cube as a supportive method in addition to the spatial sound system itself, so that telling where the echo sound comes from won’t be that difficult.

Mission System

Players need to solve all puzzles and collect all key items in a single room to finish the exploration of it, so I created a mission system that is also per-instance configurable to track the progress of room exploration.

Each of the mission boxes was binded to a room, and updated the progress individually according to player exploration, once all missions were completed in one room, it triggers a reminding hint when player tried to leave the room for marking map to unlock direct teleport and a text hint to remind the player of current progress as well as.

Submission 2 Main Page

(The content of this post was co-edited by the following 8 authors: Roger, Ruxin, Bohan, Linteng, Alexandria, Zhaoyi, Yunjia, Andrew, and the final typesetting and arrangement were completed by Roger.)

Introduction

“Echoes of Memory” is an indie game project focused on the theme of Alzheimer’s disease, which provides players a unique journey of recovering lost memories utilizing interesting features of Non-Euclidean space and the physical nature of sound. It is designed to be a spiritual journey in a maze of memories where the player wanders across 8 rooms of memories set up spatially as a Rubik’s cube. Each of the rooms represents a different stage of the protagonist’s life, but all were unfortunately forgotten by the protagonist.

Unlike Rubik’s cube in the real world, each of whose cube is only connected to a specific set of other cubes, our maze is placed in a non-Euclidean space and the connection of each cube becomes uncertain. Heading through the left door from one cube room, you might find out yourself end up in a room that is located at the lower right side of the original room mysteriously.

This mechanism is also a reflection of the symptoms of people with Alzheimer’s disease, who often experience short-term memory loss and forget why they are in the current space and what they were doing before as if they were suddenly teleported to an unknown location(Burns and Iliffe, 2009). We simulate the patient’s experience through teleport gates designed per the principle of “What you see is not where you go”, to form a sense of dislocation in spatial cognition, thus making players understand the seriousness of the disease more immersively, as well as to raise their attention to the disease in real life.

To anchor yourself in the dizzying Non-Euclidean space, the physical nature of sound will be your humble and reliable assistant. The sound waves bounce back when they hit physical obstacles thus helping you reveal hidden objects and entrances as well as giving you hints on what to do next. The directional information of sound source makes it possible for you to listen for a clue to determine spatial position relations between rooms.

The essential difference between each individual lies in their unique experience and memory. Explore the memory rooms that bring together important memories at different stages of life, and find the anchor of a peaceful mind from the chaotic spiritual world.

Game Download Link

A fully playable game demo and game development project can be found via below link:

Google Drive link for game download

The game was developed completely using the Unreal Engine blueprint programming system, original codes can be found within the project files named as “DMSP.zip”.

We are actively working on improving the game and will publish the game on Steam for easier access once it’s ready.

Project Handbook and Docs

The project handbook explains the inspiration, game setting, mechanism, gameplay, and work allocation of the project visually to give a more clear illustration of the project’s aims.

You can find the handbook here: Project Handbook

PPT and videos for final presentation: Slides and Video for Presentation

Full Gameplay Demonstration

A walk-through screencast of our game can be found below:

Dev Logs and Presentation Documentary

Videos of our development process, presentation day exhibit build process, and player interviews can be found below:

Game Theme Research and Narrative Design

All the memory rooms together tell a unique story about the spiritual world, see the final design details from below posts:

Game Flow and Narrative Script

Alzheimer’s research

Initial ideas and inspirations can be found here:

Game Narrative and Inspirations

Inspiration-narrative

Room Theme Design

Finalized memory maze includes 8 different rooms representing 8 different stages of life, design details can be found below links:

Infancy-Room Design

Toddlerhood-Room Design

Early Childhood-Room Design

Late Childhood-Room Design

Adolescence – Room Design 

Early adulthood-Room Design

MiddleAdulthood-Room Design

Late Adulthood-Room Design

The intermediate iteration of room designs can also be found below for comparison which demonstrated the evolution of room designs:

Room Theme Concept (Part 1)

Room Theme Concept (Part 2)

Room Theme Concept (Part 3)

Room Theme Concept (Part 4)

Room Theme Concept (Part 5)

Room Theme Concept (Part 6)

Room Theme Concept (Part 7)

Room Theme Concept (Part 8)

Room Theme Concept (Part 9)

Gameplay and Experience Design

Though every player will experience the memory rooms in a different sequence according to their decision-making in real-time during playing, the experience and gameplay of each individual room are settled and documented as in the below link:

Game Flow and Narrative Script

Sound Design and Spatial Audio System

Sound plays a vital role in our games, not only as a core game mechanic that enriches the player experience but also fulfills the emotional building needs of our memory chambers. You can find sound design demos and research via below links:

Final Sound Design:

Sound Design of all rooms

Initial Ideas:

Ideas and Plans for Sound Design (SFX)

Methods for implementing spatial audio

Musical Soundtracks

Music plays an important role in the game to embody the character and emotions of each room and elevate the visual designs for the player. Having a cohesive musical soundtrack also serves to build an overarching sense of connectivity between the different rooms, and having several musical motifs reoccur in different places creates a sense of continuity within the game, notably the motif of the main theme, Memories Lost, which manifests across different tracks in various different styles and inverted forms. A variety of different instruments and musical styles was used to give each room/level its own unique identity and aesthetic and go hand in hand with the room’s individual look.

Musical Soundtrack documentation log

NB: As WordPress only has the space to contain mp3 audio files, the wav files have been uploaded to SoundCloud for easier access and documentation.

Complete SoundCloud playlist:

Final Musical Soundtrack designated by room:

Musical Soundtrack: Baby Room

Musical Soundtrack: Toddlerhood Room

Musical Soundtrack: Early Childhood Room

Musical Soundtrack: Late Childhood Room

Musical Soundtrack: Adolescence Room

Musical Soundtrack: Early Adulthood Room

Musical Soundtrack: Middle Adulthood Room

Musical Soundtrack: Late Adulthood Room (main theme)

Initial Ideas and Iterations:

Ideas for Musical Soundtrack

Musical Soundtrack: Late Childhood Room (original version)

Technical Details

Multiple complex interactions were involved in the whole gameplay process, object-oriented programming principle was used when making the game as the majority of gameplay was driven by object interactions. Implemented systems and technical details can be found via below link:

Technical Details of Game Implementation

Bug tracking and Game Iteration

UI Design

As the progression of the game process mainly depends on the interaction between players and key items, guiding players to find the location of interactive items became a very important part of UI design.

We provided both static and dynamic user interfaces to improve the usability and intuition of the game, you can find details via below link:

UI Design and Implementation

“Play Cube”: Physical Room Setup

To make the experience more immersive for the player in the physical environment, we designed the “Play Cube” as a presentation unit for each player, you can find final design details via below links:

Presentation/Exhibition-Research

Initial ideas can be found here:

Ideas on Staging the Physical Room 

Final Workload Allocation Visualization

To better track all workloads distributed to each member of the group, we used 3rd party tool “Notion” for work planning and visualization, you can find the work distribution via below links:

Notion Workload Tracking By Individual Distribution

Notion Workload Tracking By Work Type

Each of the mission blocks in the above link represents an individual task that required a similar amount of time and effort to accomplish, so the number of mission blocks assigned to a specific person could demonstrate the relative workloads distributed to that individual, together with the number of posts posted, 2 parts of tracked tasks constitute the total contribution of each member to the project.

Credits

Project Lead – Roger Liu

Art Design – Bohan Chen, Ruxin Wang, Alexandria Muhammad, Linteng Yang, Roger Liu

Sound Design – Andrew Galvin, Zhaoyi Yan, Yunjia Chen

Programming – Roger Liu, Bohan Chen

Narrative Design – Bohan Chen, Ruxin Wang, Zhaoyi Yan, Alexandria Muhammad

Gameplay and Level Design – Bohan Chen, Roger Liu

Quality Assurance – Bohan Chen, Zhaoyi Yan, Ruxin Wang

Photography and Video Editing– Linteng Yang, Ruxin Wang, Zhaoyi Yan

Publicity Graphics Design – Ruxin Wang, Zhaoyi Yan

 

Special thanks to our dear project supervisors, Andrew and Eleni, for their insightful guidance and advice as well as unsparing support on the project.

References

Burns, A. and Iliffe, S. (2009). Alzheimer’s disease. BMJ, 338(feb05 1), pp.b158–b158. doi:https://doi.org/10.1136/bmj.b158.

css.php

Report this page

To report inappropriate content on this page, please use the form below. Upon receiving your report, we will be in touch as per the Take Down Policy of the service.

Please note that personal data collected through this form is used and stored for the purposes of processing this report and communication with you.

If you are unable to report a concern about content via this form please contact the Service Owner.

Please enter an email address you wish to be contacted on. Please describe the unacceptable content in sufficient detail to allow us to locate it, and why you consider it to be unacceptable.
By submitting this report, you accept that it is accurate and that fraudulent or nuisance complaints may result in action by the University.

  Cancel