Love, Healing, and Other Crimes
Created a 2D point-and-click educational history game in 3 months for JapanLab in a team of 5 people.
Date
November 2025 (In-development)
Role
System Designer, Programmer
Skills
Unreal Engine 5, Blueprint visual scripting, Rapid prototyping and playtesting, Communication with non-developers, Self-motivation and self-learning
Summary of Contributions
- Potion brewing gameplay and questline programming
- Gameplay and quest balancing
- Weekly delivery of new prototype to the team
- Asset implementation in engine including sound, art, UI, and dialogues
- Creation of development pipeline to facilitate smooth workflow between programmer and narrative roles
Potion brewing gameplay
Quest dialogue progression setting function build to be reuseable for both progressing dialogue and jumping to a part
Quest navigation in quest menu
System balancing in Google Sheet
Using formatted .csv file to import quest data into the engine
Highlights
Creation of Attribute-Based Potion Brewing Gameplay
- The game's goal is to teach players about history in a fun, interactive way, with its target audience being college/high school students who want to learn about history. With this in mind, I wanted to design a calm and puzzle-like cooking mechanic without a time limit.
- Since the potion's attributes cannot exceed the bars, players get to experiment with different orders of adding the ingredients and how they affect the potion.
- With the difference threshold giving grace to the players, they can choose to move on with imperfect but acceptable potions or try until their potion is perfect.
- With the nature of the puzzle, there could be multiple solutions to meet a quest's ideal attribute, encouraging players for experimentation.
- The brewing idea was inspired by a Reddit post about different cooking mechanics in games.
Quests
- To give freedom to the players in accepting and completing quests, the quest system combines linearity and non-linearity. The levels affect the number of ingredients player use and the attributes they have to manipulate. Within the level, players can choose their own order and number of quests to complete.
- Each quest serves a purpose in teaching and challenging the players with something new, allowing for a balance between player skill and difficulty.
- With the difference threshold giving grace to the players, they can choose to move on with imperfect but acceptable potions or try until their potion is perfect. It also allows the designer to control how much mastery they want the player to have over the topic/learning objective of the quest.
- With the nature of the puzzle, there could be multiple solutions to meet a quest's ideal attribute, encouraging players for experimentation.
- The brewing idea was inspired by a Reddit post about different cooking mechanics in games.

Development Process and Iteration

Physical Prototype
- To see the player feel and test the core mechanic, I created a simple physical prototype and play tested it with my peers.


Early Slide Deck of Game Overview, Systems, and Objects
Early Builds
Prototype 0: The customer asks for a random potion and player gets xp if they click on the right potion.
Prototype 9: Added some UI buttons and implemented map UI and some written assets. Reorganized NPC classes to easily create many of them with customizable properties like appearance and quest ideal attributes.
How the Core Brewing Mechanic Evolved
- Currently, there are two outcomes when players submit a potion for a quest: they can either pass or fail. The early prototype of the game allowed for a spectrum of pass, the player getting higher reward the close they brew the potion to the ideal potion attribute that is randomly generated. However, this idea was scrapped as we moved to a more linear quest structure with set number of total quests.

Reflection
What went well:
- I was able to stay motivated and consistent throughout the semester while working on academic and extracurricular activities.
- I learned a lot about Unreal Engine in general and developing 2D games in it. I was also able to get more experience with Object Oriented Programming and optimizing workflow by creating reusable functions and data and string tables.
- My team was able to create a playable game by the due date and present at the Japanlab Expo.
Obstacles:
- As an educational history game, our team included non-developers like script writers and history researcher, which made communication very important and challenging. The solution I came up with is to come with a visual/playable prototype every meeting to ensure everyone was on the same page and the design was easy to understand.
Future Improvements:
- I would make the UI Navigation more player friendly. For example, allowing to start brewing in the quest screen.
- I would like to start utilizing public and private classes more.
- The problem in design is because we had to reduce the scope towards the end, the difficulty of quests within the same level and what they learn from the levels vary and are not in order. Once we add more quests, I would like to add quests that allows players to have enough practice to properly learn the mechanics and different ingredients.
- Currently, the suspicion meter doesn't really have a use since the players can know when brewing if the potion will be accepted or not. I want to adjust the design to make the gameplay higher stake.
- I want to implement an endless challenge game mode after the player clears the game once where they can just brew to match randomly generated potion attributes with a high score leaderboard.