WaddleWeCookToday - FinaPet

Group Members

  • Tee Jia Hong (U2420150G)
  • Kelvin Lek Teng Chee (U2421281C)
  • Kyla Hong (U2422308L)
  • Toh Kok Soon (U2423531K)

Project Overview

As a team, we noticed from our own lives and the people around us that many young adults simply don't track how much they spend. Some of us have experienced firsthand the stress that comes with budgeting, or even avoided looking at our finances entirely because it felt overwhelming. This problem isn't just personal—it's reflected in the broader statistics in Singapore.

A lack of knowledge and a fear of stress seem to prevent people from developing good financial habits. We also found it relatable that over 40% of actions we perform daily are driven by habit (Duke University), not conscious decision-making. This hit home for us—our bad money habits weren’t necessarily about poor decisions, but a lack of awareness and positive routines.

To tackle this, we created FinaPet, a gamified app that rewards users with in-game coins for saving money. These coins can unlock pets and in-game items. By combining financial discipline with game mechanics, we engage especially younger audiences to build healthy saving habits.


Functionalities

User Authentication

Fig 3.1 - User Authentication Scene Users can register or log in, with credentials stored in a MySQL database.

Video Introduction & Main Menu

Fig 3.2 - Intro Video Scene New users watch a brief intro on budgeting and receive their first pet via in-game currency.

Fig 3.3 - Main Menu

Saving Target Setting

Fig 3.4 - Budgeting Page Users input their monthly allowance. If they save 30% or more, they get a reward.

Fig 3.5 - My Profile Page A daily savings target is also calculated and shown on the user profile.

Saving Tracking

Fig 3.6 - Diary Page Users track expenses daily. One entry per day is allowed. Meeting the daily target grants a reward.

Shop

Fig 3.7 - Shop Scene Users can spend in-game currency on pets and food items.

Pet Interaction

Fig 3.8 - Pets Scene Users select and interact with pets. If a pet is not owned, a red button is shown.

Fig 3.9 - Pet Interaction Scene Users can feed or pet their animals to maintain their happiness and hunger levels.

Fig 3.10 - Pet Ran Away Popup Neglected pets run away, and data is deleted from the database.


Pain Points It Solves

1. Lack of Motivation to Save

FinaPet makes saving fun and rewarding by offering short-term incentives for long-term habits.

2. Lack of Financial Education Resources

Gamifies financial literacy for youths who might not get proper exposure in school or at home.

3. Financial Stress

Makes budgeting manageable and even enjoyable, empowering users to feel in control.

4. Overspending

Visualises spending habits. 71.9% of individuals who track their expenses avoid overspending (Lim, 2025).


How We Built It

This was also our first time creating custom game assets—both artwork and music. We spent a lot of time designing the pets and user interface art ourselves, learning as we went. Many of the art assets also include animated sprites, and it was our first experience trying to draw and animate characters. The process was completely new to us and involved a lot of trial and error, but it ultimately allowed us to bring our ideas to life in a more expressive way. The music used in the app was also composed in-house using simple digital tools, and while it was challenging, it gave our project a personal and cohesive touch.

Unity Scenes & Canvas

  • UI implementation

Unity GameObjects & C# Scripts

  • Implements core game logic

UnityWebRequest

  • Sends HTTP requests to backend (JSON/form-data)

Apache Web Server

  • Hosts PHP scripts
  • Acts as API between frontend and MySQL
  • Schedules automated tasks (e.g., simulate hunger)

MySQL Database

  • CRUD operations:
    • C: Account creation, pet purchases, daily expenses
    • R: Retrieve saved allowance and profile data
    • U: Update allowance
    • D: Delete pet data if it runs away
  • Database is secure, not publicly accessible

Challenges

As a group, this was our first time building something of this scale, and we faced more than a few bumps along the way. At one point, we lost our database to a hack, which was incredibly disheartening—we had to rebuild from scratch.

We also struggled with our initial tech stack. Supabase looked promising at first, but we quickly realized it wasn’t a good fit for our project. This forced us to change direction mid-way, adding pressure to learn MySQL fast. None of us had much Unity experience either, so we relied heavily on tutorials and community support.

Security

  • Lost our database to a server hack
  • Rebuilt system with tighter security controls

Unfamiliar Tech Stack

  • Initially tried Supabase, found unsuitable
  • Switched to MySQL
  • Limited experience with Unity slowed development

Game Balance

  • Difficult to tune reward system without playtesting

External Libraries

  • Unity Library

Future Considerations

Procedural Generation of Pets

  • Randomise body parts for visual variety
  • Encourage users to seek rare pets

Breeding & Growth System

  • Pets grow and breed
  • Breeding items in shop
  • Deepens user engagement

Enhanced Spending Statistics

  • Users categorize expenses (e.g., $100 groceries, $50 wants)
  • Graphs and data visualizations for better budgeting

Leaderboards

  • Rank users based on:
    • Amount saved
    • Achievements
    • Number of pets
  • Encourages healthy competition and consistent usage

Daily Quizzes

  • Short quizzes (MCQ, crossword, trivia)
  • Earn streaks and leaderboard points
  • Builds habit and literacy, inspired by Duolingo

Conclusion

FinaPet combines financial education and habit formation into a single gamified platform. By addressing motivational, educational, and emotional barriers, we hope to help users build better financial futures through fun, consistent engagement.

Share this project:

Updates