reorganize: consolidate all documentation into readmes/
- Moved 20 root-level markdown files to readmes/ - Includes COMMANDS.md, CONFIG_README.md, all UNO docs, all completion reports - Added new: MEMORY_EDITOR_FEATURE.md, MEMORY_EDITOR_ESCAPING_FIX.md, CONFIG_SOURCES_ANALYSIS.md, MCP_TOOL_CALLING_ANALYSIS.md, and others - Root directory is now clean of documentation clutter
This commit is contained in:
319
readmes/UNO_FIRST_TEST.md
Normal file
319
readmes/UNO_FIRST_TEST.md
Normal file
@@ -0,0 +1,319 @@
|
||||
# 🎮 Miku UNO - First Test Guide
|
||||
|
||||
## ⚡ Quick Setup (5 Minutes)
|
||||
|
||||
### Step 1: Install Playwright (One-Time Setup)
|
||||
```bash
|
||||
cd /home/koko210Serve/docker/miku-discord/bot
|
||||
bash setup_uno_playwright.sh
|
||||
```
|
||||
|
||||
**Expected Output:**
|
||||
```
|
||||
✅ Playwright browsers installed successfully!
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 🚀 Running the Test
|
||||
|
||||
### Step 2: Start All Services (3 Terminals)
|
||||
|
||||
#### Terminal 1: UNO Backend
|
||||
```bash
|
||||
cd /home/koko210Serve/docker/uno-online
|
||||
node server.js
|
||||
```
|
||||
**Expected Output:**
|
||||
```
|
||||
Server listening on port 5000
|
||||
```
|
||||
|
||||
#### Terminal 2: UNO Frontend
|
||||
```bash
|
||||
cd /home/koko210Serve/docker/uno-online/client
|
||||
npm start
|
||||
```
|
||||
**Expected Output:**
|
||||
```
|
||||
webpack compiled successfully
|
||||
Compiled successfully!
|
||||
|
||||
You can now view client in the browser.
|
||||
|
||||
Local: http://localhost:3000
|
||||
On Your Network: http://192.168.1.2:3002
|
||||
```
|
||||
|
||||
#### Terminal 3: Miku Bot
|
||||
```bash
|
||||
cd /home/koko210Serve/docker/miku-discord/bot
|
||||
python bot.py
|
||||
```
|
||||
**Expected Output:**
|
||||
```
|
||||
🎤 MikuBot connected as <bot name>
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 🎮 First Game Test
|
||||
|
||||
### Step 3: Create Game in Discord
|
||||
Open Discord and type:
|
||||
```
|
||||
!uno create
|
||||
```
|
||||
|
||||
**Expected Response:**
|
||||
```
|
||||
🎮 Created UNO room: ABC123
|
||||
Join at: http://192.168.1.2:3002
|
||||
I'm joining now as Player 2! ✨
|
||||
```
|
||||
|
||||
### Step 4: Join as Player 1
|
||||
1. Copy the URL from bot's response
|
||||
2. Open it in your web browser
|
||||
3. Click "Join Room"
|
||||
4. Enter the room code (e.g., ABC123)
|
||||
5. Click "Join Game"
|
||||
|
||||
**You should see:**
|
||||
- "Player 1" (you) in the room
|
||||
- "Player 2" (Miku) in the room
|
||||
- Game starts automatically
|
||||
- Both players get 7 cards
|
||||
- A card appears in the center
|
||||
|
||||
### Step 5: Watch Miku Play! 🎵
|
||||
|
||||
When it's Miku's turn (Player 2), watch for:
|
||||
|
||||
**In Discord:**
|
||||
- A message like: "Playing my card~ Let's keep this fun! 🎵"
|
||||
- Or: "Draw two cards! Don't worry, I still believe in you~ ✨"
|
||||
|
||||
**In Browser:**
|
||||
- Miku's card appears on the pile
|
||||
- Turn indicator switches
|
||||
- Miku's hand count decreases
|
||||
|
||||
**In Bot Logs (Terminal 3):**
|
||||
```
|
||||
[UNO] Creating new game room...
|
||||
[MikuUnoPlayer] Browser launched
|
||||
[MikuUnoPlayer] Joining room: ABC123
|
||||
[MikuUnoPlayer] Game started! Players: 2
|
||||
[MikuUnoPlayer] Polling game state...
|
||||
[MikuUnoPlayer] It's my turn! Analyzing game state...
|
||||
[MikuUnoPlayer] Hand: ['R5', 'G2', 'B7', 'YS', 'WD4', 'GD', 'Y3']
|
||||
[MikuUnoPlayer] Top card: R3
|
||||
[MikuUnoPlayer] Getting Miku's strategic decision...
|
||||
[MikuUnoPlayer] LLM Response: {"action":"play","card":"R5"}
|
||||
[MikuUnoPlayer] Sending action: play R5
|
||||
[MikuUnoPlayer] Action executed successfully!
|
||||
[UNO] Sent trash talk to Discord
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## ✅ Success Checklist
|
||||
|
||||
- [ ] Playwright installed successfully
|
||||
- [ ] All 3 servers running (5000, 3002, bot)
|
||||
- [ ] Bot responded to `!uno create`
|
||||
- [ ] Got room code and join link
|
||||
- [ ] Joined game in browser as Player 1
|
||||
- [ ] See both players in room
|
||||
- [ ] Game started automatically
|
||||
- [ ] Both players have 7 cards
|
||||
- [ ] Miku made a move on her turn
|
||||
- [ ] Saw trash talk message in Discord
|
||||
- [ ] Game continues smoothly
|
||||
|
||||
---
|
||||
|
||||
## 🎯 What to Test
|
||||
|
||||
### 1. Basic Gameplay (5-10 minutes)
|
||||
- Play a full game to completion
|
||||
- Watch Miku's moves
|
||||
- Check if moves are legal
|
||||
- Verify trash talk messages
|
||||
|
||||
### 2. Strategy Quality
|
||||
- Does Miku match colors/numbers correctly?
|
||||
- Does she use action cards strategically?
|
||||
- Does she play Wild cards when needed?
|
||||
- Does she call UNO at 1 card?
|
||||
|
||||
### 3. Personality Check
|
||||
- Are messages cheerful and idol-like?
|
||||
- Do emojis feel appropriate (💙✨🎵)?
|
||||
- Does she use tildes (~)?
|
||||
- Are messages encouraging?
|
||||
|
||||
---
|
||||
|
||||
## 🐛 Common Issues
|
||||
|
||||
### "Executable doesn't exist"
|
||||
**Problem:** Playwright browsers not installed
|
||||
|
||||
**Solution:**
|
||||
```bash
|
||||
python -m playwright install chromium
|
||||
```
|
||||
|
||||
### "Connection refused" on port 5000
|
||||
**Problem:** Backend server not running
|
||||
|
||||
**Solution:**
|
||||
```bash
|
||||
cd /home/koko210Serve/docker/uno-online
|
||||
node server.js
|
||||
```
|
||||
|
||||
### "Cannot GET /" on port 3002
|
||||
**Problem:** Frontend not running
|
||||
|
||||
**Solution:**
|
||||
```bash
|
||||
cd /home/koko210Serve/docker/uno-online/client
|
||||
npm start
|
||||
```
|
||||
|
||||
### Bot doesn't respond to !uno
|
||||
**Problem:** Bot not running or command not loaded
|
||||
|
||||
**Solution:**
|
||||
```bash
|
||||
# Restart bot
|
||||
cd /home/koko210Serve/docker/miku-discord/bot
|
||||
python bot.py
|
||||
|
||||
# Check for errors in startup logs
|
||||
```
|
||||
|
||||
### "Room not found"
|
||||
**Problem:** Room code expired or invalid
|
||||
|
||||
**Solution:**
|
||||
- Create a new game with `!uno create`
|
||||
- Use the new room code
|
||||
|
||||
---
|
||||
|
||||
## 📊 Expected Behavior
|
||||
|
||||
### When It's Player 1's Turn (You)
|
||||
- You can play cards manually
|
||||
- Bot is polling in background
|
||||
- Nothing happens in Discord
|
||||
|
||||
### When It's Player 2's Turn (Miku)
|
||||
1. Bot detects it's her turn
|
||||
2. Bot analyzes game state
|
||||
3. Bot asks LLM for strategy
|
||||
4. Bot makes a move
|
||||
5. Bot sends trash talk to Discord
|
||||
6. Turn passes back to you
|
||||
|
||||
### Game End
|
||||
- Winner is determined
|
||||
- Bot sends final message
|
||||
- Bot stops polling
|
||||
- Browser can be closed
|
||||
|
||||
---
|
||||
|
||||
## 🎮 Try These Commands
|
||||
|
||||
After the first game:
|
||||
|
||||
```
|
||||
!uno list
|
||||
```
|
||||
Shows active games (should show your current game)
|
||||
|
||||
```
|
||||
!uno help
|
||||
```
|
||||
Shows all available commands
|
||||
|
||||
```
|
||||
!uno quit ABC123
|
||||
```
|
||||
Makes Miku leave the game (use actual room code)
|
||||
|
||||
```
|
||||
!uno join XYZ789
|
||||
```
|
||||
Join a different game (if you create one manually)
|
||||
|
||||
---
|
||||
|
||||
## 📝 Notes for Testing
|
||||
|
||||
### Take Note Of:
|
||||
1. **Response Time**: How long between Miku's turn and her move?
|
||||
2. **Move Quality**: Are moves strategic or random?
|
||||
3. **Personality**: Does she sound like Miku?
|
||||
4. **Errors**: Any crashes or invalid moves?
|
||||
5. **Performance**: Does bot slow down over time?
|
||||
|
||||
### Log Everything:
|
||||
- Keep all 3 terminals visible
|
||||
- Watch for error messages
|
||||
- Note any unusual behavior
|
||||
- Check if moves make sense strategically
|
||||
|
||||
### Test Multiple Games:
|
||||
- Play 2-3 full games
|
||||
- Try different scenarios:
|
||||
- Games where Miku wins
|
||||
- Games where you win
|
||||
- Games with lots of action cards
|
||||
- Games that go long (20+ turns)
|
||||
|
||||
---
|
||||
|
||||
## 🎉 If Everything Works
|
||||
|
||||
1. ✅ Mark tests as passed in `UNO_BOT_TESTING.md`
|
||||
2. 📝 Note any quirks or improvements
|
||||
3. 🎮 Play more games to test edge cases
|
||||
4. 💡 Think about Phase 2 (Discord Activity)
|
||||
|
||||
---
|
||||
|
||||
## 🆘 If Something Breaks
|
||||
|
||||
1. 📸 Screenshot the error
|
||||
2. 📋 Copy error logs
|
||||
3. 🔍 Check which step failed
|
||||
4. 📖 Refer to `UNO_BOT_SETUP.md` troubleshooting
|
||||
5. 🔧 Debug and fix
|
||||
6. 🔄 Re-test
|
||||
|
||||
---
|
||||
|
||||
## 📚 Documentation Reference
|
||||
|
||||
**After Setup**: `UNO_QUICK_REF.md` - Quick reference card
|
||||
**Full Guide**: `UNO_BOT_SETUP.md` - Detailed setup
|
||||
**Testing**: `UNO_BOT_TESTING.md` - Full test checklist
|
||||
**Summary**: `UNO_INTEGRATION_SUMMARY.md` - Complete overview
|
||||
|
||||
---
|
||||
|
||||
## 🚀 Let's Go!
|
||||
|
||||
**Ready?** Run the 3 commands above and type `!uno create` in Discord!
|
||||
|
||||
**Have fun playing UNO with Miku!** 💙✨🎵
|
||||
|
||||
---
|
||||
|
||||
**Pro Tip**: Keep the bot logs visible (Terminal 3) during gameplay to see what Miku is thinking! 🧠
|
||||
Reference in New Issue
Block a user