Spaces:
Running
Running
Love Live! OCG: Rule Verification
This is my understanding of the game logic, derived from reading game_state.py and card.py.
1. Win Condition
- Primary Goal: Be the first player to successfully perform 3 Lives.
- Tie-Breaker: If both players reach 3 Lives in the same turn, the player with the higher Total Score (Sum of difficulty/score of completed Lives) wins? (Need to verify if score tie-breaker exists or if it's "Active Player Wins").
2. Core Stats (The Numbers)
- Hearts: The "color" resource. A card might have
[2 Pink, 1 Blue]. - Blade Power (BP): The "attack" stat. Used for:
- Meeting "Total BP" requirements for some Lives?
- Triggering abilities (e.g., "If you have a member with 400+ BP").
- Comparing against opponents (e.g., "Retire opponent's member with BP < 300").
- Cost: Energy required to play a Member.
3. The Turn Structure
- Draw Phase: Draw 1 card.
- Energy Phase: Gain 2 Energy (or more based on turn count?).
- Main Phase:
- Play Members to Stage (Max 3 slots).
- Play "Live" cards (The goal).
- Activate "Main" abilities.
- Live Phase:
- Select a Live card.
- Check: Do my Stage Members have enough Hearts (Color & Count) to meet the Live's requirement?
- Bonus (Cheer): Flip top card of deck. Add its "Blade Icons" to the check.
- Success: If (Member Hearts + Cheer Icons) >= Requirement -> Live Success! (Score +1).
4. Observations on AI Logic
- Reward Signal Correctness: My reward function gives
+1.0for winning. It also gives+0.1per point of Score Difference. This encourages the AI to pick "High Score" Lives, not just the easiest ones, which is good for tie-breaking. - Critical Blind Spot: "Effect Precedence." If a card says "You win instantly if you have 5 Honoka cards," my current engine might miss that if the
check_win_conditionfunction doesn't explicitly look for that specific flag.
Is this accurate to your physical game? Specifically, does the "Cheer/Blade Icon" mechanic add to Hearts or BP for the Live check?