RevenueCat Shipaton 2026 · with Hanna Shcharbakova
Rainroam: one action RPG, drawn by two renderers
Rainroam is a souls-lite action adventure on islands above the clouds. You play a cat knight or a frog Rainkeeper, take quests in towns, clear dungeons and fight the guardians at the end of them, all with one thumb on a phone held upright. The whole game can be drawn in soft-lit 3D or in pixel art, and you can switch between them at any moment, even in the middle of a fight. It went from a plan in August to the web, Galaxy Store and the Mac App Store in about six weeks; the iPhone version is in its third round of App Store review.
- 13 days
- first build to Galaxy Store
- 2
- renderers, one game state
- 13
- dungeons and caves
- 3
- languages
Played with one thumb
We like action RPGs on consoles and wanted one that works on a phone in one hand. Rainroam is played in portrait: drag to move, release to attack, tap to dash. A second finger can dash without letting go of the stick. Basic attacks are automatic, so the thumb is free for positioning, stamina and timing, and every enemy attack draws its exact shape on the ground before it lands. Landscape and keyboard play follow the same rules.
Two renderers, one game state
The 3D view runs on WebGPU through TypeGPU; the pixel-art view runs on Phaser and WebGL. They share no drawing code: each has its own characters, animations, scenery and effects, and the HUD, map, fonts and menus change style with them. What they share is the simulation. Both read the same game state every frame, so switching restarts nothing: the hero, the enemies, the incoming attack and the save stay exactly where they were. It also covers older phones, where the full game runs in pixel art without WebGPU.
What there is to do
- 7 regions, from pink lakes to the snowy north, each with its own time of day and weather
- 5 towns with residents and questlines, starting from Bellwether
- 13 dungeons and caves with seeded layouts, secrets and a guardian at the end
- 2 heroes: a cat knight who fights up close and a frog Rainkeeper who casts from range
- 4 mini-games between fights: fishing, a paper-boat regatta, mushroom foraging and a concert
- an original synthesized soundtrack that tightens in fights and settles at lanterns
Enemies drop embers. You can push on, or walk back to a lantern to spend them on levels, attributes and oaths; die, and they wait where you fell until you fetch them. The Wishing Well, in beta, is a separate hardcore roguelike: six depths with a keeper at the end of each, 75 artifacts, synergies and one life.
Problems worth writing down
keep two renderers in step
Switching mid-fight only works if both renderers agree on everything that matters for play: hitboxes, the ground outline of every incoming attack, camera angle and timing. Neither renderer owns any of it. Both read the same simulation each frame, so a blow that starts in 3D lands exactly the same way in pixel art.
a driver bug only real hardware shows
On the Galaxy S25 an Adreno driver issue made skinned characters and their shadows disappear. It never showed in emulators; Samsung Remote Test Lab reproduced it. The fix was a different packing of the GPU buffers, and it reached the store build the same day through the app’s signed live-update channel.
pick the renderer per device by testing it
Phone models and chipsets say little about what the WebView actually supports, so the game probes graphics support inside the real WebView at start-up. Devices without WebGPU get the pixel-art renderer, which has the whole game; devices with it let the player choose.
Galaxy Store billing through RevenueCat
RevenueCat’s Capacitor plugin does not expose Galaxy Store billing. Its native Android SDK does, so that SDK is bridged into Capacitor by hand: Samsung IAP sells one non-consumable Full Game, and RevenueCat keeps the entitlement and handles restores. It was tested with real purchases on Galaxy hardware.
Pricing
The first island and its first dungeon are free. At the South Bridge you can buy the Full Game once for $4.99, and the same save carries on through the rest of the story; the same purchase opens the deeper levels of the Wishing Well. There are no ads, subscriptions, energy timers or paid power. A free first chapter and one price is how adventure games are usually sold, and it lets people decide whether they like the game before paying.
How it got here
01 Mid-August: planning
The idea: something like a console action RPG that works on a phone held in one hand, on a train. A few throwaway prototypes followed by early September.
02 September 17: version 0.0.1 on the web
A cat knight in a voxel dungeon, deployed to Cloudflare Pages on day one. Everything after that shipped continuously from the same TypeScript codebase.
03 September 30: Galaxy Store and Shipaton
Galaxy Store approved version 1.0.1, and the game was entered in RevenueCat Shipaton 2026 for the Best Game, RevenueCat Design and Best App for Galaxy awards.
04 October: the Mac App Store and the Wishing Well
The Mac version went live on the App Store, and version 1.1 added the Wishing Well, a hardcore roguelike mode in beta. The iPhone and iPad version is in its third round of App Store review.
Like Orb Knight, it was built with coding agents: Claude Code and Codex wrote most of the roughly 1,400 commits, while direction, review and a lot of playtesting stayed with us. Hanna Shcharbakova is the other half of the team.
The trailer
Made from real gameplay. Opens on YouTube.
What it runs on
- language
- TypeScript, one codebase for web, Android, iOS and Mac
- 3D
- WebGPU through TypeGPU: typed buffers, pipelines and WGSL shaders
- pixel art
- Phaser on WebGL, its own sprites, animation and effects
- shells
- Capacitor on Android and iOS, a native Mac app
- web
- Cloudflare Pages, with signed live updates for the store builds
- purchases
- RevenueCat, with Samsung IAP on Galaxy Store
- languages
- English, Russian and Ukrainian
What's next
Tuning the Wishing Well while it is in beta, then full controller support, and after that consoles.