Underworld Teahouse
Role
Solo
Date
Apr 2025
Engine
Unity
I imagined the full version of this game as an interactive tea-making game that happens in Chinese underworld. Player will roleplay as MengPo, a character in Chinese folk mythology who cooks soup in underworld to eliminate their memories before reincarnation. Game mechanics will be similar to “Va11-Hall-A: Cyberpunk Bartender Action”, focusing on making tea using different ingredients and procedures to guide/change your clients' lives.

Inspiration
Tea culture has a long history in China, where tea is not just a drink but a way of life and thinking. It brings calmness and harmony, which are especially valuable in today’s busy world. While there are games about bars and bartending that explore life choices, this culture doesn't fully match my own experiences or feelings.
As someone who loves tea, I appreciate the peace and reflection it provides. Making, drinking, and sharing tea allow people to slow down, reflect on themselves, and gain new insights about life. After researching the market, I've noticed there aren't many games deeply exploring personal growth and life experiences through tea culture. Therefore, creating this game will fill a market gap, offering players a unique chance to experience the tea culture’s beauty and find moments of calm and self-awareness.
Story
Underworld Teahouse is set in a quiet corner of the Chinese underworld, where time moves slowly and memories cling more tightly than souls. The player takes the role of Mengpo, reimagined not as a single forced-forgetfulness NPC, but as a patient tea master who runs a small teahouse by the River of Forgetfulness. Souls arrive carrying fragments of their previous lives—regrets, attachments, unfinished business—and instead of being compelled to forget, they are invited into a gentler process of letting go through tea.
The core theme is healing through ritual and empathy. Tea-making is treated as an act of care: each blend’s base, ingredients, temperature, and effect reflect both Chinese tea culture and the emotional state of the client. Players are encouraged to observe personalities and stories, then translate that understanding into precise yet meditative preparation. This ties mechanical correctness (brewing “right”) to narrative meaning (helping a soul reach peace), exploring tensions between remembering vs. forgetting, duty vs. mercy, and tradition vs. personalization.
Narratively, each loop centers on a single visitor: they reveal hints about who they were and what they carry, the player responds by selecting or improvising a tea, and the resulting reaction—approval, discomfort, bittersweet acceptance—signals how well the player has understood them. In the full vision, a sequence of such encounters gradually sketches a wider portrait of the underworld and Mengpo’s role within it, positioning the teahouse as a liminal space between judgment and compassion.
The tea-making process in this prototype is divided into several interactive steps. Players follow these procedures to brew a personalized teapot for clients in the underworld. Each step is simplified and streamlined for UI interaction and prototyping purposes.
1. Browse Recipes
Players can view tea recipes using different filters:
Name
Tea Type (e.g., black, green, floral, etc.)
Taste profile (e.g., bitter, mellow, refreshing)
Effect (e.g., calming, energizing, detoxifying)
2. Select Tea Base and Ingredients
The player chooses one primary tea base and optional ingredients (herbs or spices) according to the recipe or personal exploration.


3. Choose Teaware
[Skipped for Prototype]
This step is planned for future development. Different teawares may affect the outcome or suit various clients.
4. Measure Ingredients
[Skipped for Prototype]
While normally players would manually measure amounts, this is skipped in the prototype. Ingredients will be auto-measured once selected.
5. Boil Water
Players press a "Start Boiling" button.
A temperature slider allows players to adjust and monitor the water temperature.
Once the desired temperature is reached (based on the recipe), players press "Stop Boiling."
6. Brew the Tea
Player pour water into the teapot (公道杯), then pour tea into the teacup.
7. Serve the Tea
The final step: the player serves the tea to the client. Feedback is provided based on how closely the tea matches the recipe.

