A mobile gambling-style Wheel of Fortune game made in Unity. Instead of picking cards, the player spins a revolver-style wheel each zone. Slices give rewards that scale up every zone — but one slice is a bomb that wipes everything you've collected. Cash out on a safe zone, or push your luck for bigger rewards.
Built with Unity 2021.3 LTS (URP).
- Spin the wheel at every zone to win rewards (gold, cash, chests, weapons…).
- One slice is a bomb — it clears all collected rewards.
- Rewards get better every zone (hybrid scaling:
amount × growth^(zone-1)). - Every 5th zone is a safe zone: risk-free silver spin, no bomb.
- Every 30th zone is a super zone: risk-free golden spin with special rewards.
- You can leave (collect everything) only when the wheel is idle and the zone is safe/super.
- Hit a bomb → Give Up (lose all, restart) or Revive with gold / ad (bonus continue system).
- SPIN (center button) — spin the wheel.
- LEAVE — collect your rewards and start a fresh run (safe/super zones only).
- On a bomb: Give Up, Revive (25 gold), or Revive (ad).
Clean, layered, testable codebase built around SOLID / OOP with proper design patterns:
- MVP —
GameplayPresenterorchestrates pure-C# logic and dumb Views. - State Machine —
GameStateMachine(Idle / Spinning / GameOver) guards valid actions. - ScriptableObjects (data-driven, editable from the editor):
RewardDefinitionSO— one asset per item (icon, isBomb, scale).WheelConfigSO— a wheel's slices + visuals.GameSettingsSO— intervals, wheels, scaling, revive cost, currencies.
- Observer — wallet / state changes notify the UI via events.
- Assembly Definitions keep dependencies one-way:
Core ← Data ← UI(+Tests,Editor).
Layers
WoF.Core pure logic + data (RewardWallet, ZoneProgress, SpinResolver, GameStateMachine, RewardDefinitionSO)
WoF.Data ScriptableObjects (WheelConfigSO, GameSettingsSO)
WoF.UI Views + Presenter (WheelView, HUDView, popups, animations)
WoF.Tests EditMode unit tests (zone rules, wallet, weighted spin)
Other: TextMeshPro, DOTween (spin feel, reward fly, popups), Sprite Atlas, unit tests, Canvas Scaler Expand for multi-aspect (20:9 / 16:9 / 4:3).
The Android APK is attached to the latest Release.
Screenshots (20:9 / 16:9 / 4:3) and a gameplay video: