Loading...

Description

This demo features a scalable Wheel of Fortune game loop built strictly according to professional technical constraints. Key highlights include Scriptable Object integration for dynamic content, DOTween animations, and a lean UI hierarchy optimized for performance across multiple mobile resolutions.

README

🎡 Wheel of Fortune - Game Developer Demo

A high-performance, scalable "Wheel of Fortune" game built in Unity 2021 LTS. This project was developed as a technical demo, focusing on clean code (SOLID), reusable UI architecture, and dynamic game configurations.

📋 Project Overview

The game is a "risk vs. reward" gambling mechanic where players spin wheels to collect rewards while avoiding the bomb.
  • Core Loop: Spin → Collect or Lose All → Decide to Cash Out or Risk More.
  • Dynamic Zones
    • Standard Zones: High risk with a bomb slice.
    • Safe Zones (Every 5th): Risk-free silver spin.
    • Super Zones (Every 30th): Risk-free golden spin with premium rewards.

🛠️ Technical Implementation (The "Conditions")

  • Clean Code & Architecture
    • Implemented using SOLID principles and OOP concepts.
    • Scriptable Objects used for wheel configurations (stages, rewards, configs).
    • DOTween utilized for smooth, performance-friendly UI animations.
  • UI Technical Details
    • Canvas: Set to Expand mode with correct anchor/pivot settings for 20:9, 16:9, and 4:3 support.
    • Optimized UI: "Raycast Target" and "Maskable" disabled on non-interactive elements to save draw calls.
    • Automation: Button references are set automatically via OnValidate (No manual drag-and-drop in Editor).
    • Naming Convention: Followed the ui_image_specifier and _value suffix rules.
    • TextMeshPro: Used for all text elements.

🎮 Gameplay Demonstration

Watch Gameplay Click above to watch the gameplay video


📸 Multi-Aspect Ratio Screenshots

Resolution 16:9
Resolution 16:9
Resolution 20:9
Resolution 20:9
Resolution 4:3
Resolution 4:3

📦 Deliverables

⚙️ How to Run

  1. Clone this repository.
  2. Open the project in Unity 2021.3 LTS.
  3. Load the SampleScene located in Assets/Scenes/.
  4. Press Play or build for Android to test.