1. The Morning Alarm Session Overview
When your alarm rings in WakeArena, you cannot simply tap dismiss or snooze. Tapping "Start Task" launches a cognitive session consisting of rotating mini-games.
- 60-Second Game Timers: Every individual mini-game has its own independent 60-second countdown timer.
- Passing Rule: You must successfully pass at least 3 out of the 5 games to clear the session, silence the siren, and earn speed-tiered coins.
- Audio Dimming: Tapping "Start Task" immediately drops the siren volume to 75% (implemented via
AudioManager.setStreamVolume()) so you can think clearly and solve puzzles without excessive volume.
2. The 5 Cognitive Mini-Games
The session draws from five calibrated challenges designed to stimulate distinct cognitive faculties and dissolve sleep inertia:
1. Visual Memory:
A visual recall game where you flip facedown cards to reveal colored geometric shapes. You must successfully find and match 3 pairs within the 60-second limit.
2. Colour Paint:
An inhibitory impulse control challenge. A color word (e.g., "RED") is displayed in an ink color that may or may not match its semantic meaning. You must verify the ink color and achieve 3 correct answers in a row within 60 seconds.
3. Sequence Memory:
A working memory challenge featuring 4 blocks and 6 distinct colors. The game flashes a sequence of colored blocks that you must replicate in exact order. Requires completing 3 correct sequences in a row within 60 seconds.
4. Ascending Order:
A numerical spatial scanning challenge. Six floating bubbles containing random integers appear on the board. You must tap all 6 bubbles in order from lowest to highest. Penalty rule: Making 2 consecutive wrong taps adds 1 extra bubble to the board.
5. Copycat:
A rapid alphanumeric pattern transcription game. Displays random 5-character strings composed strictly of letters and digits. Ambiguous look-alike characters (such as O, 0, I, l, 1) are explicitly excluded by the generator. Each string has a 10-second window; you must correctly transcribe and submit 3 out of 6 strings to pass.
3. The Checkout Barrier & Colour Tap Recovery Game
If you clear fewer than 3 games during your session, the alarm does not dismiss. Instead, you enter the Checkout Barrier. A 30-second inactivity timer starts immediately upon reaching the barrier.
At the Checkout Barrier, you have two options:
Option A: The Colour Tap Recovery Game
A second-chance recovery challenge that works offline without an active internet connection:
- You are presented with 10 sequential color commands under a strict 90-second timer.
- Passing: Completing all 10 commands silences the alarm, awards +10 coins, and adds +1 to your streak.
- Failing: If you fail or let the 90-second timer expire, the session confirms a penalty: -50 coins (never below 0) and +4 escapes.
Option B: Burn 1 TickPass
An emergency lifeline for mornings when you are sick, traveling, or unable to focus:
- Costs 1 TickPass.
- Adds +1 escape and causes 0 coin loss.
- Streak resets to 0: Burning a TickPass intentionally resets your active streak to zero.
- Requires Internet: TickPasses require an active internet connection to authenticate and deduct atomically via Supabase; they are disabled offline.
4. Anti-Cheat Watchdog & Inactivity Timers
WakeArena monitors user interaction during ringing and active sessions through Android Activity lifecycle callbacks:
- Ring Screen Inactivity: When the alarm rings, you have 30 seconds of inactivity before a 5-second grace period begins. If no action is taken, the alarm shuts off with a -50 coin penalty and +4 escapes.
- Checkout Barrier Timer: You have exactly 30 seconds at the Checkout Barrier before an automatic rage-quit penalty triggers.
- Home Button & Screen-Off Detection: Pressing the Home button, opening recent apps, or turning off the screen via the Power button triggers a 5-second grace period. This is detected in real time by the Activity's
onPause()lifecycle callback (not by a background service). - Grace Period Cancellation: If you return to the app within 5 seconds, the grace timer is immediately cancelled via
cancelPendingRageQuit()with zero penalty. - Rage Quit Penalty: If the 5-second grace period expires without returning, a Rage Quit is confirmed: -50 coins (floored at 0, balance never goes negative), +4 escapes, streak resets to 0, and audio stops immediately.
- NO 5-Minute Auto-Shutoff: There is no functional 5-minute auto-shutoff timer. The 5-minute constant (
RING_LIMIT_MS) in the source code only dictates the Android CPUWakeLocksafety release limit. In practice, the 30-second inactivity timer terminates the alarm after 35 seconds total.
5. Alarm Engine & Scheduling Rules
The core alarm scheduler is engineered for rock-solid reliability across diverse Android OEM skins:
- Exact Scheduling with
setAlarmClock(): InAlarmScheduler.kt, alarms are scheduled using Android's highest-priority API:alarmManager.setAlarmClock(). This guarantees exact wakeup times that bypass aggressive OEM Doze mode. - 10-Minute Minimum Gap: To prevent overlapping audio and conflicting activity states, active alarms must be scheduled at least 10 minutes apart. Attempting to schedule an alarm closer than 10 minutes to an existing active alarm displays a collision warning.
- OEM Battery Optimization: On brands like Xiaomi (HyperOS/MIUI), Samsung (One UI), and OnePlus (OxygenOS), you must disable battery optimizations and enable background autostart. See the dedicated Android OEM Setup Guide for step-by-step instructions.
6. Offline Resilience Architecture
WakeArena is built with an offline-first core:
- What Works Offline: Alarm scheduling, exact wakeups, local audio synthesis, all 5 cognitive mini-games, and the Colour Tap recovery game execute 100% locally on-device via Room SQLite. You can wake up in airplane mode without internet.
- Offline Penalty Queuing: If a rage quit or inactivity penalty occurs offline, your coin deduction and escape count are applied immediately to local cached storage (
SecureStorage). An event record is queued into the Room database tablepending_sync_queue. - Automatic Background Sync: The moment internet connectivity returns,
OfflineSyncManager.syncAllPending()processes all queued escape events, coin transactions, and streak updates to Supabase. - What Requires Internet: Account sign-up, Google Sign-in, TickPass emergency dismissals, in-app shop purchases, AdMob rewarded video ads, and global community Leaderboards.
7. Next Steps: Master the Economy
Now that you understand the gameplay rules and timers, learn how speed-tiered coins, shop discounts, and monthly TickPasses operate on our dedicated Coins & Economy Page.
Ready for Your First Alert Morning?
Download WakeArena for free on Android and experience accountability that actually works.
Download WakeArena (APK)