# Olympus Rising - Premium Slot Game Design Document

## Game Overview

**Title:** Olympus Rising  
**Provider:** CoinKrazy In-House  
**Type:** High-Volatility Tumbling Reel Slot  
**Theme:** Greek Mythology - Rise of the Gods  
**Target Audience:** High-roller players seeking big multiplier wins

---

## Core Game Specifications

### Technical Specs
- **Reels:** 6 columns × 5 rows (30 symbols total)
- **Mechanics:** Tumbling reels with cluster pays (8+ matching symbols = win)
- **RTP:** 96.50% (configurable per user via rtp_override)
- **Volatility:** High (big wins, long dry spells)
- **Min Bet:** 0.1 GC/SC
- **Max Bet:** 50 GC/SC
- **Max Win:** 5,000x+ multiplier potential

### Win Conditions
- **Cluster Pays:** 8 or more matching symbols horizontally/vertically adjacent
- **Multiplier Symbols:** Random 2x–500x multipliers that accumulate during free spins
- **Free Spins:** 4+ scatter symbols trigger 15 free spins with accumulating multiplier
- **Tumble Mechanic:** Winning symbols disappear, reels tumble down, new symbols fill gaps

---

## Visual Design & Aesthetics

### Color Palette
- **Primary:** Deep cosmic purple (#1a0033) and midnight blue (#0a1f3f)
- **Accent:** Neon gold (#FFD700), electric purple (#9D4EDD), cyan (#00D9FF)
- **Highlights:** Glowing white (#FFFFFF) for lightning effects
- **Gem Colors:** Amethyst (#9966CC), Ruby (#E63946), Topaz (#FFB703), Emerald (#2A9D8F)

### Background & Environment
The background depicts an ancient Greek temple suspended in a cosmic void. Floating marble columns and archways frame the reels. Zeus's palace (Mount Olympus) looms in the distance with thunderclouds swirling around it. Particle effects include:

- Floating golden coins and lightning bolts
- Ethereal purple mist rising from the bottom
- Distant lightning illuminating the sky
- Glowing runes and ancient Greek symbols orbiting the reels
- Occasional divine light rays breaking through clouds

### Symbol Design

**High-Value Symbols (Gods & Artifacts):**
1. **Zeus** - Bearded god with lightning bolt, glowing aura, 5x base multiplier
2. **Athena** - Warrior goddess with shield and spear, 4x base multiplier
3. **Poseidon** - God of the sea with trident, 3.5x base multiplier
4. **Hephaestus** - God of fire with hammer, 3x base multiplier
5. **Hermes** - Messenger god with winged helm, 2.5x base multiplier

**Mid-Value Symbols (Treasures):**
6. **Golden Crown** - Royal artifact, 2x multiplier
7. **Ancient Scroll** - Knowledge symbol, 1.8x multiplier
8. **Ornate Urn** - Treasure vessel, 1.6x multiplier

**Low-Value Symbols (Gems):**
9. **Amethyst Gem** - Purple crystal, 1.2x multiplier
10. **Ruby Gem** - Red crystal, 1.1x multiplier
11. **Topaz Gem** - Golden crystal, 1x multiplier

**Special Symbols:**
- **Scatter (Golden Gate):** Triggers free spins, glows with divine light
- **Multiplier Symbol (Lightning Bolt):** 2x–500x random multiplier, appears during free spins
- **Wild (Zeus's Eye):** Substitutes any symbol, glows with electric energy

### Animation Style

**Reel Spin Animation:**
- Reels spin with a smooth easing curve (ease-in-out)
- Symbols blur slightly during spin for motion effect
- Final spin has a satisfying "click" sound as symbols land
- Winning symbols flash with golden light before tumbling

**Tumble Animation:**
- Winning symbols explode with particle burst (purple and gold sparks)
- Remaining symbols fall smoothly with gravity effect
- New symbols slide in from top with a subtle glow
- Multiplier symbols pulse and grow larger when landing

**Multiplier Pop-Up:**
- When multiplier symbol lands, it displays "2x", "5x", "50x", etc.
- Text grows from small to large with scale animation
- Glows with electric purple/cyan aura
- Sound effect: futuristic "ding" or "power up" sound

**Big Win Animation:**
- Screen shakes slightly
- Reels glow with intense golden light
- Multiplier counter rapidly increments
- Zeus flies across screen with lightning trail
- Confetti-like particles burst from center
- "BIG WIN!" text appears in large glowing letters

**Free Spins Entry:**
- Screen fades to cosmic purple
- "4 SCATTERS - FREE SPINS!" message appears
- Reels glow and spin once more
- Multiplier counter resets to 1x and begins accumulating
- "15 FREE SPINS" displays with countdown

### UI Elements

**Main Spin Button:**
- Large circular button (120px diameter) at bottom center
- Gradient: gold to orange with glowing border
- Text: "SPIN" in bold white
- Hover state: Slightly larger, brighter glow
- Disabled state: Greyed out when spinning

**Bet Display:**
- Shows current bet amount (e.g., "Bet: 5.00 GC")
- Located above spin button
- Updates in real-time

**Balance Bar:**
- Top-left corner: "GC Balance: 1,250.50"
- Top-right corner: "SC Balance: 500.00"
- Updates immediately after each spin
- Color-coded: Gold for GC, Silver for SC

**Win Display:**
- Center-top: Large "WIN: 125.50 GC" text in glowing gold
- Appears only when player wins
- Fades out after 2 seconds
- Multiplier breakdown shown below (e.g., "5x multiplier")

**Game Mode Toggle:**
- Top-left: "Play for Fun (GC)" / "Play for Real (SC)" toggle
- Radio buttons or switch component
- Updates balance display accordingly

**Control Buttons:**
- **Autoplay:** Spins game automatically (5, 10, 20, 50 spins)
- **Turbo:** Speeds up animations by 2x
- **Bonus Buy:** Allows direct purchase of free spins (if enabled)
- **Settings:** Volume, graphics quality, language

**Free Spins Counter:**
- Displays during free spins mode
- Shows "FREE SPINS: 12 / 15" in glowing text
- Multiplier counter shows "MULTIPLIER: 3.5x"
- Accumulates with each winning spin

---

## Game Mechanics Deep Dive

### Spin Logic

Each spin generates a random 6×5 grid of symbols weighted by RTP. The algorithm:

1. Generate random symbols for each position (weighted by paytable)
2. Check for winning clusters (8+ adjacent matching symbols)
3. Apply multiplier symbols if present
4. Calculate win amount: (bet × base_multiplier × multiplier_symbol)
5. Remove winning symbols and trigger tumble
6. Repeat until no more winning clusters
7. Check for scatter symbols (free spins trigger)
8. Update balance and save to game_history

### Tumbling Reels

When symbols win, they disappear and remaining symbols fall. This creates a cascading effect:

1. Identify winning clusters
2. Mark symbols for removal
3. Animate removal with particle burst
4. Apply gravity to remaining symbols (fall animation)
5. Fill gaps with new random symbols from top
6. Check for new winning clusters
7. Repeat until no more wins

### Multiplier System

Multiplier symbols appear randomly during spins (especially in free spins):

- **Base Multipliers:** 2x, 3x, 5x, 10x, 25x, 50x, 100x, 250x, 500x
- **Frequency:** 1 in 50 spins on average (adjustable)
- **Accumulation:** During free spins, multipliers stack (2x × 3x = 6x total)
- **Display:** Shows current multiplier total at all times
- **Reset:** Multiplier resets to 1x when free spins end

### Free Spins Feature

Triggered by 4 or more scatter symbols (Golden Gate):

- **Trigger:** 4 scatters = 15 free spins, 5 scatters = 20 free spins, 6 scatters = 25 free spins
- **Multiplier Start:** Begins at 1x and accumulates with each winning spin
- **Retrigger:** Landing 3+ scatters during free spins adds 5 more spins
- **Max Multiplier:** Theoretically unlimited (no cap)
- **Win Calculation:** All wins during free spins multiplied by accumulated multiplier
- **Exit:** Free spins end when counter reaches zero

### RTP & Volatility

**RTP Implementation:**
- Each spin's outcome is pre-determined by RTP algorithm
- 96.50% means over 1,000,000 spins, player returns 96.50% of wagered amount
- Per-user rtp_override allows VIP players to have 97%+ RTP
- Algorithm ensures randomness while maintaining RTP target

**High Volatility Characteristics:**
- Long periods without wins (5–10 spins)
- Occasional medium wins (5–20x)
- Rare big wins (100x–5,000x+)
- Free spins can produce massive multipliers
- Encourages high-roller play style

---

## Integration with CoinKrazy

### Database Schema

**Games Table Entry:**
```sql
INSERT INTO games (
  name, slug, provider, type, rtp, volatility, 
  reels, min_bet, max_bet, max_win, theme, is_active
) VALUES (
  'Olympus Rising', 'olympus-rising', 'CoinKrazy In-House', 'slot', 
  96.50, 'high', '6x5', 0.1, 50, 5000, 'Greek Mythology', 1
);
```

**Game History Table:**
```sql
CREATE TABLE game_history (
  id BIGINT PRIMARY KEY,
  user_id BIGINT,
  game_id INT,
  spin_data JSON, -- {symbols, multiplier, win, free_spins_count}
  bet_amount DECIMAL(10,2),
  win_amount DECIMAL(10,2),
  balance_before DECIMAL(10,2),
  balance_after DECIMAL(10,2),
  currency ENUM('GC', 'SC'),
  created_at TIMESTAMP
);
```

### Balance Management

**GC (Gold Coins) - Play for Fun:**
- Unlimited balance for casual play
- No real money involved
- Wins don't transfer to real account
- Used for testing and entertainment

**SC (Sweep Coins) - Play for Real:**
- Real money equivalent
- Requires verified account
- Wins credited to user account
- Can be redeemed for prizes

### Transaction Recording

After each spin:
1. Deduct bet from user balance
2. Calculate win amount
3. Add win to user balance
4. Create transaction record with full spin data
5. Update game statistics (total spins, total wagered, total won)
6. Log to game_history for audit trail

---

## Visual Mood Board Description

Imagine a screenshot of Olympus Rising:

The background shows an ancient Greek temple suspended in a cosmic void. Marble columns glow with soft purple light. Dark storm clouds swirl in the distance with occasional lightning illuminating Mount Olympus. The reels are framed by ornate golden borders with glowing runes.

The 6×5 grid displays colorful gem and god symbols. When the player spins, symbols blur and rotate smoothly. Upon landing, they glow briefly. If a winning cluster forms, the symbols explode with purple and gold particle bursts. Remaining symbols fall with gravity, new symbols slide in from the top.

When a multiplier symbol lands, it displays "50x" in large glowing text with an electric purple aura. The multiplier counter at the top updates to show the new total. If the player wins big, Zeus flies across the screen trailing lightning, and "BIG WIN!" appears in massive glowing letters.

The UI is clean and intuitive. The large golden "SPIN" button dominates the bottom center. Above it shows the current bet. The top corners display GC and SC balances. Control buttons for Autoplay, Turbo, and Settings are easily accessible.

During free spins, the screen tints slightly purple. The multiplier counter becomes more prominent, showing the accumulating multiplier. A countdown displays remaining free spins. The atmosphere becomes more intense as multipliers grow.

---

## Technical Implementation Notes

### Frontend (React + Canvas)
- Use Canvas API for smooth reel animations
- Implement particle system for effects
- Use requestAnimationFrame for 60fps animations
- Responsive design for mobile and desktop
- Tailwind CSS for UI components

### Backend (Laravel)
- Spin endpoint validates bet amount and balance
- RTP algorithm ensures fair outcomes
- Transaction logging for audit trail
- Real-time balance updates
- WebSocket support for live multiplayer leaderboards (future)

### Performance Optimization
- Lazy load symbol images
- Use sprite sheets for animations
- Debounce spin button to prevent double-clicks
- Cache game configuration
- Optimize particle system for mobile devices

---

## Success Metrics

- **Engagement:** Average session length > 15 minutes
- **Retention:** 40%+ of players return within 7 days
- **Revenue:** Average player spend > 50 SC per session
- **Satisfaction:** 4.5+ star rating from player feedback
- **Performance:** Game loads in < 2 seconds, 60fps animations

---

## Future Enhancements

1. **Bonus Rounds:** Special mini-games triggered by rare symbols
2. **Progressive Jackpot:** Shared prize pool across all players
3. **Tournaments:** Leaderboard competitions with real prizes
4. **Mobile App:** Native iOS/Android version
5. **VR Mode:** Immersive virtual reality slot experience
6. **Social Features:** Share big wins, challenge friends, team play
