Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/tldrwtf/pokedo/llms.txt

Use this file to discover all available pages before exploring further.

Every PokeDo account starts with an ELO rating of 1000. After each completed battle, the server recalculates both players’ ratings using the standard ELO formula with a K-factor of 32. Winning against a higher-rated opponent earns more points than beating a lower-rated one, and losing to a lower-rated opponent costs more. Your rank label — from Youngster to Pokemon Master — is derived automatically from your current ELO.

Commands

View the global leaderboard

pokedo leaderboard show
Displays the top 20 trainers sorted by ELO rating by default. Columns include rank position, trainer name, ELO, rank label, wins, losses, and win percentage.

Sort by a different field

# Sort by total wins
pokedo leaderboard show --sort battle_wins

# Sort by XP
pokedo leaderboard show --sort xp

# Sort by Pokemon caught
pokedo leaderboard show --sort pokemon_caught
The --sort flag (short: -s) accepts elo_rating, battle_wins, xp, and pokemon_caught. Use --limit (-n, default 20) to control result count and --offset (-o, default 0) for pagination.

View your own profile

pokedo leaderboard me -u myname
Displays your ELO rating, rank label, win/loss/draw record, and win rate. No password required — the leaderboard endpoint is public.

ELO system

ParameterValue
Starting rating1000
K-factor32
Floor0 (rating cannot go below 0)
Rank updateAfter every finished or forfeited battle
The expected score formula used is:
expected_winner = 1 / (1 + 10 ^ ((loser_elo - winner_elo) / 400))
The winner gains K * (1 - expected_winner) points; the loser loses K * expected_loser points. Both values are rounded to the nearest integer. A draw does not update ELO.

Rank thresholds

Ranks are computed from the compute_rank function in pokedo/core/battle.py and are updated on the server after every battle result.
RankELO range
Youngsterbelow 1100
Bug Catcher1100–1299
Ace Trainer1300–1499
Gym Leader1500–1699
Elite Four1700–1899
Champion1900–2099
Pokemon Master2100 and above

Additional leaderboard fields

The leaderboard and player profile responses include several fields beyond ELO that are useful for comparing trainers:
FieldDescription
battle_winsTotal battles won
battle_lossesTotal battles lost
battle_drawsDraws (mutual KO)
win_rateWins as a percentage of total battles
pokemon_caughtTotal Pokemon caught in single-player mode
tasks_completedTotal tasks completed
daily_streak_bestAll-time best daily streak
trainer_levelTrainer level derived from XP
These fields appear when you run pokedo leaderboard me and in the full leaderboard table shown by pokedo leaderboard show.

Build docs developers (and LLMs) love