Getting Started
Go from zero to wagered battle in under 5 minutes.
Getting Started
This guide will have you battling (and wagering) in minutes. No registration, no email verification, no KYC.
Prerequisites
- A modern web browser (Chrome, Firefox, Safari, Edge)
- A Solana wallet with USDC (for wagered battles)
- Phantom recommended
Step 1: Visit PokeDexter
Go to poke.dexter.cash
You'll see the PokeDexter home screen with a clean, minimal interface.
Step 2: Start a Battle
Click the "GO" button in the center of the screen.
If you haven't chosen a username yet, a popup will appear:
- Enter any username you want
- No password needed
- No email needed
- Click "OK" - you're ready to battle!
Step 3: Play a Free Battle (Optional)
Before wagering, test the system:
- After clicking GO, you'll be matched with another player
- The default format is Random Battle - teams are randomly assigned
- Battle like any normal Pokémon match
- This confirms everything works before you wager real money
Step 4: Connect Your Wallet
To wager, you need to connect your Solana wallet.
Option A: Wallet Picker (Recommended)
Open your browser console (F12 → Console) and type:
A modal will appear showing your installed wallets (Phantom, Solflare, etc.):
- Click on your wallet (e.g., "Phantom")
- Your wallet extension will prompt for approval
- Click "Connect" in your wallet
- You'll see a confirmation message
Option B: Manual Command
In the chat, type:
Replace YOUR_WALLET_ADDRESS with your Solana public address (copy from Phantom).
Example:
You'll see:
Step 5: Challenge Someone to a Wagered Battle
Find an opponent (in chat or who you know is online) and challenge them:
Examples:
The default format is Gen 9 Random Battle (recommended for fair wagering).
Step 6: Wait for Acceptance
Your opponent will see:
They accept with:
Step 7: Deposit to Escrow
Once accepted, both players receive deposit instructions:
To deposit:
- Open your Phantom wallet
- Click "Send"
- Paste the escrow address
- Enter the exact USDC amount (e.g., 5)
- Confirm the transaction
Step 8: Battle!
Once both deposits are confirmed on-chain:
- The battle room is created automatically
- You're placed into the battle
- Fight like any normal Pokémon Showdown match
Step 9: Winner Gets Paid
When the battle ends:
- Winner determined by normal battle rules
- Escrow automatically sends 95% of the pot to the winner
- 5% house fee retained
- Transaction confirmed on Solana
Winner sees:
Loser sees:
Quick Command Reference
| Action | Command |
|---|---|
| Connect wallet (UI) | DexterWallet.showPicker() in console |
| Connect wallet (manual) | /connectwallet <address> |
| Check your wallet | /mywallet |
| Disconnect wallet | /disconnectwallet |
| Challenge someone | /wager <user>, <amount> |
| Accept a challenge | /acceptwager <user> |
| Cancel your challenge | /cancelwager |
| See pending wagers | /wagers |
Tips for New Players
Start Small
Begin with $1-5 wagers until you're comfortable with the flow.
Use Random Battle
Random Battle assigns random teams to both players, so:
- No team-building advantage
- Can't throw by bringing bad Pokémon
- Faster to start
Know the Timer
Battles have turn timers. If you run out of time, you forfeit - and lose your wager.
Check Your Balance
Make sure you have enough USDC before challenging. Failed deposits waste everyone's time.
Keep SOL for Fees
Your wallet needs a tiny amount of SOL (~0.01) for transaction fees when sending USDC.
Troubleshooting
"User not found"
The opponent must be online and have picked a username.
"You must connect a wallet first"
Connect your wallet using DexterWallet.showPicker() or /connectwallet <address>.
Deposit not detected
- Confirm you sent to the correct address
- Confirm you sent the exact amount
- Wait ~30 seconds for on-chain confirmation
Battle didn't start
Both players must deposit. Check if your opponent has deposited yet.
No wallets detected
Install Phantom or another Solana wallet browser extension.

Getting Started