We were inspired to use our collective backgrounds in computer science, linguistics, psychology, and cognitive science more generally to produce a non-traditional video game: one whose objective is not points but rather positive self-affirmation. The prompt for Huawei's Mental Health Challenge, among others, spurred us to use our skills and knowledge for the collective good.
What it does
A game to take your mind off of reality. Delve into the world of Affirmations where positivity is key and mental health is the top priority!
Affirmation Adventure is an endless-runner platform game concept designed to combat negative self-talk and cultivate positive self-esteem over time, using knowledge from psychology and linguistics alongside skills from computer science.
Players run across a stage where not only the landscape is algorithmically generated, but so are words! Using the principles of natural language syntax, words are drawn from a dictionary of arrays to be generated into the game as entities according to their part of speech.
Players can choose to either collect or avoid certain words as they traverse the stage. When players collect words that make a full sentence, the game displays the sentence and gives feedback depending on the positive or negative value of key words in the sentence.
Using the psychological principle of reinforcement, the game pairs positive affirmations with inherently pleasant sounds and animations, and negative statements. Over time, a player that otherwise often exhibits negative self-talk might find themselves building more and more positive, self-affirming statements - and smiling at them!
The highest-valued (positive and complex) sentences are stored in a list where the player can select one to wear as a badge. Once a day, the game sends the player a push notification with an heartwarming affirmation :)
How we built it
- Used XCode and Swift 4 - see more details below!
- Lots of StackOverflow
Challenges we ran into
- Implementing the physics engine using SKPhysics and ironing out the quirks
- Balancing fun, accessibility, challenge and reward
- Reconciling compatibility issues across OSes using a virtual machine, command-line shenanigans, and more
- The laws of spacetime providing us with merely 36 hours!
Accomplishments that we're proud of
- An original concept that truly synthesizes our collective knowledge for social good
- Getting the physical bodies to interact, adding moving platforms and entities such as our hero and flying creatures, and animating it all to form a cohesive and dynamic environment
What we learned
- Coding in Swift with XCode, AppCode, and CLion, the command line and a virtual machine concurrently across multiple operating systems
- Using physics simulation toolkits like SKPhysics
- Designing and creating unique and functional game elements, and bringing them to live through animation
What's next for Affirmation Adventure
- Thoroughly implementing word-entities
- New character skins
- More variable terrain
- Rewarding affirmations with upgrades, including distanced targeting of negative word-entities by the player (implemented but unexposed for aesthetic reasons) and shields from negative word-entities
- Ensuring an enjoyable gameplay experience that is stimulating and rewarding but also forgiving and accessible