Skip to content

queuePop v1.3.3

Choose a tag to compare

@github-actions github-actions released this 11 Jun 18:31
· 17 commits to main since this release
8d23392

queuePop now plays your entire ARAM champ select — from the very first second to the loading screen.

✨ The headline: ARAM opening pick

Modern ARAM starts by offering you 2-3 champions for ~10 seconds; if you don't choose, the game picks randomly and dumps the rest onto a shared bench where anyone can snipe them. queuePop now picks the best of your offered champs within the first second — before a teammate can beat you to your own roll.

(For the curious: the offered champ list isn't in the champ-select session at all — it's hidden in a separate lol-lobby-team-builder endpoint, and trying to pick a champ you weren't offered silently "succeeds" while doing nothing. That's why this was never possible before. We found it by instrumenting live lobbies.)

🎯 Champ priority modes

The old "highest mastery" toggle is now a six-way Champ priority in Settings → ARAM, and it drives everything — the opening pick, bench grabs, and trades chase one consistent target:

Mode What it chases
Highest mastery Your most-played champs (the classic behavior — existing configs migrate here)
Lowest mastery Champs you've barely touched, never-played first — for learning the roster
Rusty Whatever you haven't played in the longest — old mains keep cycling back
Mastery milestone Whichever champ is closest to its next mastery level — maximum dings per game
Random One shuffled order per lobby — chaos mode
My ARAM list Your hand-sorted Champ Select → ARAM list

🔁 Smarter trading

Trades are standing offers, not one-shot actions — so queuePop now manages them like one:

  • Keeps at most one live request, always aimed at the best upgrade a teammate is holding
  • Auto-cancels the request the moment it stops being an upgrade (e.g. you just grabbed something better off the bench) — a teammate's late "accept" can never downgrade you
  • Re-checks incoming offers at the moment of acceptance, not when they arrived
  • Never re-pesters someone who declined, and rate-limits request churn

⚙️ Order of operations

Each champ-select tick now runs in strict priority order: opening pick → bench grab (instant, free) → trades (slow, consensual) → runes/spells/skins last — so the guaranteed moves always land before the cooperative ones, and cosmetics can never delay a pick.

🐛 Fixes

  • Console output is forced to UTF-8 at startup — previously, running queuePop with redirected output could crash the client-connected handler on an emoji and leave the app stuck on "Searching for League Client…"
  • Champion mastery is fetched once per champ select and shared by all features

Full changelog: v1.3.2...v1.3.3