Inspiration
We wanted to make a mobile game that takes almost no explanation to start playing.
The idea behind Save Peps is deliberately tiny: two Peps are separated, three objects are available, and one tap decides what happens. The challenge was seeing how far we could push that simple interaction while keeping every rescue readable, playful, and surprising.
We also wanted wrong answers to be entertaining rather than punishing. There are no lives to lose or harsh fail states. A wrong choice triggers a quick visual gag, a dry one-liner, and an immediate retry. :contentReference[oaicite:0]{index=0}
What it does
Save Peps is a one-tap 3D puzzle game for Android.
Each rescue places two Peps inside a fixed-camera toy diorama with three tappable objects. Exactly one object reunites them, while the other two trigger playful failures.
The game contains 12 rounds, 36 rescues, 12 distinct worlds, and 36 stages. Each world has its own physical rule, geometry, camera, atmosphere, environmental motion, and sound identity.
Within each round, the experience escalates from a small local event, to a larger system or landscape event, and finally to a world-scale visual transformation.
Rounds 1–10 are free. Rounds 11–12 can be unlocked with a single $0.99 lifetime purchase powered by RevenueCat. :contentReference[oaicite:1]{index=1}
How we built it
Save Peps is built in Unity 6.3 LTS using C#, URP, IL2CPP, ARM64, and Android App Bundles.
The game is highly data-driven. Each rescue is a RescueDefinition containing its environment, Peps, three choices, correct answer, and timed choreography steps. New rescues can be authored largely as data rather than custom gameplay code.
We built our own lightweight choreography runtime for movement, visibility swaps, environmental transformations, camera impact, haptics, atmosphere transitions, and ambient motion.
We also created internal authoring and QA tools including:
- catalogue-wide content validation
- one-click outcome previews
- a Rescue Gauntlet for automatically playing every outcome
- stage contact-sheet rendering
- deterministic Tester Mode
- profile and entitlement simulation
- direct round/rescue targeting
RevenueCat's Unity SDK manages the lifetime entitlement, localized pricing, purchase recovery, and restore flow. We repeatedly tested the game on a physical Pixel 4 rather than relying only on the Unity Editor. :contentReference[oaicite:2]{index=2}
Challenges we ran into
The biggest challenge was realizing that technically different puzzles could still feel visually identical.
Our early rounds reused too much of the same spatial grammar and visual impact. We eventually established a much stricter quality bar: Rescue 1 should feel local, Rescue 2 should affect a larger system or landscape, and Rescue 3 should physically transform the world.
That led to major revisions across all 12 rounds.
We also encountered mobile-specific problems that were easy to miss in the editor, including z-fighting, visibility-transition artifacts, camera framing issues, touch behavior, and Android performance differences.
Another challenge was monetization. A subscription felt wrong for a compact casual game, so we simplified everything to one $0.99 lifetime unlock after giving players the first 10 rounds free.
Accomplishments that we're proud of
We're proud that Save Peps became a real production Android game rather than stopping at a hackathon prototype.
We shipped:
- 12 visually distinct worlds
- 36 individually authored rescues
- playful correct and incorrect outcomes
- strong rescue-to-rescue visual escalation
- progression with ★ and ✓ mastery marks
- polished sound, haptics, pause, progress, and navigation
- a development-only Tester Mode for fast QA
- a complete RevenueCat-powered lifetime purchase and restore flow
- a production release on Google Play
We're especially proud that the same extremely simple interaction remains understandable from the first garden rescue through much larger worlds like the deep ocean, orbital station, foundry, and neon skyline. :contentReference[oaicite:3]{index=3}
What we learned
We learned that simplicity in controls does not mean simplicity in design.
When the player can only tap one of three objects, every visual cue, composition, animation, and consequence matters more.
We also learned that step counts and animation duration are poor measures of excitement. A climax feels bigger when the environment physically changes, the route transforms, and the player's understanding of the scene changes with it.
Finally, testing on a real device early and often was essential. Several problems that looked perfectly fine in the editor became immediately obvious on a phone.
What's next for Save Peps
Save Peps is now live, so the next phase is about real players.
We want to learn which worlds people enjoy most, where they stop playing, how often they experiment with wrong answers, and whether the simple $0.99 lifetime unlock feels fair.
We'll use those signals to improve onboarding, pacing, retention, purchase conversion, and the weakest parts of the experience before deciding how much further to expand Save Peps.
Built With
- android
- arm64
- csharp
- edm4u
- googleplay
- il2cpp
- openupm
- revenuecat
- unity6
- urp

Log in or sign up for Devpost to join the conversation.