Level
Tea Types
Tea Type | Name | Taste Tags | Effect Tag | Ingredients | Description | Temp |
|---|---|---|---|---|---|---|
绿茶 Green | Worryless Biluochun | Fresh Tender | smoothing | Lotus Of Forgetfulness |
| 80-90 |
白茶 White | Calm White Peony | Mild Floral | calming | Soul Parting Herb |
| 95 |
黄茶 Yellow | Hidden Thoughts Bud | Sweet Lingering | reflective | Flower Of Quietus |
| 80-90 |
红茶 Red | Release Ruby | Rich Mellow | catthartic |
| 95 | |
乌龙茶 Oolong | Stream Whisper | Floral Honeyed | healing | Lotus Of Forgetfulness |
| 100 |
黑茶 Black | Quietue Pu’er | Deep Sweet | cleasing | Underworld Reishi |
| 100 |
Ingredient Types
Ingredients | English Translation |
|---|---|
忘川莲 | Lotus of Forgetfulness |
离魂草 | SoulParting Herb |
寂灭花 | Flower of Quietus |
冥光灵芝 | Underworld Reishi |
Technical Design
Data-Driven Tea System
(RecipeData, TeaBase, IngredientBase)
The core tea logic is fully data-driven. All teas are defined through RecipeData, a serializable structure that specifies tea name, base type, ingredient list, ideal temperature window, taste tags, effect tag, and a short description. It also exposes helper methods for grouping and filtering by initial, tea type, taste, effect, and ingredient “short names,” enabling rich queries without hardcoding UI logic.
Interactive UI elements are thin wrappers around this data model. TeaBase represents selectable tea bases; IngredientBase represents optional underworld ingredients. Each prefab configures its own enum type and sprite, then routes click events into TeaSessionManager via a single AddTea / AddIngredient call. This separation cleanly decouples presentation from game logic and makes it trivial to add or rebalance teas and ingredients by editing inspector data instead of code.
Tea Session Manager
(TeaSessionManager)
TeaSessionManager is the central controller for a full brewing session: it tracks the selected tea base and ingredients, controls the boiling process, validates the final brew against a target recipe, and drives end-of-level flow. Each level specifies its required recipe via LevelManager (levelTargetRecipeName); on start, the session loads that recipe, initializes UI state, and wires core buttons (serve, trash, menu, next level) at runtime.
The boiling mechanic is implemented with a coroutine that increments water temperature over time and syncs it to a slider, reinforcing a sense of timing and control instead of an instant “set value” action. Serving a tea performs three checks—correct base, correct ingredient set (order-agnostic), and temperature within tolerance—then provides immediate textual feedback and, on success, unlocks the end-level canvas and progression buttons.

Dynamic Tea Menu UI
(TeaMenuUIManager)
The recipe reference menu is fully dynamic. TeaMenuUIManager pulls from the same allRecipes list used by gameplay and auto-generates category buttons and recipe lists at runtime. Players can browse teas by Name, Type, Taste, or Effect; each filter uses a helper function on RecipeData to build the appropriate subsets without manual wiring.
When a category is chosen, the system instantiates buttons for matching options, then builds a scrollable recipe list. Selecting a recipe opens a detail panel with title and description plus previous/next navigation. This helps with possible future development when more data (teas, ingredients) need to be added.




Level Flow
LevelManager defines, per scene, which recipe is the “correct” one and which scene comes next, letting designers script a narrative/learning progression without editing core logic. TeaSessionManager and the end-level UI read directly from it to load menus or advance levels. MenuScript provides simple, clean scene navigation hooks for UI buttons. Together, they form a small but clear level pipeline suitable for extending into a multi-chapter experience.
Audio & Feedback
SoundManager centralizes BGM and SFX as a persistent singleton. It maintains a dictionary of named sound effects (boiling, success, fail, trash, selection, menu click) and exposes focused helpers like PlayOrResumeBoilSound, PauseBoilSound, and ResetBoilSound. TeaSessionManager calls these during boiling and serving, aligning audiovisual feedback with the player’s actions.
Arts
For a quick prototype and to get a vibe of what the game might feel like, I drew some UI panels myself, using Chinese-style ink-painting brushstrokes and warm color, to create a calm atmosphere.
References
Assets
YouChun by JieMaiPiZhenTou
Boiling Water Sound
https://freesound.org/people/15GPanskaSupsakPatrik/sounds/461213/
Google Font Special Elite
https://fonts.google.com/specimen/Special+Elite
Existing Games










