DexterDexter

DexterCommands

Complete reference for all PokeDexter chat commands.

Commands

PokeDexter adds several commands to Pokémon Showdown for wallet connection and wagering. This page documents all of them.

Wallet Commands

The easiest way to connect your wallet is using the built-in wallet picker:

// Open browser console (F12) and run:
DexterWallet.showPicker()

This opens a modal showing all detected wallets (Phantom, Solflare, etc.). Click one to connect.

Other wallet picker functions:

DexterWallet.getWallets()     // List detected wallets
DexterWallet.getConnected()   // Get current connection
DexterWallet.disconnect()     // Disconnect wallet

/connectwallet

Manually connect your Solana wallet to your Pokémon Showdown username.

/connectwallet <wallet_address>

Parameters:

ParameterRequiredDescription
wallet_addressYesYour Solana public address

Examples:

/connectwallet 7xKXtg2CW87d97TXJSDpbD5jBkheTqA83TZRuJosgAsU
/connectwallet EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v

Success Response:

Wallet connected: 7xKX...AsU

Error Responses:

Invalid Solana address format.

Notes:

  • Your wallet is stored server-side, mapped to your username
  • You can change it anytime by running the command again
  • Only the public address is stored (never private keys)
  • Data is encrypted and persisted to the database

/mywallet

View your currently connected wallet.

/mywallet

Success Response:

Your connected wallet: 7xKXtg2CW87d97TXJSDpbD5jBkheTqA83TZRuJosgAsU

Error Response:

No wallet connected. Use /connectwallet <address> to connect.

/disconnectwallet

Remove your wallet connection.

/disconnectwallet

Success Response:

Wallet disconnected.

Error Response:

No wallet connected.

Notes:

  • You cannot wager without a connected wallet
  • Disconnecting doesn't affect pending wagers (they continue to use the wallet you had when you created them)

Wager Commands

/wager

Challenge another player to a wagered battle.

/wager <username>, <amount> [, <format>]

Parameters:

ParameterRequiredDefaultDescription
usernameYes-The player to challenge
amountYes-Wager amount in USD
formatNogen9randombattleBattle format

Examples:

/wager Ash, 5
/wager Misty, 10, gen9ou
/wager Gary, 1, gen9randombattle

Success Response:

Wager challenge sent to Ash for $5 in gen9randombattle!

Error Responses:

You must connect a wallet first. Use /connectwallet [address]
User "Ash" not found or offline.
You can't wager against yourself.
Wager amount must be between $1 and $100.
You already have a pending wager challenge to Ash.

Notes:

  • Challenges expire after 5 minutes
  • Only one pending challenge per target user
  • The $ symbol is optional in the amount

/acceptwager

Accept an incoming wager challenge.

/acceptwager <username>

Parameters:

ParameterRequiredDescription
usernameYesThe challenger's username

Examples:

/acceptwager Ash

Success Response:

Wager accepted! Both players must deposit $5 USDC.
Escrow address: 7xKX...
Send exactly 5000000 atomic units (5 USDC).
Waiting for deposits...

Error Responses:

You must connect a wallet first. Use /connectwallet [address]
No pending wager from Ash.

What happens next:

  1. An escrow wallet is generated
  2. Both players receive deposit instructions
  3. Once both deposit, battle starts automatically

/cancelwager

Cancel a wager challenge you sent.

/cancelwager [username]

Parameters:

ParameterRequiredDescription
usernameNoSpecific challenge to cancel (if you have multiple)

Examples:

/cancelwager
/cancelwager Ash

Success Response:

Wager challenge to Ash cancelled.

Error Responses:

No pending wager challenges.
No pending wager to Ash.

Notes:

  • Only cancels challenges YOU sent
  • Cannot cancel after both players have deposited
  • If deposits were made, refund process begins

/wagers

View your pending wager challenges.

/wagers

Success Response:

Your pending wagers:
• Challenge TO Ash: $5 (gen9randombattle) - Awaiting acceptance
• Challenge FROM Gary: $10 (gen9ou) - Awaiting your response

No wagers:

No pending wagers.

/allwagers

(Admin only) View all active wagers on the server.

/allwagers

Success Response:

All active wagers:
• #1: Ash vs Gary - $10 - Status: active (battle in progress)
• #2: Misty vs Brock - $5 - Status: awaiting_deposits
• #3: Red vs Blue - $25 - Status: pending (not accepted)

Notes:

  • Requires moderator permissions or higher
  • Useful for monitoring and dispute resolution

Quick Reference Table

Command/FunctionDescriptionRequires Wallet
DexterWallet.showPicker()Open wallet picker (JS)No
/connectwallet <addr>Link wallet manuallyNo
/mywalletView linked walletNo
/disconnectwalletUnlink walletNo
/wager <user>, <$>Challenge for moneyYes
/acceptwager <user>Accept challengeYes
/cancelwagerCancel your challengeNo
/wagersSee your wagersNo
/allwagersSee all wagers (admin)No

Standard Pokémon Showdown Commands

PokeDexter includes all standard PS commands. Some useful ones:

Battle Commands

/challenge <user>, <format>  - Challenge to free battle
/accept <user>               - Accept a free challenge
/forfeit                     - Forfeit current battle

Team Commands

/saveteam                    - Save current team
/teams                       - View saved teams

User Commands

/nick <name>                 - Change display name
/away                        - Set away status
/back                        - Remove away status

Chat Commands

/msg <user>, <message>       - Private message
/ignore <user>               - Ignore a user
/join <room>                 - Join a chat room

For the full command list, type /help in chat.


Error Handling

Common Error Messages

ErrorCauseSolution
"User not found"Target offlineWait for them to come online
"Must connect wallet"No wallet linkedRun /connectwallet
"Invalid address"Bad wallet formatCheck your Solana address
"Already have pending"Duplicate challengeCancel first or wait for expiry
"Amount out of range"Below $1 or above $100Use valid amount

Next Steps