① 賽事生命週期(含本次調整)
由上而下=時間順序。金色=本次要改的地方;其餘為現況。
階段一 · 規劃 — 建賽精靈(主辦:館主/管理員)
建立館間聯誼賽
- 有賽事名稱 → 運動 → 賽制(賽制小卡圖解)
- 有對手場館(自動取最近 N/自選)→ 比賽場地(主場/投票)
- 有每隊人數 → 開賽門檻(最少報名隊數)
- 新賽事日期 / 預計比賽期間(排在報名截止「之前」;Gate 驗 報名截止 < 賽事日期)✅ 單日或期間都可
- 有報名截止日(必填)
- 新獎勵 / 獎品(選填,純文字,如「冠軍獎盃+免費月卡」)
- 新賽事說明 / 規則(選填,計分制/是否帶證件/集合時間)
▼ 寄出邀請
階段二 · 報名與資格
各受邀館:接受邀請 → 指定代表隊(一軍/二軍)
收件匣接受;資格=會員制權限。代表隊在此指定(也可稍後改)。
▼
⏳ 報名截止 / 達開賽門檻
名單在此「定案」——這一刻才知道完整參賽單位,才能產生對戰表。
▼
階段三 · 賽制與抽籤 ★本次核心
新產生對戰表(是否看實力=賽制決定)
詳見下方 ②。產生後鎖定:代表隊可換,但種子不重排。
▼
階段四 · 賽程編排(主辦)
每場排程:日期 + 時段 + 場地
有對戰樹每場各自排,只列該館未被預約的空檔;裁判/線審輪值。
▼
階段四/五 · 戰隊端
戰隊「確認參賽」 → 排陣(站位 / 職位)
有賽程卡標記目前階段 → 點該場半場拖頭像排先發。
▼
階段五 · 比賽日營運
報到(GPS 地理圍欄)→ 計分 → 直播 → 自動晉級
- 改報到=GPS 地理圍欄自動記到場(軟性,非硬閘;忘記帶手機照樣由幹部排上場)。開賽閘改「有指派裁判/計分員即可」
- 有現場計分、地圖/館內直播入口、勝隊回填晉級
- 新比分雙方確認 + 爭議標記(勝隊輸入 → 敗隊確認/申訴 → 主辦裁決)(待我細查 match_tab 現況)
▼
階段六 · 結算與收尾
賽事戰報
有戰報;新戰報可加「賽後檢討」段(下屆改進,低優先)。成績回填場館排名/RP。
② 對戰表產生決策本次討論重點
「選定對手場館後,要不要看派出隊伍的實力?」——答案:由賽制決定要不要看實力。
達開賽門檻 → 判斷 formatNeedsSeeding(format)
對戰「結構」會不會被實力影響,只取決於賽制。
▼
否 = 結構與實力無關
單場約戰 · 循環賽
- 名單定案即可產生
- 派誰都一樣:單場只有 A vs B;循環賽每隊都跟每隊各打一場
- 不需 seed,
generate(fmt, 名單原序)
是 = 結構受實力影響(要排種子)
單淘汰 · 雙淘汰 · 分組+淘汰
- 算各參賽單位實力(cascade ↓)
seedOrder 強→弱排序
- 跨表兩端/分散小組擺位(1 vs N,強隊決賽才相遇)
generate(fmt, 種子序)
▼ 產生並鎖定
實力估計的 fallback cascade(看實力時用誰的)
- 1. 該館派出代表隊的 roster 實力(隊員段位/RP 加總)— 最準
- 2. 場館實力分
gym_strength — roster 未定時 fallback(現成可用)
- 3. 距離/報名序 — 全新隊新館無歷史時的中性值
▼
🔒 鎖定後:代表隊可換,但種子不重排
抽籤定了就定了(同真實賽事)。可換 roster,動不了表上位置。
✅ 已定(2026-06-30):產生並鎖定後換隊 不重排種子(抽籤定了就定了,可換 roster 但動不了表上位置)。
種子實力來源:代表隊 roster 優先 → gym_strength 後備 → 報名序。
純 Gate(配單元測試):
formatNeedsSeeding(fmt)(單淘/雙淘/分組+淘汰=true,單場/循環=false)、
entrantStrength(e)(roster ?? gym_strength ?? 0)、
seedOrder(list)(強→弱)。
現有 BracketGenerator.generate(fmt, seeds, …) 本來就吃 seeds 順序,
bracket.dart 也已有「依距離+強度排序」的線路 → 接上去成本低。
③ 新功能優先序
先做順序錨點與種子(影響最大),小欄位順手帶;金錢相關留給大型賽事模組。
| 優先 | 功能 | 對應階段 | 現在做? |
| ★★★ | 賽事日期 / 期間(順序:排在報名截止前) | 規劃 | ✅ 本次 |
| ★★★ | 種子排序(②,淘汰類依實力 seed) | 賽制抽籤 | ✅ 本次 |
| ★★ | 獎勵 / 獎品欄(選填 free-text) | 規劃 | ✅ 本次(小) |
| ★★ | 賽事說明 / 規則欄(選填) | 報名資格 | ✅ 本次(小) |
| ★ | 比分雙方確認 + 爭議標記 | 比賽日 | 待查現況再定 |
| ☆ | 賽後檢討(戰報加一段) | 結算 | 低優先 |
④ 大型賽事反向遷移(備忘)
館間聯誼賽=刻意簡化版(金錢牽涉少)。區域/全國賽完整版做好後,把重流程拆成各館可選 opt-in 模組。
之後大型賽事完整版(區域聯賽 / 全國賽)
- 預算規劃 · 報名費收款 · 贊助方案包 · 認證/規則書
- 獎金分配 · 財務+贊助回饋報告 · 賽後檢討表
▼ 反向遷移成 opt-in 模組
各場館可自由開關(連小聯誼賽也能用)
例:預算規劃下放給小聯誼賽,讓活動更永續。每個模組走既有 4 層(Gate/Primitive/Orchestrator),共用同一套賽事資料模型,不另開平行系統。
備忘文件:docs/ArenaMate_大型賽事架構遷移備忘.md