Back to Portfolio

Rocket Maths

A quick-fire true-or-false arithmetic game where a rocket climbs with every right answer — rewritten from scratch after the old source was lost, with no account and nothing to buy.

Free · No account · Plays offline · 14 languages

AndroidKotlinJetpack ComposeDataStoreAdMob
A Time Attack flight: score 76, combo x4, 33 seconds left, the rocket on its way to the Moon, the equation 6 + 13 = 22, and green true and red false buttons

Problem

The old Rocket Maths was a reskin of the CodeCanyon "Freaking Maths" template: Java, compileSdk 23, Play Services 9. Its source was lost, so the old app on Google Play could no longer be updated at all. Rewriting it was the only way to keep it alive.

Solution

Rebuilt it from scratch in Kotlin and Jetpack Compose under the same package, with not a line taken from the template: code, icon, sounds and store art are all new. The core stays — an equation appears, answer true or false before the clock runs out — and around it sits progression that brings people back: combos, an altitude track, ranks, trophies and rockets in a Hangar. One constraint shaped the rest: ads must never get in the way of play, so UMP consent comes first, a banner never sits next to the answer buttons, and rewarded ads are always opt-in.

One flight, from the first question to the Hangar

Taken from the game actually played on an emulator: the progress, coins and trophies on these screens came from real runs. The screens are the Indonesian build; the game ships in 14 languages.

Swipe to see more screens →

What's in the game

A run lasts from a few seconds to a minute; the rest is reasons to play again.

🚀

Two modes

Classic ends on one mistake or a timeout and tightens the clock by 2% per answer; Time Attack gives 60 seconds and a mistake costs 5 of them.

➗

Three difficulties

Easy for addition and subtraction, Medium adds multiplication, Hard adds division and scores three points per answer.

🔥

Combo and speed bonus

A multiplier climbs from x1 to x5 on a streak of right answers, plus a point for answering fast.

🪐

Altitude track

The score carries the rocket from the launch pad past the Moon and Mars to a new galaxy.

🏆

Ranks, trophies, Hangar

XP with levels and eight ranks, 15 trophies, and six rocket skins bought with coins earned in play.

🎁

Daily reward

A seven-day streak of coin rewards, which a rewarded ad can double if you want it to.

The numbers behind it

Taken from the code and its build.

Trophies

15trophies

From the first flight to collecting every rocket.

Rocket skins

6rockets

One free, five bought with coins from 150 to 3,000.

Languages

14locales

Picked inside the game, or per app in Android 13+ settings.

JVM tests

15tests

The equation generator and the progression are tested without an emulator.

What leaves the device, and what doesn't

Scores and progress are never part of it.

  • No account, no sign-in, nothing to buy. Coins only come from playing; nothing is sold.
  • Progress stays on the phone. Scores, coins, rockets, trophies and settings are stored locally, and ride along in your Android backup if backup is on.
  • The connection is used for ads, consent and Play reviews. The game itself plays in airplane mode.
  • Ads through Google AdMob, never during play. A banner on Home and Game Over, a full-screen ad at most once every three games and 90 seconds, rewarded ads always opt-in.
  • Consent before ads. In the EEA, the UK and Switzerland Google's UMP form appears before the ads SDK starts, and the choice can be changed from Settings.
  • No analytics, no crash reporter. No Firebase and no third-party tracker besides the ads SDK.
Read the full privacy policy →

Important note

Read this before installing.

This new Rocket Maths continues the old listing on Google Play under the same package, so existing players get it as a regular update. Its Play signing key has been rotated, which is why this version needs Android 11 or newer.

The game is for a general audience aged 13 and up, and is not enrolled in Google Play's Families programme.

Rocket Maths is not part of my apps factory; it’s an old app I rescued. With the old code gone, the only way to update it is the same package, so the version line carries on from the old one: 1.02 was the last build on the production track, and this rewrite ships as 1.1.0. Play App Signing now uses a rotated key without the legacy one, and Play refuses to sign APKs below API 30, so minSdk went up to Android 11.

Every asset is made by a script — the adaptive icon, the feature graphic and the sound effects — so changing the look means changing a script and running it again, not opening an image editor. The fourteen languages were picked for high ad CPM plus the home market, and because the in-game picker can switch to any of them, the bundle is deliberately not split by language.