Inspiration

PotionTown was born from a love for cozy fantasy games and the satisfying, hands-on craft of alchemy. We wanted to create a mobile experience where players don't just tap a menu to craft, but actively participate in brewing bubbling potions, discovering ancient forgotten recipes, and fulfilling eccentric requests from quirky town villagers. Our goal was to blend deep modular crafting with an elegant, non-intrusive mobile monetization loop powered by RevenueCat.

What it does

  • Hands-On Cauldron Crafting: Mix, boil, stir, and brew dozens of distinct potions across 5 elemental color categories (Red, Blue, Green, Yellow, White).
  • Shop & Economy Management: Balance ingredient costs, customer satisfaction, and shop reputation.
  • Modular Recipe Discovery: Experiment with rare herbs, mystical mushrooms, and celestial ores to unlock legendary concoctions.
  • Fair & Player-First Monetization: Integrated with RevenueCat to offer consumable ancient currency packs ("Kadim Para"), non-consumable Quality of Life upgrades ("Remove Ads"), and a seasonal "Potion Pass Premium" unlocking exclusive aesthetic cauldron skins and decorative town assets.

How we built it

  • Engine & Graphics: Built in Unity using the Universal Render Pipeline (URP) 2D with custom shader graph effects for bubbling liquid dynamics, ambient magical lighting, and glow effects.
  • Clean Architecture: Designed with a strict ScriptableObject-first architecture (RecipeData, ItemData, CustomerOrderData), decoupling UI logic from game systems for modularity.
  • Monetization Engine (RevenueCat): Implemented via RevenueCatManager.cs, wrapping the RevenueCat SDK to handle entitlements (potion_pass_premium, remove_ads) and consumable offerings. We built an offline-safe fallback mechanism and an editor setup wizard to streamline testing.

Challenges we ran into

Balancing a fluid 2D fluid simulation and visual feedback on mobile constraints was tough. On the business side, designing a mobile game economy that feels rewarding without turning into a predatory "pay-to-win" wall required multiple iterations. RevenueCat's clear separation between Entitlements and Offerings allowed us to decouple the store UI completely from the game's reward distribution logic.

Accomplishments that we're proud of

  • Delivering a rich, cozy aesthetic with vibrant handcrafted visual effects and reactive audio.
  • A rock-solid, decoupled ScriptableObject architecture where game designers can balance recipes without touching code.
  • Seamlessly integrating RevenueCat to support multiple purchase flows (consumable currency, season pass entitlement, and ad-free unlocks) cleanly within a Unity C# codebase.

What we learned

We gained deep insights into mobile game economies, player retention loops, and the power of RevenueCat in abstracting away platform-specific billing nuances in Unity.

What's next for PotionTown

  • Introducing co-op multiplayer potion brewing bench sessions.
  • Expanding the town map with foraging expeditions and herbal gardening zones.
  • Live-ops seasonal events and dynamic RevenueCat paywall experimentation.

Built With

Share this project:

Updates

Submission history