Run a Tournament on Pokékipe
Pokékipe's tournament engine runs the full host workflow, bracket creation, seeding, check-in, match management, dispute handling, standings, without you leaving the site. This page is the end-to-end host workflow, in 12 steps, with the engine UI as the active tool.
Bracket types
Single-elim, double-elim, Swiss, round-robin
Cost
Free, no player count cap
Match flow
Auto-report + dispute → host-resolve
Audit
Full trail of host actions, transparent
A clean tournament feels boring to host: matches resolve themselves, disputes are rare, standings publish on schedule. That "boring" outcome is the result of disciplined setup. Spend 20 min configuring; save 2 hours of mid-tournament chaos.
At a glance
Hosting a tournament is a 12-step workflow. The first 4 steps happen pre-tournament (configure, seed, check-in, start). The next 7 happen during play (match lifecycle, auto-report, disputes, host-resolve, deadlines, chat, standings). The last 3 close it out (grand final, edit/cancel, audit).
- Pre-tournament (Steps 1-4)Configure → Seed → Check-in → Start
- During play (Steps 5-10)Match lifecycle, auto-report, disputes, host-resolve, deadlines, standings
- Close-out (Steps 11-12)Grand final (DE), edit/cancel, audit trail
- Bracket typesSingle-elim, double-elim, Swiss (Pokémon Champions standard), round-robin
- Match statespending → ongoing → finished | disputed | forfeited | bye
- Dispute flowMismatched auto-reports → disputed → host-resolve final ruling
Step 1, Create the tournament
Open the tournament engine, click "Create." The form has 8 fields, name, slug, format, visibility, bracket, max players, timer, description. Each one matters; spending 5 min here saves issues later.
The 8 fields
- Tên, Cái người chơi thấy trên hub và trang detail. 3–80 ký tự, gì cũng được.
- URL slug, Phần path sau /tournaments/, chữ thường, số, dấu gạch ngang. Auto-suggest từ tên nhưng sửa được. Phải unique.
- Format, Gen 9 OU, VGC 2026 Reg H, Gen 8 Ubers… Cố định lúc tạo; không đổi được về sau.
- Visibility, Public (liệt kê trên hub, ai cũng join được) hoặc Private (chỉ mời qua code được sinh ra).
- Loại bracket, Single-elim, double-elim, round-robin hay Swiss. Xem section kế tiếp để rõ tradeoff.
- Số người chơi tối đa (tuỳ chọn), Soft cap cho lượt đăng ký. Để trống nếu không cap. Double-elim cần ít nhất 4 người chơi.
- Match timer (tuỳ chọn), Số phút cho mỗi trận một khi cả hai người chơi đã biết. Nếu hết hạn, trận tự động bị disputed và host phải vào tay.
- Mô tả (tuỳ chọn), Text tự do cho luật, lịch, team clause, prize pool. Hiển thị nổi bật trên trang giải.
Step 2, Seed the bracket
Seeding determines who faces whom in round 1. Higher seed = better matchup against lower-seeded players. Pokékipe auto-seeds by ELO if available; you can also manually arrange.
Seed được gán tự động theo thứ tự đăng ký (FIFO) lúc /start.
Trước khi launch, bạn có thể sắp xếp lại tay qua "Reseed" trên trang giải. Hữu ích để đặt top seed ở hai phía đối diện của bracket (pattern kinh điển: 1 vs 8 ở tứ kết, 2 vs 7, v.v.).
In practice
Step 3, Run check-in
Check-in is the window between "tournament published" and "bracket starts." Players confirm presence; no-shows get auto-removed. Skipping check-in = bracket starts with absent players, who get assigned forfeits.
Check-in là khoá tuỳ chọn buộc người chơi xác nhận có mặt trước giờ khai mạc. Hữu ích cho event lên lịch sẵn nơi bạn muốn tránh no-show ở round 1.
Check-in workflow
- Host bấm Open check-in trên trang giải (chỉ trong giai đoạn draft/registration).
- Người chơi đã đăng ký thấy nút Check me in; bấm vào sẽ lật status từ registered sang checked_in.
- Khi host bấm Start, mọi người chơi còn ở trạng thái registered (chưa check-in) bị auto-drop khỏi bracket.
- Host cũng có thể Close check-in bất cứ lúc nào để tắt lại mà không cần start.
In practice
Step 4, Start the bracket
Once check-in closes, click "Start." The engine generates round 1 matches based on seeds, notifies players, and starts the match timer. From here, the tournament is live.
Sẵn sàng launch? Click "Start tournament" (nút xanh, chỉ host thấy). Engine sẽ:
What happens at start
- Khóa đăng ký, không ai vào thêm được.
- Gán seed cuối (tôn trọng các reorder thủ công bạn đã làm).
- Sinh bracket vòng 1 theo format bạn chọn.
- Tự động đẩy bye qua (ví dụ khi số người không phải lũy thừa của 2).
Giải chuyển sang trạng thái "ongoing", không còn đăng ký được nữa. Người chơi nhận đối thủ đầu tiên trong feed thông báo.
Step 5, Match lifecycle
Every match in the bracket goes through a defined sequence of states. Knowing the states means knowing what action is required at each point.
Mỗi trận tuân theo một lifecycle rõ ràng. Đây là các trạng thái bạn có thể thấy trên bracket:
The 6 match states
| State | Meaning |
|---|---|
pending | Đã tạo, đang chờ xác định cả hai người chơi. |
ongoing | Cả hai đã confirm, trận đang diễn ra trên Showdown. |
finished | Đã ghi nhận người thắng, bracket đi tiếp. |
disputed | Một bên flag trận đấu (hoặc deadline đã hết). Host phải xử. |
forfeited | Một bên bỏ cuộc (tự xin thua) hoặc bị host DQ. Ghi nhận winner + đi tiếp. |
bye | Không có đối thủ, người chơi tự động đi tiếp. Hay gặp ở bracket không phải lũy thừa của 2. |
Step 6, Auto-report results
Auto-report is the standard match-resolution flow: both players submit the result; if reports match, the match auto-finalizes. Disagreement flips the match into disputed state for host-resolve.
Đây là killer feature bên Pokémon, bạn không phải chọn winner thủ công. Một khi cả hai người chơi đã xác định:
Auto-report flow
- Chơi trận trên Pokémon Showdown như bình thường.
- Cuối trận, bấm Save replay trên Showdown, bạn có URL replay.
- Mở room trận trên Pokékipe (bấm vào trận trong bracket) và paste URL vào ô Report result.
- Chúng tôi fetch replay, verify cả hai người chơi khớp với pseudo mong đợi và format khớp, trích winner từ log Showdown, đóng trận. Bracket tự động đẩy tiếp.
Nếu hai người chơi không phải hai người chúng tôi expect (sai replay, lẫn pseudo) hoặc format không khớp, report bị reject với thông báo lỗi rõ ràng. Lúc đó, đánh lại trận hoặc fallback sang "Host resolve" nếu sự cố không sửa được.
In practice
Step 7, Disputes & forfeits
When auto-report fails (mismatched results), the match goes into disputed. Forfeit is when a player no-shows or concedes mid-match. Both end up at host-resolve.
Disputes
Nếu trận bị nghẽn (đối thủ no-show, nghi cheat, sự cố server, bất đồng kết quả), một người chơi hoặc organizer có thể dispute. Trận chuyển sang status `disputed` với reason tự do. Sau đó đóng băng cho tới khi organizer phân xử qua "Host resolve".
Forfeits
Dùng khi có người phải bỏ giải hoặc không xuất hiện. Hai biến thể:
- Người chơi tự forfeit: chỉ có thể tuyên bố đối thủ là winner. Hợp cho tự withdrawal.
- Host forfeit: chọn ai trong hai người làm winner. Hợp cho DQ (vi phạm luật, harassment, v.v.).
Step 8, Host resolve
Host resolve is where the host (or co-host) makes the final call on a disputed match. Replay evidence, screenshots, witness reports, all considered, but the host decides. The decision is logged in the audit trail.
Sau dispute, hoặc đơn giản là khi auto-report không khả dụng, chỉ organizer được đóng trận. Bấm "Host resolve" trong room trận, chọn winner trong hai người, xong.
Resolution được log trong audit với user_id, timestamp và winner đã chọn. Là final: không undo (cố ý vậy, phân xử của host là tối thượng).
Format rule
Step 9, Deadlines & chat
Match deadlines and tournament chat are the two communication tools that keep play moving. Use deadlines aggressively (slow players slow the whole bracket); use chat to broadcast announcements.
Match deadlines
Nếu giải có timer cấu hình, mỗi trận chuyển sang trạng thái playable sẽ có deadline = now + timer. Một badge đếm ngược hiện trên trận trong bracket và trong room trận.
Khi deadline hết hạn, trận tự động bị flag disputed với reason `deadline_exceeded`. Organizer phải vào tay, gia hạn qua resolution mới, chọn winner, hoặc cancel.
Tournament chat
Mỗi trận có chat room riêng, chỉ hai người chơi và organizer thấy được. Dùng để khớp giờ, share URL room Showdown, báo sự cố kỹ thuật.
Tin nhắn xuất hiện real-time qua server-sent events, không cần refresh. Lịch sử giữ tới 30 ngày sau khi trận kết thúc, để tham chiếu khi có dispute.
Step 10, Standings & publication
Standings auto-update as matches finish. Once the final match resolves, standings are locked and the tournament is closed. Publication makes the bracket + standings publicly visible (or private depending on config).
Với bracket round-robin và swiss, panel "Standings" hiển thị vị trí real-time của mỗi người chơi. Các cột:
Standings columns
- Wins, số trận thắng (tính cả bye và forfeit nhận được).
- Losses, số trận thua (tính cả tự forfeit và DQ).
- Played, tổng số trận đã đóng (không tính bye).
- Pending, số trận còn lại của bạn ở vòng này.
Step 11, Grand final (double-elim only)
In double-elim, the grand final is special: the upper-bracket finalist has bracket advantage. If the lower-bracket finalist wins game 1, the bracket resets, they must win twice. Pokékipe handles this automatically.
Bracket double-elim kết bằng grand final giữa UB champion và LB champion. UB tới với 0 loss, LB với 1. Đó là lý do hệ thống có cơ chế reset.
Nếu UB champion thắng grand final → giải kết thúc (vẫn 0 loss). Nếu LB champion thắng → một trận bracket reset tự động sinh ra. Hai người giờ cùng có 1 loss. Người thắng thật ở round hai này lấy giải.
Worth knowing
Step 12, Edit, cancel, audit trail
Tournaments aren't immutable post-creation, edits before start are free; mid-bracket edits are constrained. Cancellation is final. Every host action is logged in an audit trail for transparency.
Edit + cancel
Khi giải còn ở draft hoặc registration, organizer có thể bấm "Edit" trên trang detail để chỉnh tên, slug, mô tả, visibility, bracket, cap, ngày, và timer. Format Pokémon cố tình không sửa được sau khi tạo, đổi nó sẽ phá hỏng check của auto-report.
Format rule
Audit trail
Mọi hành động nhạy cảm của organizer (start, resolve, forfeit, cancel, edit) đều được log trong tab "Audit". Chỉ organizer thấy. Chứa loại action, tác giả, timestamp và chi tiết, hữu ích khi có người chơi nộp claim hoặc khi post-mortem sự cố.
Where to go from here
Hosting is one half of the tournament loop. The other half is competing, see the player-side guides below.
- Tournaments FAQ, /faq/tournaments for the entry-point Q&A on the engine (what is it, can I use it, public vs private).
- Bo3 strategy, Bo3 Tournament Strategy for how to PLAY (vs. host) a Bo3.
- Match preparation, Match Preparation Workflow for player-side prep.
- Pokémon Champions, Pokémon Champions Era covers where Reg M-A community tournaments run.
- Live tools, Tournament engine, Pokémon Champions hub, your account.